我的项目是使用语音识别来控制车窗。我已成功使用EasyVR arduino屏蔽和arduino MEGA控制了一些LED。现在我想使用CAN-BUS arduino防护罩来控制窗户。
因为我拥有的汽车没有OBD-II连接器,所以我使用两个带有两个CAN-BUS arduino屏蔽的arduinos,一个是发送器,另一个是接收器。现在我不知道如何编程CAN-BUS arduino防护罩来模拟汽车的窗户?
我正在使用的CAN-BUS屏蔽:https://www.sparkfun.com/products/10039
Arduino mega:https://www.sparkfun.com/products/11061
答案 0 :(得分:1)
我们与同事一起工作电动车项目,我们可以使用Arduino和CAN总线屏蔽进行监控。
如果你想控制窗口,我会考虑尝试这种设置:
在我看来,这是最简单的方法。而且您不必抛弃CAN总线。
修改强> 还提供一些汽车规格。如果它没有OBD II插座可能它不是新的,所以窗口将用按钮控制,我猜。
答案 1 :(得分:0)
CAN屏蔽既可以是接收器也可以是发射器,您不需要其中两个(除非您将两个网络连接在一起。
不幸的是,操作窗口不是有标准消息的东西。实际上,窗口控制器实际上可能位于LIN总线(不是CAN)上。我不确定是否有LIN屏蔽,但它是relatively simple physical layer芯片和UART,所以你应该可以装备一些东西。
然后你必须对消息进行反向工程......
如果您可以从车间手册中找到CAN / LIN总线的外观,您应该可以找到适合公共汽车的地方。
然后监视总线并操作窗口开关以查看是否出现新消息,或者常规消息中是否有某些特定位发生变化。在消息中经常会有序列计数器和校验和,您还必须了解它们才能正确重放相应的消息。
答案 2 :(得分:0)
Windows由LIN BUS(它是CAN SUB BUS)控制。这是串行单线通信。最简单的方法是将lin收发器芯片与Arduino一起使用,以免打扰自己检测中断,只需在Rx中接收并在tx中发送即可。然后,您需要收听LIN总线并检测打开窗口或关闭窗口时使用的ID,一旦检测到ID和数据包数据,就可以重播它。