Комплексная диспетчеризация бизнес-центра

Автор работы: Пользователь скрыл имя, 23 Мая 2013 в 08:46, дипломная работа

Описание работы

Объект – семиэтажное отдельно стоящее здание, находящееся по адресу: г. Санкт-Петербург, ул. Савушкина д.83, корп. 3 Бизнес - центр «Антарес». Эксплуатация здания круглогодичная. На цокольном этаже расположен паркинг. Бизнес – центр уже имеет следующие инженерные системы:
Системы вентиляции и кондиционирования

Файлы: 1 файл

DIPLOMMMM.docx

— 2.47 Мб (Скачать файл)

                                                                                                                                                                                                      Modbus RTU   LON                                                                                                                                                                                                                                                   Modbus RTU    LON


 



 


                                                                                                                           Modbus RTU                                        


 

Перед началом  проектирования была построена приблизительная  структурная схема диспетчеризации.

Схемы подключения  к контроллерам, а также полный проект диспетчеризации находится  в приложении 1 к дипломной работе.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Глава 4.Пусконаладка и программирование

 

4.1 Программирование  ПЛК Beckhoff.

Для программирования логических контроллеров «Beckhoff» используется бесплатный лицензированный программный комплекс «Twincat System. «Twincat» - аналог более распространённого программного продукта «CoDeSys», последний используется для программирования контроллеров фирм «Wago», «Owen» и др. Написание программного кода возможно на всех языках стандарта IEC 61131: ST, LD, FBD, SFC, IL. Далее языки стандарта IECрассмотренны более подробно:

 

Язык релейно-контактных схем (LD)

Этот  язык программирования, изобретенный в США десятилетия назад, получил  наиболее широкое распространение. Изначально изобретенный для замены  логических схем, выполненных на релейной технике, язык релейно-контактных схем является базовым в США на сегодняшний  день, и применяется в 95% всех приложений. Визуально этот язык напоминает последовательность цепей управления, в которой все  входы должны быть установлены в  значение «истина» для активации  одного или нескольких выходов.

Язык  релейно-контактных схем получил такое  широкое распространение, потому что  на нем могут писать практически  все программисты в любой стране.

Поскольку он напоминает знакомый всем формат электрических  цепей, даже не специалист в области  программирования, знакомый с электроникой может разобраться в программе  для поиска ошибок в ней. На этом языке легко писать программы. Имея базовое представление о входных  и выходных сигналах, можно начать писать код. Большинство других языков IEC требуют большей подготовки, например, прорисовки диаграмм всех потенциальных  процессов. Наконец,  программа, реализованная  в виде релейно-контактных схем, может 

 

быть организована в виде папок или подпрограмм, которые загружаются в 

контроллер, позволяя проводить легкую сегментацию  программы.

Этот  язык напоминает последовательность цепей  управления, в которой все входы  должны быть установлены в значение «истина» для активации одного или  нескольких выходов.

Язык  релейно-контактных схем идеален для  простых приложений перемещения  материалов. Например, когда один датчик распознает наличие коробки, другой датчик проверяет наличие препятствий, а затем выходной сигнал, при соответствующем  условии, запускает привод для перемещения  коробки на другой конвейер.  В  данном случае дискретные входы контролирую  текущие условия, базовая программа  анализирует эти входы и подает соответствующие сигналы на выходы.   В программе могут быть использованы таймеры, некоторые базовые сравнения  или математические операции, но нет  возможности использовать сложные  функции.

На языке  релейно-контактных схем затруднительно реализовывать более сложный  функционал ПЛК (программируемый логический контроллер, англ.: PLC), сохраняя парадигму  легкой визуализации и понимания. Такие  функции как ПИД-регулирование, тригонометрия  и анализ данных в приложении реализовать  трудно.  Другой сложностью является то, что по мере роста объема программы, ее становится сложно читать и интерпретировать, если нет подробнейшей документации. Наконец, реализация полного процесса управления на языке релейно-контактных схем  может быть чрезвычайно  трудным.

 

Язык функциональных блочных диаграмм (FBD)

Язык релейно-контактных схем является наиболее распространенным, обзор, выполненный журналом Control Engineering несколько месяцев назад, показал растущее применение других языков программирования. Примером является язык функциональных блочных диаграмм. Несмотря на то, что скорость его

