基于蓝牙技术的汽车驾驶盘控制系统设计
1 引言高科技应用改变了人的生活,汽车作为基本的运载工具的同时人们更希望汽车的驾驶操作更加简单方便,而且在车内能及时与外界进行信息沟通与交流。
蓝牙技术可为实现这种新型汽车电子信息系统提供技术支撑,利用蓝牙技术可以将汽车上的各种电子设备以无线的方式连成一体,形成“车域网”,这些设备包括汽车电气控制设备、音响和视频设备、车辆定位与监控设备、各种传感器及其控制系统、车辆保安系统和车辆导航系统等。
蓝牙作为一种新型短距离无线扩频通信技术,具有体积小、功耗低、开放性和互操作性等特点。与传统的以电缆和红外方式传输数据相比,具有以下优点:
(1)抗干扰能力强;无线上网的手提电脑、手机等各种具有无线通信功能的电子设备工作时,对车内的其它电子设备存在大量的电磁干扰。蓝牙技术具有快速确认和跳频方案以确保链路稳定的特点。它把频带分成若干个跳频信道,在一次连接中,无线电收发器按一定的码序列不断地从一个信道“跳”到另外一个信道,只有收发双方是按这个规律进行通信的,从而避开干扰;跳频的瞬时带宽是很窄的,但通过扩展频谱技术使这个窄带宽成百倍扩展成宽频带,使干扰可能的影响变成很小。(2)不需信号线的连接,减少成本,缩小所占空间。(3)具有电磁波的基本特性,有较大的功率,可以增加传送距离,而且没有角度及方向性的限制,具有穿墙性,可在物体之间反射、绕射。(4)功耗非常低,能同时连接许多元件,传输速度快。
本文介绍的基于蓝牙技术的驾驶盘控制系统,采用有线与无线相结合的网络方案构成整个控制系统。
2 系统方案设计
本系统通过安装在驾驶盘上的按钮实现车内定速巡航、音响、车内空气环境、前大灯照明等控制功能。
控制系统基于蓝牙技术设计,其硬件组成主要包括蓝牙主控设备和蓝牙从控设备两大部分。主控设备通过ZLG7289 采集按键信号, 然后送入微处理器STC89LE516 中处理,微处理器根据不同的按键信号发送相应的指令和数据至蓝牙模块BC219159B 中,蓝牙模块通过无线网络在主、从控设备的蓝牙模块之间建立链接后传递指令和数据,从控设备的微处理器根据相应的信号发送不同的指令和数据至CAN 总线上,连接在CAN 总线上的其它车载系统根据指令实现相关功能,LCD 显示各种功能状态。蓝牙主控与从控设备硬件框图分别如图1 与图2 所示。
图1 蓝牙主控设备硬件框图
图2 蓝牙从控设备硬件框图
3 系统硬件设计
3.1 主控设备硬件设计
3.1.1 按钮部分
按钮位置示意如图3 所示分为4 个区,每区4 个按钮。为使操作舒适简洁,采用一键多功能来减少硬件设备和简化操作,驾驶盘上设定16 个功能按钮。
图3 驾驶盘按钮位置分布图
功能描述:1 号键是定速巡航开关按钮,按一下1号键进入定速巡航控制,按2 号键进入设定或重设功能,3 号和4 号键为上下选项移动键,再按1 号键退出定速巡航;5 号键是音响系统启动关闭键,并可切换FM/CD 模式,根据按键次数选择(开启→FM→CD→关闭),6 号键为节目选择键,同样根据按键次数选择相关项,7、8 号键为音量调节键;9 号键为空调启动关闭键,10 键为温度模式切换键,11、12 号键为温度调节键;13 号键为远近灯开关控制键,14 号键为雾灯开关控制键,15、16 号键为前大灯强弱调节按键。
3.1.2 按键信号处理模块
按键信号处理采用键盘扫描管理芯片ZLG7289 实现。ZLG7289 采用SPI 串行总线与微处理器通讯,/CS、CLK、DIO 分别与微处理器三个I/O 引脚相连,KEY与/INT0 相连,串行数据从DATA 引脚送入芯片,并由CLK 端同步。当有键被按下和片选信号变为低电平后,DATA 引脚上的数据在CLK 引脚上升沿被写入ZLG7289 的缓冲寄存器,并且只有当/INT0 引脚出现下降沿时才允许读取按键值。在无任何按键情况下,LED为亮的状态,当有任意键按下时,LED 为灭的状态。
图4 与图5 分别为ZLG7289 芯片引脚图与键盘逻辑阵列图,4 根行线分别接ZLG7289 的SG、SF、SE、SD引脚;4 根列线分别接ZLG7289 数据线DIG0~3.
3.1.3 蓝牙模块
BC219159 核心是CSR 公司推出的单片射频芯片BlueCore2–External,包含无线电收发器、基带控制器硬件电路及实现蓝牙应用框架所必需的协议。片内含有自动校准和内置的自检程序,从而简化了开发、应用、和产品测试。外加存有CSR 蓝牙协议栈软件的外部Flash 时,BlueCore2–External 可构成用于音频和数据通信的完整蓝牙系统[1]。
该芯片外配元件少,RF 接收器具有接近零中频结构,在低噪声放大器输入端足够高的带外截止性能指标允许射频模块靠近GSM 和W-CDMA 手机发射器使用。该芯片使用FSK 监频器,在噪声存在的情况下具有卓越的性能。内部功率放大器最大有+6dBm 的功率输出,射频合成器完全集成在内核中,不需要外接压控振荡器、变容调谐二极管或者LC 调谐器,系统的基准时钟由内置的晶振产生,时钟范围8~40MHz.
蓝牙模块支持USB、UART、PCM 语音接口和SPI接口等多种通信接口。片上有32KB RAM,作为保存每个有效连接的音频/数据的环形缓冲器和蓝牙协议栈功能的存储器,还有8MB 的Flash;支持点对点和点对多点网络拓扑结构,可构成匹克网和散射网。
本系统的蓝牙模块将数据按蓝牙协议转换成相应编码发送到对方的蓝牙设备,由于BC219159 提供标准UART 接口, 因此它可以直接与本系统中的STC89LE516 的UART 口连接进行通讯。
3.2 从控设备硬件设计
从控设备硬件设计包括蓝牙通信、CAN 总线控制、显示等模块,限于篇幅简介如下。
3.2.1 蓝牙模块
从控设备的蓝牙芯片BC219159 与单片机STC89C516 相连,当蓝牙开始工作,其LED 将快速的闪烁。如果此时主控设备的蓝牙模块正在搜寻蓝牙从模块,则两者通过自动搜寻功能自动建立连接和通讯。
从控系统中被控制的对象大部分采用5V 信号电平,故选用5V 信号电平的STC89C516 单片机,由于蓝牙模块采用3.3V,因此蓝牙与STC89C516 相连时需要在串口线之间加上100Ω电阻来匹配电压。
3.2.2 CAN 总线控制
现代汽车控制系统节点多、数量大、实时性要求高,而且大批的数据信息要求能在不同的电子器件间共享[2].CAN 总线是一种串行多主站控制器局域网总线,它具有很高的网络安全性、通讯可靠性和实时性,简单实用,网络成本低,不但可以减少导线连接,而且能增强诊断和监控能力,适用于汽车及一般工业环境。本设计中CAN 控制器选用PHILIPS 公司的SJA1000。车内系统示意接线如图2 所示。
3.2.3 显示模块
系统的显示模块采用ST7920 驱动芯片为核心的12864 液晶显示模块,具有64*16 位元字元显示RAM和64*256 位元绘图显示RAM.系统将主控设备所调用的状态模式及该功能下的进度,以图片和字符形式实时地显示在屏幕上,具有较强的直观性,便于驾驶员及时了解车内各种电子设备的参数,使操控更方便。
4 系统软件设计
软件编程主要包括蓝牙通讯软件设计和主从设备应用程序设计两大部分。
在PC 机上完成对蓝牙模块的初始化,对其设定主从,通过给蓝牙分配一个地址,并确定它的波特率,来完成数据准确及时的传输。
BC219159 与STC89LE516 之间通过串口通讯,在程序中使用串口函数就可以互相传递数据,蓝牙相当于一根无形的导线,接通主控和从控设备。
4.1 蓝牙通讯软件设计
两个蓝牙模块进行数据通信是通过HCI 分组实现的。HCI 分组有命令分组、事件分组、数据分组而数据通讯流程一般包括以下6 个步骤:蓝牙模块初始、HCI 流量控制设置、查询、建立连接、数据传输和断开连接。
这部分程序主要借助CSR 公司的BlueLab 开发平台,在WindowsXP 环境下用C 语言开发实现。
4.2 蓝牙主从控系统应用程序设计
蓝牙主、从控设备的应用程序比较复杂,软件设计遵循了模块化的设计思想。图6 与图7 分别给出了主控、从控系统部分的流程图,所有的程序模块均在在WindowsXP 环境下用C 语言开发实现。
图6 主控设备流程图
图7 从控设备流程图
5 结语
采用上述方案设计的驾驶盘控制系统,功能强大、性价高、性能稳定、维护方便、开发容易。实验表明整个系统的通用性和可扩展性较好,具有应用价值。
页:
[1]