CAN总线和Android通信建议

时间:2014-05-20 08:05:09

标签: android can-bus

我想获得有关与Android平板电脑进行CAN总线通信的建议。

我正和一位同事一起从事电动汽车项目。我们在BMS,逆变器和控制逻辑之间进行CAN总线通信。我需要获取数据,比如集群的速度。该群集将是Android平板电脑。我有一个用于CAN和蓝牙适配器的Arduino屏蔽,可以将数据发送到平板电脑。我对Android很新。

  • 我应该开始寻找什么?
  • 这些OBD-II代码是否有效,因为我也需要发送数据。

  • 在您看来,我应该解码Arduino还是将CAN数据传递给Android并在那里处理它?数据是COB ID / No.字节数/ DATA。 (601/8/22 98 60 00 22 00 00 00)我想知道要处理它。例如,前两个字节是灯,第二个是速度,依此类推。或者我应该通过分隔符分割它们' '和字节到int?
  • 我可以从Android向CAN总线发送数据。我有CAN分析仪,控制器接受它。

2 个答案:

答案 0 :(得分:4)

根据您的输入,您需要使用Arduino将Android设备连接到您的车辆。 Arduino代码将数据从CAN转换为蓝牙,反之亦然。实际上,您的Android设备无法直接与您的CAN总线通信。

然后,您必须创建Android应用程序以从Arduino发送/接收数据。为此,请查看Android Bluetooth guide(也可以使用Wi-Fi屏蔽或以太网屏蔽或USB(更难))。

对于OBD-II代码,如果这些代码自行实施,则取决于您的车辆。

对于数据解码:

  • 解码Android设备上的数据。这样,如果您更改桥(这里是Arduino),您的应用程序仍然有效。
  • 解码Arduino上的数据,这样你的Android应用程序就会使用高级命令,但它会与你的网桥实现紧密相关。
  • 使用您最轻松的语言解码。

答案 1 :(得分:0)

这是an Android-CAN bus adapter中的一个简单解决方案,允许Android设备连接到CAN总线。