Повідомлення створено: 20. 03. 2017 [12:38]
|
Godzilla
Арсен Закоян
Contributor
Автор теми
Зареєстрован(а) с: 12.02.2013
Повідомлення: 123
|
Столкнулся с такой проблемой, в модуле ModBUS в подсистеме Транспортные Протоколы не могу в коде обозначить id параметра с обратной последовательностью байт в регистре. То есть например
все нормально работает.
а если написать
то получим "Ошибка компиляции: Переменная R_f0x01 не определена но использована...."
Каким образом можно это обойти?
[Повідомлення редагувалось 1 раз(ів), останній раз 20.03.2017 в 12:48.]
Вкладений файл
1.jpg (Тип файлу: image/jpeg, Розмір: 172.68 кілобайтів) — 1604 завантажень
|
Повідомлення створено: 20. 03. 2017 [13:00]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
|
Чтением документации:
Поскольку в указателе расширенных типов регистров может использоваться недопустимый символ ',' то доступ к нему из процедуры можно осуществить только альтернативным способом, через объект "arguments":
arguments["R_s10,5w"] = "9876543210";
Learn, learn and learn better than work, work and work.
|
Повідомлення створено: 22. 03. 2017 [12:23]
|
Godzilla
Арсен Закоян
Contributor
Автор теми
Зареєстрован(а) с: 12.02.2013
Повідомлення: 123
|
Спасибо, Роман, помогло. Но есть еще одна проблемка, нужно в коде модуля ModBUS из Транспортных Протоколов прописать следующее
arguments["R_f0x01,0x00"]=EVAL_REAL
arguments["R0x37w"]=EVAL_INT
и в колонке Значения будут значится <EVAL>, но когда в сборе данных создаешь контроллер и перечень параметров, например
R_f:0x01,0x00:r:hex0:параметр с вещественным
R:0x37:r:hex37: параметр с целым числом
то видим следующее Атрибутах
параметр с вещественным:<EVAL>
параметр с целым числом:1
Почему параметр с целым числом равен единице? Разве так должно быть?
[Повідомлення редагувалось 1 раз(ів), останній раз 22.03.2017 в 12:25.]
Вкладений файл
3.png (Тип файлу: image/png, Розмір: 208.91 кілобайтів) — 1518 завантажень
|
Повідомлення створено: 22. 03. 2017 [14:25]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
|
"Godzilla" wrote:
Почему параметр с целым числом равен единице? Разве так должно быть?
Может и такое быть, поскольку через ModBus регистры внутренний EVAL_INT OpenSCADA, размером 64 разряда, очевидно неизменным не дойдёт, не говря уже о том, что прочитающий в принципе про всякие EVAL знать ничего не может.
EVAL это внутреннее зарезервированное значение OpenSCADA!
Learn, learn and learn better than work, work and work.
|
Повідомлення створено: 22. 03. 2017 [15:47]
|
Godzilla
Арсен Закоян
Contributor
Автор теми
Зареєстрован(а) с: 12.02.2013
Повідомлення: 123
|
А это можно как нибудь исправить, ведь чтение EVAL_REAL происходит без проблем?
|
Повідомлення створено: 22. 03. 2017 [16:00]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
|
"Godzilla" wrote:
А это можно как нибудь исправить, ведь чтение EVAL_REAL происходит без проблем?
Это не ошибка!
Learn, learn and learn better than work, work and work.
|