Подключение N4AIAO4 к Modbus
Добавлено: 16 апр 2022, 20:01
Хочу поделиться своим опытом подключения аналогового преобразователя N4AIAO4 к сети Modbus RTU через конвертер USB-RS485. Изрядно мне крови попила эта плата потому и делюсь своим опытом.
Изначально что может быть проще чем просто все подсоединить по такой схеме как в документах на плату: "Свисток" USB-RS485 использую такой (ZK-U485): В Win10 определился как USB-SERIAL CH340 (COM*). Драйвера скачал вот эти: driver_ch340_341_arduino.exe Раз свисток определился сам может драйвера и не нужны были, но решил перестраховаться и установить.
Далее все просто. От вешнего блока питания даём для N4AIAO4 12В, а RS-485 соединяем А-А, В-В. Тут все просто. Терминальный резистор не использую ибо провода короткие. Меньше 50см.
Modbus Poll настраиваем как указано в документации к плате, и после подключения видим, что довольно часто пробегает ошибка CHECKSUM ERROR. Какие я только настройки не менял, какой я только битрейд не ставил - все ровно. Ошибка появлялась совершенно рандомно и довольно часто. Светодиод на свистке тоже вел себя как-то странно. Светил в 50% от номинала и часто мигал. И тут в сети нахожу вот такую картинку: Соединяю GND RS-485 на свистке и GND на плате N4AIAO4, и вуаля! Пакеты стали отправляться/получаться стабильно и без ошибок. Светодиод на свисте мигает ровно каждую отправку пакета и в полную яркость. Ошибка ушла. Напряжение севшей батарейки АА платка измерила правильно: 1,22В
Далее планирую подключить к аналоговому выходу сервоусилка и смотреть в LinuxCNC нагрузку на приводе в риалтайме.
По результатам буду отписываться здесь.
Изначально что может быть проще чем просто все подсоединить по такой схеме как в документах на плату: "Свисток" USB-RS485 использую такой (ZK-U485): В Win10 определился как USB-SERIAL CH340 (COM*). Драйвера скачал вот эти: driver_ch340_341_arduino.exe Раз свисток определился сам может драйвера и не нужны были, но решил перестраховаться и установить.
Далее все просто. От вешнего блока питания даём для N4AIAO4 12В, а RS-485 соединяем А-А, В-В. Тут все просто. Терминальный резистор не использую ибо провода короткие. Меньше 50см.
Modbus Poll настраиваем как указано в документации к плате, и после подключения видим, что довольно часто пробегает ошибка CHECKSUM ERROR. Какие я только настройки не менял, какой я только битрейд не ставил - все ровно. Ошибка появлялась совершенно рандомно и довольно часто. Светодиод на свистке тоже вел себя как-то странно. Светил в 50% от номинала и часто мигал. И тут в сети нахожу вот такую картинку: Соединяю GND RS-485 на свистке и GND на плате N4AIAO4, и вуаля! Пакеты стали отправляться/получаться стабильно и без ошибок. Светодиод на свисте мигает ровно каждую отправку пакета и в полную яркость. Ошибка ушла. Напряжение севшей батарейки АА платка измерила правильно: 1,22В
Далее планирую подключить к аналоговому выходу сервоусилка и смотреть в LinuxCNC нагрузку на приводе в риалтайме.
По результатам буду отписываться здесь.