распространения несколько замедлилась за последнее  время, относительно таких  языков как  структурированный текст, язык функциональных блочных диаграмм является вторым по степени популярности.

В Функциональной блочной диаграмме блоки «соединены»  вместе в последовательность, которую легко отслеживать. Этот язык использует такие же команды, как и релейно-контактный, но схема визуально более понятна пользователю, который не обладает специальным знаниями в релейной логике.

Многими аспектами этот графический язык напоминает электрическую схему  даже больше, чем релейно-контактный язык. В функциональной блочной диаграмме  блоки «соединены» вместе в последовательность, которую легко отслеживать. Этот язык использует такие же команды, как  и релейно-контактный, но схема визуально  более понятна пользователю, который  не обладает специальными знаниями в  релейной логике. Основным преимуществом  этого языка является легкость отслеживания программы – просто двигайтесь по пути.  Этот язык идеален для простых  программ, состоящих из цифровых входов, таких как фотоэлектрические  датчики, и выходов, таких как  клапаны трубопроводов, и может  использоваться в любых приложениях  наряду с релейно-контактным языком или вместо него.

Однако, этот язык не идеален для больших  программ, использующих специальные  входы и выходы, а также функции. При использовании языка нужен  большой объем экранного пространства, что делает программу нечитаемой при достижении определенного размера.  Также при написании программы  на языке функциональных блочных  диаграмм требуется предварительная  подготовка в виде прописывания алгоритма  перед тем, как писать код, поскольку  впоследствии будет достаточно сложно внести изменения.

 

Язык последовательных функциональных диаграмм (SFC)

Программа, написанная на этом языке, напоминает компьютерную блок-

схему, которую  многие помнят из институтской программы. За начальным шагом

«начальный  шаг» (точка начала диаграммы) идет последовательность шагов и переходов.  Концепция SFC проста: шаг с внутренним кодом, написанным на любом языке  программирования, активен до тех  пор, пока не активен переход, следующий  за ним. При активировании перехода, текущий шаг отключается,  а  следующий за переходом шаг становится активным.  Переход также имеет  код, проверяющий, что выполнены  необходимые условия, позволяющие  программе перейти к следующему шагу.

В программе  на языке SFC, блоки называются шагами, а небольшие горизонтальные линии называются переходами. Как блоки, так и переходы включают в себя небольшие части кода.

Эту форму  программирования легче всего использовать для приложений с повторяющимися многошаговыми процессами или последовательностью  повторяющихся процессов. Примером может быть приложение, которое выбирает предмет в одной месте, проводит его по заданному пути и переносит  в другое место. Поскольку обычно активен только один участок кода, и нужно следить только за одним  переходом, проверка условий и управление процессом может быть достигнуто без больших сложностей.  Язык очень подходит инженерам по обслуживанию, поскольку нагляден, и сегментация  кода облегчает поиск неисправностей. Например, если  механизм в программе  перемещения предметов подходит к предмету, но не берет его,  то инженер по обслуживанию или разработчик  может найти в программе переход  между шагом «переместиться к  предмету» и шагом «взять предмет»  и проверить,  что мешает протеканию процесса.

К недостаткам  языка относится то, что такой  стиль программирования подходит не для всех приложений, поскольку структура, которая накладывается на программу, может ее излишне усложнить. Нужно  потратить много времени на подготовку и планирование, прежде чем начать программировать,  иначе функциональная диаграмма будет запутанной, и  ее будет сложно отслеживать.

Дополнительные  ресурсы, требующиеся для такого программирования, приводят к замедлению процесса написания программы по сравнению с другими языками. Наконец, нужно принять во внимание невозможность конвертирования  в другие языки. Например, языки IL, FBD и LD можно легко конвертировать друг в друга, позволяя воспроизводить участки  кода в виде, наиболее удобном для  пользователя. Язык ST также можно  конвертировать в любой из этих трех языков. Но  язык SFC конвертировать нельзя. Таким образом, этот язык подходит только для пользователей, которые его  хорошо знают, потому что его нельзя будет воспроизвести в другом формате, или для приложений и  у которых аппаратная часть имеет  достаточную скорость и объем  памяти, необходимый для хранения и выполнения программ  на языке SFC.

 

Список  инструкций (IL)

