2013-07-25 6 views
1

Я пытаюсь подключить управление несколькими устройствами в сети централизованно через устройство планшета/Android и некоторые проблемы пытаются найти правильный протокол для безопасной связи.CAN (Controller Area Network) на Android

Есть ли api, доступный для кодирования/использования сети CAN на Android по Ethernet/Bluetooth/Wi-Fi? Или есть другой протокол, который больше подходит для моего приложения?

Спасибо.

+0

Могут ли ваши «устройства» понять CAN? Игнорирование CAN, Могут ли они поддерживать беспроводную связь? Ответы на эти два вопроса могут помочь вам! – Swanand

ответ

2

Что вы можете использовать, будет определяться тем протоколом, который поддерживаются вашими устройствами.

Однако использование CAN bus предназначено в первую очередь для уменьшения проводов между компонентами, поэтому внедрение его по протоколу беспроводной связи является довольно бессмысленным.

Учитывая, что у вас есть альтернативы, которые вы упомянули (Ethernet/Bluetooth/Wifi), предполагая, что между вашими устройствами существует какая-то сеть TCP/IP. HTTPS будет разумным протоколом к ​​использованию.

2

Если у вас есть компьютер с CAN-адаптером, вы можете использовать daemon https://github.com/dschanoeh/socketcand и приложение (вам нужно будет написать его самостоятельно, используя доступные классы Java от https://github.com/dschanoeh/Kayak) на планшете, чтобы напрямую общаться с узлами CAN.

Другим способом является использование некоторых шлюзов Ethernet/Wifi, таких как NetCAN Plus 110 Mini или NetCAN Plus 120 WLAN. Вам нужно будет написать приложение для Android, открывающее канал TCP и говорящий ASCII-протокол для этих шлюзов.

Для Bluetooth http://www.rmcan.com/index.php?id=1067

3

Другой способ заключается в использовании CAN bus to Android донгл, специально предназначенные для этого приложения. Он использует USB-аксессуар Google для обмена данными через USB.