本发明涉及直流电机驱动控制系统,尤其是涉及基于CPLD的多路直流电机驱动控制系统。
背景技术:
目前,传统的直流电机驱动控制,多采用单片机与分立元件嵌入式硬件组合及嵌入式程序进行传感器检测、电机运转、电机运转限位控制。单片机与分立元件组合实现的直流电机驱动控制,由于限位传感器信号需要经过单片机识别、响应等程序处理,因此时效性差;并且分立元件较多,可靠性低;外围电路复杂也使得电路板面积大,可扩展性低。CPLD(英文Complex Programmable Logic Device的缩写,复杂可编程逻辑控制器件)控制单元具有编程灵活、集成度高、设计开发周期短、适用范围宽、开发工具先进、设计制造成本低、对设计者的硬件经验要求低、标准产品无需测试、保密性强、价格低廉等特点,如何利用CPLD对多路直流电机进行驱动控制,是本领域科研人员研究的课题。
技术实现要素:
本发明目的在于提供一种基于CPLD的多路直流电机驱动控制系统。
为实现上述目的,本发明采取下述技术方案:
本发明所述基于CPLD的多路直流电机驱动控制系统,包括多个被控的直流电机,每个所述的直流电机均设置有用于限制正向旋转和/或反向旋转的第一限位传感器和第二限位传感器;每个直流电机的正向旋转和/或反向旋转分别由一路驱动电路控制,每个直流电机的所述驱动电路结构均相同,由直流电机驱动器、光电隔离装置、CPLD控制单元和单片机组成;所述CPLD控制单元的通信接口与所述单片机通信连接,单片机与上位控制计算机通信连接;所述直流电机驱动器输入控制端与所述光电隔离装置输出控制端连接,光电隔离装置输入控制端与CPLD控制单元输出端连接;所述第一限位传感器、第二限位传感器的信号输出端分别通过第一光电耦合器、第二光电耦合器与CPLD控制单元的信号输入端连接;CPLD控制单元由传感器信号处理单元和电机信号处理单元组成,所述传感器信号处理单元的信号输出端与所述电机信号处理单元的信号输入端连接。
所述传感器信号处理单元由与第一与门A1、第二与门A2、第一缓冲器B1、第二缓冲器B2、第一触发器D1、第二触发器D2、或非门NOR1组成;所述第一、第二缓冲器B1、B2的输入端分别与对应的所述第一、第二光电耦合器输出端连接,第一、第二缓冲器B1、B2的输出端分别与对应的所述第一、第二触发器D1、D2的时钟脉冲端CP连接,所述第一、第二与门A1、A2的两个输入端分别与所述单片机的电机选择信号输出端DC1和复位信号输出端RST连接,第一、第二与门A1、A2的输出端分别与对应的第一、第二触发器D1、D2的清零端CLR连接,第一、第二触发器D1、D2的数据端D分别接高电平,第一、第二触发器D1、D2的次态输出端Q分别与所述或非门NOR1对应的的一个输入端连接;
所述电机信号处理单元由第三与门A3、第四与门A4、第三触发器D3、第四触发器D4、第一非门N1、第二非门N2、第五与门A5、第六与门A6组成;所述第三、第四与门A3、A4的两个输入端分别与所述单片机的复位信号输出端RST和所述或非门NOR1的输出端连接,第三、第四与门A3、A4的输出端分别与对应的第三、第四触发器D3、D4的清零端CLR连接,第三触发器D3的数据端D和时钟脉冲端CP与所述单片机的电机方向信号输出端DC1-D1和电机选择信号输出端DC1连接,第四触发器D4的数据端D和时钟脉冲端CP分别与所述单片机的电机方向信号输出端DC1-D2和电机选择信号输出端DC2连接,第三、第四触发器D3、D4的次态输出端Q分别与对应的所述第一非门N1、第二非门N2输入端连接,第一非门N1、第二非门N2的输出端分别与对应的所述第五与门A5、第六与门A6的一个输入端连接,第五与门A5、第六与门A6的另一个输入端与单片机的复位信号输出端RST连接,第五、第六与门A5、A6的输出端与所述光电隔离装置的输入端连接。
为确保驱动电压无损耗提供给负载,每个被控的所述直流电机电源输入端均接有西门子3RT系列的浪涌电流抑制器。
所述被控的直流电机个数为16。
本发明优点在于每个所述被控直流电机的运动控制完全由所述CPLD控制单元实现,大大方便了多路直流电机驱动控制系统的扩展,根据应用负载需要灵活配置第一限位传感器和第二限位传感器的数量,时效性强;相对于常规的嵌入式硬件及程序控制,本传感器信号处理单元及电机信号处理单元不涉及嵌入式编程,可靠性高。同时,本CPLD控制单元具有编程灵活、集成度高、设计开发周期短、适用范围宽、开发工具先进、设计制造成本低、对设计者的硬件经验要求低、标准产品无需测试、保密性强、价格低廉等特点。
附图说明
图1是本发明所述控制系统的结构框图。
图2是本发明所述CPLD控制单元的逻辑电路原理图。
具体实施方式
如图1、2所示,本发明所述基于CPLD的多路直流电机驱动控制系统,包括16个被控的直流电机M,每个所述的直流电机M均设置有用于限制正向旋转和/或反向旋转的第一限位传感器和第二限位传感器;每个直流电机的正向旋转和/或反向旋转分别由一路驱动电路控制,每个直流电机的所述驱动电路结构均相同,由直流电机驱动器(全桥直流电机驱动IC TB6643KQ)、光电隔离装置、CPLD控制单元1和单片机(STM32F10系列)组成;所述CPLD控制单元的通信接口与所述单片机通信连接,单片机与上位控制计算机2通信连接;所述直流电机驱动器输入控制端与所述光电隔离装置输出控制端连接,光电隔离装置输入控制端与CPLD控制单元1输出端连接;所述第一限位传感器、第二限位传感器的信号输出端分别通过第一光电耦合器、第二光电耦合器与CPLD控制单元1的信号输入端连接;CPLD控制单元1由传感器信号处理单元3和电机信号处理单元4组成,所述传感器信号处理单元3的信号输出端与所述电机信号处理单元4的信号输入端连接。
所述传感器信号处理单元3由与第一与门A1、第二与门A2、第一缓冲器B1、第二缓冲器B2、第一触发器D1、第二触发器D2、或非门NOR1组成;所述第一、第二缓冲器B1、B2的输入端分别与对应的所述第一、第二光电耦合器输出端连接,第一、第二缓冲器B1、B2的输出端分别与对应的所述第一、第二触发器D1、D2的时钟脉冲端CP连接,所述第一、第二与门A1、A2的两个输入端分别与所述单片机的电机选择信号输出端DC1和复位信号输出端RST连接,第一、第二与门A1、A2的输出端分别与对应的第一、第二触发器D1、D2的清零端CLR连接,第一、第二触发器D1、D2的数据端D分别接高电平,第一、第二触发器D1、D2的次态输出端Q分别与所述或非门NOR1对应的的一个输入端连接;
所述电机信号处理单元4由第三与门A3、第四与门A4、第三触发器D3、第四触发器D4、第一非门N1、第二非门N2、第五与门A5、第六与门A6组成;所述第三、第四与门A3、A4的两个输入端分别与所述单片机的复位信号输出端RST和所述或非门NOR1的输出端连接,第三、第四与门A3、A4的输出端分别与对应的第三、第四触发器D3、D4的清零端CLR连接,第三触发器D3的数据端D和时钟脉冲端CP与所述单片机的电机方向信号输出端DC1-D1和电机选择信号输出端DC1连接,第四触发器D4的数据端D和时钟脉冲端CP分别与所述单片机的电机方向信号输出端DC1-D2和电机选择信号输出端DC2连接,第三、第四触发器D3、D4的次态输出端Q分别与对应的所述第一非门N1、第二非门N2输入端连接,第一非门N1、第二非门N2的输出端分别与对应的所述第五与门A5、第六与门A6的一个输入端连接,第五与门A5、第六与门A6的另一个输入端与单片机的复位信号输出端RST连接,第五、第六与门A5、A6的输出端与所述光电隔离装置的输入端连接。
为确保驱动电压无损耗提供给负载,16个被控的所述直流电机M电源输入端均接有西门子3RT系列的浪涌电流抑制器。
本发明工作原理,现以一路驱动电路控制一个直流电机的正向旋转和/或反向旋转为例作一简述:
如图1所示,单片机接收上位控制计算机发出的指令或读取如开关、触摸屏关于负载动作指令,进行通信协议解析后输出预动作电机编码、预动作电机控制信号及读取第一、第二限位传感器及直流电机M状态指令,由CPLD控制单元1进行直流电机M运动控制、第一、第二限位传感器触发信号处理、读取第一、第二限位传感器及直流电机M状态数据
如图2所示,当第一限位传感器和第二限位传感器未动作时,第一缓冲器B1、第二缓冲器B2的输入端DC1-S1、DC1-S2均未触发信号,此时或非门NOR1输出 “1”(高电平),一旦电机选择信号DC1有效,产生边沿触发,第三、第四触发器D3、D4翻转输出电机动作方向信号,第五与门A5的输出端DC1-OUT1/第六与门A6的输出端DC1-OUT2=单片机的电机方向信号输出端DC1-D1/单片机的电机方向信号输出端DC1-D2=1/0或0/1或0/0,对应的被控直流电机M正向旋转、反向旋转或停止动作;而被控直流电机M对应的第一限位传感器和第二限位传感器任一个动作时,触发产生上升沿,第一触发器D1或第二触发器D2翻转,经或非门NOR1输出清零信号至第三、第四触发器D3、D4的清零端CLR,第五与门A5、第六与门A6的输出端DC1-OUT1、DC1-OUT2均归零,被控直流电机M停止动作,达到限位传感器触发对直流电机M限位的目的。