У меня проблема с использованием CanSocket на BeagleBoneBlack. Я сам пытался разобраться в гугле и документация по кости бигля, но мне ничего не помогает. Я использую BeagleBoneBlack в качестве переводчика, который переводит сообщения между канальным устройством и моим компьютером. Следующий на рисунке показана моя установка:
| Устройство CAN | <---------> | BeagleBoneBlack | <---------> | мой компьютер |
Программа-переводчик на BeagleBoneBlack написана на java с использованием entropia / libsocket-can-java из github. (см. https://github.com/entropia/libsocket-can-java). Иногда я получаю сообщение об ошибке «нет свободного места в буфере» на BeagleBoneBlack в методе «записи» CanSocket, даже если Я установил параметр «txqueuelen» на 1000 или даже выше (например, 100000 или 1000000). Для этого я использовал команду «sudo ifconfig can0 txqueuelen 1000». Мне интересно об этом потому что загрузка шины в этом случае составляет всего 14% (я контролировал это с помощью CANalyzer).
Буду очень признателен за помощь, так как для меня очень важно найти решение. Ниже некоторая информация, которая может вам понадобиться.
CAN-шина: Скорость передачи = 500 кбит / с
BeagleBoneЧерный: ОС = Debian Linux
мой компьютер: ОС = Windows 10 x64
Обновлено: 10 сентября 2018 г., 09:40 CAN-интерфейс: CAN-трансивер TJA1040
Поскольку я не знаю, какую именно информацию мне здесь предоставить, прошу просто спросить, и я постараюсь их получить.
Привет @TBR, спасибо за ответ. Я отредактировал свой вопрос. Я использую CAN-Transceiver TJA1040 с моим BBB. Я не могу связываться с моим устройством CAN каким-либо другим способом через BBB (например, USB и т. д.). Потому что это простое устройство CAN без других интерфейсов. Связь CAN работает вначале, но через несколько минут я получаю сообщение об ошибке «нет свободного места в буфере», и связь прерывается. Если вы дадите мне совет, в каком направлении смотреть, я был бы очень признателен. С Уважением
Я до сих пор не знаю, как это исправить ... Кто-нибудь может мне помочь?
Не могли бы вы расширить, какое оборудование интерфейса CAN вы используете с BBB? Он не идет с трансивером. Можете ли вы связываться со своим CAN-устройством каким-либо другим способом через BBB?