ПЕРЕДАЧА ДАННЫХ ИЗ AUTOCAD В СМЕТНУЮ ПРОГРАММУ В EXCEL
Аннотация и ключевые слова
Аннотация (русский):
В статье приведены примеры передачи данных для составления сметной документации. Описаны типовые блоки и характерные атрибуты. Предложены пути совершенствования системы

Ключевые слова:
блок, атрибут, гидравлическая схема фреонопроводов, спецификация
Текст
Текст произведения (PDF): Читать Скачать
Текст произведения (PDF): Читать Скачать
Текст произведения (PDF): Читать Скачать
Текст произведения (PDF): Читать Скачать

Содержание:

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» на схеме обозначается , в качестве атрибута указывается номер клапана.

Блок «Соленойдный вентиль ERV на схеме обозначается , задается значение диаметра трубы.

Блок «Соленойдный вентиль 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. Мурзенко Ю.Н., Евтушенко С.И. Экспериментальные исследования работы краевой зоны сборных фундаментов под отдельную колонну и сетку колонн на песчаном основании : монография // Изв. вузов. Сев.-Кавк. регион. - Ростов н/Д : Изд-во журн. «Изв. вузов. Сев.- Кавк. регион», 2008. -248 с.

2. Современные методы расчета фундаментов : монография / С.И. Евтушенко, А.Н. Богомолов, А.Н. Ушаков, С.И. Шиян // Юж.-Рос.гос. техн. ун-т (НПИ); Волгоград. Гос. Арх.-строит. Ун-т. - Новочеркасск: ЮРГТУ(НПИ), 2011. - 238 с.

3. Евтушенко С.И. Подготовка данных инженерно-геологических изысканий к использованию в ПК АПОФЕОС // Исследования и разработки по компьютерному проектированию фундаментов и оснований: межвуз. сб. / Новочерк. гос. техн. ун-т. - Новочеркасск: НГТУ, 1993. - С. 90-93.

4. Евтушенко С.И. Методика объектно-ориентированного проектирования при подготовке инженерно-геологических данных для расчетов оснований и фундаментов на ЭВМ // Исследования и компьютерное проектирование фундаментов и оснований: сб. науч. тр. / Новочерк. гос. техн. ун-т. - Новочеркасск: НГТУ, 1996. - С. 73-76.

5. Мурзенко Ю.Н., Моргунов В.Н., Евтушенко С.И. Разработка интерфейса программного комплекса АПОФЕОС для семейства операционных систем Windows // Компьютерные технологии в науке, производстве, социальных и экономических процессах: материалы Междунар. науч.-практ. конф., г. Новочеркасск, 25 нояб. 2000 г.: в 8 ч. / Юж.-Рос. гос. техн. ун-т (НПИ). - Новочеркасск: Набла, 2000. - Ч. 7. - С. 20-23.

6. Анищенко Е.Ю., Скибин Г.М., Евтушенко С.И. Программный модуль «Optimum» ПК «АПОФЕОС» по многокритериальной оптимизации параметров столбчатых фундаментов // Изв. вузов. Сев.-Кавк. регион. Техн. науки. -2003. - Спецвып.: Математическое моделирование и компьютерные технологии. - С. 105-106.

7. Анищенко Е.Ю., Скибин Г.М., Евтушенко С.И. Программа расчета параметров столбчатого фундамента на продавливание и трещинообразование // Компьютерные технологии в науке, производстве, социальных и экономических процессах: материалы III Междунар. науч.- практ. конф., г. Новочеркасск, 15 нояб. 2002 г.: в 4 ч. / Юж.-Рос. гос. техн. ун-т (НПИ). - Новочеркасск: ООО НПО «ТЕМП», 2002. - Ч. 3. - С. 27-30.

8. Евтушенко С.И. Методика расчета сборной фундаментальной плиты из структурных элементов с использованием «SCAD» // Изв. вузов. Сев.-Кавк. регион. Техн. науки. - 2006. - Прил. № 11. - С. 79-81.

9. Евтушенко С.И., Маснюк О.И. Влияние косых ребер на результаты расчета структурного фундамента в программном комплексе SCAD// Изв. вузов. Сев.-Кавк. регион. Техн. науки. - 2008. - Спецвыпуск: Основания, фундаменты и строительные конструкции.- С. 8 - 10.

10. Евтушенко С.И., Маснюк О.И. Сравнение сплошной фундаментной плиты административного здания в г. Ростове -на -Дону серебристой плитой // Строительство - 2008: материалы юбилейн. Междунар. науч.-практ. конф., г. Ростов н/Д.. - Ростов н/Д.: Ростов. гос. строит. ун-т, 2008. - С. 44 - 45.

11. Евтушенко С.И., Бабец Н.Н., Пихур В.Н. Использование связи между графическими и расчётными программными продуктами при проектировании // Информационные технологии в обследовании эксплуатируемых зданий и сооружений: Материалы IX Междунар. науч.- практ. конф.; 11 сент. 2009 г., г. Новочеркасск. - Новочеркасск: ЮРГТУ (НПИ), 2009. - С. 22-24.

12. Систематизация дефектов фасадов промышленных зданий / С.И. Евтушенко, Т.А. Крахмальный, М.П. Крахмальная, В.Е. Шапка, А.Б. Александров // Информационные технологии в обследовании эксплуатируемых зданий и сооружений : материалы XVI международной научно-практической конференции, г. Новочеркасск, 15 ноября 2016 г. / Южно-Российский государственный технический университет (НПИ) имени М.И. Платова.- Новочеркасск, ЮРГПУ (НПИ), 2016.- с. 132-136

13. AutoCAD Разработка приложений, настройка и адаптация/ Н. Полещук/ «БХВ- Петербург», 2006.

14. AutoCAD 2010 и AutoCAD LT 2010. Библия пользователя/ Э. Финкельштейн. Пер. с англ. - М. : ООО «И. Д. Вильямс», 2010. - 1360 с.

15. Проектирование холодильных установок. Расчеты, параметры, примеры / Г.-Й Брайдерт, перевод с немецкого Л.Н. Казанцевой, ТЕРМОКУЛ ТЕХНОСФЕРА, М.- 2006.

16. MICROSOFT EXCEL 2013. Библия пользователя /Дж. Уокенбах/


Войти или Создать
* Забыли пароль?