Любой человек  с опытом программирования микропроцессоров или программирования на Ассемблере увидит сходство с программированием  на языке IL. Этот язык состоит из строк  кода, в котором одна строка содержит одну операцию. Таким образом, программа  представляет собой пошаговый список операций, в который можно легко  вводить последовательности простых  математических функций.  К тому же, если программист использует только команды, определяемые IEC, программу, написанную на этом языке можно легко использовать на различных аппаратных платформах. Эти преимущества сделали данный язык очень популярным в Европе, что удивляет многих программистов  в США, которые предпочитают более  удобные графические языки.

Язык IL –  это язык нижнего уровня, и как  таковой работает в ПЛК быстрее  графических языков. Этот язык также  более компактен и потребляет меньше памяти ПЛК.  Метод построчного  текстового ввода, поддерживаемый этим языком, также позволяет очень  быстро вводить программу, при этом не требуется мышка или функциональные клавиши. Программы в современных  системах

автоматизации, написанные на этом языке, легче воспроизводить и редактировать на портативных  устройствах, для чего не требуется  дополнительного программного обеспечения  или ноутбука.

Несмотря  на преимущества данного языка, инженеры по обслуживанию его не очень любят. Возможно, это вызвано тем, что  он менее нагляден, чем язык релейно-контактных схем, и поэтому труднее понять, что делает программа, и какие  ошибки имеют место быть в ней. Аналогично релейно-контактной схеме  по мере увеличения сложности ПЛК, в  списке инструкций могут возникнуть сложности при вводе таких  сложных функций, например, ПИД –  регулирование. Это также относится  и к сложным математическим расчетам.  Список инструкций не очень подходит для таких форм структурного программирования, как диаграмма состояний или  ступенчатая многозвенная схема, что  ограничивает его полезность для  реализации больших программ. Также  спорным является факт, что преимущества скорости и компактности утрачивают свое значение по мере увеличения скорости работы современных ПЛК и большого объема доступной памяти.

Структурированный текст (ST)

Язык ST сильно напоминает языки программирования верхнего уровня, такие как PASCAL или C. Ранее упомянутый обзор Control Engineering показывает, что из всех языков программирования  IEC61131, язык ST получает самое быстрое распространение.

Этот  язык лучше всего подходит для  сложного программирования ПЛК, такого как, например, управление процессами в производстве пластмасс или  химической промышленности. Тригонометрические функции, математические вычисления и  анализ данных на этом языке можно  реализовать легче, чем на языке  релейно-контактных схемах или языке  списка инструкций. Циклы выбора и  указатели  (переменные, используемые для косвенной адресации) позволяют 

реализацию  более компактных программ, чем могут  быть созданы на языке релейно-контактных схем. Для написания программы  на языке ST используется удобный текстовый редактор, который облегчает ввод комментариев в программу, а также позволяет использовать знаки абзацев и пробелы для выделения связанных участков кода. Это облегчает задачу структурирования комплексных программ. Текстовый, неграфический характер языка ST, похожего на язык IL, позволяет создавать программы, которые работают гораздо быстрее, чем программа созданные на языке LD. Дополнительным преимуществом языка ST является то, что он ближе других языков программирования подошел к достижению переносимости, обещанной стандартом  IEC61131. Копирование и вставка в языке ST из редактора одного программного пакета в другой часто может быть выполнено с минимальными изменениями, освобождая программиста от аппаратной платформы. Окончательным преимуществом является то, что многие студенты инженерных специальностей лучше владеют компьютерными языками, чем основами электротехники, и поэтому лучше владеют языком ST, чем LD.

Недостаток  языка ST заключается в том, что  для многих старых специалистов в  области программирования и отладки  среда языка ST является чем-то незнакомым и неудобным. В определенном смысле, код и структура необходимые, чтобы сделать поддержку этого  кода удобной, снижают преимущества, связанные с компактностью программ.  В результате основной тенденцией использования  языка ST является его использование  так сказать «за сценой». Например,  IEC61131 позволяет программисту реализовать  функции на одном языке, а затем  использовать их в другом языке. Таким  образом, программист, скорее всего, включит  программу на языке ST внутрь команды, вызываемой  на языке LD.  Это не обязательно является недостатком, но программисту понадобится тщательно  протестировать любой «скрытый»  код, и удостовериться в отсутствии ошибок, поскольку у других, кто  будет использовать

Информация о работе Комплексная диспетчеризация бизнес-центра