步进电机在各种自动化控制系统中有着广泛的应用,是机电一体化装置中的关键部件。这是一种数字控制的电动机,是将电脉冲转化为角位移的执行机构,它通过控制脉冲个数和脉冲频率来控制电机的角位移量和转动速度,从而达到准确定位和调速的目的。传统的步进电机所需的数字式电脉冲信号(即方波控制信号)一般都是借助数字逻辑电路来产生。随着嵌入式技术的不断发展,单片机的应用更为广泛,由单片机定时来产生这种脉冲信号的场合越来越
步进电机在各种自动化控制系统中有着广泛的应用,是机电一体化装置中的关键部件。这是一种数字控制的电动机,是将电脉冲转化为角位移的执行机构,它通过控制脉冲个数和脉冲频率来控制电机的角位移量和转动速度,从而达到准确定位和调速的目的。
传统的步进电机所需的数字式电脉冲信号(即方波控制信号)一般都是借助数字逻辑电路来产生。随着嵌入式技术的不断发展,单片机的应用更为广泛,由单片机定时来产生这种脉冲信号的场合越来越多。单片机定时控制脉冲一般有软件定时和定时器定时两种方式。前一种方式占用了CPU的大部分工作时间,所以常用定时器定时中断来产生脉冲信号。由于一般的单片机系统中断响应时间大部分在10Us级以上,因而定时器定时中断来产生脉冲的精确度大致也在10Us级以上,往往不能满足步进电机速度控制的高精度要求。为了提高脉冲控制的精确度,笔者采用瑞萨公司H8/300H系列的H8/3062F单片机中的可编程定时式样控制器进行脉冲控制,使得脉冲信号输出的相应时间达到O.1Us级,从而能够满足步进电机速度控制的高精度要求。
1 可编程定时式样控制器TPC
可编程定时式样控制器TPC是瑞萨公司H8/300H系列单片机所特有的一个功能模块,它用16位定时器作时基提供各种式样的脉冲输出。图1为TPC的结构框图。TPC的脉冲输出分成可同时独立运作的4组,每组4位,分别由定时器的4个通道的比较匹配信号来触发。TPC借用了端口B和端口A的共16条引脚TP15~TP0作为其输出,可按位开放,最多可以控制16个脉冲输出,而输出数据由两端口的数据寄存器PBDR和PADR以及后续数据寄存器NDRB和NDRA提供。端口数据方向寄存器PADDR和PBDDR用于控制引脚的输入或输出;而后续数据允许寄存器NDERA和NDERB用来开放或关闭TPC的端口输出;TPC的输出方式寄存器TPMR用于选择TPC每组的输出方式;输出控制寄存器TPCR则用于选择TPC每组的触发信号源,即由定时器的哪个通道触发。其中单片机H8/3062F的定时器有3个通道,每个通道分别有3个寄存器:定时计数器TCNT、通用寄存器GRA和GRB。