运动控制芯片运用范围极广,包括实验室和工厂自动化,半导体设备,纺织设备,机器人,ATM,自动售货机,医疗诊断设备。
使用专用运动控制芯片+微处理器uC的方案可以快速用于工业自动化设备的各种运动控制器,相对于单纯使用微处理器开发运动控制器来说,更加方便快捷、更稳定。 系统结构框图:
专用运动控制芯片HMC80x系列内部结构图:
其中外部接口CS、RD、WR、RST、A0-7、D0-7是读写控制总线、地址总线与数据总线,与微处理器uC连接,用于接收微处理器控制指令。 其中外部接口OUTx、DIRx是每个运动轴的脉冲PU和方向DIR输出,接电机驱动器,然后电机驱动器接到电机上即可,电机带动运动结构可以连接编码器,编码器输出接到运动芯片EAx、EBx、EZx引脚上,用于位置反馈。 微处理器通过数据总线向运动控制芯片写入运动距离、加速率、减速率、梯形或S曲线运动等参数,然后发送启动指令,运动控制芯片则从OUT、DIR向电机驱动器发出连续的加减速脉冲控制,控制电机做指定的运动。
微处理器与HMC8033运动控制芯片接口示意图:
以STM32F103单片机为例开发一款运动控制器,硬件方面将运动控制芯片的控制总线接到PB口,地址总线接到PD口,数据总线接到PE口,如下图:
HMC80X运动控制芯片输出脉冲,经过TLP2168高速光耦隔离,再经过26LS31转差分输出,按下图接到电机驱动器的脉冲和方向输入端即可。
软件方面:
一、 初始化单片机IO口,如图:
二、 移植读写接口函数,包括字节读写,字读写、双字读写函数:
三、 然后单片机可以通过读写函数向HMC80x运动控制芯片写入控制参数,假设用户需要使电机按下图的速度曲线运动指定距离:
四、 则需要设定以下寄存器:
五、 主要参数计算公式:
六、 将计算好的寄存器值写入运动控制芯片后,再写入启动位,运动控制芯片将自己向电机发出指定的控制脉冲,单片机可以去执行其他任务。
七、HMC80x芯片资料提供有常规运动的接口函数,多数常规运动可以直接调用函数即可,单轴定长运动函数定义如图:
八、直接调用函数实现运动控制:
|