基于MSP430步进电机驱动位移检测系统的研制

楼主
基于MSP430步进电机驱动位移检测系统的研制
作者:孙敏 常越 上海交通大学

   摘要: 文章针对汽车怠速控制系统的需求, 描述了一种高精度位移检测系统的研制, 其以M SP430F149 为核心, 以步进电机驱动为传动机构, 再配以线性位移传感器, 实现位移的高精度检测。重点介绍了步进电机驱动器的设计和位移检测过程。

1 引言
   目前, 汽车工业正迅猛发展, 随着技术革新,油耗也逐步降低。但是, 据统计约有30% 的燃油消耗在怠速阶段。为了符合日益严格的油耗和排放法规的要求, 必须控制怠速时的工况, 提高燃油燃烧的效率。通常, 需要对安装在怠速旁路上的怠速阀的开度进行控制, 这就需要高精度的位移检测系统, 一方面把位移量反馈给中央控制单元, 另一方面执行中央控制单元给定的位移指令, 配合中央控制单元完成怠速阀的开度控制。本文采用美国T I 公司的M SP430 单片机为中央控制器, 实现了步进电机驱动的位移检测系统的研制工作。

2 MSP430系列单片机概述
   美国德州仪器(T I) 公司的M SP430 系列单片机, 是一种具有超低功耗特性的功能强大的单片机。MSP430系列单片机摒弃了传统的数据线地址线访问外设的设计思路, 将各种外围资源集成在片上, 实现了片上系统(SOC),大大简化了系统的设计。如M SP430F149 就包含: 60K 的片内ROM、2K 的RAM , 12 位AD, 精密模拟比较器,硬件乘法器,2组频率可达8MHz 的时钟模块, 2个带有大量捕获ˆ比较寄存器的16 位定时器T im er- A 和T im er- B,看门狗, 2个可实现异步、同步及多址访问的串行通信接口, 数十个可实现方向设置及中断功能的并行输入、输出端口等,这些功能可以满足各种控制系统对单片机的需要。

   MSP430 系列包容了许多先进的技术,如JTAG技术,FLASH在线编程技术、BOOT2 STRAP技术等。M SP430 单片机内部预设了JTAG模块,具有完整的在线调试功能,利用单片机本身具有的JTAG接口或片内BOOT ROM ,可以在1台PC 机及1个结构小巧的JTAG控制器的帮助下完成程序的下载和调试, 而不必使用复杂的仿真调试工具。MSP430系列的FLASH型芯片具有片内的BOOT ROM,利用它,只需几根线就可以修改内部的程序, 运行内部的程序, 这就为系统软件的升级提供了又一种方便的手段。另一方面,BOOT STRAP 具有很高的保密性,口令字达到32个字节的长度。

   MSP430F1x子系列的工作电压仅为1.8~3.6V,并有5种低功耗模式, 充分运用各种超低功耗设计手段, 工作电流视工作模式不同为0.1~400LA。MSP430系列单片机采用了RISC技术, 仅27 条汇编指令,指令周期可达125ns,能编制出高效的程序。超低功耗的数控振荡器技术, 可以实现频率调节和无晶振运行。

   3-系统设计要求与结构组成针对上述怠速阀开度的控制需求, 位移检测系统的设计要求如下: 位移检测范围25 mm , 分辨率0. 01 mm。检测流程要求先前进一定步数,停留一段时,再后退一定步数, 停留一段时间,并要求能重复上述检测过程。前进步数和后退步数可调范围1~ 200 步, 停留时间可调范围0~ 99s, 重复次数可调范围1~ 99 999 次。步进电机采用四相爪极步进电机(A+,A-,B+,B-),要求驱动电压连续可调,范围7.00~16.00V , 脉冲频率可调, 范围2~250Hz。为了位移检测的准确性,还要求有位移校准功能,检测时自动校准位移值。最后,采用液晶显示各种检测信息,键盘用于各种检测参数的设定。

   位移检测系统的结构组成框图如图1 所示。整个系统以T I 的M SP430F149 单片机为处理核心。调压模块以三端可调稳压芯片LM 317 为核心, 用于产生可调的步进电机驱动电压, 同时驱动电压通过分压、限幅、跟随等处理后进入MSP430F149 的AD模块。在步进电机的轴端安装高精度的线性位移传感器, 该传感器的滑动端随着步进电机的转动而同步前进后退, 通过给整个传感器供电以及滑动端的分压, 位移信号将直接转换成电压信号, 再通过分压、限幅、跟随等处理后输入M SP430F149 的AˆD 模块, 就能得到当前的位移值。电源模块用于给MSP430F149 提供电源, 并给调压模块提供输入电压, 通过参考电压源给线性位移传感器提供参考。
 [imga]../../upload/2007/01/09/180344.gif[/imga]

