CAN总线和Android通信建议

CAN总线和Android通信建议,android,can-bus,Android,Can Bus,我想获得有关安卓平板电脑CAN总线通信的建议 我和一位同事一起参与了一个电动汽车项目。BMS、逆变器和控制逻辑之间有CAN总线通信。我需要获取数据,比如集群的速度。该集群将是一款Android平板电脑。我有一个用于CAN和蓝牙适配器的Arduino屏蔽,用于向平板电脑发送数据。我对安卓相当陌生 我应该开始寻找什么 这些代码行吗,因为我也需要发送数据 在你看来,我应该在Arduino上解码,还是将CAN数据传递给Android并在那里处理?数据是COB ID/字节数/数据。(601/8/2

我想获得有关安卓平板电脑CAN总线通信的建议

我和一位同事一起参与了一个电动汽车项目。BMS、逆变器和控制逻辑之间有CAN总线通信。我需要获取数据,比如集群的速度。该集群将是一款Android平板电脑。我有一个用于CAN和蓝牙适配器的Arduino屏蔽,用于向平板电脑发送数据。我对安卓相当陌生

  • 我应该开始寻找什么
  • 这些代码行吗,因为我也需要发送数据

  • 在你看来,我应该在Arduino上解码,还是将CAN数据传递给Android并在那里处理?数据是COB ID/字节数/数据。(601/8/22986000200)我想知道我们应该如何处理它。例如,如果前两个字节是lights,则第二个字节是speed,依此类推。或者我应该通过分隔符“”和字节拆分为int吗
  • 我能够从Android向CAN总线发送数据。我有CAN分析仪,控制器接受它

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

然后,您必须创建Android应用程序,以便从Arduino发送/接收数据。要做到这一点,请看一下(也可以使用Wi-Fi屏蔽或以太网屏蔽或通过USB进行相同操作(困难得多))

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

对于数据解码:

  • 在Android设备上解码数据。这样,如果您更改了桥接器(这里是Arduino),您的应用程序仍然可以工作
  • 在Arduino上解码数据,这样您的Android应用程序使用高级命令,但它将与您的桥接实现紧密相连
  • 用你最熟悉的语言解码

这里有一个简单的解决方案,允许Android设备连接到CAN总线。

他们出售OBD-II蓝牙适配器,您可以插入汽车插座并从Android应用程序读取数据。不确定你是否能阅读所需的命令,但你可以自己编写一个应用程序。我的意思是你可以跳过这里的Arduino。什么是“罐头分析器”?软件程序的名称?是的,它是一个软件,但它没有被广泛使用:)但是businesshi gwentech,它的神奇工具,但是我们做了一个变通。据我所知,这些设备是分析仪,我们需要双向通信。在谷歌搜索期间,我确实找到了你的设备。大拇指赞成:)