Если у меня есть проект Codesys с менеджером CANopen, и я добавляю подчиненный узел CANopen в CAN с идентификатором узла 19, система мне понятна, но если я добавлю два одинаковых сенсорных устройства с одинаковым заводским предустановленным идентификатором узла 19, как мне изменить nodeID любого из двух? У меня нет идей. Устройства поддерживают LSS, но я не знаю, как реализовать изменение nodeid с ним или без него. Должен ли я кодировать это или менеджер canopen должен каким-то образом изменить nodeid. Любые идеи приветствуются. Конечно, я мог бы изменить его, добавив первое устройство в CAN и изменить его, а после этого я мог бы добавить второе устройство в шину CAN. Но я хочу изменить динамически, когда оба находятся на шине CAN в одно и то же время, поэтому ситуация должна быть такой же, как и на будущей производственной линии.
Нет, вы можете запрограммировать новый CAN id из PDO newNodeid, но если завод тот же, это не работает ?
Вы можете либо написать небольшую программу в CODESYS, которая изменяет идентификатор, либо, если у вас есть инструмент USB to CAN, вы можете отправить команды для изменения идентификатора.
Обычно это делается в двухэтапном процессе.
1- Установите параметр 2- Сохраните параметр (обычно с каким-нибудь «волшебным словом»).
Сообщение об изменении идентификатора зависит от производителя.
Иногда это находится в файле EDS, поэтому, возможно, стоит заглянуть туда.
Есть ли на устройстве перемычки или переключатели?