Ответы в темах
-
АвторЗаписи
-
fergus2022
Участник» тут первым символом ; вы уберете 0 и кнопки будут отправлять соответственно 1 и 2 »
воооот, не знал как 0 убрать, спасибо!fergus2022
УчастникЕсть тег AI_Mode, это выбор настройки 4-20ма или 0-20 на моксе. Скада читает значение этого тега нормально. Но нужно еще, чтобы из скады можно было отправлять настройку, т.е значение. Например, при выборе в моксе 4-20ма, тег получает значение «1». При 0-20ма, соответственно значение «2».
Хотелось бы в скаде вызывать окно команды с двумя кнопками: 4-20ма и 0-20ма, при нажатии которых тегу AI Mode на устройство посылалось значение «1» или «2».fergus2022
УчастникДобрый день, возник похожий вопрос по передаче.
Есть канал AI mode (значение 1 или 2) — нужно через скаду делать настройку (отправлять 1 или 2).
Сделал по аналогии формулуpublic double viborM1(double viborM1) { double val = 0; if (viborM1 == 0) val = 1; else if (viborM1 == 1) val = 2; return val; }И значения команд 4-20Ma; 0-20Ma, размерности 4-20Ma; 0-20Ma. ViborM1 — 145 номер канала.
Если ставлю входной канал valueM1 исп. формулу viborM1(Val(145)) и канал управления 145, то в скаде в ViborM1 вижу 4-20Ма и ValueM1 — «1» соответственно. Как тегу устройства AI mode передать выбранное значение ? (Команда 4-20Ма, значение «1») ?-
Ответ изменён 3 года, 11 месяцев назад пользователем
fergus2022.
fergus2022
УчастникПонятно
fergus2022
УчастникА в arOPC перестановка 1032.
fergus2022
УчастникСейчас без смещения и с перестановкой 2301 — все теги стали отображаться правильно
fergus2022
Участник«Далее скорее всего просто выставить перестановку 2301»
Помогло — спасибо!fergus2022
Участник«Сделайте так, чтобы запрос начинался с ЧЕТНОГО адреса, потому что если сравнивать с arOPC у вас смещение идет, отсюда и проблема»
Сделал для группы адрес начла 520 (как в arOPC). Теперь в таблице вообще везде 0-ли.
Запрос:Part of Data Package Description Value 00 0A Transaction identifier 0x000A (10) 00 00 Protocol identifier 0 = MODBUS protocol 00 06 Length 0x0006 (6) 01 Unit identifier 0x01 (1) 04 Function code 0x04 (4) - Read Input Registers 02 08 Starting address Physical: 0x0208 (520) Logical: 0x0209 (521) 00 08 Quantity 0x0008 (8)ответ:
Part of Data Package Description Value 00 0A Transaction identifier 0x000A (10) 00 00 Protocol identifier 0 = MODBUS protocol 00 13 Length 0x0013 (19) 01 Unit identifier 0x01 (1) 04 Function code 0x04 (4) - Read Input Registers 10 Byte count 0x10 (16) 00 00 40 A0 00 00 41 30 00 00 40 80 00 00 40 C0 Register value 0x0000 (0), 0x40A0 (16544), 0x0000 (0), 0x4130 (16688), 0x0000 (0), 0x4080 (16512), 0x0000 (0), 0x40C0 (16576)Тип данных в шаблоне устройства стоит Float как и в arOPC.
fergus2022
УчастникSend (12): 00 20 00 00 00 06 01 04 02 09 00 08 Receive (7/7): 00 20 00 00 00 13 01 Receive (18/18): 04 10 00 00 00 00 41 30 00 00 40 80 00 00 40 C0 00 00 OK! Send (12): 00 21 00 00 00 06 01 04 02 09 00 08 Receive (7/7): 00 21 00 00 00 13 01 Receive (18/18): 04 10 00 00 00 00 41 30 00 00 40 80 00 00 40 C0 00 00 OK! Send (12): 00 22 00 00 00 06 01 04 02 09 00 08 Receive (7/7): 00 22 00 00 00 13 01 Receive (18/18): 04 10 00 00 00 00 41 30 00 00 40 80 00 00 40 C0 00 00 OK! Send (12): 00 23 00 00 00 06 01 04 02 09 00 08 Receive (7/7): 00 23 00 00 00 13 01 Receive (18/18): 04 10 00 00 00 00 41 30 00 00 40 80 00 00 40 C0 00 00 OK! Send (12): 00 24 00 00 00 06 01 04 02 09 00 08 Receive (7/7): 00 24 00 00 00 13 01 Receive (18/18): 04 10 00 00 00 00 41 30 00 00 40 80 00 00 40 C0 00 00 OK! Send (12): 00 25 00 00 00 06 01 04 02 09 00 08 Receive (7/7): 00 25 00 00 00 13 01 Receive (18/18): 04 10 00 00 00 00 41 30 00 00 40 80 00 00 40 C0 00 00 OK! Send (12): 00 26 00 00 00 06 01 04 02 09 00 08 Receive (7/7): 00 26 00 00 00 13 01 Receive (18/18): 04 10 00 00 00 00 41 30 00 00 40 80 00 00 40 C0 00 00 OK!fergus2022
Участникщас скопирую
fergus2022
Участникиз журнала скриншот
запрос:Part of Data Package Description Value 32 85 Transaction identifier 0x3285 (12933) 00 00 Protocol identifier 0 = MODBUS protocol 00 06 Length 0x0006 (6) 01 Unit identifier 0x01 (1) 04 Function code 0x04 (4) - Read Input Registers 02 09 Starting address Physical: 0x0209 (521) Logical: 0x020A (522) 00 08 Quantity 0x0008 (8)ответ:
32 85 Transaction identifier 0x3285 (12933) 00 00 Protocol identifier 0 = MODBUS protocol 00 13 Length 0x0013 (19) 01 Unit identifier 0x01 (1) 04 Function code 0x04 (4) - Read Input Registers 10 Byte count 0x10 (16) 00 00 00 00 41 30 00 00 40 80 00 00 40 C0 00 00 Register value 0x0000 (0), 0x0000 (0), 0x4130 (16688), 0x0000 (0), 0x4080 (16512), 0x0000 (0), 0x40C0 (16576), 0x0000 (0)fergus2022
Участникfergus2022
Участник«Так поставьте в Scada начинать с 0 и в десятичном виде адресацию. » — так и выставлено. Всё равно приходится со смещением +1 считывать, как выше писал.
fergus2022
Участник«И вероятно опять невнимательность, посмотрите запросы arOPC, хоть один начинается с нечетного адреса? »
В arOPC адрес например 520, в скаде приходится писать 521 (т.е на +1), иначе скада не читает значение.fergus2022
УчастникТ.е чтобы я не пытался отправить в канал AI00 — всегда получаю 0, не зависимо от запроса.
-
Ответ изменён 3 года, 11 месяцев назад пользователем
-
АвторЗаписи