ЖУРНАЛ СТА 4/2014

MODBUS базируется на обычных ин- терфейсах RS-232C/RS-485, аMODBUS TCP функционирует поверх стандарт- ного сетевого транспорта TCP/IP, поэ- тому производителям оборудования и программного обеспечения для АСУ ТП не нужно приобретать специализиро- ванные микросхемы и дорогостоящие реализации стека протоколов. В этой связи на рынке АСУ ТП присутствует огромное количество контроллеров, се- тевых шлюзов, датчиков и программно- го обеспечения, поддерживающих тот или иной вариант протокола MODBUS. Наконец, в основе протоколов MOD- BUS лежит простой для понимания принцип работы: мастер сети, далее на- зываемый клиентом, считывает и запи- сывает данные подчинённых узлов (да- лее – серверов), представленные так на- зываемыми регистрами типа Input Register и Holding Register размером 2 байта каж- дый и/или битовыми полями типа Discrete Input и Coil . В сетиMODBUSRTU или ASCII может быть один клиент и до 246 серверов, а в сети MODBUS TCP максимальное количество клиентов и серверов по существу ограничено только возможностями реализации, поставляе- мой конкретнымпроизводителем. С точ- ки зрения приложения, выполняющегося на узле-клиентеMODBUS, сеть выглядит как область памяти, доступ к ячейкам ко- торой осуществляется по логическим ад- ресам, состоящим из сетевого адреса уз- ла-сервера, номера регистра или битово- го поля и количества регистров или бито- вых полей, к которым нужно получить доступ в текущем запросе. Узлы-серверы читают и обновляют свои участки этой сетевой памяти, и тем самым обеспечи- вается обмен данными между приложе- ниями на разных узлах сети. Разумеется, за простотой и доступ- ностьюпротоколов семействаMODBUS скрыта масса особенностей и ограниче- ний, которые необходимо учитывать при построении той или иной системы, при- чём особенности и ограничения прису- щи как самому протоколу, так и его кон- кретным реализациям в оборудовании и программном обеспечении разных про- изводителей. Особенности реализации MODBUS в контроллерах FASTWEL I/O В контроллерах CPM702 и CPM703 первого поколения линейки FASTWEL I/O в качестве основных сервисов внеш- ней сети реализованы сервер MODBUS RTU/ASCII и сервер MODBUS TCP со- ответственно. На сегодняшний день ос- новным отличием сетевых средств конт- роллеров CPM70x по сравнению с верси- ей 2008 г. является возможность реализа- ции до четырёх серверов MODBUS в приложении CoDeSys 2.3 для любого из контроллеров средствами библиотеки FastwelModbusServer.lib. Для этого могут использоваться коммуникационные пор- ты на базе модулейNIM741/NIM742 или сервисный порт, расположенный под пластиковой крышкой на передней пане- ли контроллера. Контроллеры семейства CPM71x и модульные компьютеры MK905-01\ CDS иMK905-03\CDS с установленной системой исполнения приложений CoDeSys 2.3 имеют значительно более развитые сетевые сервисы MODBUS и MODBUS TCP по сравнению с младши- ми моделями CPM70x. Основной интерфейс внешней сети контроллера CPM712 может быть скон- фигурирован для работы либо в качестве сервера MODBUS RTU или ASCII, либо в качестве клиента (мастера). Сетевой ин- терфейс Ethernet контроллера CPM713 может применяться в качестве сервера и клиента MODBUS TCP одновременно, что позволяет создавать распределённые системы сбора данных и управления без главного вычислительного устройства, роль которого обычно играет более мощ- ный ПЛК или промышленный компью- тер. Более того, одновременно с клиен- том и сервером MODBUS TCP на конт- роллере CPM713 может функциониро- вать один или несколько пользователь- ских сетевых протоколов поверх TCP и/или UDP, реализуемых в приложении CoDeSys 2.3 средствами системной библиотекиFastwelSysLibSockets.lib. Кпе- речисленным сетевым возможностям CPM71x можно добавить до четырёх до- полнительных серверов MODBUS сред- ствами уже упомянутой библиотеки FastwelModbusServer.lib через последова- тельные порты на базе NIM741/NIM742 или через сервисный порт. Сервер MODBUS и MODBUS TCP контроллеров CPM712 и CPM713 имеет так называемую плоскуюмодель отобра- жения переменных приложения на ре- гистры и битовые поляMODBUS, кото- рая, по мнению большинства пользова- телей, значительно более естественна и удобна, чем регистровая модель, исполь- зуемая в контроллерах CPM702 и CPM703. Однако для облегчения модер- низации ранее внедрённых систем конт- роллеры CPM712/CPM713 также под- держивают регистровуюмодель, что поз- воляет без изменений в конфигурации сети использовать проекты, ранее разра- ботанные для CPM702 и CPM703, в контроллерах CPM712 и CPM713. Регистровая модель отображения пе- ременных предполагает, что пользова- тель в окне ресурса PLC Configuration проекта CoDeSys 2.3 добавляет в кон- фигурацию сервера MODBUS множе- ство элементов типа Input Register, Hold- ing Register, Bitwise Input Register и Bitwise Holding Register , каждый из которых описывает два байта в области входных и выходных данных приложения, как показано на рис. 1. Элементы Input Register и Holding Regis- ter описывают соответствующие регист- ры сервера, причём входными и выход- ными они являются по отношению к клиенту (мастеру) MODBUS. Чтение данных, отображённых в приложении контроллера на элементы Input Register , осуществляется клиентом MODBUS при помощи функции 04, а для доступа к АППА РАТ НЫЕ С Р Е ДС Т В А / П РОМЫШЛ Е ННЫЕ КОН Т РОЛЛ Е РЫ 73 СТА 4/2014 www.cta.ru Рис. 1. Регистровая модель отображения переменных на регистры и битовые поля MODBUS

RkJQdWJsaXNoZXIy MTQ4NjUy