-
Вложений: 2
СПК107 и Iridium
Помогите, пожалуйста, связать СПК107 и Iridium.
В СПК107 добавил ModbusMaster и ModbusSlave, в слэйве добавил канал с привязкой к двум переменным типа Word (Код функции - 16). Iridium успешно подключается по Modbus RTU, но переменные не читает и не записывает.
Проверил чтение/запись регистров через MasterOPC Modbus Server - переменные читаются.
Во вложении тестовый проект для СПК и иридума.
-
Даже не глядя проект,сразу вопрос, Вы зачем мастера в спк создали, мастер не будет отвечать на запросы других,ему по статусу не положено
-
Так какое устройство у вас в роли мастера сети?
Подробную инструкцию по обмену по интерфейсам вы можете скачать здесь http://www.owen.ru/forum/attachment....5&d=1379506172
-
В роли мастера - СПК, спасибо за подсказки и инструкцию.
-
Так и не получилось связать иридиум с СПК107, создал слэйв, привязал переменные к каналам. Но перемененные считать в иридиум не получается.
:confused:
-
Возможно при чтении использую неверные адреса регистров?
Запись проходит успешно в регистры IW с адресами 0 и 1. Но какие адреса использовать при чтении регистров QW? Они ведь тоже начинаются с 0? Считываю их функцией 3 и получаю ноли.
http://f5.s.qip.ru/14rHtvhDO.png
-
Input регистры функция чтения 3, записи 16 начиная с 0х0000
Output регистры функция чтения 4, записи нет, начиная с 0х0000
Мастер инициатор обмена.
Ранее вы писали что СПК мастер, судя по скриншоту вы настроили его как слейв и даже успешно.
-
На данный момент две проблемы:
1. Каким образом сохранять значения в Input регистрах? Сейчас я получаю в Input регистры значения и перевожу их в Output.
2. Очень большие задержки между нажатием кнопки в Iridium и приемом сигнала в СПК. (при этом если посылать команды из тестеров то всё быстро). С этой проблемой обращусь к тех.поддержке иридиума.
-
1.Функция записи в input регистры -16 в десятичном представлении или 10 в шестнадцатиричном (в разных системах по разному).
2.Это настройки цикла опроса, т.к. мастер у вас иридиум , то данные настройки производятся в нем.
-
Запись в регистры проходит, переменным присваивается значение, но при следующем цикле регистры IW обнуляются. Приходится сохранять полученные данные в промежуточные переменные.
Возможно ли сохранять значения в IW регистрах?