汽车仪表是驾驶员与汽车进行信息交流的界面,并对安全行驶具有十分重要的作用。随着汽车电子技术的发展,汽车仪表的更新换代已成为一种趋势,传统的机械指针式汽车组合仪表将逐步让位于以嵌入式技术为核心的数字化仪表。相应的,只有摆脱机械指针式仪表的制约才能使汽车快速向智能化发展。本方案所介绍的基于多核的汽车组合仪表正是对该课题的一个有效的探索,并具有较高的可行性和一定的市场潜力。 该设计的目标是将传统的汽车组合仪表功能由嵌入式技术来实现,并增添新的功能使其能力更强大,使用起来更人性化、更舒适和更方便,具体涉及的功能有: 1)基于霍尔器件A3144E的车速脉冲检测单元,凭此单元获得当前的车速及行驶里程数。车速=脉冲数/单位时间*车轮周长(km/h),里程=累积脉冲数*车轮周长(km)。 2)基于超声波测距模块的液位检测单元,凭此单元获取的散热器的水位和油箱的油量。液位高度=容器高度-测量距离。 3)基于超声波测距模块的物距检测单元,凭此单元获取车前物体及车后物体间的距离,以防止泊车过程中的剐蹭现象的出现。 4)基于单线器件的温度检测单元,凭此单元获取散热器的当前温度,以防散热器温度过高产生故障。 5)基于单线器件的温湿度检测单元,凭此单元获取驾驶室的温湿度情况,在配有相应装置的条件下,可实现温湿度的自动调节,从而为驾驶员通过一个舒适度操作环节。 6)基于光敏器件的亮度检测单元,凭此单元感知周围环境的亮度状况,从而适时地打开车灯,以保证行车安全。 7)基于气体传感器的检测模块,凭此单元可提示驾驶严禁酒后驾驶,或在停车调温时提示一氧化碳超标情况。 8)基于触摸屏的操控单元,凭此单元可实现虚拟表盘下的数据显示及状态指示,并可执行一些触控操作,如转向灯的开关、车门的闭合状态、车窗的开启与闭合等。 在该系统中,由于检测与控制的对象比较多且对相应的实时性较强,故要求至少有2个MCU参与整体控制,其整体框图如下:
整体设计框图
为了实现整体设计目标,在设计上是采用软、硬相结合的方式。 在硬件方面:主要以ATMEGA328为核心构成对传感器群的采集处理,然后交由另一个以M051/M451为核心,集显示与触摸操作为主的处理中心。鉴于2个处理中心均处于同一处理装置中,故无需采用其他的通讯模块。在处理任务增多的情况下,为了便于协调管理,可采用基于RS485的MODBUS协议通讯。 在软件方面:分别采用2种开发工具进行开发,对于ATMEGA328为了增强共享性,是采用Arduino UNO的开发技术来设计;对于M451的开发则是采用KEIL 来进行开发。由于Arduino所提供的资源库较为丰富,所以能够相对的缩短开发周期。
|