ЖУРНАЛ «СТА» №1/2007

полняет прикладную управляющую программу, разработанную пользовате- лем, обменивается данными с модуля- ми вводавывода, обеспечивая взаимо- действие прикладной программы с кон- тролируемым объектом, а также осуще- ствляет информационный обмен по се- ти, к которой он подключён. Взаимо- действие прикладной программы кон- троллера с контролируемым объектом и другими узлами сети будет далее назы- ваться взаимодействием с окружением. Традиционно исполнение прикладной программы ПЛК циклично и полностью синхронно относительно операций обме- на данными с окружением. То есть во вре- мя очередного цикла программы данные, полученные программой из окружения, не могут (и не должны!) неожиданно из- мениться до окончания текущего цикла. Кроме того, обновление данных, выводи- мых программой в окружение, происхо- дит точно в конце очередного цикла. С учётом указанных особенностей мо- дель окружения прикладной программы обычно представляется так называемым образом процесса , который состоит из двух непересекающихся областей памя- ти. Первая область образа процесса, на- зываемая областью входных данных , пред- назначена для хранения и обновления значений входных данных прикладной программы в процессе приёма информа- ции от устройств вводавывода и сетевых интерфейсов. Вторая область называется областью выходных данных и служит для хранения и обновления значений выход- ных данных программы в процессе выда- чи информации устройствам вводавы- вода и в сетевые интерфейсы. Упрощён- ный вариант циклограммы функциони- рования контроллера показан на рис. 2. Здесь стоит вспомнить, что перед на- чалом нашего проекта ставилась задача достижения миллисекундных периодов исполнения. Глядя на упрощённую циклограмму ПЛК, можно сделать вы- вод, что наиболее важными факторами в достижении заданного показателя производительности являются произво- дительность центрального процессора и пропускная способность межмодульной внутренней шины. Качество кода, генерируемого компи- лятором прикладных программ, пока выносится за скобки. Предположим, что к внутренней шине контроллера подключены модули с 512 каналами дискретного вводавывода дли- ной 1 бит и с 50 16разрядными каналами аналогового вводавывода. Простой рас- чёт позволяет сделать вывод, что для чте- ния и записи такого количества каналов за 1 мс пропускная способность внутрен- нейшины с учётом всех накладных расхо- дов должна быть не хуже 164 кбайт/с. Далее полагаем, что прикладная про- грамма должна в каждом цикле выпол- нять следующие операции с плавающей точкой (с операндами одинарной точно- сти) над значением каждого канала ана- логового вводавывода: одно преобразо- вание целого двухбайтового значения, одно умножение, одно сложение или вы- читание и одно сравнение. Таким обра- зом, для того чтобы успевать проделы- вать перечисленные нехитрые операции со значениями 50 аналоговых каналов, производительность процессора должна быть не хуже 200000 FLOPs (операций с плавающей точкой в секунду). Разумеет- ся, это довольно грубая оценка, посколь- ку в реальной жизни операций с плаваю- щей точкой в программе может быть зна- чительно больше или не быть вовсе. Кро- ме того, перечисленные операции с пла- вающей точкой требуют разного количе- ства машинных тактов. Наконец, при- кладная программа в ПЛК не одинока – процессор может потребоваться другим подсистемам. Так или иначе, при отсутствии чётко сформулированных критериев проекти- рования ключевых компонентов систе- мы подобные инженерные оценки име- ют право на жизнь. Структура контроллера Структурная схема контроллера Fast- wel I/O представлена на рис. 3. При АППА РАТ НЫ Е С Р Е Д С Т В А / КОН Т Р ОЛЛ Е Р Ы 61 СТА 1/2007 www.cta.ru Время Условные обозначения: исполнение прикладной программы; выполнение операций, связанных с информационным обменом по внешней сети; актуализация выходных данных программы с предыдущего цикла на выходных каналах модулей ввода вывода; ввод данных входных каналов модулей ввода вывода и входящих коммуникационных объектов в область входных данных среды исполнения; передача выходных данных программы сервисам ввода вывода и внешней сети. Рис. 2. Циклограмма исполнения прикладной программы Светодиодные индикаторы Консоль Генератор сигналов сихронизации Процессор RDC1610C Флэш диск 8 Мбайт Узел сопряжения с интерфейсом внешней сети SDRAM 512 кбит 16 Загрузчик и BIOS 16 бит 8 бит 16 бит 8бит Системная шина 8 бит Системная логика и контроллер межмодульной шины ввода вывода Соединитель межмодульной шины ввода вывода WAGO FBUS Преобразователь напряжения 24 В 5 В и 3,3 В для блоков процессора 5 В/1 А для модулей ввода вывода Рис. 3. Структурная схема контроллера CPM70x

RkJQdWJsaXNoZXIy MTQ4NjUy