无刷直流电机在汽车系统的设计

发布者:春林初盛最新更新时间:2016-06-16 来源: eefocus关键字:无刷直流电机  汽车系统  单片机 手机看文章 扫描二维码
随时随地手机看文章
  由于汽车总线技术的日趋成熟,汽车内多个电机单元的控制方式正从传统的集中式线束控制向分布式总线控制转变。分布式总线控制可以减少线束,降低成本,便于各个电机控制单元和车内其它电控单元一起形成一个综合协调的控制系统,提高各控制单元的运行可靠性,减少冗余的传感器及相应的软硬件配置,实现信息交换和资源共享。目前常用的汽车总线包括CAN、LIN等,其中LIN面向低速场合的应用。作者设计基于LIN总线的无刷直流电机控制器,该控制器以文献中介绍的MC68HC908MR16单片机、PC33896前置驱动器、MC33399LIN收发器为核心构成,以低廉的成本获得了较好的控制性能。

  2、基于LIN总线的无刷直流电机控制系统

  LIN总线是一种新型的低成本汽车车身总线,1999年由欧洲汽车制造商Audi、BMW、Daimler2Chrysler、Volvo、 Volkswagen、VCT等公司和半导体厂商Motorola共同组成的LIN协会推出,从2003年开始投入使用。

  LIN总线使用串行通信协议,它有下面的特性:单主机多从机组织(即无需总线仲裁) ;基于普通UART/SCI接口的低成本硬件实现,低成本软件或作为纯状态机;从机节点不需要石英或陶瓷谐振器即可以实现自同步;保证信号传输的延迟时间;低成本的单线通信介质,通信速率最大可达20kb/s。一个LIN网络由1个主节点、最多不超过15个从节点组成。所有节点都有一个从机任务,从机任务分为接收任务和发送任务,主节点还有一个主机任务。LIN网络上的通信总是由主机任务所发起,主机任务传输报文帧头,报文帧头包括同步间隔场、同步场和标志符场;从机任务作出报文响应,报文响应包括2、4或8字节的数据场和校验场,报文帧头和报文响应组成完整的报文帧。

  LIN总线作为CAN总线的补充,主要用于车身控制。车身网络主要连接对象有座椅、车门、空调和仪表显示等系统。基于LIN总线的全自动空调系统结构框图如图1 所示。其中空调中央控制单元起CAN /LIN网关和LIN主节点的作用,其他单元为从节点,分为传感器从节点和执行从节点。传感器从节点将温度、湿度、日照强度等环境状态值发送给主节点,主节点根据这些状态值以及驾驶员设定的车内温度等参数进行综合决策,向执行从节点传达控制命令,执行从节点依据命令进行相应的动作。这样的空调系统有效实现节点的分布式控制,减少汽车上的安装线束,同时实现真正的全自动控制,使得空调系统各部件协调运行,从而使室内温度达到并保持在驾驶员设定值上,创造一个舒适的室内环境。由于无刷直流电机拥有良好的调速性能,所以空调系统中一些执行从节点把它作为驱动部件,如压缩机、鼓风机、冷却风扇等。这些从节点分别和主节点之间构成了基于LIN总线的无刷直流电机速度闭环控制,主节点通过决策算法给定电机转速,转速的反馈和控制算法由从节点来完成,从节点即是作者所要设计的控制器。

  

  图1 基于LIN总线的空调系统

  3、控制器硬件结构

  控制器结构框图如图2所示,图中包括:电源管理模块、MC68HC908MR16 单片机控制模块、PC33896 前置驱动模块、三相FET 全桥模块、MC33399LIN物理层通信模块。

  

  图2 控制器结构框图

  霍尔传感器检测电机转子的位置,它是3个脉宽为180°(电角度) 、互差120°(电角度)的信号。单片机的定时器输入捕捉单元捕捉到位置信号的变化,实现定子绕组电流的换向,确保定子产生的磁场与转子永磁磁场保持平均的垂直关系,以利产生最大转矩。同时,通过定时器记录的2次换向之间的时间间隔,可计算出电机的转速,根据目标转速与计算转速之间的差值通过PI算法调节 PWM占空比,从而控制电机的转速。电机的目标转速、起/停、正/反转等信息来自LIN总线的报文帧。

  3.1 电源管理模块

  现代汽车内部的电气负载不断增加,未来汽车上将采用42V电系代替现有的12V 电系供电。但要完全实现这一转变,还有诸多问题尚未解决,现主要采用42V /12V的双电源供电来作为一种过渡方案。作者设计的控制器考虑这一发展趋势,在12V的电机应用中,控制器采用单12V电源供电;在42V的电机应用中,控制器采用42V /12V 双电源供电。同时电源管理模块中含有一块12V /5V的电源调压芯片LT1211。

  3.2 单片机控制模块

  单片机控制模块以MC68HC908MR16单片机为核心,它是一款专门用于电机控制的8 位单片机。工作温度范围达到- 40~105℃,完全适应汽车内的工作环境。片内带有12位、6通道PWM模块,产生6路PWM逻辑信号(可设定为6路独立或者3对两两互补) ;定时器A的0, 1, 2三个通道用来捕捉位置传感器信号的变化,通道3负责记录通道2的位置信号产生变化的时刻; 10位A /D转换器,转换时间为16 - 17μs,能快速完成电池电压监测任务;出错信号输入,用于发生在过流或过热的情况下产生中断,进而封锁PWM输出;特有的快速8位乘法和16位除法指令,使得它具有较高的运算能力,能完成较为复杂的控制算法; 768B 片内RAM 和16kB 片内Flash存储器,具有在线编程能力和保密功能;系统保护特性,包括看门狗复位、低电压禁止复位等增强了程序的稳定性和可靠性。

  3.3 前置驱动模块

  前置驱动模块的核心是PC33896,它是新推出的专用于汽车电子42V /12V 系统的三相FET前置驱动器。片内含有DC /DC降压电路、电流采样放大器、SPI 通信口及各种保护电路等。PC33896直接接收来自单片机的6路PWM逻辑信号,将其转换成用来驱动6个FET栅极的驱动信号。若汽车系统供电电压是新的42V电系,片内的DC /DC将之降到大约15V 左右用于FET栅极电路驱动,节省了开通和关断FET所耗散的功率;若汽车电源供电电压采用的是现行的12V电系,某些场合电源电压会不足以驱动FET栅极,此时电荷泵电路将之提升到至少10V左右,确保FET的正常驱动。内部电流采样放大器用来测量直流母线电流。单片机能通过SP I口发送指令,配置PC33896 (如DC /DC和电荷泵的工作与否、电流放大器的放大倍数等)以及诊断其故障。

  3.4 LIN物理层通信模块

  MC33399是面向汽车电子应用的LIN收发器芯片,它和单片机的SCI口构成LIN通信的物理基础。它有正常和睡眠两种工作模式,总线上的唤醒帧可将其从睡眠模式唤醒。

  4、控制器的软件设计

  由于单片机的内嵌硬件模块和PC33896功能较强,使单片机有足够的资源完成较为复杂的控制策略,从而使控制器的性能大大提高。

  4.1 主程序结构

  系统的程序采用前后台结构。前台是中断级,后台是任务级。任务级由一个死循环和一个LIN通信服务程序构成。死循环内包含一个有限状态机和一个10ms服务程序,有限状态机如图3所示。系统上电,完成初始化任务后进入死循环。一旦发生SCI接收中断,中断服务程序判断接收到的是否为同步间隔场。若为同步间隔场,程序在退出中断服务时并不返回到死循环中,而是进入LIN通信服务程序,进行报文帧的接收和处理。完成通信服务后,程序重新返回死循环。依据接收的报文帧,有限状态机切换到相应的状态。为保护电机,图中正转态和反转态之间的转换强制经历了中间的停止态过渡。当发生过流或者低电压等出错事件时,控制器进入出错态,它关断所有PWM输出,并记录错误代码。控制器接收到总线的睡眠帧后,进入睡眠态,总线的唤醒信号将重新激活控制器。在正转态或反转态时,死循环内的10ms服务程序每间隔10ms执行一次,完成电机转速计算、PI控制算法、电池电压读取等任务。

  

  图3 主程序有限状态机

  4.2 LIN通信报文帧的定制

  LIN总线是一种主从机通信模式,报文帧的定制在LIN网络软件总体设计时进行。文中的无刷直流电机控制器是总线上的一个从节点,它响应的报文帧如表1所示。标志符“0x3C”是下载命令帧,用于主节点向所有从节点广播命令和数据,其中第一个数据字节为“00”的是睡眠帧。标志符“0x3D”是上传命令帧,它触发一个从节点(由一个优先的下载帧编址)向主机上传数据。标志符“0x20”是无刷电机控制帧,用于控制器接收主节点的控制信息,第一个数据字节为“01”要求电机正转,为“02”是反转,为“04”是停止,第三、第四两个数据字节是电机转速的给定值。标志符“0x21”是电机状态帧,用于控制器向主节点传输信息,第一、第二两个数据字节是电机的实际转速,第三、第四两个字节表示电池电压。

  表1 控制器响应的LIN报文帧

  

  4.3 软件中的中断服务程序

  4.3.1 定时器A0、A1、A2输入捕捉中断( inputcap2ture ISR1)

  当定时器A0、A1、A2监测到位置信号有跳变沿时,引起输入捕捉中断inputcap ture ISR1。中断程序中通过读取3个引脚的当前电平,并结合前一次中断中读入的值,查询换向表完成换向。

  4.3.2 定时器A3输入捕捉中断( inputcap ture ISR2)

  定时器A3监测到A2 通道的位置信号有上升沿跳变时,引起输入捕捉中断inputcap ture ISR2。中断程序读取定时器A3通道捕捉寄存器的当前值,结合前一次中断中读入的值和定时器A的溢出次数,算出一个位置脉冲周期内对定时器A的高频时钟脉冲的计数,结果用于速度的计算。

  4.3.3 定时器B溢出中断(TIMERB ISR)

  定时器B每隔10ms溢出中断一次,中断程序中置位标志位timerflag,从而使得主程序死循环内的10ms服务程序能被执行。

  定时器A3、定时器B的中断允许在LIN通信服务程序中被关闭,而换向中断被保留,从而保证了通信的可靠性和电机的运行稳定。

  5、试验结果

  采用所设计的控制器,以一台无刷直流电机(其规格等同于额定电压为48V、额定功率为150W 的客车空调鼓风机驱动用无刷电机)为试验对象,试验图如图4所示。

  

  图4 试验图

  图4中控制器采用42V /12V双电压供电。LIN图4 试验图总线的主节点由PC机来模拟,它通过RS232 串口经由一块RS232转LIN的接口卡PC card与LIN总线相连,其LIN 通信的软件利用Labview界面环境开发。

  实际运行结果表明:电机能快速起动、制动、准确及时跟踪主节点的给定速度,控制器运行稳定、可靠,能满足实时控制的要求。

  6、结论

  作者所设计基于LIN总线的无刷直流电机控制器,硬件电路结构简单,兼容未来汽车的42V供电电系,具有高的性价比。此外,由于LIN总线是一种开放的协议,该控制器不仅适用于汽车电子领域,还可用于工业控制、家电等其他领域。

