СТА 2009-2
92 СТА 2/2009 www.cta.ru символических ссылок на каналы регистров в редакторе кон фигураций PLC Configuration. Откройте древовидный список модуля DIM718, выберите подпункт Outputs [FIX]. Данные первого канала дискретного вывода отображаются в выход ном регистре %QX2.8. После двойного щелчка в начале стро ки AT %QX2.8: BOOL; (* Bit 0*) введите имя переменной DO1 (рис. 5). Аналогично объявите переменную DI1 в древовидном списке модуля дискретного ввода DIM717 в строке AT % IX21.0: BOOL; (* Bit 0*). Конфигурирование внешней сети Modbus Для обмена данными между ПЛК CPM702 и панелью опе ратора используется протокол Modbus RTU. При этом рабо та осуществляется через коммуникационный порт COM2 интерфейса RS 485. Для конфигурирования внешней сети Modbus выберите пункт Modbus[FIX] в редакторе PLC Configuration. Введите параметры сети в соответствии со зна чениями в таблице 2. Для обмена данными между ПЛК CPM703 и панелью опе ратора используется протокол Modbus TCP/IP. Для конфигу рирования внешней сети Modbus выберите пункт Modbus TCP[FIX] в редакторе PLC Configuration. Введите параметры сети в соответствии со значениями в таблице 3. Диапазоны адресов регистров для работы ПЛК FASTWEL I/O по внешней сети Modbus RTU или Modbus TCP/IP представлены в таблице 4. Для передачи данных канала дискретного ввода по сети Modbus необходимо использовать делимый входной регистр Bitwise Input Register, который добавляется с помощью пра вого щелчка мыши в поле Modbus[FIX] для CPM702 или ModbusTCP[FIX] для CPM703. В окне настройки параметров Bitwise Input Register выберите адрес Modbus, например, 100. Используем для отображения данных регистр %QX3.0, опре делим его как OUT1 ( рис. 6). Рассчитаем адрес битового поля по формуле, приведённой в таблице 3: DiscreteInputAddress = (RegisterAddress — 1) × 16 + n = = (100 — 1) × 16 × 1 = 1585. Для получения данных от панели оператора по сети Modbus необходимо использовать делимый выходной ре гистр Bitwise Holding Register. Конфигурация осуществляется аналогичным образом: в окне настроек параметров Bitwise Holding Register выберите адрес Modbus, например, 200. Ис пользуйте регистр %IX21.8 для записи значения сигнала, оп ределив его как INP1. Рассчитаем адрес битового поля по формуле, приведённой в таблице 3: CoilAddress = (RegisterAddress —1) × 16 +n=(200—1) × 16 +1 = = 3185. Написание программного кода Для того чтобы во время исполнения программы в конт роллере происходило обновление значений каналов, соот ветствующих регистрам в конфигурации Modbus, необходи мо, чтобы ссылающиеся на них переменные хотя бы один раз были использованы в теле программы. Таким образом, программа будет иметь вид (рис. 7): В ЗАПИСНУЮ КНИЖК У ИНЖЕ Н Е РА Рис. 6. Объявление переменной делимого входного регистра Параметр Значение Адрес узла 1 Режим протокола RTU Скорость обмена, бод 19200 Количество битов данных 8 Четность None Количество стоп%битов 1 Таблица 2 Параметры сети Modbus RTU для порта RS%485 ПЛК CPM702 Параметр Значение IP%адрес 192.168.0.200 Маска подсети 255.255.255.0 Адрес шлюза 255.255.255.255 Таблица 3 Параметры сети Modbus TCP/IP для порта Ethernet ПЛК CPM703 Тип объекта Диапазон Комментарий Input Register 4097…16383 Входной регистр Holding Register 4097…16383 Выходной регистр Bitwise Input Register 1…4095 Делимый входной регистр Адрес битового поля вычисляется по следующей формуле: DiscreteInputAddress = ( RegisterAddress – 1) × 16 + n, где DiscreteInputAddress – адрес битового поля в запросе, RegisterAddress – адрес делимого входного регистра, n – номер битового поля, начиная с 1 Bitwise Holding Register 1…4095 Делимый выходной регистр Адрес битового поля вычисляется по следующей формуле: CoilAddress = ( RegisterAddress – 1) × 16 + n, где CoilAddress – адрес битового поля в запросе, RegisterAddress – адрес делимого входного регистра, n – номер битового поля, начиная с 1 Таблица 4 Диапазоны адресов регистров коммуникационных объектов, поддерживаемых сервисом внешней сети контроллера узла FASTWEL I/O Рис. 5. Объявление переменной в редакторе конфигурации PLC Configuration © СТА-ПРЕСС
Made with FlippingBook
RkJQdWJsaXNoZXIy MTQ4NjUy