Moskva, Moscow, Russian Federation
V stat'e privedeny primery peredachi dannyh dlya sostavleniya smetnoy dokumentacii. Opisany tipovye bloki i harakternye atributy. Predlozheny puti sovershenstvovaniya sistemy
blok, atribut, gidravlicheskaya shema freonoprovodov, specifikaciya
Publication text (PDF): Read Download
Publication text (PDF): Read Download
Publication text (PDF): Read Download
Содержание:
1. Введение
2. Блоки с атрибутами как элементы гидравлической схемы
3. Извлечение данных из файла AutoCAD (dwg) в Excel (xls)
4. Обработка данных средствами MS Excel
5. Минимизация возможных ошибок при задании данных
6. Варианты по оптимизации расчетного комплекса программ
7. Литература
8. Приложения
Введение
При работе с проектами сложных объектов большого числа проектировщиков достаточно актуальной становится задача оптимизации внесения данных из гидравлической схемы объекта проектирования, выполненной в программе AutoCAD, в специализированные программы составления сметного расчета данных о расходных материалах. Одним из путей реализации этой задачи и задачи составления спецификации чертежа является извлечение атрибутивных данных специально описанных блоков.
Задача передачи данных из одной программы в другую решалась при разработке большого программного комплекса «АПОФЕОС» [1-6], а также при определении экономической эффективности различных расчетных схем в различных программных комплексах [7 - 11].
Цель работы – оптимизация внесения данных в гидравлическую схему в программе AutoCAD с последующим извлечением данных в смету расходных материалов в формате xls.
Гидравлическая схема фреонопроводов входит в состав исполнительской документации проекта и относится к пятому разделу 5 «Подраздел 5.3.5. Система холодоснабжения». Примеры гидравлических схем приведены на рис. 1.
Рис. 1. Примеры гидравлических схем приведены
Схема вычерчивается в системе AutoCAD с использованием блоков отдельных элементов. После этого необходимо выполнить подсчет расходных материалов (элементов) схемы, их сортировку и помещение в таблицу спецификации. Затем те же данные вбиваются в «Смету расходных материалов» в файл формата Excel и в дальнейшем корректируются при создании коммерческих предложений (документов). Смета не является спецификацией чертежа, но предлагаемый способ извлечения данных позволяет при необходимости внести их значения и в спецификацию чертежа, выполненную по ГОСТ.
Нами предлагается внести в используемые системой AutoCAD блоки специальные поля описания называемые «атрибуты». Это позволяет упростить и систематизировать оформление как самой графической схемы, а также дает возможность в автоматическом режиме получать необходимые данные в табличном виде.
Для извлечения данных из чертежа будем использовать заранее настроенный файл формата “dwg”. В него нужно будет внести расчётную схему путем стандартного копирования данных (нажатие клавиш Ctrl+C или Ctrl+V).
Для запуска процесса используем программу, написанную на внутреннем языке AutoLisp, для удобства интерфейса так же написана программа(dcl) для вывода диалогового окна в AutoCAD.
Блоки с атрибутами как элементы гидравлической схемы.
Элементами схемы в файле формата “dwg” являются динамические блоки с атрибутами. Задание значений атрибутов блока позволяет нам извлекать из чертежа готовую базу данных.
Как правило, на чертеже имеется 6 типов трубопроводов:
- жидкостная труба среднетемпературная. Тэг атрибута - СТ_Ж,
- жидкостная труба низкотемпературная. Тэг атрибута - НТ_Ж,
- труба на всасывание компрессора среднетемпературная. Тэг атрибута - СТ_ВС,
- труба на всасывание компрессора низкотемпературная. Тэг атрибута - НТ_К,
- труба на конденсатор среднетемпературная. Тэг атрибута - СТ_К,
- труба на конденсатор низкотемпературная. Тэг атрибута - НТ_К.
Диаметр трубы может принимать одно из 12 возможных значений диаметра – 10, 12, 15, 18, 22, 28, 35, 42, 54, 67, 80 и 92.
Для внесения данных используется динамический блок с атрибутами:
Рис. 2. Динамический блок
Это позволяет не только считывать данные из блока, но и изменять положение и угол поворота значений атрибутов «по месту» (рис. 3).
Рис. 3. Изображение динамического блока на схеме
Разный цвет отображения атрибута определяет к какому трубопроводу относится значение (жидкость, всасывание, конденсатор).
Таким образом мы получаем возможность извлечь данные в смету расходных материалов с учетом диаметра и функционального использования трубы.
Используемые типовые блоки схемы
Блок «Труба медная» на схеме обозначается .
Заводится значение диаметра и длина участка трубы в Тэг соответствующий типу трубы.
Пример заполнения атрибутов блока в диалоговом окне на чертеже приведен на рис. 4:
Рис. 4. Пример заполнения атрибутов блока «Труба медная»
Блок «Уголок медный 90» на схеме обозначается
Заводится значение диаметра (16) и колличество (2) в Тэг соответствующий типу трубы (рис. 5).
Рис. 5. Пример заполнения атрибутов блока «Уголок медный 90»
Блок «Переходник медный» на схеме обозначается
Блок «Переходник медный» определяется двумя диаметрами и задание их в атрибутов повышает риск ошибки. Для помощи проекктировщикам была выбрана дискретная форма ввода значений из окна выбора (рис. 6):
Рис. 6. Окно выбора диаметров блока «Переходник медный»
Создается блок («Переход медный») не содержащий в себе ничего кроме еще одного блока («Переход медный D-D») содержащего только атрибут. В разных отображениях (видимостях) (visibility) блока «Переход медный» внесен один и тот-же блок - «Переход медный D-D» с атрибутом, но с разными значениями атрибута. Это позволяет сохранить один и тот же тэг Tag(СТ_Ж) по которому будут отсортированы результаты, но при этом каждый раз выбрать необходимое значение предлагаемых переходных диаметров.
Рис. 7. Окно задания атрибутов «Переходник медный»
Блок «Виброгаситель» на схеме обозначается , а в качестве атрибута задается значение диаметра трубы и атрибут соответствующий типу трубы виброгасителя (рис. 8).
В диалоговом окне рис.8 для примера задан диаметр среднетемпературной трубы на всасывание равным 12 мм.
Рис. 8. Окно задания атрибутов «Виброгасителя»
Блок «Тройник медный» на схеме обозначается В качестве атрибута задается диаметр.
Блок «Вентиль шаровой» на схеме обозначается Задается значение диаметра в атрибут соответствующий типу трубы.
Блок «Фильтр жидкостной» на схеме обозначается задается значение диаметра.
Блок «Шумоглушитель» , задается значение диаметра.
Блок «Клапан Шредера» на схеме обозначается подсчитывается общее количество (соответствует числу одноименных блоков)
Блок «Клапанный узел TES-2» на схеме обозначается , в качестве атрибута указывается номер клапана
Блок «Клапанный узел TES-5» на схеме обозначается , в качестве атрибута указывается номер клапана
Блок «Электронный расширительный вентиль AKV10» на схеме обозначается , в качестве атрибута указывается номер клапана
Блок «Электронный расширительный вентиль AKV15» на схеме обозначается , в качестве атрибута указывается номер клапана.
Блок «Соленойдный вентиль ERV3» на схеме обозначается , задается значение диаметра трубы.
Блок «Соленойдный вентиль ERV6» на схеме обозначается , задается значение диаметра трубы.
Блок «Регулятор давления кипения KVP» на схеме обозначается , задается значение диаметра трубы.
Готовая схема собирается их этих 16 типовых блоков и сохраняется в новый файл «Расчетный файл.dwg». В нем будет удобно провести извлечение данных «одним нажатием кнопки» так как он заранее для этого настроен.
Файл для извлечения данных (Расчетный файл.dwg) извлекает :
1. Названия блоков.
2. Тэги атрибутов.
3. Значения атрибутов блоков.
Настройки извлечения данных сохранены в файл в формате “dxe”. При использовании команды «_dataextraction» в программе AutoLisp в качестве настроек будет указан файл “IZVL_HIDRA.dxe”:
(command"-dataextraction")
(command"C:\\АвтоРасчетГидравлика\\IZVL_HIDRA.dxe")
(command"YES")
Для удобства запуска программы AutoLisp создана и настроена на запуск программы новая кнопка в меню программы AutoCAD.
Для выбора вариантов работы программы запрограмировано диалоговое окно приведенное на рис. 9.
Рис. 9. Окно задания вариантов работы
При выборе среднетемпературного контура данные извлекаются в файл «ACAD_EXEL_step1.xls».
При выборе низкотемпературного контура в файл «ACAD_EXEL_step1_NIZ.xls».
Установка галочки «Открыть Смету по расходным материалам» автоматически открывает файлы «ACAD_EXEL_step1.xls», «ACAD_EXEL_step1_NIZ.xls», «Смета_по_расходным_материалам.xls».
Эти файлы находятся по одному постоянному адресу (C:\АвтоРасчетГидравлика) и при каждом новом расчете их содержание обновляется.
Обработка данных средствами MS Excel
Файлы «ACAD_EXEL_step1.xls», «ACAD_EXEL_step1_NIZ.xls» -промежуточные файлы извлеченных данных.
Рис. 10. Содержание файлов Excel
Числовые данные (значения атрибутов) извлекаются автокадом как текст и для дальнейшей обработки их требуется преобразовать в числовой формат. Для преобразования всех значений таблицы в числовой формат можно умножить все значения ячеек на 1 (рис. 11).
Рис. 11. Содержание файлов Excel после их нормализации
Эти преобразования сохраняются во вкладке «Цифра» файла «Смета_по_расходным_материалам.xls» , и происходят автоматически при открытии файла.
В смету расходных материалов данные по длине различных участков трубопровода попадают с использованием функции «СУММЕСЛИМН» условное сумирование с несколькими условиями.
Например ячейка «С8» файла «Смета_по_расходным_материалам.xls» содержит формулу :
=СУММЕСЛИМН(цифра!$E$2:$E$10000;[ACAD_EXEL_step1.xls]Summary!$A$2:$A$10000;"труба медная";цифра!$B$2:$B$10000;"=10")
Эта строка означает, что если в файле «ACAD_EXEL_step1.xls» в столбце «А» встречается текст "Труба медная" (название блока), при этом в ячейке «В» (диаметр жидкостного трубопровода) стоит значение 10, то данные ячейки «B» суммируются в ячейку «С8».
Данные для суммирования берутся из вкладки «Цифра» - …цифра!$B$2:$B$10000… так как арифметические действия можно проводить только с данными переведенными в числовой формат.
Рис. 12. Пояснения к алгоритму реализации расчета
На участке трубопровода также задается мощность характерехующая тепловое напряжение на участке(3500 Вт), но в смете расходных материалов эти значения не используются.
В строках, где необходим подсчет колличества элементов схемы(вентили, клапана, соленойды и.т.д.) используется функция «СЧЁТЕСЛИМН».
На пример:
=СЧЁТЕСЛИМН([ACAD_EXEL_step1_NIZ.xls]Summary!$A$2:$A$10000;"Переход медный D-D";[ACAD_EXEL_step1_NIZ.xls]Summary!$E$2:$E$10000;"=54-42")
Если в файле «ACAD_EXEL_step1.xls» в строке встречается название блока "Переход медный D-D"( столбец «А»), значения диаметров переходника "54-42" (столбец «E»), в ячейку «С84» файла «Смета_по_расходным_материалам.xls» прибавляется единица.
Чтобы исключить из конечной сметы формулы и оставить только окончательные результаты в виде числовых значений используем макрос MS Visual Basic :
Sub схема()
Application.ScreenUpdating = False
ActiveSheet.Copy After:=Sheets(Sheets.Count)
Cells.Copy
Cells.PasteSpecial Paste:=xlPasteValues
ActiveSheet.Move
Application.ScreenUpdating = True
End Sub
Для удобства запуска макроса назначается горячая клавиша.
В результате получаем файл с цифровыми значениями, без формул в ячейках и связей с другими файлами.
Алгоритм действия при расчете готовой схемы следующий:
1. Копирование схемы в расчетный файл./АВТОКАД/
2. Запуск AutoLisp программы( кнопка в автокаде). /АВТОКАД/
3. Выбор типа схемы в диалоговом окне(среднетемпературная или низкотемпературная). /АВТОКАД, при нажатии ОК средствами AutoLisp открываются файлы Excel/
4. Запуск макроса Excel горячей клавишей. /Exel/.
Полученые данные из сметы формата xls импортируются в программу «1С предприятие» и используются для составления коммерческих документов (например выставление счета клиенту).
Минимизация возможных ошибок при задании данных
Важно понимать, что в ручном методе подсчета, возможность ошибки сосредоточена в механическом подсчете и сортировке данных. Вероятность совершить такую ошибку достаточно высока.
В программном способе обработке данных ошибка подсчета исключается, но сохраняется риск совершить ошибку при задании данных в блоки.
Возможные ситуации:
- неточно заведены числовые значения
В данном случае все зависит от аккуратности оператора.
Возможна автоматизированная проверка заведенных значений атрибутов.
- не все значения атрибутов заведены в схему
В файле шаблона в атрибутах установлено значение “#”. Его наличие в извлеченных данных отслеживается и в конечном файле сметы появится соответствующее уведомление (рис. 13).
Рис. 13. Уведомление об ошибке
- в файле присутствуют блоки не входящие в схему.
Внесение схемы в расчетный файл путем копирования выбранной области исключает появление посторонних блоков с атрибутами.
В условных обозначениях используются не блоки с атрибутами, а их изображение в виде WMF файла.
- промежуточный расчетный файл не обновился при извлечении данных в новый расчет попадут устаревшие данные.
Такая ситуация возможна если промежуточный расчетный файл по каким-то причинам открыт и его перезапись невозможна.
Для того чтобы отследить это в файле «Смета_по_расходным_материалам.xls» справа от рабочей таблицы указывается точное время создания промежуточных файлов, оно должно соответствовать текущему времени расчета.
Это делается с помощью макроса Excel:
Рис. 13. Уведомление об ошибке
Можно отследить время и дату извлеченных данных на которых основан расчет.
Направления оптимизации комплекса программ
Нам видятся два направления оптимизации комплекса. Первый написать подпрограмму отслеживающую возможность заведения в атрибуты только фиксированные значения, на пример для диаметров – {10,12,15,18,22,28,35,42,54,67,80,92}.
Создать маркер подсвечивающий не заведенные значения на схеме, это даст возможность быстрее отыскивать их на схеме.
Второй вариант оптимизации состоит в следующем. Техническое задание по данному проекту предусматривало расчет длин трубопроводов по значению атрибута блока - по заданному числовому значению, (это связано с методикой вычерчивания схемы инженером-холодильщиком), но более перспективным видится возможность считывать длину трубопровода непосредственно с длины 3D-полилиний на чертеже, так как это будет иметь более точную привязку к элементам конструкции здания и позволит избежать возможных ошибок при вводе числовых значений.
Приложения
Код программы для диалогового окна на языке DCL.
dia : dialog {
label = " Расчет гидравлической схемы";
fixed_height = true;
: spacer{height=1;}
: image {height = 8;width = 17;color = 0;key = "GID";}
: boxed_column { label = "Выберите расчитываемый контур";
: radio_row {
: radio_button {key = "ST"; label = "среднетемпературный "; }
: radio_button {key = "NT"; label = "низкотемпературный"; }
: spacer{height=5;}
}
}
: radio_row {
: text {label = " "; }
: toggle { label = "открыть Смету по расходным материалам"; key = "XLV"; value = "0"; }
}
: spacer{height=2;}
: row {
ok_button;
cancel_button;
}
}
Код программы на AutoLisp
(defun C:SHS()
;;;--- Load the dcl file
(setq dcl_id (load_dialog "dia.dcl"))
(setq onof 0)
;;;--- Load the dialog definition if it is not already loaded
(if (not (new_dialog "dia" dcl_id))
(progn
(exit)
)
)
;;;--- If an action event occurs, do this function
;(action_tile "ST" "(setq ddiag 2)(saveVars)(done_dialog)")
;(action_tile "ST" "(setq ddiag 1)(done_dialog)")
(setq what_next 8)
(while (< 2 what_next)
(start_image "GID")
(setq rix (dimx_tile "GID"))
(setq riy (dimx_tile "GID"))
(slide_image 0 0 1000 100 "GG" )
(end_image)
(action_tile "ST" "(setq on_rad $key)")
(action_tile "NT" "(setq on_rad $key)")
(action_tile "XLV" "(setq onof $value)")
;(action_tile "accept" "(done_dialog 1) (ok_tab)")
(action_tile "accept" "(done_dialog)")
(action_tile "cancel" "(exit)")
(setq what_next (start_dialog))
)
(unload_dialog dcl_id) ; Unload the DCL file
; (setq relst ret_value1)
(princ onofxl)
(if (= on_rad "ST" )
(progn
(command"-dataextraction")
(command"C:\\АвтоРасчетГидравлика\\IZVL_HIDRA.dxe")
(command"YES")
)
)
(if (= on_rad "NT" )
(progn
(command"-dataextraction")
(command"C:\\АвтоРасчетГидравлика\\IZVL_HIDRA_NIZ.dxe")
(command"YES")
)
)
(if (= onOF "1" )
(progn
(startapp "C:\\Program Files (x86)\\Microsoft Office\\Office14\\excel.exe""C:\\АвтоРасчетГидравлика\\ACAD_EXEL_step1.xls C:\\АвтоРасчетГидравлика\\ACAD_EXEL_step1_NIZ.xls C:\\АвтоРасчетГидравлика\\Смета_по_расходным_материалам.xls")
)
)
)
Пример заполнения данных
1. Murzenko Yu.N., Evtushenko S.I. Eksperimental'nye issledovaniya raboty kraevoy zony sbornyh fundamentov pod otdel'nuyu kolonnu i setku kolonn na peschanom osnovanii : monografiya // Izv. vuzov. Sev.-Kavk. region. - Rostov n/D : Izd-vo zhurn. «Izv. vuzov. Sev.- Kavk. region», 2008. -248 s.
2. Sovremennye metody rascheta fundamentov : monografiya / S.I. Evtushenko, A.N. Bogomolov, A.N. Ushakov, S.I. Shiyan // Yuzh.-Ros.gos. tehn. un-t (NPI); Volgograd. Gos. Arh.-stroit. Un-t. - Novocherkassk: YuRGTU(NPI), 2011. - 238 s.
3. Evtushenko S.I. Podgotovka dannyh inzhenerno-geologicheskih izyskaniy k ispol'zovaniyu v PK APOFEOS // Issledovaniya i razrabotki po komp'yuternomu proektirovaniyu fundamentov i osnovaniy: mezhvuz. sb. / Novocherk. gos. tehn. un-t. - Novocherkassk: NGTU, 1993. - S. 90-93.
4. Evtushenko S.I. Metodika ob'ektno-orientirovannogo proektirovaniya pri podgotovke inzhenerno-geologicheskih dannyh dlya raschetov osnovaniy i fundamentov na EVM // Issledovaniya i komp'yuternoe proektirovanie fundamentov i osnovaniy: sb. nauch. tr. / Novocherk. gos. tehn. un-t. - Novocherkassk: NGTU, 1996. - S. 73-76.
5. Murzenko Yu.N., Morgunov V.N., Evtushenko S.I. Razrabotka interfeysa programmnogo kompleksa APOFEOS dlya semeystva operacionnyh sistem Windows // Komp'yuternye tehnologii v nauke, proizvodstve, social'nyh i ekonomicheskih processah: materialy Mezhdunar. nauch.-prakt. konf., g. Novocherkassk, 25 noyab. 2000 g.: v 8 ch. / Yuzh.-Ros. gos. tehn. un-t (NPI). - Novocherkassk: Nabla, 2000. - Ch. 7. - S. 20-23.
6. Anischenko E.Yu., Skibin G.M., Evtushenko S.I. Programmnyy modul' «Optimum» PK «APOFEOS» po mnogokriterial'noy optimizacii parametrov stolbchatyh fundamentov // Izv. vuzov. Sev.-Kavk. region. Tehn. nauki. -2003. - Specvyp.: Matematicheskoe modelirovanie i komp'yuternye tehnologii. - S. 105-106.
7. Anischenko E.Yu., Skibin G.M., Evtushenko S.I. Programma rascheta parametrov stolbchatogo fundamenta na prodavlivanie i treschinoobrazovanie // Komp'yuternye tehnologii v nauke, proizvodstve, social'nyh i ekonomicheskih processah: materialy III Mezhdunar. nauch.- prakt. konf., g. Novocherkassk, 15 noyab. 2002 g.: v 4 ch. / Yuzh.-Ros. gos. tehn. un-t (NPI). - Novocherkassk: OOO NPO «TEMP», 2002. - Ch. 3. - S. 27-30.
8. Evtushenko S.I. Metodika rascheta sbornoy fundamental'noy plity iz strukturnyh elementov s ispol'zovaniem «SCAD» // Izv. vuzov. Sev.-Kavk. region. Tehn. nauki. - 2006. - Pril. № 11. - S. 79-81.
9. Evtushenko S.I., Masnyuk O.I. Vliyanie kosyh reber na rezul'taty rascheta strukturnogo fundamenta v programmnom komplekse SCAD// Izv. vuzov. Sev.-Kavk. region. Tehn. nauki. - 2008. - Specvypusk: Osnovaniya, fundamenty i stroitel'nye konstrukcii.- S. 8 - 10.
10. Evtushenko S.I., Masnyuk O.I. Sravnenie sploshnoy fundamentnoy plity administrativnogo zdaniya v g. Rostove -na -Donu serebristoy plitoy // Stroitel'stvo - 2008: materialy yubileyn. Mezhdunar. nauch.-prakt. konf., g. Rostov n/D.. - Rostov n/D.: Rostov. gos. stroit. un-t, 2008. - S. 44 - 45.
11. Evtushenko S.I., Babec N.N., Pihur V.N. Ispol'zovanie svyazi mezhdu graficheskimi i raschetnymi programmnymi produktami pri proektirovanii // Informacionnye tehnologii v obsledovanii ekspluatiruemyh zdaniy i sooruzheniy: Materialy IX Mezhdunar. nauch.- prakt. konf.; 11 sent. 2009 g., g. Novocherkassk. - Novocherkassk: YuRGTU (NPI), 2009. - S. 22-24.
12. Sistematizaciya defektov fasadov promyshlennyh zdaniy / S.I. Evtushenko, T.A. Krahmal'nyy, M.P. Krahmal'naya, V.E. Shapka, A.B. Aleksandrov // Informacionnye tehnologii v obsledovanii ekspluatiruemyh zdaniy i sooruzheniy : materialy XVI mezhdunarodnoy nauchno-prakticheskoy konferencii, g. Novocherkassk, 15 noyabrya 2016 g. / Yuzhno-Rossiyskiy gosudarstvennyy tehnicheskiy universitet (NPI) imeni M.I. Platova.- Novocherkassk, YuRGPU (NPI), 2016.- s. 132-136
13. AutoCAD Razrabotka prilozheniy, nastroyka i adaptaciya/ N. Poleschuk/ «BHV- Peterburg», 2006.
14. AutoCAD 2010 i AutoCAD LT 2010. Bibliya pol'zovatelya/ E. Finkel'shteyn. Per. s angl. - M. : OOO «I. D. Vil'yams», 2010. - 1360 s.
15. Proektirovanie holodil'nyh ustanovok. Raschety, parametry, primery / G.-Y Braydert, perevod s nemeckogo L.N. Kazancevoy, TERMOKUL TEHNOSFERA, M.- 2006.
16. MICROSOFT EXCEL 2013. Bibliya pol'zovatelya /Dzh. Uokenbah/