Настройка ADAM-4051

24 июля 2014

 

Поделитесь статьей в социальных сетях

0

adam-4051Хочу поделиться процедурой настройки параметров связи модуля сбора данных ADAM-4051. Advantech ADAM-4051 это 16-канальный модуль дискретных входов с поддержка Modbus/RTU. Подключив его к Modbus ОРС-серверу, можно увидеть, что данных нет, и возникает ошибка коммуникации. Причина кроется в установленном по умолчанию протоколе связи. Поэтому перед вводом устройства в эксплуатацию необходимо настроить параметры связи. Аналогично настраиваются и другие модули 4000-ой серии.

Подготовим модульINIT+

Для того, чтобы получить доступ к настройкам устройства, нужно замкнуть контакт INIT+ с GND. Внимание! Перед этим обесточить сам модуль. Перемычка готова? Тогда включаем.

Подготовим ПО

Настройка модулей 4000-ой серии осуществляется через утилиту Advantech Adam/Apax .NET Utility. Скачаем ее и установим.

Настроим параметры связи

1) В запущенной утилите выбираем COM-порт, к которому подключено настраиваемое устройство. Если нужный COM-порт в списке отсутствует, то добавляем командой Add COM Port Tree Nodes.

Adam .NET Utility

Так как ADAM находится в положении INIT, то подключение должно производиться со стандартными настройками (Baudrate: 9600, Parity: None, Stopbits: 1, Timeout: 1000ms, Scan Interval: 500ms).

Adam default

2) Просканируем порт командой Search. Найденное устройство содержит вместо адреса знак * (звездочка).

3) Перейдя на вкладку устройства, зададим требуемые настройки:

  • Address (например, 1)
  • Baudrate (например, 9600)
  • Ckecksum (да/нет)
  • Protocol (Advantech или Modbus).

Выставим нужную скорость, адреса модуля, Checksum чаще всего отключается. Протокол выберем Modbus.

И применим настройки.

4) После чего снимем питание с устройства и уберем перемычку.

Все! ADAM-4051 готов к работе!

P.S. Особо хочу заострить ваше внимание на тот факт, что все устройства ADAM по умолчанию выпускаются с настроенным протоколом Advantech, поэтому получить с них данные «с ходу» не получится. 

P.P.S Оставляйте свои комментарии под этой статьей, делитесь информацией в социальных сетях.


Комментариев к записи: 5

  1. Айдар от 20 Дек 2015 в 13:56 пишет:

    Здравствуйте, подскажите а как можно осуществить опрос входов adam-4051 в среде visual basic.

    • admin от 20 Дек 2015 в 15:17 пишет:

      Добрый день, Айдар!
      Могу подсказать 2 способа:
      1) Подключение напрямую к ADAM-4051. Для этого потребуется реализовать в коде программы протокол Modbus RTU, после чего можно сразу использовать значения входов ADAM-4051.
      2) Подключение через ОРС-сервер. Использовать готовый ОРС-сервер с поддержкой Modbus и в коде программы подключаться непосредственно к нему.

  2. Айдар от 21 Дек 2015 в 00:33 пишет:

    Спасибо Вам большое за быстрый ответ. Знания в программировании у меня пока мало, и как реализовать протокол MODBUS RTU на VB пока не знаю, не могу найти примеров.
    Я подключился к модулю при помощи их фирменного протокола Advantech, делая запросы к модулю посылая команды ASCII. В описании к модулям ADAM есть пример такого способа. Но модуль ADAM-4051 — 16ти канальный , ответ приходит в шестнадцатеричной системе, и количество ответов в зависимости от состояния входов модуля где то 65 тысяч.
    Мне нужно полученный ответ от модуля, сравнить с теми значениями которые прописаны в моем коде программы, но прописать все 65 тыс. в ручную не реально. Есть ли иной способ это сделать?
    Нужно что бы все состояния дискретных входов модуля дублировался на ПК, «подсвечивая» от 1 до 16 виртуальный кнопок.

    • admin от 21 Дек 2015 в 11:53 пишет:

      На сайте производителя нашел рекомендации по использованию протокола ASCII http://support.advantech.com/Support/KnowledgeBaseSRDetail_New.aspx?SR_ID=1-1VURBR&Doc_Source=Knowledge+Base, с которым Вы работаете. Тут описание протокола http://www.bb-elec.com/Products/Manuals/ADAM-4000_manual_V17_8122011.pdf. Сам я его не использовал, но 65 тысяч ответов считаю чем-то не нормальным. Делать 65 тысяч сравнений в программе (на мой взгляд) нет необходимости, да и не подразумевается.
      В Вашей ситуации с использованием VB я советую «копать» в сторону использования ASCII, а не Modbus, о котором упомянул ранее. Все-таки будет проще. Остается только разобраться с протоколом. Советую анализировать трафик на порту, например, AccessPort. Начать опрос ADAM можно вообще с HyperTerminal.

  3. Айдар от 22 Дек 2015 в 13:04 пишет:

    Буду пробовать, спасибо!

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*