Подключение устройства CANopen к ubuntu

#embedded #can-bus #socketcan #canopen #jetson-xavier

Вопрос:

Я пытаюсь подключить драйвер двигателя CANopen к Ubuntu, чтобы управлять драйвером. Я использовал пакет CANopenNode, а затем подключил два драйвера и подключил два резистора 120 Ом на обоих концах шины, и я использую Nvidia AGX Xavier в качестве контроллера, и я убедился, что использую правильные контакты, но при использовании пакета эта ошибка появляется при инициализации первого узла(драйвера).:

 ./canopend[9886]: (CO_CANerror_rxMsgError) Socket error msg ID: 0x20000004, Data[0..7]: 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00 (can0)
./canopend[9886]: CAN Interface "can0" reached Tx Warning Level
./canopend[9886]: (CO_CANerror_rxMsgError) Socket error msg ID: 0x20000004, Data[0..7]: 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x88, 0x00 (can0)
./canopend[9886]: CAN Interface "can0" changed state to "Tx Passive"
./canopend[9886]: (CO_CANerror_rxMsgError) Socket error msg ID: 0x20000040, Data[0..7]: 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 (can0)
./canopend[9886]: CAN Interface "can0" changed to "Bus Off". Switching to Listen Only mode...
./canopend[9886]: (CO_CANerrorSetListenOnly) can0 Set Listen Only
 

Я открыл проблему на упаковке, но я спрашиваю, может ли кто-нибудь мне помочь.

Комментарии:

1. Поскольку вы уже получаете поддержку на официальном github, часть этой поддержки может быть избыточной, но в любом случае ваш вопрос может быть полезен для ЭТОГО. В любом случае, чтобы поддержать другой форум, попробуйте candump команду; посмотрите, можете ли вы даже настроить CAN на ubuntu настолько, чтобы вы могли cansend и candump данные на вашем проводе; если провод или бод испорчены, это не сработает.

2. @JWCS candump не показывает никаких отправляемых данных, и я уверен, что проводка и бодраты в порядке, так что может быть причиной этой ошибки?

3. Это, скорее всего, означает, что настройка вашей банки неверна. Например, вы настроили свое устройство can на Linux ? Например, » $ sudo набор ip-ссылок can0 тип can битрейт 125000` $ sudo ip link set up can0 ? Или, для моего устройства, я часто использую другой инструмент can-utils, ` $ sudo slcand -o -s8 -t hw -S 3000000 /dev/ttyUSB0` $ sudo ip link set up slcan0 . Вы можете проверить, настроены ifconfig ли они ; устройство должно быть там. Если он есть, и вы можете / можете отправить его, то проблема также не должна быть в проводке; это полностью настроенная шина can. Если ты не можешь… проводка?

4. Я настраиваю устройство и могу видеть его с помощью ifconfig, но когда я могу отправить, я ничего не вижу на candump.