关键字:无刷直流电机  汽车系统  单片机 引用地址:无刷直流电机在汽车系统的设计

上一篇:基于MC9S12XD的行车记录仪系统设计
下一篇:一种电动汽车的快速充电系统设计

推荐阅读最新更新时间:2024-03-16 14:57

单片机点亮数码管
数码管的示意图如上,通过点亮a-g七个led来拼成对应的数字或字符,数码管有共阳极(底电平亮)和共阴极(高电平亮),以上图的数字2为例: 共阳极(0亮1灭): DP G F E D C B A 1 0 1 0 0 1 0 0 = 0xA4 共阴极(1亮0灭): DP G F E D C B A 0 1 0 1 1 0 1 1 = 0x5B 全部定义: 附件的excel中有所有共阳共阴的代码; 以共阳极为例,将0-9定义在数组(C语言中是叫“表”?有知道的同志可以赐教)中,通过循环来依次显示0-9; #include reg52.h un
[单片机]
<font color='red'>单片机</font>点亮数码管
单片机系统可靠性技术及发展
随着半导体技术的飞速发展,单片机本身的设计中不断采用了一些新的抗干扰技术,使单片机的可靠性不断提高。除选择抗干扰能力强的单片机外,单片机系统中其它辅助元器件的可靠性也至关重要,一些抑制干扰的元器件的使用有助于提高系统的可靠性。此外,单片机系统在电路设计、印制电路板的设计、布线与制造工艺、系统安装时有无良好的接地等,都直接影响应用系统的可靠性。   单片机自身的抗干扰措施   为提高单片机本身的可靠性。近年来单片机的制造商在单片机设计上采取了一系列措施以期提高可靠性。这些技术主要体现在以下几方面。   1.降低外时钟频率   外时钟是高频的噪声源,除能引起对本应用系统的干扰之外,还可能产生对外界的干扰,使电
[单片机]
单片机实现的测温电路设计
利用单片机实现极简单的测温电路 单片机在电子产品中的应用已经越来越广泛,在很多的电子产品中也用到了温度检测和温度控制,但那些温度检测与控制电路通常较复杂,成本也高,本文提供了一种低成本的利用单片机多余I/O口实现的温度检测电路,该电路非常简单,且易于实现,并且适用于几乎所有类型的单片机。其电路如下图所示: 500) {this.resized=true; this.width=500; this.alt='这是一张缩略图,点击可放大。n按住CTRL,滚动鼠标滚轮可自由缩放';this.style.cursor='hand'}"> 图中: P1.0、P1.1和P1.2是单片机的3个I/O脚; RK为10
[测试测量]
用<font color='red'>单片机</font>实现的测温电路设计
汽车主动安全技术的汽车自动紧急制动(AEB)行人检测系统设计方案
汽车安全性一直被视作汽车最重要的特性,是汽车技术发展的一个关键驱动因素。目前,我国在汽车安全系统的研究上已经取得了一定的进展。汽车安全系统分为主动安全系统与被动安全系统两种:主动安全系统是指防抱死制动系统、紧急刹车辅助系统等这类传统的汽车安全系统,这些系统可以使得汽车的行驶更加稳定,缩短制动距离,减少汽车的碰撞率,但是这些系统必须在人工控制的状态下才能发挥出作用,没有办法预测和有效避免交通事故的发生;被动安全系统是指安全气囊、儿童安全座椅、安全带等这类安全系统,这些系统的作用仅仅是减少车祸所带来的损失,旨在碰撞发生后保障车内与车外人员免受或少受碰撞的伤害,并无法避免交通事故的发生。随着各方的共同努力,汽车的被动安全技术已日趋完善,
[嵌入式]
<font color='red'>汽车</font>主动安全技术的<font color='red'>汽车</font>自动紧急制动(AEB)行人检测<font color='red'>系统</font>设计方案
51单片机实现LED流水灯(数组方式和位运算方式)
/* 名称:51单片机实现LED流水灯(数组方式和位运算方式) 说明:今天又重新开始系统的学习51了,LED就算个开端吧。 要注意两点: 1、sfr和sbit是C语言扩展出来的关键字。其中sfr用于对特殊功能寄存器进行声明,sbit用于对某些特殊功能寄存器的某位进行声明。这里和宏定义很相似,但是不能用宏定义进行替换,对于前者是因为51单片机的寄存器存在于内部空间0x80-0xFF,这空间属于直接寻址,51特殊功能寄存只能直接寻址,不能间接寻址。如果用宏定义的话,在翻译成汇编时就会认为是通过总线访问对应的外部地址了。对于后者,sbit是定义一个标志位,也叫位变量。而类似于#define key1 P3^0就说不通了。
[单片机]
东芝推出用于智能电表电能计算的单片微控制器
东芝公司(TOKYO:6502)今天宣布面向智能电表推出一款新的单片微控制器“TMPM411F20XBG”,成为其基于ARM® Cortex®-M4F核的微控制器TX04系列阵容的最新成员。样品出货即日启动。 典型的智能电表控制器包括1个测量电流和电压的电能计算装置、1个收发外部设备数据的通信控制装置,以及1个将信息输出至显示器的显示装置。 新产品整合了2个Cortex®-M4F核,从而可在单个芯片上独立控制测量和通信装置,并减少板卡占用空间。 此外,还搭载了网络通信—AES、SHA和ESG—所需的安全功能。同时还部署了电源故障时的篡改检测和中断检测,功耗超低。 东芝一直致力于开发微控制器,以支持和推动全球电气公用设施广泛
[单片机]
MSP430单片机看门狗操作
int main( void ) { WDTCTL=WDTPW+WDTHOLD; //关看门狗 BCSCTL1 =CALBC1_1MHz; //设定DCO 为1MHZ DCOCTL =CALBC1_1MHZ; //选择定时模式,并选时钟源为ACLK,即定时时间为ACLK/32768(WDTISx=0) WDTCTL=WDTPW+WDTTMSEL+WDTSSEL+WDTCNTCL; P1OUT |=BIT0; //LED 使能 P1DIR |=BIT0; IE1 |=WDTIE; //使能WDT 定时中断 _BIS_SR(GIE+LPM3_bits); //进入LPM3 模式,ACLK(WDT 时钟源)仍工作,并使能总中断 ret
[单片机]
单片机 步进电机 驱动程序 ULN2003 28BYJ-48 5线4相电机 PIC16F877A
static unsigned char FFW = { 0x01, 0x03, 0x02, 0x06, 0x04, 0x0c, 0x08, 0x09 }; static unsigned char REV = { 0x09, 0x08, 0x0c, 0x04, 0x06, 0x02, 0x03, 0x01 }; void SETP_MOTOR_FFW( unsigned char n )//正转n圈 { unsigned char i, j; for ( i = 0; i 5 * n; i++ ) { for ( j = 0; j 8; j++ ) { PORTD =
[单片机]
<font color='red'>单片机</font> 步进电机 驱动程序 ULN2003 28BYJ-48 5线4相电机 PIC16F877A
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
热门活动
换一批
更多
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

更多每日新闻
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved