Цитата(DIMZAY @ 4.7.2020, 10:30)

ПЛК дороже, софт платный. Инженер с менеджером посчитали и пошли по дешёвому пути.
Классические идиоты считающие исключительно стоимость оборудования (так как инженер "бесплатный"), так что пусть теперь тратятся на твое сидение на обьекте. А сидеть тебе придется ОЧЕНЬ долго, так как перечисленные тобой протоколы на шине CAN не особо дружат с Modbus. Совершенно разная философия коммуникационного канала. Я работаю с CANOpen и J1939 каждый день, спрашивай какие есть вопросы.
Насколько я понимаю у тебя задача подключить дизель-генератор?
Из двух протоколов J1939 самый простой. Это просто телеграммы в шине посылаемые различным оборудованием грузовика с определенной задержкой. У каждого устройства есть source address. В случае двигателя это SA0, коробка передач SA3, контроллер (который тебе выдает даннные по CANOpen) скорее всего имеет SA33 (body controller), хотя может прикидываться коробкой передач SA3 (для управления оборотами двигателя). Берешь стандарт в руки, мануал на двигатель, настраиваешь шлюз, слушаешь шину, ловишь сообщения и декодируешь.
В случае CANOpen тебе надо получить от ребят EDS файл с описанием переменных. На стороне шлюза тебе надо организоват CANOpen Master который запустит CANOpen Slave, настроит его при помощи SDO сообщений и даст NMT команду START. Скажу сразу что на обычном шлюзе ты это не сделаешь, слишком сложная задача.
Но есть один трюк - некоторые Slave умеют стартовать сами и после этого начинают передавать PDO переменные. Вот их ты можешь отловить так же как и J1939 и декодировать.
Сообщение отредактировал Abysmo - 10.7.2020, 2:18