4 步进电机驱动器的设计
   步进电机的驱动电路图如图2所示。本系统采用4相步进电机,有A+,A-,B+,B-四相用4相步进电机,有A+,A-,B+,B-四相绕组。VADJ 为调压模块输出的可调驱动电压。为防止三极管由导通转为截止时电流的突降而引起的冲击电压, 每个绕组并联上续流二极管。步进电机驱动的关键是进行脉冲的分配, 由于驱动的脉冲频率较低, 利用MSP430F149 的4个IO口P10, P11,P12,P13进行高低电平的分配, 并通过4个三极管就能驱动步进电机的每一相。
 [imga]../../upload/2007/01/09/180348.gif[/imga]
   通常,4相步进电机可以工作在4拍或8拍驱动方式下。在4 拍方式下,电机的步进角为90°,每相脉冲的占空比为25%,驱动功率较小,但较易产生失步,脉冲分配图如图3所示。在8拍方式下, 电机的步进角为45°,每相脉冲的占空比为37.5% ,驱动功率较大,但失步的情况较少, 脉冲分配图如图4 所示。
 [imga]../../upload/2007/01/09/180352.gif[/imga]
   本系统采用4 拍方式, 程序中定义一个脉冲分配数组{0×01,0×02,0×04,0×08}、一个下标索引和一个方向标志, 并配合MSP430F149 的Timer-B 定时模块, 就可以实现步进电机的驱动了。考虑到驱动脉冲的最低频率为2Hz, 故Timer-B 采用SMCLK(1MHz)经过8分频后(125kHz)作为时钟,寄存器TBCCR0可按下式设置阈值。
 [imga]../../upload/2007/01/09/180356.gif[/imga]
Timer 2B每产生一次中断, 就根据方向标志将下标索引按模4加1或减1,意味着步进电机转动了一步。另外, Timer-A用于前进或后退以后停留时间的定时。Timer-A采用ACLK(32768Hz),TACCR0 设置为0×8 000, 这样每过1s Timer-A产生一次中断。

5 位移检测
位移检测使用MSP430F149内部的12位AD转换模块ADC12。ADC12有8个外部通道和4个内部通道,可以用内部参考电平,也可以用外部参考电平,或者是两者的组合。ADC12具有通用的采样保持电路, 通过选择转换时钟、分频因子和配置寄存器, 可以灵活的设置各种采样时序。ADC12有4种工作模式: 单通道单次、序列通道单次、单通道重复和序列通道重复。对于序列通道转换, 采样顺序完全由用户来定义,同时每个通道可以独立配置转换所需的参考电平。ADC12有16个用于保存转换结果的12 位寄存器,每个寄存器有各自相应的配置及控制寄存器,让用户为准备存储的转换结果选择采样通道和转换所需的参考电平。

   如前所述, 通过与步进电机同轴安装的高精度线性位移传感器,可以将位移信号转换为电压信号, 再通过分压、限幅和跟随等一系列的信号处理后输入MSP430F149 的外部AD通。为了降低线性位移传感器供电电压的波动对检测精度的影响, 检测时同时采样传感器的整个供电电压Vcc和滑动端电压Vin,按比例计算位移值。ADC12设置为序列通道单次模式,对Vcc和Vin各转换4次为一次序列,如此循环4次,得到Vcc和Vin的转换值各16个。分别对这2组转换值进行数字滤波后得到最后的转换结果。按下式可计算出当前的位移值。
     [imga]../../upload/2007/01/09/180400.gif[/imga]
整个位移检测过程如图5所示。
 [imga]../../upload/2007/01/09/180405.gif[/imga]

6-结束语
美国TI公司推出的MSP430系列16位单片机,具有低功耗、实时处理能力强、运行速度快等优点, 性能价格比高,正日益得到广泛的应用,尤其在自动信号采集系统、电池供电便携式装置、超长时间连续运行设备等领域。本文所述的高精度位移检测系统充分利用了M SP430 系列单片机提供的各种软硬件优点, 大大简化了外围模块的设计, 从而提升了系统整体的性能。

参考文献
胡大可 MSP430系列FLASH型超低功耗16位单片机 北京:北京航空航天大学出版社,2001

电脑版 Page created in 0.1562 seconds width 3 queries.