引言
随着汽车电子的迅猛发展,现代汽车中电控单元逐渐增多,这些电控单元大致可分成三类:动力传动装置控制(如发动机控制和变速控制),底盘部分控制(如汽车防抱死系统ABS)和车身控制。其中车身控制系统主要是为了提高驾驶的方便性和乘坐的舒适性。车身控制系统涵盖范围广,包括灯光控制系统,车门控制系统,座位控制系统,气候(空调)控制系统,仪表盘显示等。本文选取灯光、雨刷及底盘部分电磁阀这些控制节点来说明车身控制系统如何实现分布式控制方案。
系统结构
该系统要实现的功能如下:
* 控制汽车上所有车灯。
* 控制雨刷低速、高速、间歇式工作。
* 控制与取力器、全轮驱动、轮间和轴间差速器相连的电磁阀的工作。
* 实时响应驾驶室控制开关的动作。
* 灯光自检功能。
* 故障诊断定位能力。
该系统采用分布式结构,因为车身控制系统的控制对象比较多而且位置分散,若采用点对点集中控制方式,控制模块与被控对象之间需大量电缆连接,这势必造成车内布线复杂,制造和安装困难,并存在故障隐患。而分布式系统结构可以根据控制对象的位置来设计控制模块,从而缩短了控制对象和控制模块的距离,各模块间通过LIN总线来通讯,该方式仅需一根线作为通讯线,这样加上地线和电源线总共三根线,从而简化了布线,使系统结构清晰。同时分布式系统结构增加了系统的灵活性,可方便地增减节点。此外分布式系统结构还降低了单板的静态电流,增加了单板的稳定性。系统结构示于图1。
图 1 分布式车身控制系统结构图
根据系统功能要求和结构特点,系统被分成四个模块:主控模块和三个子模块(前模块、底盘模块和后模块)。
主控模块位于车的驾驶室内,主要检测驾驶室内控制开关的状态,并根据这些控制开关的状态实现相应的控制策略,然后将控制命令发送给向各子模块,同时检查各用电设备的工作状态,若有故障则报警显示。前模块位于车的前部,主要控制车前部的用电器,包括车前部的灯:远光灯,近光灯,雾灯、左右前转向灯、雨刷、风扇、加热、紧急报警、喇叭的工作。底盘模块位于车的底盘,主要控制与取力器、全轮驱动、轮间和轴间差速器相连的电磁阀的工作。后模块位于车的后部,主要控制车后部的用电器,包括车后部的灯:尾灯,刹车灯,左右后转向灯的工作。
主控模块和子模块的功能框图示于图2和图3。
图2 主模块的硬件框图
电压调整单元将汽车内24V电压转换成5V电压供给单片机、功率芯片等。
微处理器控制单元(MCU)采用Motorola的MC68HC908GZ16和MC68HC908GR8,主控模块的微处理器控制单元采集输入的开关状态,完成相应的控制,将控制命令通过串口送给各子模块,同时根据各子模块反馈的负载的状态判断是否存在故障,若有故障则报警显示。各子模块的微处理器控制单元完成对负载的驱动,并采集负载的工作状态发送给主控模块。
开关状态检测单元将开关状态的24V电压转换成5V后,将此并行数据转成串行数据给MCU,这样可大大减少了所需的MCU引脚数量。功率驱动单元由功率芯片和串行数据转并行数据的芯片组成,功率芯片代替了传统的继电器,许多汽车负载不能被MCU或低电流接口器件直接驱动,而功率芯片可通过MCU控制输出大电流来驱动各种负载。各子模块可根据所带负载来选择不同的功率芯片,驱动阻性负载选用了MC33286和MC33888,驱动感性负载选用了MC33289。MCU通过I/O端口将控制命令串行输出,通过串行数据转成并行数据的芯片送给功率开关。
故障显示单元用三个发光二极管表示三个子模块,若子模块出现故障,相对应的发光二极管会点亮,同时蜂鸣器会报警。同时子模块上也用发光二极管来表示子模块所驱动的负载的状态,这样可非常直观地看出子模块上哪路负载出现开路、过流、过温、过压等的故障。
本系统采用LIN总线的通讯方式。LIN总线基于通用的SCI/UART接口的,其成本要低于CAN通讯。LIN可以作为CAN通讯网络的辅助。LIN总线主要应用在不需要CAN的性能、带宽及复杂性的低速系统,如开关类负载或位置型系统包括车的后视镜、车锁、车座椅、车窗等的控制系统。LIN更有助于实现汽车中与CAN网络连接的分布式控制系统。LIN以其低成本的优势成为车身控制系统网络的首选。
系统的通讯由主控模块控制通讯顺序,LIN的数据帧是按数据内容定义的,而不是数据的目的地址。这样定义可使多个节点收到同样的信息,并且数据能够以多种方式交换。数据可以从主节点发送到一个或多个从节点,也可以通过从节点发送给主节点或其他从节点。因此从节点之间通讯并不需要经过主节点,并且主节点可以将信息广播给网络内的所有节点。本系统中数据通讯主要是主模块向三个模块发送控制命令和三个子模块向主模块反馈的故障状态数据。本系统定义了几种数据类型,一种是三个模块各自接收的数据,另一种是前模块和后模块同时接收的数据,第三种是三模块同时接收的数据,第四种是三模块各自独立发送的数据。通讯过程见系统软件流程。
汽车上电磁干扰较厉害,对系统的抗干扰能力要求较高,系统在硬件和软件上进行了抗干扰设计。在硬件上,通讯线路上采用了光电隔离电路,电源也采用DC-DC隔离。在电源和地之间设计了一个去耦电容,它可以滤掉来自电源的高频噪声。在印刷线路板的布局上,将数字电路和功率驱动电路合理分开,使相互间的信号耦合减少到最小。在软件上,系统采用了看门狗技术,从而增加了系统的可靠性。 系统软件流程图示于图4。
图4 软件流程图
结语
本设计方案实现了系统的基本功能,且结构简单成本低,该设计思想同样适用于轿车和中型车辆。
关键字:MCU 分布式 控制系统
引用地址:分布式车身控制系统设计
随着汽车电子的迅猛发展,现代汽车中电控单元逐渐增多,这些电控单元大致可分成三类:动力传动装置控制(如发动机控制和变速控制),底盘部分控制(如汽车防抱死系统ABS)和车身控制。其中车身控制系统主要是为了提高驾驶的方便性和乘坐的舒适性。车身控制系统涵盖范围广,包括灯光控制系统,车门控制系统,座位控制系统,气候(空调)控制系统,仪表盘显示等。本文选取灯光、雨刷及底盘部分电磁阀这些控制节点来说明车身控制系统如何实现分布式控制方案。
系统结构
该系统要实现的功能如下:
* 控制汽车上所有车灯。
* 控制雨刷低速、高速、间歇式工作。
* 控制与取力器、全轮驱动、轮间和轴间差速器相连的电磁阀的工作。
* 实时响应驾驶室控制开关的动作。
* 灯光自检功能。
* 故障诊断定位能力。
该系统采用分布式结构,因为车身控制系统的控制对象比较多而且位置分散,若采用点对点集中控制方式,控制模块与被控对象之间需大量电缆连接,这势必造成车内布线复杂,制造和安装困难,并存在故障隐患。而分布式系统结构可以根据控制对象的位置来设计控制模块,从而缩短了控制对象和控制模块的距离,各模块间通过LIN总线来通讯,该方式仅需一根线作为通讯线,这样加上地线和电源线总共三根线,从而简化了布线,使系统结构清晰。同时分布式系统结构增加了系统的灵活性,可方便地增减节点。此外分布式系统结构还降低了单板的静态电流,增加了单板的稳定性。系统结构示于图1。
图 1 分布式车身控制系统结构图
根据系统功能要求和结构特点,系统被分成四个模块:主控模块和三个子模块(前模块、底盘模块和后模块)。
主控模块位于车的驾驶室内,主要检测驾驶室内控制开关的状态,并根据这些控制开关的状态实现相应的控制策略,然后将控制命令发送给向各子模块,同时检查各用电设备的工作状态,若有故障则报警显示。前模块位于车的前部,主要控制车前部的用电器,包括车前部的灯:远光灯,近光灯,雾灯、左右前转向灯、雨刷、风扇、加热、紧急报警、喇叭的工作。底盘模块位于车的底盘,主要控制与取力器、全轮驱动、轮间和轴间差速器相连的电磁阀的工作。后模块位于车的后部,主要控制车后部的用电器,包括车后部的灯:尾灯,刹车灯,左右后转向灯的工作。
主控模块和子模块的功能框图示于图2和图3。
图2 主模块的硬件框图
图3 子模块的硬件框图
电压调整单元将汽车内24V电压转换成5V电压供给单片机、功率芯片等。
微处理器控制单元(MCU)采用Motorola的MC68HC908GZ16和MC68HC908GR8,主控模块的微处理器控制单元采集输入的开关状态,完成相应的控制,将控制命令通过串口送给各子模块,同时根据各子模块反馈的负载的状态判断是否存在故障,若有故障则报警显示。各子模块的微处理器控制单元完成对负载的驱动,并采集负载的工作状态发送给主控模块。
开关状态检测单元将开关状态的24V电压转换成5V后,将此并行数据转成串行数据给MCU,这样可大大减少了所需的MCU引脚数量。功率驱动单元由功率芯片和串行数据转并行数据的芯片组成,功率芯片代替了传统的继电器,许多汽车负载不能被MCU或低电流接口器件直接驱动,而功率芯片可通过MCU控制输出大电流来驱动各种负载。各子模块可根据所带负载来选择不同的功率芯片,驱动阻性负载选用了MC33286和MC33888,驱动感性负载选用了MC33289。MCU通过I/O端口将控制命令串行输出,通过串行数据转成并行数据的芯片送给功率开关。
故障显示单元用三个发光二极管表示三个子模块,若子模块出现故障,相对应的发光二极管会点亮,同时蜂鸣器会报警。同时子模块上也用发光二极管来表示子模块所驱动的负载的状态,这样可非常直观地看出子模块上哪路负载出现开路、过流、过温、过压等的故障。
本系统采用LIN总线的通讯方式。LIN总线基于通用的SCI/UART接口的,其成本要低于CAN通讯。LIN可以作为CAN通讯网络的辅助。LIN总线主要应用在不需要CAN的性能、带宽及复杂性的低速系统,如开关类负载或位置型系统包括车的后视镜、车锁、车座椅、车窗等的控制系统。LIN更有助于实现汽车中与CAN网络连接的分布式控制系统。LIN以其低成本的优势成为车身控制系统网络的首选。
系统的通讯由主控模块控制通讯顺序,LIN的数据帧是按数据内容定义的,而不是数据的目的地址。这样定义可使多个节点收到同样的信息,并且数据能够以多种方式交换。数据可以从主节点发送到一个或多个从节点,也可以通过从节点发送给主节点或其他从节点。因此从节点之间通讯并不需要经过主节点,并且主节点可以将信息广播给网络内的所有节点。本系统中数据通讯主要是主模块向三个模块发送控制命令和三个子模块向主模块反馈的故障状态数据。本系统定义了几种数据类型,一种是三个模块各自接收的数据,另一种是前模块和后模块同时接收的数据,第三种是三模块同时接收的数据,第四种是三模块各自独立发送的数据。通讯过程见系统软件流程。
汽车上电磁干扰较厉害,对系统的抗干扰能力要求较高,系统在硬件和软件上进行了抗干扰设计。在硬件上,通讯线路上采用了光电隔离电路,电源也采用DC-DC隔离。在电源和地之间设计了一个去耦电容,它可以滤掉来自电源的高频噪声。在印刷线路板的布局上,将数字电路和功率驱动电路合理分开,使相互间的信号耦合减少到最小。在软件上,系统采用了看门狗技术,从而增加了系统的可靠性。 系统软件流程图示于图4。
图4 软件流程图
结语
本设计方案实现了系统的基本功能,且结构简单成本低,该设计思想同样适用于轿车和中型车辆。
上一篇:汽车检测中语音合成器的设计与实现
下一篇:Flash硬盘及其在GPS车载导航仪中的应用
推荐阅读最新更新时间:2024-05-03 00:01
PIC单片机C语言程序设计(4)
2.if语句 if 语句也称为条件语句,是C 语言中转移语句之一。在设计C 语言程序时,常常要根据某些条件以决定程序运行的流向,这时就需要if 语句来实现。任何if语句(包括else 部分),都可当作一条C 语句使用。 格式:if(表达式) 语句1 else 语句2 其中else 为选择项;即可有、可无的。所以条件语句,可分为两种;if 语句和if— else 语句。 式中的表达式为关系表达式或逻辑表达式以及由条件运算符(有关运算符将在后文介绍)构成的一种表达式。 功能:先计算if 中的条件表达式,其值为真(满足条件时),执行语句1 ;其值为假(不满足条件时),若有el
[单片机]
单片机I/O控制方式(UART中断和DMA中断的区别)
单片机I/O设备的控制方式主要有三种:程序循环检测、中断驱动和直接内存访问。 1、程序循环检测方式 程序循环检测方式的基本思路是:在程序(一般是设备驱动程序)当中,通过不断地检测I/O设备的当前状态,来控制一个I/O操作的完成。具体来说,在进行I/O操作之前,要循环地去检测该设备是否已经就绪。如果是,就向控制器发出一条命令,启动这一次的I/O操作。然后,在这个操作的进行过程中,也要循环地去检测设备的当前状态,看它是否已经完成。总之,在I/O操作的整个过程中,控制I/O设备的所有工作都是由CPU来完成的。这种方式也称为是繁忙等待方式或轮询方式。它的缺点主要是:在进行一个I/O操作的时候,要一直占用着CPU,这样就会浪费CPU的时
[单片机]
合泰:频出新产品 助力物联网
日前,台湾著名专业微控制器IC设计厂商合泰半导体(Holtek)在北京举行2017新产品发布会,合泰中国公司总经理蔡荣宗先生向观众和记者介绍了合泰的全新产品并描述了合泰在MCU上的优势以及看好物联网市场并发力于此的信心。 新品频出,目标可期 总部设在台湾新竹的合泰是成立于1983年的台湾上市公司, 公司资本7700万美金,全球员工700多人,在中国大陆的厦门和东莞都设立有销售和技术中心。 据蔡总介绍,2016年合泰响应市场和客户的需求创新开发了大量的新产品,到目前为止公司在32位MCU、触摸MCU、健康医疗产品方面均已获丰收, 使2017年挑战性目标1.47亿美金指日可待。 蔡总介绍,公司70%的业绩来源于中国
[物联网]
基于单片机实现遥控编码器PT2262的软件解码
1 引言
PT2262是红外遥控编码器,PT2272是其接收解码器,两者常常配对使用,现已广泛用于汽车门控、遥控门锁、门禁管理等领域,也可用于传送数字信息。PT2262具有19位二进制编码功能;PT2272的解码只有4~6位,这就限制了数据传输的应用。在此从PT2262接收的信号特征入手,利用8051F330单片机直接对接收到的信号进行解码,解释出PT2262发出的全部19位数据,从而使其应用于数字通信、智能化控制等领域。
2 硬件电路
图1是发射装置的原理图,PT2262作为编码器,当按下按键时,设定的地址码和数据码从17引脚串行输出,经红外发射元件IRED发出信号。通过电阻Rosc凋节发射频率,适当
[单片机]
51单片机电子日历(可调整 带温度)DS1302时钟+12864LCD显示
可按照程序接线 51单片机显示时间(可调整)(DS1302时钟+12864LCD显示) 仿真原理图如下: 单片机源程序如下: /****************************************/ /* 带温度显示的电子日历 */ /****************************************/ #include reg51.h #include intrins.h #include string.h #define uchar unsigned char #define uint unsigned int sbit DQ=P2^7; sbit CS1=P2^1;
[单片机]
PIC单片机应用专题三:I2C读写24C02
自从开始学习单片机起,就觉得I2C是个很有用的东西,它能大大节省我们的端口,现把软件模拟的I2C程序写出来,既是给大家分享,也是为自己做一下备份.下面的程序是用I2C存储24C02: INCLUDE P16F5X.INC ;同样可用于其他型号 ;*************************定义变量************************ STATUS EQU 3H PORTB EQU 6H PORTC EQU 7H EEPROM EQU 08H ADDR EQU 09H
[单片机]
单片机检测交流电掉电程序应用(RGB控制)
RBG软灯带是,等灯饰配件中常见的负载。一般作为背景灯装饰,以及护栏管。程序实现功能,利用墙壁开关,控制RGB灯带,分成4档,第一档:RGB之间实现渐变效果。第二档:R亮,第三档,B亮,第四档:G亮。当然还有其他很多花样。本程序难点,构造简单实用的RGB渐变函数,第二,如何在渐变中检测交流电掉电。实验器材:PIC12F509一片,RGB灯带一条,RGB控制线路板一块。 程序如下: #include pic.h __CONFIG(0X01A); #define uchar unsigned char #define uint unsigned int #define TIME_MAX 1000 uint key2_
[单片机]
MCU--新塘N76E003--创建工程
一、准备工作 1、下载编译工具keil c51 2、下载N76E003提供的 板级支持包(BSP),可到 nuvoton上下载 二、开发环境搭建 1、安装keil c51,然后和谐。。。不能随便发链接所以软件需要自己网上找一下,很多。 2、安装N76E003 keil支持包Nuvoton_8051_Keil_uVision_Driver_v2.00.6561.exe(在N76E003提供的 板级支持包(BSP)中),这样可以在keil 的device中找到N76E003 3、安装nu-link驱动 NuMicro NuLink Command Tool 2.00.6561.exe(在N76E003提供的 板级支持包(BSP)中
[单片机]
小广播
热门活动
换一批
更多
最新嵌入式文章
更多精选电路图
更多热门文章
更多每日新闻
- 首都医科大学王长明:针对癫痫的数字疗法已进入使用阶段
- 非常见问题解答第223期:如何在没有软启动方程的情况下测量和确定软启动时序?
- 兆易创新GD25/55全系列车规级SPI NOR Flash荣获ISO 26262 ASIL D功能安全认证证书
- 新型IsoVu™ 隔离电流探头:为电流测量带来全新维度
- 英飞凌推出简化电机控制开发的ModusToolbox™电机套件
- 意法半导体IO-Link执行器电路板为工业监控和设备厂商带来一站式参考设计
- Melexis采用无磁芯技术缩小电流感测装置尺寸
- 千丘智能侍淳博:用数字疗法,点亮“孤独症”儿童的光
- 数药智能冯尚:ADHD数字疗法正为儿童“多动症”提供更有效便捷服务
- Vicor高性能电源模块助力低空航空电子设备和 EVTOL的发展
更多往期活动
11月22日历史上的今天
厂商技术中心