background image

期后,就把事先置于后续数据寄存器的值送到端口数据寄存器 PADR(PBDR),于是就更
新了 TPC 的输出值。由于 H8/3062F 系列的单片机时钟频率都在 20 MHz 以上,这样只需
不到 O.2ms,就可以送出端口信号,大大缩短了响应时间,比一般的单片机在定时中断
过程中送端口信号快了几十倍甚至上百倍,从而使对脉冲控制的更加准确。而在中断子程
序中则是更新后续数据寄存器 NDRA(NDRB)和输出比较寄存器 GRA 的值,从而改变脉
冲的频率实现对异步电机的调速。GRA、GRA'和 GRA"抽象地表示 3 个不同的 GRA 值,从
而演示了 GRA 值的改变对脉冲频率的影响。

 

步进电机的启动、调速及加减速脉冲控制方案

    采用 H8/3062F 的 TPC 的 TP15 引脚和 I/O 口的 P1.O 分别控制步进电机的速度和方
向。TP15 输出的脉冲送至由功率管组成的电机驱动控制电路,使功率管工作在开关状态 ,
步进电机停止时 TP15 的输出保持高电平。这样当 TP15 输出一个负脉冲时,功率管导通,
从而使步进电机前进一步,通过控制 TP15 输出的脉冲频率来实现步进电机的调速。P1.0
控制步进电机的运行方向。当 P1.O

 

输出为高电平时,步进电机前进;反之,则后退。

    步进电机在负载情况下能够正常启动的脉冲频率称为"步进电机启动频率"。如果脉冲频
率高于该值,则电机将不能正常启动,可能发生丢步或堵转;同样步进电机在制动时也
应该最后以启动频率制动。如果要使电机达到高速转动,那么脉冲频率应该有个加速过程,
即启动频率较低,然后按一定加速度升到所希望的高频(降速过程反之)。较为理想的启动
曲线,应是按指数规律启动,根据用户的负载情况选择不同的启动频率和不同的指数曲

 

线,以找到一条最理想的曲线。

    一般在运行控制过程中,采用"阶梯升速法"将速度连续升到所需要的速度,按预置的
曲线运行速度转换时间应尽量短。为了缩短速度转换的时间,可以采用建立数据表的方法,
结合各曲线段的频率和各段间的阶梯频率便可以建立一个连续的数据表。经过多次"试
机"计算出 256 个脉冲频率对应的 GRA 值。其中:第一个为步进电机启动频率对应的 GRA
值;最后一个是步进电机最大脉冲频率对应的 GRA 值,在软件编程中存放在数组中,用
于改变脉冲频率,实现对步进电机的加减速控制。减速制动过程与加速启动过程同理。

    3 

 

软件程序设计

    软件部分由 1 个主程序和 3 个子程序(TPC 初始化子程序、定时器初始化子程序和中断子
程序)组成,程序用 C 语言编写。TPC 初始化子程序设定了 TP15 为输出方式及其下一个输
出的电位,并且选择输出信号触发源。定时器初始化子程序选择了定时器时钟源,及其计
数器的清 O 源,并打开了定时中断。中断子程序实现了脉冲的输出控制,从而实现步进电
机的调速。在编程中要重点考虑一个问题,就是离目标点的距离与脉冲频率位置变量的关
系。这是是否加减速的依据。经过计算发现,当离目标点的距离大于脉冲位置变量中的值
加 1 时,步进电机加速或者保持最高运行速度;否则就要减速,不然到达目标点时就可

 

能无法以启动频率停止,从而导致制动失败。

    

 

结语

    利用 H8/3062F 单片机中的 TPC 控制步进电机的脉冲序列,可以使步进电机的运行更