Современные технологии автоматизации» («СТА») —  журнал для квалифицированных специалистов по промышленной автоматизации Форум СТА — современные технологии автоматизации Домашняя страница
Домашняя страница форума CTA Домашняя страница форума CTA > II. АСУТП и SCADA > ПЛК и микроконтроллеры
  Активные темы Активные темы
  FAQ FAQ  Искать в форуме   Зарегистрироваться Зарегистрироваться  Вход в систему Вход в систему

Wago 841 Modbus

 Ответить Ответить
Автор
Сообщение
Valerik Смотреть выпадающим
Участник
Участник


Присоединился: 13 Апрель 2004
Online Status: Offline
Публикации: 58
Свойства публикации Свойства публикации   Ответить, цитируя автора - Valerik Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Тема сообщения: Wago 841 Modbus
    Опубликовано: 24 Декабрь 2009 21:34
Есть Wago 841, модуль выходов 530. Значения выходов успешно читаются  через ModbusTCP по адресу 513 (Read Coil) или 40513. По какому адресу надо записать чтобы включить/выключить выход?  
Наверх
Chupakabra2 Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 19 Апрель 2006
Online Status: Offline
Публикации: 136
Свойства публикации Свойства публикации   Ответить, цитируя автора - Chupakabra2 Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 25 Декабрь 2009 11:22
Писать нужно тоже по адресу 513, "write coil", но предварительно в CoDeSys нужно разрешить в ресурсах, в PLC Cofiguraton запись в выходы модуля по сети. Параметр PAAsignment = fieldbus1 (который соответствует Modbus TCP протоколу).
Наверх
Valerik Смотреть выпадающим
Участник
Участник


Присоединился: 13 Апрель 2004
Online Status: Offline
Публикации: 58
Свойства публикации Свойства публикации   Ответить, цитируя автора - Valerik Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 25 Декабрь 2009 11:52
Спасибо! Но теперь видимо PLC не сможет управлять выходами. Хотелось с панели оператора управлять  напрямую  выходами, но чтобы и программа могла это делать.  
Наверх
Chupakabra2 Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 19 Апрель 2006
Online Status: Offline
Публикации: 136
Свойства публикации Свойства публикации   Ответить, цитируя автора - Chupakabra2 Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 25 Декабрь 2009 12:24
Первоначально опубликовано Valerik

Спасибо! Но теперь видимо PLC не сможет управлять выходами. Хотелось с панели оператора управлять  напрямую  выходами, но чтобы и программа могла это делать.  
 
Предполагал, что Вы спросите об этом :)
Нужно написать программу, которая будет управлять выходами в зависимости от своей логики и объявить программные переменных, доступные по сети (через Modbus).
 
Переменные проще всего взять из области прямоадресуемой памяти: %M (X,W,D)
Эта адресация отображается в область модбас начиная с адреса modbus: 12288, причем можно работать c регистрами, можно с дискретами. Эти переменный доступны на чтение и запись.
 
Т.е.
%MW0   <-> 12288 (области 3x, 4x)
%MX0.0   <-> 12288 (области 0x, 1x)
%MX0.1   <-> 12289 (области 0x, 1x)
 
Наверх
Valerik Смотреть выпадающим
Участник
Участник


Присоединился: 13 Апрель 2004
Online Status: Offline
Публикации: 58
Свойства публикации Свойства публикации   Ответить, цитируя автора - Valerik Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 25 Декабрь 2009 12:34
Еще раз спасибо, так всегда и делал.  Со стороны Scada так и управляется. Хотелось с панели оператора не использовать  переменные программы , а управлять напрямую выходами. 
Наверх
Chupakabra2 Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 19 Апрель 2006
Online Status: Offline
Публикации: 136
Свойства публикации Свойства публикации   Ответить, цитируя автора - Chupakabra2 Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 25 Декабрь 2009 13:00

Напрямую (параллельно с программой) управлять не получится. Кроме того, существовала бы проблема приоритетов управления выходами (диспетчеризация выходов). Эта проблема как раз и решается в написанной вами программе, где вы алгоритмом разрешаете/запрещаете, определяете приориты управления. Придется несколько программных переменных (в M области) складывать по OR, например для DO, а сумму на выход.

Наверх
Valerik Смотреть выпадающим
Участник
Участник


Присоединился: 13 Апрель 2004
Online Status: Offline
Публикации: 58
Свойства публикации Свойства публикации   Ответить, цитируя автора - Valerik Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 25 Декабрь 2009 13:18
Пришел к такому же выводу. Не хотелось еще переменных.Smile
Наверх
 Ответить Ответить

Переход на форум Права доступа на форуме Смотреть выпадающим

Bulletin Board Software by Web Wiz Forums® version 9.64
Powered by Web Wiz Forums Free Express Edition
Copyright ©2001-2009 Web Wiz