![]() |
![]() ![]() |
|
Связь с внешним миром Modbus, RS232, RS485, Lon и другое. |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
![]() |
#1 |
Senior Member
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 3 847
Благодарил(а): 224 раз(а)
Поблагодарили:
141 раз(а) в 133 сообщениях
|
![]()
нет связи.
судя по лампочкам Rx/Tx на хонейвелле посылку принимает и что-то отвечает. 2Gi получает нули по всей карте переменных. блок диагностики проблем со связью не показывает. кто-нить с таким контроллером дело имел? м.б. какие-нить фичи есть? |
![]() |
![]() |
![]() |
#2 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
![]()
Неплохо бы заглянуть в траффик. Что хонивел отвечает на запросы.
__________________ В сегнетиксе не работаю с самого начала 2019 года. |
![]() |
![]() |
![]() |
#4 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 17 343
Благодарил(а): 15 раз(а)
Поблагодарили:
606 раз(а) в 554 сообщениях
|
![]() Исходя из этого, предскажу, что Ханивелл отвечает нулями. В итоге одно из двух: либо 2Gi спрашивает не по тем адресам, считывая нули, либо данные на нужных адресах действительно равны нулю. Протокол-то работает без ошибок. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
![]() |
![]() |
![]() |
#5 |
Senior Member
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 3 847
Благодарил(а): 224 раз(а)
Поблагодарили:
141 раз(а) в 133 сообщениях
|
![]() стр 80 и 85 - тут таблица переменных https://yadi.sk/d/v-VAHc6Qz8uLx карта для 2Gi может я что-то не так сделал? ![]() |
![]() |
![]() |
![]() |
#6 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
![]()
Посмотрел инструкцию и составленную карту.
Похоже, что всё хорошо, в плане адресации. А учитывая, что переменные идут подряд - обязательно что-нибудь бы считывалось, даже при проблемах с адресом. Всё-таки обзор траффика даст более полную картину, хотя допускаю, что в этих регистрах хранятся нули. Групповые запросы отключать пробовали? __________________ В сегнетиксе не работаю с самого начала 2019 года. |
![]() |
![]() |
![]() |
#7 |
Senior Member
Регистрация: Aug 2013
Адрес: Москва
Сообщения: 600
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
![]() 2 - Все адреса сделать hold. __________________ Всё, что нельзя выразить в цифрах — это не наука, это — мнение. |
![]() |
![]() |
![]() |
#9 |
Senior Member
Регистрация: Aug 2013
Адрес: Москва
Сообщения: 600
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
![]()
Что не помогло? Догадывался надо что делали?
__________________ Всё, что нельзя выразить в цифрах — это не наука, это — мнение. |
![]() |
![]() |
![]() |
#10 |
Senior Member
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 3 847
Благодарил(а): 224 раз(а)
Поблагодарили:
141 раз(а) в 133 сообщениях
|
![]() |
![]() |
![]() |
![]() |
#11 |
Senior Member
Регистрация: Aug 2013
Адрес: Москва
Сообщения: 600
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
![]() Увеличить период опроса пробовали? Таймаут увеличить пробовали? Я бы пробовал по другому. В MODBUS Scanner-е. Создал одну переменную. Добился бы ответа. Создал вторую. По отдельности опросил (без группового ответа). Опросил вместе. Создал остальные. Опросил вместе (некоторые устройства не поддерживают опрос свыше хх переменных одновременно). Потихоньку уменьшал бы период - до начала ошибок - потом этот период*2. Как то так ... __________________ Всё, что нельзя выразить в цифрах — это не наука, это — мнение. |
![]() |
![]() |
![]() |
#12 |
Senior Member
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 3 847
Благодарил(а): 224 раз(а)
Поблагодарили:
141 раз(а) в 133 сообщениях
|
![]() подскажите плз кому не лень еcть CAS Modbus Scaner - не пойму что куда вводить чтоб попробовать на столе есть 2Gi подключенный по TCP что-то создал, запусти тест пишет нот авелейбл или надо сразу к 485му прицепиться? или взять другую программулину? p.s. |
![]() |
![]() |
![]() |
#13 |
Senior Member
Регистрация: Aug 2013
Адрес: Москва
Сообщения: 600
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
![]()
Пытаетесь по адресу IP 192.168.1.199 modbus 2-5 адресу найти SMH2Gi?
А в нем созданы переменные? MODBUS адрес у него какой? __________________ Всё, что нельзя выразить в цифрах — это не наука, это — мнение. |
![]() |
![]() |
![]() |
#14 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 17 343
Благодарил(а): 15 раз(а)
Поблагодарили:
606 раз(а) в 554 сообщениях
|
![]() Девайс возвращает общую ошибку. Причём это, похоже, начало ответа, т.к. короткий он слишком. Ошибкой может быть тут всё. И что указанные биты нельзя прочесть в таком количестве. И что по этим адресам их может не быть. И что ошибка в модбас-адресе. Но видно, что запрос есть и есть ответ на него. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
![]() |
![]() |
![]() |
#15 |
Senior Member
Регистрация: Aug 2013
Адрес: Москва
Сообщения: 600
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
![]() А в SMH2Gi скорее всего нет переменных на чтение. Пустая. Вот из неё ничего и не читается. __________________ Всё, что нельзя выразить в цифрах — это не наука, это — мнение. |
![]() |
![]() |
![]() |
#16 |
Senior Member
Регистрация: Aug 2013
Адрес: Москва
Сообщения: 600
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
![]()
Берём CAS, берём насосную станцию WILO CC с MOXA в качестве моста.
Опрашиваем. __________________ Всё, что нельзя выразить в цифрах — это не наука, это — мнение. |
![]() |
![]() |
![]() |
#18 |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 258
Благодарил(а): 8 раз(а)
Поблагодарили:
163 раз(а) в 160 сообщениях
|
![]() |
![]() |
![]() |
![]() |
#19 |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 258
Благодарил(а): 8 раз(а)
Поблагодарили:
163 раз(а) в 160 сообщениях
|
![]() |
![]() |
![]() |
![]() |
#20 |
Senior Member
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 3 847
Благодарил(а): 224 раз(а)
Поблагодарили:
141 раз(а) в 133 сообщениях
|
![]()
вопщем что-то получилось.
CAS-ом что-то прочитать удалось, правда всего группу из первых 16 адресов, остальные как ни бился - не получается. но, наладить связь с 2Gi - нивкакую да, и теперь мне не понятно соответствие адресов. в мануале указаны 1-2-3... CAS читает 40001-40002-40003... что задавать в карте для 2Gi? |
![]() |
![]() |
![]() |
#21 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 17 343
Благодарил(а): 15 раз(а)
Поблагодарили:
606 раз(а) в 554 сообщениях
|
![]() Шаг шестой. Раскрывайте врезку под плюсиком. "Что же такое физическая адресация и чем она отличается от логической?" __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
![]() |
![]() |
![]() |
#22 |
Senior Member
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 3 847
Благодарил(а): 224 раз(а)
Поблагодарили:
141 раз(а) в 133 сообщениях
|
![]() т.е. карту я создал правильно. так? а связи нет. пытался читать только первые 14 регистров которые удалось прочесть CAS-ом не получилось. |
![]() |
![]() |
![]() |
#23 |
Senior Member
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 3 847
Благодарил(а): 224 раз(а)
Поблагодарили:
141 раз(а) в 133 сообщениях
|
![]()
забыл, вот логи обмена
Код:
[12:28:54] <= Response: 01 03 1C FF C8 01 D5 02 CB 02 38 00 01 00 01 00 01 00 00 00 00 00 01 00 00 00 01 00 36 00 47 AA 24 [12:28:53] => Poll: 01 03 00 00 00 0E C4 0E [12:28:50] Recv error: Exception Response: The device responded but with an error instead of data 0x02 - ILLEGAL DATA ADDRESS The data address sent in the query is not an allowable address for the server (or slave). More specifically, the combination of reference number and transfer length is invalid. For a controller with 100 registers, a request with offset 96 and length 4 would succeed, a request with offset 96 and length 5 will generate exception 02. A request for offset 200 will also produce this exception. [12:28:49] <= Response: 01 83 02 C0 F1 [12:28:48] => Poll: 01 03 00 18 00 02 44 0C [12:28:38] Recv error: Exception Response: The device responded but with an error instead of data 0x02 - ILLEGAL DATA ADDRESS The data address sent in the query is not an allowable address for the server (or slave). More specifically, the combination of reference number and transfer length is invalid. For a controller with 100 registers, a request with offset 96 and length 4 would succeed, a request with offset 96 and length 5 will generate exception 02. A request for offset 200 will also produce this exception. [12:28:37] <= Response: 01 83 02 C0 F1 [12:28:36] => Poll: 01 03 00 18 00 01 04 0D [12:28:22] Error - Modbus message invalid data length [12:28:22] <= Response: 01 03 00 20 F0 [12:28:21] => Poll: 01 03 00 18 00 00 C5 CD [12:28:02] Recv error: Exception Response: The device responded but with an error instead of data 0x02 - ILLEGAL DATA ADDRESS The data address sent in the query is not an allowable address for the server (or slave). More specifically, the combination of reference number and transfer length is invalid. For a controller with 100 registers, a request with offset 96 and length 4 would succeed, a request with offset 96 and length 5 will generate exception 02. A request for offset 200 will also produce this exception. [12:28:00] <= Response: 01 83 02 C0 F1 [12:28:00] => Poll: 01 03 00 17 00 01 34 0E [12:27:48] Recv error: Exception Response: The device responded but with an error instead of data 0x02 - ILLEGAL DATA ADDRESS The data address sent in the query is not an allowable address for the server (or slave). More specifically, the combination of reference number and transfer length is invalid. For a controller with 100 registers, a request with offset 96 and length 4 would succeed, a request with offset 96 and length 5 will generate exception 02. A request for offset 200 will also produce this exception. [12:27:47] <= Response: 01 83 02 C0 F1 [12:27:46] => Poll: 01 03 00 16 00 01 65 CE [12:27:36] Recv error: Exception Response: The device responded but with an error instead of data 0x02 - ILLEGAL DATA ADDRESS The data address sent in the query is not an allowable address for the server (or slave). More specifically, the combination of reference number and transfer length is invalid. For a controller with 100 registers, a request with offset 96 and length 4 would succeed, a request with offset 96 and length 5 will generate exception 02. A request for offset 200 will also produce this exception. [12:27:33] <= Response: 01 83 02 C0 F1 [12:27:32] => Poll: 01 03 00 15 00 01 95 CE [12:27:23] Recv error: Exception Response: The device responded but with an error instead of data 0x02 - ILLEGAL DATA ADDRESS The data address sent in the query is not an allowable address for the server (or slave). More specifically, the combination of reference number and transfer length is invalid. For a controller with 100 registers, a request with offset 96 and length 4 would succeed, a request with offset 96 and length 5 will generate exception 02. A request for offset 200 will also produce this exception. [12:27:22] <= Response: 01 83 02 C0 F1 [12:27:21] => Poll: 01 03 00 13 00 01 75 CF [12:27:02] Recv error: Exception Response: The device responded but with an error instead of data 0x02 - ILLEGAL DATA ADDRESS The data address sent in the query is not an allowable address for the server (or slave). More specifically, the combination of reference number and transfer length is invalid. For a controller with 100 registers, a request with offset 96 and length 4 would succeed, a request with offset 96 and length 5 will generate exception 02. A request for offset 200 will also produce this exception. [12:27:00] <= Response: 01 83 02 C0 F1 [12:27:00] => Poll: 01 03 00 11 00 01 D4 0F [12:26:47] <= Response: 01 03 02 00 01 79 84 [12:26:46] => Poll: 01 03 00 10 00 01 85 CF [12:26:37] <= Response: 01 03 02 00 00 B8 44 [12:26:37] => Poll: 01 03 00 0F 00 01 B4 09 [12:26:26] <= Response: 01 03 02 00 00 B8 44 [12:26:25] => Poll: 01 03 00 0E 00 01 E5 C9 [12:26:14] <= Response: 01 03 02 00 47 F8 76 [12:26:14] => Poll: 01 03 00 0D 00 01 15 C9 [12:26:00] Error - Modbus message invalid data length [12:26:00] <= Response: 01 03 00 20 F0 [12:25:59] => Poll: 01 03 00 0D 00 00 D4 09 [12:25:57] Error - Modbus message invalid data length [12:25:57] <= Response: 01 03 00 20 F0 [12:25:56] => Poll: 01 03 00 0D 00 00 D4 09 [12:25:44] Error - Modbus message invalid data length [12:25:43] <= Response: 01 03 00 20 F0 [12:25:43] => Poll: 01 03 00 11 00 00 15 CF [12:25:39] Error - Modbus message invalid data length [12:25:39] <= Response: 01 03 00 20 F0 [12:25:38] => Poll: 01 03 00 11 00 00 15 CF [12:25:10] Recv error: Exception Response: The device responded but with an error instead of data 0x02 - ILLEGAL DATA ADDRESS The data address sent in the query is not an allowable address for the server (or slave). More specifically, the combination of reference number and transfer length is invalid. For a controller with 100 registers, a request with offset 96 and length 4 would succeed, a request with offset 96 and length 5 will generate exception 02. A request for offset 200 will also produce this exception. [12:25:09] <= Response: 01 83 02 C0 F1 [12:25:08] => Poll: 01 03 00 14 00 01 C4 0E [12:24:57] Recv error: Exception Response: The device responded but with an error instead of data 0x01 - ILLEGAL FUNCTION The function code received in the query is not an allowable action for the server (or slave). This may be because the function code is only applicable to newer devices, and was not implemented in the unit selected. It could also indicate that the server (or slave) is in the wrong state to process a request of this type, for example because it is unconfigured and is being asked to return register values. [12:24:56] <= Response: 01 81 01 81 90 [12:24:55] => Poll: 01 01 00 14 00 01 BD CE [12:24:45] Recv error: Exception Response: The device responded but with an error instead of data 0x01 - ILLEGAL FUNCTION The function code received in the query is not an allowable action for the server (or slave). This may be because the function code is only applicable to newer devices, and was not implemented in the unit selected. It could also indicate that the server (or slave) is in the wrong state to process a request of this type, for example because it is unconfigured and is being asked to return register values. [12:24:43] <= Response: 01 82 01 81 60 [12:24:43] => Poll: 01 02 00 14 00 01 F9 CE [12:24:30] Recv error: Exception Response: The device responded but with an error instead of data 0x01 - ILLEGAL FUNCTION The function code received in the query is not an allowable action for the server (or slave). This may be because the function code is only applicable to newer devices, and was not implemented in the unit selected. It could also indicate that the server (or slave) is in the wrong state to process a request of this type, for example because it is unconfigured and is being asked to return register values. [12:24:26] <= Response: 01 84 01 82 C0 [12:24:25] => Poll: 01 04 00 14 00 01 71 CE [12:22:45] Recv error: Exception Response: The device responded but with an error instead of data 0x02 - ILLEGAL DATA ADDRESS The data address sent in the query is not an allowable address for the server (or slave). More specifically, the combination of reference number and transfer length is invalid. For a controller with 100 registers, a request with offset 96 and length 4 would succeed, a request with offset 96 and length 5 will generate exception 02. A request for offset 200 will also produce this exception. [12:22:43] <= Response: 01 83 02 C0 F1 [12:22:43] => Poll: 01 03 00 14 00 01 C4 0E [12:22:41] <= Response: 01 03 02 00 00 B8 44 [12:22:40] => Poll: 01 03 00 0F 00 01 B4 09 [12:22:31] Error - Modbus message invalid data length [12:22:31] <= Response: 01 03 00 20 F0 [12:22:31] => Poll: 01 03 00 63 00 00 B5 D4 [12:22:27] Error - Modbus message invalid data length [12:22:27] <= Response: 01 03 00 20 F0 [12:22:26] => Poll: 01 03 00 63 00 00 B5 D4 [12:22:23] <= Response: 01 03 02 00 00 B8 44 [12:22:22] => Poll: 01 03 00 0F 00 01 B4 09 [12:22:20] Recv error: Exception Response: The device responded but with an error instead of data 0x02 - ILLEGAL DATA ADDRESS The data address sent in the query is not an allowable address for the server (or slave). More specifically, the combination of reference number and transfer length is invalid. For a controller with 100 registers, a request with offset 96 and length 4 would succeed, a request with offset 96 and length 5 will generate exception 02. A request for offset 200 will also produce this exception. [12:22:18] <= Response: 01 83 02 C0 F1 [12:22:17] => Poll: 01 03 00 14 00 01 C4 0E [12:22:15] Recv error: Exception Response: The device responded but with an error instead of data 0x03 - ILLEGAL DATA VALUE A value contained in the query data field is not an allowable value for server (or slave). This indicates a fault in the structure of the remainder of a complex request, such as that the implied length is incorrect. It specifically does NOT mean that a data item submitted for storage in a register has a value outside the expectation of the application program, since the MODBUS protocol is unaware of the significance of any particular value of any particular register. [12:22:12] <= Response: 01 83 03 01 31 [12:22:12] => Poll: 01 03 00 10 00 02 C5 CE [12:21:52] <= Response: 01 03 1C FF C6 01 CD 02 C6 02 3B 00 01 00 01 00 01 00 00 00 00 00 01 00 00 00 01 00 36 00 48 41 9C [12:21:51] => Poll: 01 03 00 00 00 0E C4 0E [11:42:00] Recv error: Exception Response: The device responded but with an error instead of data 0x02 - ILLEGAL DATA ADDRESS The data address sent in the query is not an allowable address for the server (or slave). More specifically, the combination of reference number and transfer length is invalid. For a controller with 100 registers, a request with offset 96 and length 4 would succeed, a request with offset 96 and length 5 will generate exception 02. A request for offset 200 will also produce this exception. [11:41:57] <= Response: 01 83 02 C0 F1 [11:41:56] => Poll: 01 03 00 14 00 01 C4 0E [11:41:44] Recv error: Exception Response: The device responded but with an error instead of data 0x02 - ILLEGAL DATA ADDRESS The data address sent in the query is not an allowable address for the server (or slave). More specifically, the combination of reference number and transfer length is invalid. For a controller with 100 registers, a request with offset 96 and length 4 would succeed, a request with offset 96 and length 5 will generate exception 02. A request for offset 200 will also produce this exception. [11:41:42] <= Response: 01 83 02 C0 F1 [11:41:41] => Poll: 01 03 00 13 00 01 75 CF [11:41:32] Recv error: Exception Response: The device responded but with an error instead of data 0x02 - ILLEGAL DATA ADDRESS The data address sent in the query is not an allowable address for the server (or slave). More specifically, the combination of reference number and transfer length is invalid. For a controller with 100 registers, a request with offset 96 and length 4 would succeed, a request with offset 96 and length 5 will generate exception 02. A request for offset 200 will also produce this exception. [11:41:30] <= Response: 01 83 02 C0 F1 [11:41:29] => Poll: 01 03 00 13 00 08 B5 C9 [11:41:27] <= Response: 01 03 02 00 00 B8 44 [11:41:26] => Poll: 01 03 00 0F 00 01 B4 09 [11:41:25] Error - Modbus message invalid data length [11:41:25] <= Response: 01 03 00 20 F0 [11:41:24] => Poll: 01 03 00 63 00 00 B5 D4 [11:41:15] Error - Modbus message invalid data length [11:41:15] <= Response: 01 03 00 20 F0 [11:41:14] => Poll: 01 03 00 63 00 00 B5 D4 [11:41:11] <= Response: 01 03 02 00 00 B8 44 [11:41:10] => Poll: 01 03 00 0F 00 01 B4 09 [11:40:56] Recv error: Exception Response: The device responded but with an error instead of data 0x02 - ILLEGAL DATA ADDRESS The data address sent in the query is not an allowable address for the server (or slave). More specifically, the combination of reference number and transfer length is invalid. For a controller with 100 registers, a request with offset 96 and length 4 would succeed, a request with offset 96 and length 5 will generate exception 02. A request for offset 200 will also produce this exception. [11:40:54] <= Response: 01 83 02 C0 F1 [11:40:54] => Poll: 01 03 00 13 00 08 B5 C9 [11:40:52] Recv error: Exception Response: The device responded but with an error instead of data 0x02 - ILLEGAL DATA ADDRESS The data address sent in the query is not an allowable address for the server (or slave). More specifically, the combination of reference number and transfer length is invalid. For a controller with 100 registers, a request with offset 96 and length 4 would succeed, a request with offset 96 and length 5 will generate exception 02. A request for offset 200 will also produce this exception. [11:40:50] <= Response: 01 83 02 C0 F1 [11:40:49] => Poll: 01 03 00 13 00 08 B5 C9 [11:40:48] Recv error: Exception Response: The device responded but with an error instead of data 0x03 - ILLEGAL DATA VALUE A value contained in the query data field is not an allowable value for server (or slave). This indicates a fault in the structure of the remainder of a complex request, such as that the implied length is incorrect. It specifically does NOT mean that a data item submitted for storage in a register has a value outside the expectation of the application program, since the MODBUS protocol is unaware of the significance of any particular value of any particular register. [11:40:45] <= Response: 01 83 03 01 31 [11:40:45] => Poll: 01 03 00 10 00 02 C5 CE [11:40:43] <= Response: 01 03 1C FF C0 01 DC 02 DA 02 48 00 01 00 01 00 01 00 00 00 00 00 01 00 00 00 01 00 36 00 49 51 A3 [11:40:43] => Poll: 01 03 00 00 00 0E C4 0E [11:30:27] <= Response: 01 03 20 FF C0 01 DE 02 DF 02 40 00 01 00 01 00 01 00 00 00 00 00 01 00 00 00 01 00 36 00 49 00 00 00 00 5A 97 [11:30:26] => Poll: 01 03 00 00 00 10 44 06 [11:30:11] Recv error: Exception Response: The device responded but with an error instead of data 0x03 - ILLEGAL DATA VALUE A value contained in the query data field is not an allowable value for server (or slave). This indicates a fault in the structure of the remainder of a complex request, such as that the implied length is incorrect. It specifically does NOT mean that a data item submitted for storage in a register has a value outside the expectation of the application program, since the MODBUS protocol is unaware of the significance of any particular value of any particular register. [11:30:09] <= Response: 01 83 03 01 31 [11:30:09] => Poll: 01 03 00 00 00 12 C5 C7 [11:29:18] <= Response: 01 03 22 FF BF 01 DF 02 DE 02 43 00 01 00 01 00 01 00 00 00 00 00 01 00 00 00 01 00 36 00 49 00 00 00 00 00 01 94 DA [11:29:17] => Poll: 01 03 00 00 00 11 85 C6 [11:29:06] Recv error: Exception Response: The device responded but with an error instead of data 0x03 - ILLEGAL DATA VALUE A value contained in the query data field is not an allowable value for server (or slave). This indicates a fault in the structure of the remainder of a complex request, such as that the implied length is incorrect. It specifically does NOT mean that a data item submitted for storage in a register has a value outside the expectation of the application program, since the MODBUS protocol is unaware of the significance of any particular value of any particular register. [11:29:05] <= Response: 01 83 03 01 31 [11:29:04] => Poll: 01 03 00 00 00 12 C5 C7 [11:28:53] <= Response: 01 03 20 FF BF 01 E0 02 DD 02 44 00 01 00 01 00 01 00 00 00 00 00 01 00 00 00 01 00 36 00 49 00 00 00 00 01 21 [11:28:52] => Poll: 01 03 00 00 00 10 44 06 [11:28:37] <= Response: 01 03 1C FF BF 01 E0 02 DE 02 42 00 01 00 01 00 01 00 00 00 00 00 01 00 00 00 01 00 36 00 49 36 FE [11:28:37] => Poll: 01 03 00 00 00 0E C4 0E [11:28:28] <= Response: 01 03 18 FF BF 01 E0 02 E0 02 3F 00 01 00 01 00 01 00 00 00 00 00 01 00 00 00 01 71 9F [11:28:27] => Poll: 01 03 00 00 00 0C 45 CF [11:28:18] <= Response: 01 03 16 FF BF 01 E0 02 E0 02 3D 00 01 00 01 00 01 00 00 00 00 00 01 00 00 F1 B8 [11:28:17] => Poll: 01 03 00 00 00 0B 04 0D [11:27:23] <= Response: 01 03 14 FF BF 01 E0 02 DB 02 4B 00 01 00 01 00 01 00 00 00 00 00 01 AF 66 [11:27:22] => Poll: 01 03 00 00 00 0A C5 CD [11:27:10] Recv error: Exception Response: The device responded but with an error instead of data 0x03 - ILLEGAL DATA VALUE A value contained in the query data field is not an allowable value for server (or slave). This indicates a fault in the structure of the remainder of a complex request, such as that the implied length is incorrect. It specifically does NOT mean that a data item submitted for storage in a register has a value outside the expectation of the application program, since the MODBUS protocol is unaware of the significance of any particular value of any particular register. [11:27:09] <= Response: 01 83 03 01 31 [11:27:08] => Poll: 01 03 00 00 00 14 45 C5 [11:26:59] Recv error: Exception Response: The device responded but with an error instead of data 0x03 - ILLEGAL DATA VALUE A value contained in the query data field is not an allowable value for server (or slave). This indicates a fault in the structure of the remainder of a complex request, such as that the implied length is incorrect. It specifically does NOT mean that a data item submitted for storage in a register has a value outside the expectation of the application program, since the MODBUS protocol is unaware of the significance of any particular value of any particular register. [11:26:58] <= Response: 01 83 03 01 31 [11:26:57] => Poll: 01 03 00 00 00 1A C4 01 [11:26:41] Recv error: Exception Response: The device responded but with an error instead of data 0x03 - ILLEGAL DATA VALUE A value contained in the query data field is not an allowable value for server (or slave). This indicates a fault in the structure of the remainder of a complex request, such as that the implied length is incorrect. It specifically does NOT mean that a data item submitted for storage in a register has a value outside the expectation of the application program, since the MODBUS protocol is unaware of the significance of any particular value of any particular register. [11:26:40] <= Response: 01 83 03 01 31 [11:26:40] => Poll: 01 03 00 00 00 1B 05 C1 [11:26:30] Recv error: Exception Response: The device responded but with an error instead of data 0x03 - ILLEGAL DATA VALUE A value contained in the query data field is not an allowable value for server (or slave). This indicates a fault in the structure of the remainder of a complex request, such as that the implied length is incorrect. It specifically does NOT mean that a data item submitted for storage in a register has a value outside the expectation of the application program, since the MODBUS protocol is unaware of the significance of any particular value of any particular register. [11:26:29] <= Response: 01 83 03 01 31 [11:26:28] => Poll: 01 03 00 00 00 1E C5 C2 [11:26:08] <= Response: 01 03 14 FF BE 01 E1 02 DD 02 45 00 01 00 01 00 01 00 00 00 00 00 01 53 86 [11:26:07] => Poll: 01 03 00 00 00 0A C5 CD [11:25:56] Recv error: Exception Response: The device responded but with an error instead of data 0x03 - ILLEGAL DATA VALUE A value contained in the query data field is not an allowable value for server (or slave). This indicates a fault in the structure of the remainder of a complex request, such as that the implied length is incorrect. It specifically does NOT mean that a data item submitted for storage in a register has a value outside the expectation of the application program, since the MODBUS protocol is unaware of the significance of any particular value of any particular register. [11:25:54] <= Response: 01 83 03 01 31 [11:25:53] => Poll: 01 03 00 00 00 64 44 21 [11:25:53] Connect to COM 11:9600,N,8,1.0 timeout: 3 [11:23:27] Disconnected [11:19:59] Recv error: Exception Response: The device responded but with an error instead of data 0x01 - ILLEGAL FUNCTION The function code received in the query is not an allowable action for the server (or slave). This may be because the function code is only applicable to newer devices, and was not implemented in the unit selected. It could also indicate that the server (or slave) is in the wrong state to process a request of this type, for example because it is unconfigured and is being asked to return register values. [11:19:42] <= Response: 01 84 01 82 C0 [11:19:42] => Poll: 01 04 00 00 00 64 F1 E1 [11:19:26] Recv error: Exception Response: The device responded but with an error instead of data 0x03 - ILLEGAL DATA VALUE A value contained in the query data field is not an allowable value for server (or slave). This indicates a fault in the structure of the remainder of a complex request, such as that the implied length is incorrect. It specifically does NOT mean that a data item submitted for storage in a register has a value outside the expectation of the application program, since the MODBUS protocol is unaware of the significance of any particular value of any particular register. [11:19:08] <= Response: 01 83 03 01 31 [11:19:08] => Poll: 01 03 00 00 00 64 44 21 [11:18:57] Recv error: Exception Response: The device responded but with an error instead of data 0x01 - ILLEGAL FUNCTION The function code received in the query is not an allowable action for the server (or slave). This may be because the function code is only applicable to newer devices, and was not implemented in the unit selected. It could also indicate that the server (or slave) is in the wrong state to process a request of this type, for example because it is unconfigured and is being asked to return register values. [11:18:32] <= Response: 01 82 01 81 60 [11:18:32] => Poll: 01 02 00 00 00 64 79 E1 [11:18:18] Recv error: Exception Response: The device responded but with an error instead of data 0x01 - ILLEGAL FUNCTION The function code received in the query is not an allowable action for the server (or slave). This may be because the function code is only applicable to newer devices, and was not implemented in the unit selected. It could also indicate that the server (or slave) is in the wrong state to process a request of this type, for example because it is unconfigured and is being asked to return register values. [11:17:51] <= Response: 01 81 01 81 90 [11:17:51] => Poll: 01 01 00 00 00 64 3D E1 [11:17:49] Recv error: Exception Response: The device responded but with an error instead of data 0x01 - ILLEGAL FUNCTION The function code received in the query is not an allowable action for the server (or slave). This may be because the function code is only applicable to newer devices, and was not implemented in the unit selected. It could also indicate that the server (or slave) is in the wrong state to process a request of this type, for example because it is unconfigured and is being asked to return register values. [11:17:47] <= Response: 01 81 01 81 90 [11:17:47] => Poll: 01 01 00 00 00 64 3D E1 [11:17:29] Recv error: Exception Response: The device responded but with an error instead of data 0x03 - ILLEGAL DATA VALUE A value contained in the query data field is not an allowable value for server (or slave). This indicates a fault in the structure of the remainder of a complex request, such as that the implied length is incorrect. It specifically does NOT mean that a data item submitted for storage in a register has a value outside the expectation of the application program, since the MODBUS protocol is unaware of the significance of any particular value of any particular register. [11:17:27] <= Response: 01 83 03 01 31 [11:17:27] => Poll: 01 03 00 00 00 64 44 21 [11:17:05] Recv error: Exception Response: The device responded but with an error instead of data 0x03 - ILLEGAL DATA VALUE A value contained in the query data field is not an allowable value for server (or slave). This indicates a fault in the structure of the remainder of a complex request, such as that the implied length is incorrect. It specifically does NOT mean that a data item submitted for storage in a register has a value outside the expectation of the application program, since the MODBUS protocol is unaware of the significance of any particular value of any particular register. [11:16:56] <= Response: 01 83 03 01 31 [11:16:56] => Poll: 01 03 00 00 00 64 44 21 [11:16:56] Connect to COM 11:9600,N,8,1.0 timeout: 3 [11:10:08] Ready... [11:10:06] Settings file: [C:\Users\Lord\Documents\CAS Modbus Scanner\Settings.xml] [11:10:06] Debug file: [C:\Users\Lord\Documents\CAS Modbus Scanner\Debuglog.txt] [11:10:06] Starting up... |
![]() |
![]() |
![]() |
#24 |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 258
Благодарил(а): 8 раз(а)
Поблагодарили:
163 раз(а) в 160 сообщениях
|
![]()
Судя по наличию CRC в обмене перебрались с TCP на 485-й
Много разных запросов и каких то бессистемных. Но устройство с адресом 1 честно на них отвечает. Ну в последнем запросе данные получены Код:
[12:28:54] <= Response: 01 03 1C FF C8 01 D5 02 CB 02 38 00 01 00 01 00 01 00 00 00 00 00 01 00 00 00 01 00 36 00 47 AA 24 [12:28:53] => Poll: 01 03 00 00 00 0E C4 0E Например здесь Код:
[12:27:00] <= Response: 01 83 02 C0 F1 [12:27:00] => Poll: 01 03 00 11 00 01 D4 0F [12:26:47] <= Response: 01 03 02 00 01 79 84 [12:26:46] => Poll: 01 03 00 10 00 01 85 CF [12:26:37] <= Response: 01 03 02 00 00 B8 44 [12:26:37] => Poll: 01 03 00 0F 00 01 B4 09 [12:26:26] <= Response: 01 03 02 00 00 B8 44 [12:26:25] => Poll: 01 03 00 0E 00 01 E5 C9 [12:26:14] <= Response: 01 03 02 00 47 F8 76 [12:26:14] => Poll: 01 03 00 0D 00 01 15 C9 [12:26:00] Error - Modbus message invalid data length [12:26:00] <= Response: 01 03 00 20 F0 [12:25:59] => Poll: 01 03 00 0D 00 00 D4 09 Запрос пустышка с адреса 13 читаем 0 регистров - клиент честно без ошибки отдает в ответ 0 байтов с правильной структурой ответа. Далее по одному читаем регистры с адреса 13 по 16 с правильными ответами по 2 байта данных. А вот на последний запрос по адресу 17 получаем отлуп с кодом ошибки 02 (см. ниже). Ну и в логе масса запросов о отлупом по адресам, количеству данных. А вообще посмотри Википедию. Вполне доступно изложено. Да, ошибки типа 0х02 по русски (из Вики..) 01 — Принятый код функции не может быть обработан. 02 — Адрес данных, указанный в запросе, недоступен. 03 — Значение, содержащееся в поле данных запроса, является недопустимой величиной. |
![]() |
![]() |
![]() |
#25 |
Senior Member
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 3 847
Благодарил(а): 224 раз(а)
Поблагодарили:
141 раз(а) в 133 сообщениях
|
![]() напомните плз какой программой обмен между контроллерами поглядеть можно? |
![]() |
![]() |
![]() |
#26 |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 258
Благодарил(а): 8 раз(а)
Поблагодарили:
163 раз(а) в 160 сообщениях
|
![]() Глянул табличку - там ведь по первым адресам Input регистры читаются, а с компа по логу Holding. Кстати верхняя строка лога дает интересную расшифровку: Код:
-5.6 1#int#мНАРУЖ_ТЕМП#Темп. наружного воздуха 46.9 2#int#мОТОП_ОВ_ТЕМП#Темп. обратного потока Отопления 71.5 3#int#мОТОП_ТЕМП#Темп. Отопления 56.8 4#int#мОТОП_КЛАПАН#Клапан контура Отопления 1 5#int#мДАВЛ_МИН#Мин. давление вторич. стороны отопл. 1 6#int#мНО_ПЕРЕПАД#Перепад давления на Насосах Отопл. 1 7#int#мПРОНИКН#Проникновение в помещение 0 8#int#мПРОТЕЧКА#Протечка воды 0 9#int#мНО1_ВКЛ#Насос 1 контура Отопления 1 a#int#мНО2_ВКЛ#Насос 2 контура Отопления 0 b#int#мПОДПИТ_КЛАП#Клапан Подпитки 1 c#int#мПОДПИТ_НАСОС#Насос Подпитки 54 d#int#мОВ_Т_РАСЧ#Расчетная темп. обратного потока 71 e#int#мОТОП_Т_РАСЧ#Расчетная темп. Отопления Поробуйте убрать лишние запросы. Попробуйте в 2Gi оставить в таблице только эти адреса и поменять на R(out). И не забываем что контроллер читает все из таблицы и неважно вытянули вы переменную на поляну или нет. |
![]() |
![]() |
![]() |
#27 |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 258
Благодарил(а): 8 раз(а)
Поблагодарили:
163 раз(а) в 160 сообщениях
|
![]()
Вот ещё 16 регистров в запросе
Код:
[11:28:53] <= Response: 01 03 20 FF BF 01 E0 02 DD 02 44 00 01 00 01 00 01 00 00 00 00 00 01 00 00 00 01 00 36 00 49 00 00 00 00 01 21 [11:28:52] => Poll: 01 03 00 00 00 10 44 06 -6.5 48.0 73.3 58.0 1 1 1 0 0 1 0 1 54 73 0 0 |
![]() |
![]() |
![]() |
#28 |
Senior Member
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 3 847
Благодарил(а): 224 раз(а)
Поблагодарили:
141 раз(а) в 133 сообщениях
|
![]() R(out) - помогло! правда там все равно какой-то странный перекос есть.. надо разбираться, но что-то сдвинулось - уже радует да, и чтоб попало в адреса - пришлось сделать смещение. т.е. адрес №1 назначить №0 и т.д. p.s. к техподдержке, Арсений, Громов, внесите уже в описание соответствие R(in) R(out) и т.д. функциям 01 02 03 04 и т.д. или покажите где оно лежит. а то чувствую пройдёт время. забуду все и на второй круг с теми же вопросами.. и неделя жизни, которой и так с гулькин хобот осталось.. Последний раз редактировалось LordN, 25.11.2016 в 20:22 |
![]() |
![]() |
![]() |
#29 |
Senior Member
Регистрация: Jan 2012
Адрес: Саратов
Сообщения: 179
Благодарил(а): 1 раз(а)
Поблагодарили:
3 раз(а) в 3 сообщениях
|
![]() Правой клавишей по переменной/Справка/ Функции SMLogix/Работа с сетью/Сетевые переменные: Переменная R (in) Для чтения используются функции Modbus: · 2 (0x02) — чтение значений из нескольких дискретных входов (Read Discrete Inputs) · 4 (0x04) — чтение значений из нескольких регистров ввода (Read Input Registers) Переменная R (out) · 1 (0x01) — чтение значений из нескольких регистров флагов (Read Coil Status) · 3 (0x03) — чтение значений из нескольких регистров хранения (Read Holding Registers) |
![]() |
![]() |