基于LM629的无刷直流电动机伺服控制器

2012-07-23 06:36王森林包晔峰赵虎成
微特电机 2012年5期
关键词:直流加速度单片机

王森林,包晔峰,薛 猛,杨 可,赵虎成

(1.河海大学,江苏常州213022;2.卡特彼勒技术研发中心,江苏无锡214028)

0引 言

永磁无刷直流电动机既具有交流电机的结构简单、运行可靠、维护方便等优点,又具有直流电机良好的调速特性。因此无刷直流电机在控制中的应用会越来越受重视[1]。然而,目前国内无刷直流电动机的伺服控制器的控制精度较低、价格较高,因此设计一款控制精度高、成本低的无刷直流电动机控制器显得尤为重要。对无刷直流电动机的控制通常采用PID控制策略。PID控制技术成熟,实现方便,适应面广、鲁棒性强、控制品质稳定。本文基于伺服控制芯片LM629设计了一种无刷直流电动机伺服控制器,通过软件调节PID参数的方式来控制无刷直流电动机,增强其对不同电机的适应性。

1 LM629简介

1.1 LM629 特性

LM629是一款专用的电机控制芯片,该芯片可以为电机的数字控制提供所需的精确的、实时的控制。LM629的特性如下:

(1)32位的位置、速度和加速度寄存器;

(2)可编程的采样时间间隔;

(3)8位PWM输出;

(4)内部的速度梯形图发生器;

(5)16位的可编程数字PID滤波器;

(6)速度、目标位置和PID参数可以在运动过程中改变;

(7)速度和位置操作模式;

(8)实时的可编程主机中断[2];

1.2 LM629 工作原理

图1是基于LM629直流伺服控制系统的系统框图。主处理器通过I/O接口与LM629进行通信,向LM629输入运动参数和PID参数。

图1 系统框图

系统通过增量式编码器将电机的运动状态信息反馈给LM629,编码器提供的A、B信号用于反映电机的实际位置。Index信号用于反映电机的绝对位置。

LM629的位置生成器生成每个时刻对应的位置值。在位置控制模式下,主处理器指定加速度值、最大速度值和位置值。LM629利用指定的参数控制电机以指定的加速度运动直到指定位置。在速度控制模式下,LM629控制电机以指定的加速度加速到设定的速度并保持这个速度直至收到新的速度命令。如果电机在运动过程中受到干扰,LM629保证平均速度不变。

LM629通过数字PID控制器调节闭环控制系统。数字PID控制器的偏差信号通过位置生成器和位置反馈处理器获得[3]。

2 LM629伺服控制系统硬件设计

图2是LM629伺服控制系统的硬件框图,系统的硬件主要包括主处理器单元(ATmega16)、人机界面单元(键盘、TFT彩屏显示)、伺服控制单元(LM629)和功率驱动单元(L298)。

图2 伺服控制系统硬件框图

本系统采用ATmega16单片机作为主处理器。在该系统中ATmega16用于统筹和协调系统的工作,该芯片完成了对键盘和TFT彩屏的控制工作,同时根据用户输入的参数完成对LM629的控制。由于ATmega16单片机内部资源非常丰富,本设计利用ATmega16单片机内部的复位电路,省去了外部的复位电路;单片机内部的看门狗提高了系统的抗干扰性能;单片机内部的EEPROM用于存储系统的重要信息,保证信息在掉电的情况下不易丢失。键盘用于输入各种参数,如:速度值、位置值、加速度值。用于选择控制方式,如:位置控制模式、速度控制模式。显示部分用于实时显示电机的运动状态和各种参数。由LM629构成的直流伺服控制单元用于完成电机的伺服控制,主处理器只需要通过I/O接口向LM629指定运动参数和PID参数,LM629便可以独立完成伺服控制。信号处理电路用于对LM629输出的信号进行处理,并将处理后的信号输入到L298驱动单元。由L298构成的功率驱动单元用于将单片机的控制信号转换、放大以驱动直流电动机。

3 LM629伺服控制系统软件设计

3.1 LM629 软件设计

LM629的软件设计主要包括LM629初始化、装载PID参数和装载运动参数三个步骤。为了保证LM629工作正常,每次对 LM629操作前都要对LM629进行初始化。初始化的过程如下:

(1)将LM629的RST引脚拉低至少8个时钟周期,实现对LM629的硬件复位;

(2)延时 1.5 ms,如果 LM629的状态字为“84H”或者“C4H”,则对LM629进行复位检查,否则重新进行硬件复位;

