首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何编程一个CAN-BUS arduino屏蔽来控制车窗?

如何编程一个CAN-BUS arduino屏蔽来控制车窗?
EN

Stack Overflow用户
提问于 2014-04-08 04:12:41
回答 3查看 2.7K关注 0票数 1

我的项目是使用语音识别来控制车窗。我已经成功地控制了一些发光二极管的使用EasyVR的arduino屏蔽使用和arduino MEGA。现在,我想使用CAN-BUS arduino屏蔽来控制窗口。

因为我自己的车没有OBD-II接口,所以我使用了两个arduinos和两个CAN-BUS arduino防护罩,其中一个是发送器,另一个是接收器。现在我不知道如何对CAN-BUS arduino屏蔽进行编程,以模拟汽车的窗户?

我正在使用的CAN总线屏蔽:https://www.sparkfun.com/products/10039

Arduino mega:https://www.sparkfun.com/products/11061

EN

回答 3

Stack Overflow用户

发布于 2014-05-16 21:28:04

  1. CAN总线是一种通信协议(类似于RS485,但更可靠)。它本身并不控制任何东西。
  2. 如果车窗、前大灯或其他设备由I/O控制,并且I/O与CAN总线通信,则您可以控制车窗、车头灯等。
  3. 用于Arduino的CAN总线屏蔽板具有带MCP2551 CAN 收发器的微芯片MCP2515 CAN控制器,因此您不需要其中的2个。

我们与同事合作的电动汽车项目,我们能够监测和控制使用Arduino和CAN总线屏蔽。

如果你想控制窗口,我会考虑尝试这个设置的可能性:

  1. 断开窗口的按钮和电源。
  2. 放了2个继电器,有H桥(向上和向下移动)来控制窗口电机和一些限位开关,当窗口关闭时关闭继电器或完全关闭这些继电器。

在我看来,这是最简单的方法。你就不用去扔CAN总线了。

编辑还提供了car的一些规范。如果它没有OBD II插座,可能它不是新的,所以我猜窗口将是用按钮控制的。

票数 1
EN

Stack Overflow用户

发布于 2014-04-10 17:42:45

CAN屏蔽既可以是接收器,也可以是发射器,您不应该需要两个接收器和发射器(除非您正在将两个网络桥接在一起。

不幸的是,操作窗口并不是一个标准的消息。实际上,窗口控制器实际上可以在LIN总线(而不是CAN)上。我不确定是否有LIN屏蔽,但它是一个relatively simple physical layer芯片和一个通用异步收发器,所以你应该能够装配一些东西。

然后你将不得不对消息进行反向工程...

如果您可以从车间手册中找到CAN/LIN总线的外观,那么您应该能够找到合适的总线。

然后监视总线并操作窗口开关,以查看是否出现新消息,或者是否某些特定位在常规消息中改变。消息中通常会有顺序计数器和校验和,您还必须了解它们才能正确地重播相应的消息。

票数 0
EN

Stack Overflow用户

发布于 2019-08-06 09:27:42

Windows由LIN总线控制,LIN总线是CAN子总线。它是一种串行的单线通信。最简单的方法是在Arduino中使用lin transciever芯片,这样你就不需要自己检测中断,只需在Rx中接收并在tx中发送即可。然后,您需要监听LIN总线并检测打开或关闭窗口时使用的ID,一旦检测到ID和数据包数据,就可以重放它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22922115

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档