Страница 1 из 1

DASMBSerial

СообщениеДобавлено: Чт сен 27, 2007 9:08 pm
arkonst
Кто нить знает, почему InTouch при использовании DASMBServer(Modbus - сервер ввода-вывода)не хочет читать нулевые адреса регистров(ячеек) Например 40001- читает
а вот 40000 - не хочет, может есть какой способ это обойти?
Заранее спасибо за ответ.

СообщениеДобавлено: Пт сен 28, 2007 9:50 am
Admin
DASMBServer не
не хочет
, а не может обратиться к несуществующему адресу. Какой здесь может быть способ ?

40001 это вероятно вот что:
4 - код функции модбас
00 - начальный адрес
01 - число запрашиваемых регистров (подряд, начиная с 00)

Соответственно, 40000 это ..

СообщениеДобавлено: Пт сен 28, 2007 12:33 pm
arkonst
Хорошо...это понятно...я просто не правильно выразился...Тогда поставлю вопрос так, у меня есть карта адресов контроллера. И адресация выглядит так,
идет сквозная нумерация. Например.Адреса discret адрес 0,1,2,3, и т д. Потом coil 5,6,7, и т д.Потом input 8,9,10, и т д.Потом holding 11,12,13, и т д. Так вот, с coil c input и holding все нормально, читаются. А вот с discret получаеться прочитать только адреса начиная с еденицы, а адрес 0 никак. Пробовал по разному и 1000 и 3000 ничего.Что делать не знаю...А под этим адресом скрыт довольно важный параметр.Из-за этого даже стоит вопрос о выборе другой скады,с более подходящим сервером ввода -вывода modbus.

СообщениеДобавлено: Пт сен 28, 2007 4:23 pm
Admin
Уважаемый arkonst,

Вы конечно делайте выбор, подходящий Вам, но все OPC DA сервера
одинаковые и отличаются только GUI.
И чудес не бывает - контроллер Вам врать не станет )

Я в принципе разделяю Ваше недоверие ко всем подобным MBEnet программам, но пока сами не напишите все равно ведь не убедитесь )
То есть я хочу сказать что можно и самим СКАДу написать, но железо ведь от этого не поменяется

Важным является следующее - составить корректный запрос Modbus к конкретному устройству. Для этого есть например ModbusPoll - эта программа по крайней мере честно покажет Вам что происходит.

И как же он так скрыт, этот параметр? Таакой важный - аш под нулевым адресом, а !!! :D

СообщениеДобавлено: Пт сен 28, 2007 5:26 pm
arkonst
Я конечно понимаю Вашу иронию...Наверно Вас замучил своими вопросами для Вас кажущимися полным бредом. Я сам разобрался уже впринципе...оказалось что просто наши программисты начали задавать адреса со сдвигом вперед...то есть 0 значит 1 а 1 значит 2 и и т д. и все вроде читаеться...нулевой адрес читаеться как 10001.

СообщениеДобавлено: Пт сен 28, 2007 5:27 pm
arkonst
и кстати....) что такое GUI

СообщениеДобавлено: Пн окт 01, 2007 1:42 pm
Admin
GUI дословно означает Graphical User Interface.
Например, команда
shutdown -s -t 100 /f выполняется без GUI, в консольном режиме (проверьте), в отличие от
shutdown /i, которая покажет GUI

СообщениеДобавлено: Вт окт 02, 2007 10:48 am
Help59
ещё хотел добавить. что такие проблемы очень легко решаются. встаете в линию каконидь прослушкой. о них тоже много раз говорили. и смотрите как мастер формирует запрос и как слейв отвечает. по крайней мере у меня в случае проблем, это первое дело собрать такую схему. и как показывает практика в 90% случаев сразу видно где ты ошибся..

зы ну или не ты! :)