NiGHT
-
Posts
5 -
Joined
-
Last visited
Content Type
Profiles
Forums
Calendar
Posts posted by NiGHT
-
-
кстати, еще задумался, странность с регистром статуса, там не те биты статус передают
если в 2000h 00h это регистр 1538 (биты 0..7), а 20h это регистр 1539 (биты 8..15) то в значении 0003h 00h это регистр 1536 (биты 0..7), а 03h это 1537 (биты 8..15). Получается, что в аннотации тоже ошибка значащие биты статуса это 8 и 9, а не 0 и 1.
-
Почти верно, но намек поняли.
1536 dec = 600h
1537 dec = 601h
1538 dec = 602h
1539 dec = 603h
но это в единицах памяти моксы, которая однобайновая, в модбасе двубайтовые значит делим пополам
1536 dec / 2 = 768 dec = 300h
1537 dec / 2 = 768 dec = 300h
1538 dec / 2 = 769 dec = 301h
1539 dec / 2 = 769 dec = 301h
Карта регистров в моксе:
Аналогичный участок в модбасе. на линии сейчас работает модуль с адресом 5
Пример запроса и ответа, если надо:
Out: 1 2 0 0 0 6 1 3 3 1 0 1
In: 1 2 0 0 0 5 1 3 2 20 0ну а про GSD... в инструкции все верно начинается со слов "импортируйте GSD файл", при его отсутствии ничего сконфигурировать не получится, он показывает наличие устройства и всё. так что устройства по которым производитель выдает только карту регистров сконфигурировать не получится.
В официальной доке написано сильно амбициозно:
утилита AutoScan действительно может определить все подключенные устройства на линии profibus, но это всё (тут бы и надо точку поставить в описании), а все их модули ввода вывода надо руками добавлять и то, только при наличии GSD файла. Без GSD никак не настроить карту преобразования регистров.
-
Кроме того мы бы рекомендовали Вам обновить прошивку преобразователя до версии 1.2 (скачать ее можно по ссылке http://moxa.ru/files/drivers_utilities_2/fwr_mg5101_v1_2_build_16070415.rom)
Обновили, изменений не заметили.
I)
По прежнему получить статусы нельзя. В вашей инструкции запрос верхних адресов не выполнялся, поэтому вы и не знаете, что это невозможно. Они отображаются только через веб интерфейс, а надо бы получить эти данные через modbus.
Адреса с 600h (1536 dec) по 611h (1553 dec) действительно зарезервированы для статусов.
Пример, запрос регистра 602h
Запрос: 1 2 0 0 0 6 1 3 6 2 0 1
Ответ: 1 2 0 0 0 3 1 83 2
ответ код функции 83h говорит о том, что произошла ошибка. далее возвращается код ошибки 2
По стандарту это значит:
02 — Адрес данных, указанный в запросе, недоступен.
т.е. он не дает считывать регистры через modbus
а надо бы знать, с каким модулем у нас связь нарушилась!
II)
Что касается отсутствия GSD файлов – то в этом случае, насколько я понимаю, можно воспользоваться функцией AutoScan. Она описывается на стр. 4-13 (и далее) в User Manual.
кнопка автоскан работает несколько иначе. первым пунктом в руководстве верно написано, что сначала надо записать в устройство все GSD файлы, а потом при автосканировании оно само произведет сопоставление одного с другим. Без gsd оно просто отобразит наличие устройств на шине, но их никак нельзя будет транслировать, даже если есть текстовый список регистров устройства. по крайней мере я так понял из практического опыта (там просто пустой список в левой половине окна будет).
-
Приобрели NGate 5101
- Firmware
Есть вопросы:
1)Непонятно как программно через модбас получить статус коннектов к профибас устройствами, что бы понять какие модули опрашиваются, а какие отключены.
В руководстве написано что для этого есть внутренние регистры с адресами 600h и далее, но они не доступны на чтение по модбасу. их можно увидеть только через средства мониторинга регистров или в веб интерфейсе или через MGate Manager.
2)Как быть если GSD файл на устройство не доступен ? есть только список регистров
NGate 5101-pbm-mn
in Преобразователи RS-232/422/485 в Ethernet
Posted
пока на тестах я подключаю ICP DAS Profi-5050 и Omron Grt1-prt, собственно на них есть GSD, но на объектах уже заявлены не серийные устройства:
станок BCFA производства бюллер
весы pond
GSD файлы к которым производителем не даются.