УДК 004
И.А. МИХЕЕВ, Н.Д. СИЗОВА
КРОССПЛАТФОРМЕННОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ В ТЕХНОЛОГИИ СТРОИТЕЛЬНЫХ МАТЕРИАЛОВ
Представляются результаты разработки программного обеспечения для решения задач технологии строительных материалов. В качестве примера выбирается задача проектирования состава бетона. Обосновывается выбор языка программирования и используемых модулей. Описывается структура, элементы кросплатформенного интерфейса, а также результаты тестирования компьютерной программы в различных операционных системах. Апробируются технологии разработки кроссплатформенного программного обеспечения для решения задач в технологии строительных материалов.
1. Введение
Рынок информационных технологий сегодня - это динамически развивающаяся система с постоянным ростом количества ключевых игроков. В первую очередь это касается операционных систем. Продукты корпораций Microsoft хоть и продолжают господствовать, в том числе и на рынке операционных систем, но конкуренты с каждым годом расширяют свою аудиторию. В первую очередь это MacOS X и Ubuntu. Исходя из этого, актуальным вопросом в области разработки программного обеспечения является кроссплатформенное программирование - технология разработки программного обеспечения, работающего более чем на одной аппаратной платформе и/или операционной системе. Кроссплатформенное программирование позволяет реализовывать возможности компьютерных программ и демонстрировать графический интерфейс пользователя вне зависимости от используемого аппаратного и операционного обеспечения, а разработка таких программ при практическим полном отсутствии литературы является актуальной и сложной задачей.
Цель исследования - разработка структуры интеллектуальной системы, а также кроссплатформенного программного обеспечения для проектирования состава бетона - важной технологической задачи строительного материаловедения.
2. Основной материал
Технологии строительных материалов с точки зрения использования информационных систем можно описать следующими характеристиками:
- сложная формализация моделируемых процессов;
- огромное количество данных, разнообразных по своим типам и структуре: характеристики используемых материалов; алгоритмы методологий; нормативные регламентирующие документы;
- разрозненность аппаратного и программного обеспечения;
- различная квалификация конечных пользователей.
Для реализации задачи проектирования состава бетона (одной из ключевых задач технологии бетона - основного конструкционного строительного материала) коллективом авторов разработан алгоритм принятия рецептурных решений, учитывающий множество характеристик исходных материалов и других конструктивно-технологических факторов [1]. Для автоматизации расчетов разработана интеллектуальная система управления составом и свойствами бетона.
Важным вопросом при разработке кроссплатформенного программного обеспечения является выбор языка программирования. При решении этого вопроса необходимо учитывать множество факторов: компиляция или интерпретация, скорость работы и скорость разработки, открытость исходного кода или проприетарность.
В ходе разработки интеллектуальной системы выделены основные требования к программному обеспечению: возможность адаптации алгоритмов под конкретные производственные условия; наличие дружелюбного графического интерфейса; полная фриварность используемых технологий.
4
3. Результаты исследования
Исходя из выдвигаемых требований, в качестве базового языка программирования был выбран Python - многопарадигмальный высокоуровневый язык программирования, ориентированный на повышение производительности разработчика и читаемости кода [2]. В качестве дополнительных библиотек использованы Tkinter (стандартная кросс-платфор-менная графическая библиотека Python на основе средств Tcl/Tk), PIL (библиотека для работы с растровой графикой), ReportLab (библиотека для форматирования и генерации отчетов) [3].
Интеллектуальная система имеет блочную структуру, что нашло отражение в модульной структуре программного обеспечения. Каждая методология проектирования состава бетона описана как класс в отдельном функциональном модуле (рис. 1). Интерпретируемость языка позволяет адаптировать алгоритм и вносить необходимые коррективы [4].
Рис. 1. Структура интеллектуальной системы
Интерфейс пользователя разрабатывался с обеспечением принципов комфортности применения, высокой функциональности и поддержки пользователя на всех этапах решения задачи проектирования состава бетона.
На главной форме, на вкладке «Исходные данные» с помощью имеющихся элементов управления вводятся данные, описывающие характеристики составляющих бетон материалов, проектные требования к бетонной смеси и бетону, тип и условия эксплуатации конструкции, а также указывается основной критерий (рис. 2). Результаты расчетов выводятся на одноименной вкладке в виде одностраничного отчета, экспорт которого возможен в один из трех форматов: * txt; *.csv; * pdf (рис. 3). На третьей вкладке представлена диаграмма набора прочности (рис. 4) - важная технологическая информация, позволяющая принимать решения о снятии опалубки, нагрузки конструкции и т. д. Интерфейс пользователя, результирующий отчет, справочная информация реализованы на трех языках: русском, украинском и английском.
Проведено тестирование программного обеспечения в операционных системах Windows 7 (см. рис. 2), Ubuntu 14.04 (рис. 5), MacOS X (рис. 6).
Программное обеспечение в каждой из платформ сохраняет полную функциональность, но имеет свои особенности, связанные в основном с отображением элементов графического интерфейса. Из видимых недостатков - кегль шрифтов отображается по-разному - этот параметр необходимо вынести в модуль настоек программы. Необходимо отметить обязательную установку всех дополнительных модулей для каждой из платформ.
5
74 ПСБ УкрГАЖТ
Методика УкрГАЖТ Методика НИИЖБ Язык Помощь
□rldOgg
Исходныеданные [результаты расчетов І^^раммяабрра.турчнрсДіїІ
-Расчет исходя из:-----
Методология УкрГАЖТ
С' іРааод воды, л/м.куб.
^ В/Ц
Г' Осадка конуса, см, С' Жесткость, с,
С* Прочность
-Крупный заполнитель*
Плотность насыпная, кг/м,куб. | 1400
Плотность истинная, кг/м.куб. | 2650
Влажность, % Размер зерна, мм Водопоглощени^ % Качества Тип заполнителя
Г
Г
[нормальное ▼[ щебень
Платность насыпная, кг/м.куб. | 1100 Плотность истинная, кг/м,куб, | 3100 Средний размер частиц, мм | 0.05
ПЦ I (портландцемент) f* Марка, кгс/см,кв,
Г' Активность, МПа НГЦТ, %
Г
Г
рМелкий заполнитель------------------
Плотность насыпная, кг/м,куб. | 1480
Плотность истинная, кг/м,куб, ] 2650
Влажность, % | бЗ
Средний размер зерна, мм | о7
Модуль крупности | 2
Водопоглощение, % | ТУ
Качество (нормальное »
fferpH------------------------------------
Г Проводится ли статистический контроль Коэффициент вариации, % | 13,5
{♦ Класс по прочности В25 ▼
Н~ Марка по прочности |М350 У]
Г" Проектная прочность, МПа |
Возраст бетона, сут, | 28
Марка по морозостойкости F1000 ▼
Марка по водонепроницаемости — ▼
N песка | Г
N цемента | 1
Тип и условия эксплуатации конструкции:
Без атмосферного влияния ▼
Объем бетоносмесителя, м,куб, | 0,33
-До ба вка пластификатор-------------
р1 Использовать пластификатор Расходдобавки, % от цемента | оУ
Водоредуцирующий аффект, % | 15
Плотность, кг/м.куб. | 1060
Ґ” Использовать раствор, % 1
•Добавка ускорительтъердекия--------
р1 Использовать ускоритель твердения
Расходдобавки, % от цемента | 0.5
Коэффициент ускорения | вТ
Плотность, кг/м.куб. | 1060
Г Использовать раствор, % 1 ЇУ
Рассчитать
Рис. 2. Вкладка «Исходные данные» в Windows 7
74 ПСБ УкрГАЖТ
Методика УкрГАЖТ
Г^1Г@ Ibsi
Методика НИИЖБ Язык Помощь
Исходныеданные] Результаты расчетов |Диаграмма наборапрочности |_
Определение состава бетона по методике УкрГАЖТ
Проектные характеристики:
Составляющие; Крупный заполнитель Мелкий заполнитель Цемент
Насыпная плотность, кг/м.куб.: 1400 1480 1100
Истинная плотность, кг/м.куб.: 2650 2650 3100
Влажность, %: 1 6.5 -
Средний диаметр, мм.: 15 0.3 0.05
Прочность: 58.0
Тип цемента; ПЦ Г(портландцемент)
Марка цемента, кгс/см.кв.: 400 Проектный возраст бетона, сут.: 29 Класс бетона по прочности; В25 Марка по морозостойкости: F1000 Марка по водонепроницаемости; --Ожидаемая прочность бетона в проектном возрасте, МПа: 58.0 Ожидаемая прочность бетона в возрасте 28 сут., МПа: 5S.0
Результаты расчетов:
Альфа: 1.13 Мю; 2.23
Количество рядов частиц:
N паска: 1 N цемента:1
Применение пластификатора: да Применение ускорителя твердения; да
Состав Крупный заполнитель Мелкий заполнитель Цемент Вода Добавка пластификатор сух. в- во./раств, Добавка ускоритель сух.в-во./раств.
Номинальный: - на 1 м.куб., кг 1320 481 427 183 2.14 / 0.0 2.14 / 0.0
- относительный 3.09 1.13 1 0.43 0.005 / 0.0 0.005 / 0.0
_ -
Рис. 3. Вкладка «Результаты расчетов»
Трудоемкость процесса разработки обусловлена отсутствием привычных для разработчиков «drag-and-drop» билдеров для разработки графического интерфейса - необходимо «вручную» описывать свойства каждого элемента управления, его поведение и реакцию на события.
6
Рис. 4. Вкладка «Диаграмма набора прочности»
ПСБ УкрГАЖТ
Методика УкрГАЖТ Методика НИИЖБ Язык Помощь
Исходные данные| ЛЭДэтьтаты расчетов | Диаграмма набора прочности]
-Расчет исходя из:------------
Методология УкрГАЖТ
Расход воды, л/м.куб. |
в/ц Г”
' Осадка конуса, см.
Жесткость, с. с*- Прочность
-Крупный заполнитель-------------
Плотность насыпная, кг/м.ку| 1400 Плотность истинная, кг/м.ку| 2650 Влажность, % | Г
Размер зерна, мм | 15"
Водопоглощение, % \ 0.75
Качество [чі • - ■ * т]
Тип заполнителя (щебень
А
•Цемент--------------------------
Плотность насыпная, кг/м.ку| 1100 Плотность истинная, кг/м.ку| 3100 Средний размер частиц, мм | 0.05
|ПЦ I (портландцемент) •* Марка, кгс/см.кв.
: Активность, МПа НГЦ7
| 400"
Г
^Мелкий заполнитель---------------
Плотность насыпная, кг/м.ку| 1480 Плотность истинная, кг/м.куі 2650 Влажность, % ] 6.5
Средний размер зерна, мм J" 0.3 Модуль крупности Водопоглощение, % ]_ 7.5
Качество
Бетон------------------------------
Г Проводится ли статистический кон Коэффициент вариации. % | -
с*- Класс по прочности |В25 J
С Марка по прочности , п Проектная прочность, МПа \~ Возраст бетона, сут Г-
Марка по морозостойкости I—
Марка по водонепроницаемое]— J
N песка N цемента
1
Тип и условия эксплуатации конструкці
[Бетонная-
А
|Без атмосферного влияния
Объем бетоносмесителя, м.куб, | 0.33
-Добавка пластификатор---------
W Использовать пластификатор Расход добавки, % от цемент] 0.5 Водоредуцирующий аффект,] 15" Плотность, кг/м.куб. | 106о"
I? Использовать раствор, %| їо"
-Добавка ускоритель твердения-----
W Использовать ускоритель тверд Расход добавки, % от цементі 0.5 Г Коэффициент ускорения | 1 I Плотность, кг/м.куб. | 1060
І7 Использовать раствор, %] їо"
Рассчитать
Рис. 5. Вкладка «Исходные данные» в Ubuntu 14.04
Несмотря на перечисленные неудобства, весь код программы (более 5000 сток) остается неизменным, что позволяет существенно экономить время при разработке различных версий программы под определенные платформы.
7
[ Исходные данньТе Результаты расчетов Диаграмма набора лрочности-
•Расчет исходя из:--------
Методология УкрГАЖТ
С"' Расход воды, л/м.куб.
* В/Ц
Осадка конуса, см.
__ Жесткость, с.
■ ■ Прочность
•Крупный заполнитель-------------
Плотность насыпная, кг/м.ку4 _1400ji Плотность истинная, кг/м.Kyf 2650*
Влажность, % _____1Ї
Размер зерна, мм ^ 16^
Водопоглощение, % . р.?5_
Качество нормально v
Тип заполнителя щебень v,
Цемент----------------------------
Плотность насыпная, кг/м.ку1 110Q Плотность истинная, кг/м.ку£ 3100 Средний размер частиц, мм 0.05 ПЦ J (портландцемент) v
Марка, кгс/см.ка. |. 400,
Активность, МПа
; ;гцт. % 27
Мелкий заполнитель---------------
Плотность насыпная, кг/м.ку/_1460 Плотность истинная, кг/м.ку£ 2650 Влажность, % _ 6.511
Средний размер зерна, мм JTOII
Модуль Крупное! :•
Водологлощение, Уо __7,5л
Качество нормально v •
Проводите* -г".-.:-Коэффициент вариации, %
• \nfiCCfiCi ПрС-' i-'iTin
'і
13,5 В25 М35 v
28
Возраст бетона, сут.
Марка по морозостойкости — v
Марка по водонепроницаемое' — v
N песка і___1
N цемента ) 1І
Тип и услоаия эксплуатации конструкцик
Бетонная_______________________^
Без атмосферного влияния “
Объем бетоносмесителя, м.куб. 0.33І
Добавка пластификатор-------------
і_і Использовать пластификатор
Расход добавки. % от цемен' D.5
Водоредуцмрукхдкй эффект, 15
Плотность, кг/м.куб. 10601
•■’СЛ:'.ЛЬОСаоТь Ю
Добавка ускоритель твердения---------
ї__| Использовать ускоритель Расход добавки. % от цемек 0.5
1 J К.СЯҐГ.ф.'[ |-‘=Н“ уґ""‘;•*, ' 0.00 ■
Плотность, <г/м.куб. 1 1060
I ' -'-г .. ". у'”--:. л-?.стйос. v- 10
Рассчитать
Рис. 6. Вкладка «Исходные данные» в MacOS X
4. Выводы
В ходе создания прототипа интеллектуальной системы управления составом и свойствами бетона были использованы современные технологии и подходы разработки программного обеспечения, реализованы авторские алгоритмы и обеспечена кроссплатфор-менность интерфейса пользователя.
С точки зрения технологии строительных материалов компьютерная программа для решения задачи проектирования состава бетона с кросплатформенным интерфейсом является пионерным и уникальным проектом. Апробированные технологии разработки кроссплатформенного программного обеспечения могут быть применены для решения многих задач строительного материаловедения.
Список литературы: 1. Плугин А.А. Программное обеспечение системы проектирования состава бетона для конструкций и сооружений железных дорог // А.А. Плугин, О.А. Калинин, Н.Д. Сизова, И.А. Михеев // Технологический аудит. 2013, № 6/1(14). С. 38-40. 2. РоссумГ., Дрейк Ф.Л.Дж., ОткидачД.С. и др. Язык программирования Python. 2001. 454 c. [электронный ресурс]. Режим доступа: www. URL: http://rus-linux.net/MyLDP/BOOKS/ python.pdf 3. Grayson J.E. Python and Tkinter Programming. Manning Publications Co, 2000. 688 p. 4. Сизова Н.Д. Особенности создания программного обеспечения для проектирования состава бетона // Н. Д. Сизова, И. А. Михеев // Восточно-европейский журнал передовых технологий. 2013. № 6/2(66). С. 27-31.
Поступила в редколлегию 22.02.2014
Михеев Иван Андреевич, канд. техн. наук, доцент кафедры экономической кибернетики и информационных технологий ХНУСА. Научные интересы: математическое моделирование сложных процессов и систем, методы оптимизации строительного материаловедения, современные информационные технологи в строительной отрасли. Адрес: Украина, 61002, ул. Сумская, 40, тел. (057) 706-20-49, E-mail: [email protected]
Сизова Наталия Дмитриевна, д-р физ.-мат. наук, профессор кафедры экономической кибернетики и информационных технологий ХНУСА. Научные интересы: вычислительная информатика, математическое и компьютерное моделирование, информационные технологии. Адрес: Украина, 61002, ул. Сумская, 40, тел. (057) 706-20-49, E-mail: [email protected]
8