基于CAN总线的车载导航主机开机方案的优化
2016-10-13广东乐源数字技术有限公司
广东乐源数字技术有限公司 李 斌
广州西门子变压器有限公司 赵伟娟
基于CAN总线的车载导航主机开机方案的优化
广东乐源数字技术有限公司 李 斌
广州西门子变压器有限公司 赵伟娟
采用CAN总线唤醒机制,使用CAN总线上的数据唤醒车载导航主机;在用户进入车内前,必然发出撤防指令,及解除锁车状态,车身控制单元唤醒CAN总线,开始传输数据,在车载导航收到第一帧CAN数据时,立即使车载导航主机进入后台开机模式,这样达到提前开机效果,用户上车点火后,导航屏幕打开,此时导航主机已经开机一段时间或完全开机,用户感觉导航主机开机速度快,提高了开机速度的效果,优化了客户使用体验。
汽车电子;音响主机;车载导航;开机速度
1.引言
随着汽车电子产品的发展迅速,车载导航系统的使用频率越来越高,不少中低端车型上都配备的车载导航主机,或称车载音响主机,传统的车载导航主机是基于WIN-CE系统,其CPU相对落后,不支持WIFI上网,HDMI显示,语音识别等智能应用,且可让用户自行安装的应用程序较少。基于安卓系统的车载导航主机由于其开放性、易用性,再加上美观的UI及其克自定义的桌面,丰富的软件资源,热门应用的优势,使其市场占有率越来越高。[1][6]
但是目前基于安卓系统的车载导航主机中,由于需要在点火时才能启动电源模块,进而启动车载导航主机,因此存在开机速度慢的问题。目前基于安卓系统的车载导航主机的开机速度约为10-30秒,若想达到5-15秒的开机速度,则必须采用速度很快的CPU,这必然导致较高的成本。
2.CAN总线
CAN是控制器局域网络(Controller Area Network,CAN)的简称,是由研发和生产汽车电子产品著称的德国BOSCH公司开发了的,并最终成为国际标准(ISO11898),是国际上应用最广泛的现场总线之一[1][6]。在北美和西欧,CAN总线协议已经成为汽车计算机控制系统和嵌入式工业控制局域网的标准总线,并且拥有以CAN为底层协议专为大型货车和重工机械车辆设计的J1939协议。近年来,其所具有的高可靠性和良好的错误检测能力受到重视,被广泛应用于汽车计算机控制系统和环境温度恶劣、电磁辐射强和振动大的工业环境。
CAN总线原理是通过CAN总线、传感器、控制器和执行器由串行数据线连接起来。它不仅仅是将电缆按树形结构连接起来,其通信协议相当于ISO/OSI参考模型中的数据链路层,网络可根据协议探测和纠正数据传输过程中因电磁干扰而产生的数据错误。CAN网络的配制比较容易,允许任何站之间直接进行通信,而无需将所有数据全部汇总到主计算机后再行处理。当CAN总线上的一个节点(站)发送数据时,它以报文形式广播给网络中所有节点。对每个节点来说,无论数据是否是发给自己的,都对其进行接收。每组报文开头的11位字符为标识符,定义了报文的优先级,这种报文格式称为面向内容的编址方案。
CAN总线上的每一个节点设备,都可以向总线上发送数据,也可以接收总线上的数据,这就为本文提供的优化方法提供了数据基础。
汽车上的CAN总线用于传输汽车各个电气模块数据和控制信号,汽车在唤醒时,CAN总线上数据或控制信号一直持续不断的在传输,任何一个动作都会产生CAN数据帧,比如开关车门,换挡,启动,开关空调、雨刮等等,这些数据帧直到汽车休眠后才会停止,汽车休眠时间约为用户对车辆设防(锁车)后2~5分钟,汽车唤醒则为用户对车辆撤防(开锁车门),这个动作会给车辆产生第一个CAN总线数据帧,随后持续产生各种信号的数据帧,这些数据也为本文提供的优化方法提供了数据基础。[2]
3.导航主机工作原理
如图1所示,车载导航主机主要由CPU、微型控制单元、电源模块、CAN收发器、状态检测模块和其他功能模块组成[4][5]。
CPU主要处理系统软件、应用程序等上层软件;微型控制单元主要处理一些输入输出控制,如对各个模块电源的控制,检测模块发来的检测信息等等;电源模块主要为各个模块提供稳定可靠的电源;CAN收发器负责收发CAN总线上的数据;状态监测模块负责实时检测汽车状态,如熄火、点火等。
图1 导航主机原理图框图
如图2所示,汽车各项数据和控制信号由车身控制单元在CAN总线上传输,导航主机的CAN收发器即可获得这些数据,微型控制单元将有用的数据提取出来,并结合检测模块检测到的汽车状态做出相应的处理,控制电源模块或其他模块的工作,如显示、声音、开关机等操作。
图2 导航主机与CAN总线
图3 改进方案流程图
4.优化方案
本文在车载导航主机上的优化方案如图3所示,用户在开车门前,需用遥控器对车辆撤防,即开锁车门,这时车辆的车身控制单元就会在CAN总线上发出撤防消息,然后各种车辆信息开始在CAN总线上传输,导航主机的CAN收发器接收到CAN总线的第一帧数据时,立即向微型控制单元发出指令,微型控制单元收到指令后立刻进行后台开机,打开各个模块电源,但屏幕保持不亮,音响保持静音等;在用户上车后进行ACC ON操作或发动机点火操作后,状态检测单元发出相应指令给微型控制单元,微型控制单元再将剩余未开机部分打开,如屏幕,声音等。此时导航主机其实已开机一段时间,这样便让用户感觉导航主机开机时间变快。预计,用户撤防车辆,到上车点火时间约为5-20秒或更长,因此相当于导航主机开机时间缩短至少5秒以上。
也就是说使用此方案,当用户上车点火时导航主机其实已经开机5-20秒时间,实现了导航提前开机的功能,在不提升任何成本的基础上提升了主机开机速度。
更值得一提的是,在使用过程中,只要CAN总线上有数据,导航主机就一直处于唤醒状态,若用户熄火车辆后,在车辆完全休眠前(约2-5分钟内)又再次打火,导航主机后台其实一直保持开机状态的,这时候车辆打火,主机开机直接进入主界面,用户感觉主机开机时间为0秒,极大改善了用户使用体。
5.结论
本文对开机时间较长车载导航主机,如基于安卓系统的主机的开机系统进行了优化,针对汽车CAN总线上的数据传输特性,使车载导航主机随汽车CAN总线的唤醒而同步后台开机,使用户感觉导航开机时间变短或为0秒。
(1)本文采用CAN总线唤醒机制,使用CAN总线上的数据唤醒车载导航主机后台开机,相当于导航主机提前在后台开机,用户上车ACC ON后,再打开导航主机的屏幕和声音,这样便让用户感觉开机时间缩短,达到提高开机速度的目的。
(2)CAN总线是只要有数据,即车辆未休眠,车载导航主机就处于开机状态,只是有ACC信号来控制打开和关闭屏幕和声音,此时用户ACC ON,导航主机直接打开屏幕和声音,用户感觉开机时间为0秒,大大提高用户体验。
[1]农丽萍,王力虎,黄一平.Android在嵌入式车载导航系统的应用研究[J].计算机工程与设计,2010,31(11):2473-2476.
[2]吴鹏,傅成华,干树川.CAN总线接口电路设计[J].中国西部科技,2009(13).
[3]付亮,李伟.CAN总线技术及其在现代汽车中的应用[J].中国汽车制造,2006(01).
[4]康迂福,冯桑,陈兴彬.车载DVD导航一体机的技术分析与展望[J].汽车电器,2010(8):1-6.
[5]王施恩.基于WINCE的车载信息系统设计[D].华南理工大学,2011.
[6]李斌.一种基于CAN总线的车载导航主机开机优化系统[P].中国:204821409U,2015-12-02.
李斌【通讯作者】(1988—),湖南长沙人,男,硕士,现工作与广东乐源数字技术有限公司。
赵伟娟(1989—),山东菏泽人,硕士,现工作于广州西门子变压器有限公司。