(3)通过向LM629写入RSTI命令实现复位检查,如果状态字变为“80H”或者“C0H”,则复位成功,否则重新进行硬件复位。

如果LM629初始化成功,则证明LM629工作正常,可以进行装载PID参数和装载运动参数的操作。LM629具体的软件流程如图3所示。

图3 LM629软件流程图

在装载PID参数之前,首先要确定PID参数。PID参数可以通过经验法确定。在装载速度、位置和加速度等运动参数之前,必须对相应参数进行处理,使其变为LM629可以识别的形式。下面举例说明如何对运动参数进行处理。

假设电机编码器的线数为512线,并将采样周期设为256 μs。现需要电机以10 r/s2的加速度加速到50 r/s,最后停止到距起始点2 000转的位置。

(1)目标位置值的确定

由于LM629对增量式编码器的反馈信号进行了4倍频。则:

R=512×4=2 084计数值 /圈

P=R×2 000=4 168 000计数值

将P转为16进制为P=003F9940H。

(2)速度值的确定

V=RT×50=26.675 200计数值 /采样周期

需要装载到LM629的速度值为32位,它由16位的正整数和16位的小数组成,所以需要载入的速度值:

V=V × 65 536=1 748 185.90

取整V=1 748 185。

将V转为16进制V=001AACD9H。

(3)加速度值的确定

需要装载到LM629的加速度值为32位,它由16位的正整数和16位的小数组成,所以需要载入的加速度值:

取整A=8。

将A转为16进制,A=00000008H。

3.2直流伺服控制系统软件设计

系统的软件流程图如图4所示。系统软件主要由三部分组成,分别是初始化、参数确定和参数载入。

图4 直流伺服系统流程图

(1)初始化

初始化包括AVR端口初始化、TFT彩屏初始化和HD7279初始化。AVR端口初始化用于确定各端口的输入输出状态,以便于对各外围芯片进行读写操作。TFT彩屏初始化实现对TFT彩屏的初始化,以便于彩屏正常显示当前的PID参数值和速度值。HD7279初始化用于对HD7279芯片进行初始化,以便于操作者输入系统参数。

(2)参数确定

初始化工作完成后,系统要确定需要载入到LM629的参数。系统首先从EEPROM中读出系统上次工作的PID参数和各运动参数,用户如果需要改变参数,可以通过键盘输入参数,系统将用户输入的参数存储到EEPROM中,并将改变的参数设为载入参数。否则将原始参数设为载入参数。

(3)载入参数

参数确定之后,系统按照LM629的软件流程图将各参数载入到LM629中并起动电机。系统开始工作。

当系统完成用户指定的任务之后,主程序返回到参数设定部分以用于设定新的运动参数。

4验证实验

为了验证伺服控制系统的控制精度,选用FAULHABER直流伺服电机1524B009SR进行测试。该电机额定电压为9 V,空载转速为10 100 r/min,编码器的线数为512线。利用经验法设定PID参数 kp、ki、kd分别为 10、5、10。现需要电机以10 r/s2的加速度加速到50 r/s,最后停止到距离起始点2000转的位置。图5是直流伺服系统的实物图。

图5 直流伺服系统实物图

实验方法:根据要求将需要的参数通过键盘输入到系统中并起动电机,在电机的运行过程中AVR单片机每隔300 ms读取电机的转速并将数据存储在EEPROM中,电机运行结束后,从EEPROM中读取数据并用orign软件绘制速度-时间曲线。得到的曲线如图6所示。

图6 理想曲线和实测曲线对比图

5结 语

由实验及结果可知,基于LM629的伺服控制器在位置控制模式下有较好的控制精度,该方案是一个理想的伺服无刷直流伺服电机的控制方案。

[1] 郑静,渠慎丰.小功率伺服无刷直流电机驱动器设计[J].电子测量技术,2006,29(3):130-132.

[2] 王华,王立权,韩金华.电机专用控制器LM629的应用研究[J].电子器件,2005,28(2):330-333.

[3] 贺志军.基于LM629的电机伺服控制系统设计[J].机械设计与制造,2009(2):40-42.

猜你喜欢
直流加速度单片机
“鳖”不住了!从26元/斤飙至38元/斤,2022年甲鱼能否再跑出“加速度”?
“宁电入湘”直流工程再提速
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的多功能智能插排
基于单片机的便捷式LCF测量仪
天际加速度
创新,动能转换的“加速度”
死亡加速度
一款高效的30V直流开关电源设计