CN102591250B - 一种双cpu组合形式的运动控制器 - Google Patents
一种双cpu组合形式的运动控制器 Download PDFInfo
- Publication number
- CN102591250B CN102591250B CN 201210047399 CN201210047399A CN102591250B CN 102591250 B CN102591250 B CN 102591250B CN 201210047399 CN201210047399 CN 201210047399 CN 201210047399 A CN201210047399 A CN 201210047399A CN 102591250 B CN102591250 B CN 102591250B
- Authority
- CN
- China
- Prior art keywords
- cpu
- module
- motion
- control
- motion controller
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Programmable Controllers (AREA)
- Numerical Control (AREA)
Abstract
本发明提供工业数控领域的一种双CPU组合形式的运动控制器,包括:控制模块、运动驱动模块、通信模块、输入输出模块、电源模块。其中,控制模块由主CPU和从CPU组成,主CPU负责逻辑控制及运动反馈,从CPU根据主控制模块的命令,控制电机的运动,实现运动控制中复杂的算法;主CPU与从CPU之间通过握手的方式交互数据与命令;本发明采用梯形图内嵌运动控制算法实现复杂的运动控制;本发明是一种可以由上位机控制,也可以脱离上位机独立控制的运动控制器,具有稳定性高、成本低等特点,并可实现插补等复杂的运动控制算法和多轴同步控制。
Description
技术领域
本发明涉及一种数控技术领域的运动控制器,具体是一种双CPU组合形式的运动控制器。
背景技术
在数控技术领域中,运动控制器是其最基本、最核心的部分。目前数控领域中,大部分都是采用PC机与运动控制卡相结合的方式,运动控制卡通过PCI接口与PC机相连。在PC机上实现人机的交互,包括设定运动轨迹及运动参数、监控运动状态等;运动控制卡根据设定的运动轨迹与运动参数,控制电机运动。这种方式利用了PC机卓越的处理能力和友好的可视化界面,而且可以使用PC机本身带有的丰富资源进行开发,可移植性好,为业内人士所认可,但这种控制方式不可避免的需要有PC机支持,无疑会增加设备的体积和成本,而且会影响设备的稳定性,对设备现场的环境也提出了很高的要求。
另外一种方式是基于单片机、专用芯片、FPGA的专用运动控制器。这类运动控制器结构简单,成本低廉,性能稳定,但由于单个CPU的硬件资源和处理能力有限,基本上只能实现简单的运动控制,很难实现复杂的逻辑控制、连续插补控制和多轴的同步控制,而且系统开发比较周期长。
发明目的
本发明的目的是针对现有技术的不足,提供一种体积小、成本低、功能强大、性能稳定、开放程度高的运动控制器,使其既能够脱离PC机独立运行,又能够实现较复杂的运动控制算法与多轴的同步控制,而且开发方便,开发周期短。
为了达到所述的目的,本发明提供了一种双CPU组合形式的运动控制器,该运动控制器包括控制模块、运动驱动模块、通信模块、输入输出模块、电源模块。控制模块为运动驱动模块、输入输出模块提供控制信号;通信模块为控制模块与外界通信提供接口;电源模块为控制模块、运动驱动模块、通信模块、输入输出模块提供稳定的电流,保证各个模块正常工作。
所述的控制模块由主CPU和从CPU组成,主CPU和从CPU之间通过握手的方式交互数据和命令;主CPU负责运动反馈与逻辑控制,从CPU负责运动控制输出,主CPU和从CPU协同合作,共同完成控制任务;控制器采用双闭环结构,保证对电机的控制精度;控制器的运动控制过程采用梯形图进行编程。
本发明与现有的技术相比,由以下优点:
从CPU发脉冲与主CPU进行计数形成闭环,可以实现对PWM发送状态的高速精确控制。
从CPU独立作为PWM输出控制,可以将更多的资源用于多轴同步协调控制、实时插补运算、轨迹运算等,从而实现多轴的连续插补控制。
通过IO的方式传递命令,实现主从之间命令的快速传递,使得从CPU可以快速响应主CPU的命令。
通过梯形图内嵌运动控制算法的方式进行编程,利用图形化编程,使程序简单易懂,可读性强,极大地提高系统的稳定性。
附图说明
图1为双CPU组合形式的多轴运动器的系统结构示意图;
图2为双CPU交互的示意图;
图3为本发明电机驱动输出示意图;
图4为本发明的通讯示意图;
图5为本发明程序的三层架构示意图;
图6 为本发明控制流程示意图。
具体实施方式
下面结合附图对本发明的实施例作详细说明:本实施例是以本发明的技术方案为前提进行实施,以下给出了详细的实施方案和具体的操作过程,但本发明的保护范围不限于下述的实施例。
如图1所示,本实施例包括控制模块、运动驱动模块、通信模块、输入输出模块、电源模块。
控制模块主要包括主CPU、从CPU及其外围电路构成,其中主从CPU均为Cortex-M3微处理器,采用ST(意法半导体)公司的STM32F103ZCT6。其时钟电路包括2部分:HSE振荡器时钟(高速外部信号时钟)和LSE时钟(低速外部信号时钟),HSE振荡器时钟为8Mhz的有源晶振,经倍频后,为系统提供72Mhz的时钟;LSE时钟为32.768Khz的无源晶振,为系统的RTC(实时时钟)提供时钟信号。JTAG接口为系统的调试提供接口,可以实现下载程序和在线调试程序的功能。掉电保护电路包括纽扣电池和电压选择电路,可以保证系统在断电的情况下,保证主从控制模块中CPU的BKP区的正常工作,防止重要数据的丢失。
其中主CPU实现运动反馈和逻辑控制,包括:接收外部输入信号;处理逻辑关系,进行逻辑判断;根据判断结果,输出信号给输出模块;处理与PC机的串口通讯数据;处理与外接设备的CAN通讯数据;发送命令给从CPU,控制从CPU发送PWM脉冲的状态;接收从CPU发出的PWM脉冲;接收从运动设备发出的反馈信号。从CPU实现运动控制输出,包括:解析主CPU发出的命令和运动参数;根据运动参数进行插补运算;根据运算结果,输出PWM脉冲。
输入输出模块主要对外部IO设备与主从CPU之间的连接电平转换和光电隔离;串口通讯模块主要负责运动控制器与PC机的通讯,使实现PC机对运动控制器的控制;CAN通讯模块为外接的CAN设备提供接口,方便扩展CAN设备。
运动驱动模块包括驱动输出电路和反馈电路。其中驱动输出电路负责将主从控制模块发送的运动命令传递给电机驱动器,反馈电路将电机驱动器的反馈信号传递给主控制模块;运动设备可以利用光栅尺等设备,对其运动位置进行监控,其信号通过反馈模块进行计数,并将信号传递给主控制模块,实现运动的闭环控制。
如图2所示,为双CPU交互的示意图。主CPU与从CPU之间的握手方式有三种:单个IO传递命令、组合IO方式传递命令、通讯方式传递命令和参数。单个IO传递命令和组合IO方式传递命令是由主CPU通过IO口发送命令,从CPU通过中断的方式接收命令,根据已经约定的格式确定主CPU发送的命令,通过这种方式可以快速的将主CPU的任务传递给从CPU;通讯方式传递参数和命令是有主CPU发起传参数和命令的通讯,从CPU接收后进行校验,并反馈返回帧,通过这种方式可以保证传送数据的正确性,但速度比较慢。
由于主控制模块的硬件资源有限,所以利用从CPU的硬件IO资源扩展输入输出端口,其状态通过另一个串口传递。
如图3所示,为电机驱动输出的示意图。主CPU将控制电机的方向信号传递给运动驱动模块,从CPU将控制电机的PWM信号和脉冲模式选择信号传递给运动驱动模块。运动驱动模块根据脉冲模式选择信号,利用数据选择器,将方向信号与PWM信号的输出端口进行重新分配,从而输出指令脉冲+指令方向或者CW脉冲+CCW脉冲两种类型的脉冲,所选的数据选择器为74HC153。经过数据选择器后的信号经过电平转换,转换为差分信号传输给电机驱动器,驱动电机运动。
电机驱动器发出的Z相反馈信号经过运动驱动模块后,将差分信号转换为TTL电平信号后,传输给主CPU,主CPU利用中断接收Z相反馈信号,用于电机的零点定位。
电机驱动器驱动电机运动后,会有正交信号反馈给运动驱动模块中的反馈电路,反馈电路根据接收到正交信号的相位差确定计数的加减。主控制模块会根据需要发送命令给正交计数模块:清计数命令、读当前计数命令和设定比较值命令。反馈电路根据命令,反馈响应的数据给主控制模块。反馈电路通过CPLD实现正交计数和对主控制模块的命令响应,所用的CPLD为Altera公司的EPM240。
如图4所示,本实施例与外部的通讯由两部分组成:串口通讯和CAN通讯。串口通讯主要实现上位机与控制器的通讯,通过Modbus协议实现,其中上位机作为主机,控制器作为从机,上位机主动发送命令帧,控制器根据接收到的命令帧,确定否需要改变某些变量的值,再构造返回帧,并发送给上位机。通过串口通讯,可以实现上位机对控制器的控制,也可以通过人机界面实现对控制器的控制。本实施例中,主CPU信号输出后,先经过光耦将信号进行隔离,再利用max232将TTL信号转换为RS232信号。CAN通讯主要用于设备的扩展或者控制器的级联。
本实施例所述输入输出模块包含32个输入点和20个输出点。其中,输出点有分为16个光耦输出点和4个继电器输出点。外部信号经过光耦隔离后,传输给主从CPU;主CPU的输出信号,先经过ULN2003的电流放大后,驱动光耦和继电器输出。
如图5所示,本设计采用梯形图对运动控制过程进行编程,其软件由三层架构组成:Bootload、引擎与梯形图。其中, Bootload用于引导引擎与梯形图的下载,实现控制器的在线更新功能;引擎分为主CPU引擎与从CPU引擎,主CPU引擎负责实现梯形图指令,并为梯形图指令提供调用的接口,从CPU引擎负责实现运动控制的输出;梯形图是由用户根据需要设计,用以实现具体的逻辑控制功能与运动过程控制。
如图6所示,本实施例工作时,上位机将运动命令通过串口通讯模块,发送给主控制模块,主控制模块经过命令解析后,计算运动控制所需的数据,再发送运动参数给从控制模块。发送完成后,给从控制模块发送启动PWM发送命令同时给运动驱动模块发送电机运动方向信号,同时主控制模块接收从控制模块发送的PWM信号进行计数,并根据计数值确定电机的运动状态。电机开始运动后,将电机的位置值反馈给高速正交计数模块进行计数,高速正交计数模块将计数值传输给主控制模块,主控制模块根据反馈的信息确定电机位置,并确定是否需要校正电机位置,并将反馈的信息反馈给上位机,供用户了解电机的运行情况。
Claims (5)
1.一种双CPU组合形式的运动控制器,包括控制模块、运动驱动模块、通信模块、输入输出模块和电源模块,其特征在于:控制模块为运动驱动模块、输入输出模块提供控制信号;通信模块为控制模块与外界通信提供接口;电源模块为控制模块、运动驱动模块、通信模块、输入输出模块提供稳定的电流,保证各个模块正常工作;
所述的控制模块由主CPU和从CPU组成,主CPU和从CPU之间通过握手的方式交互数据和命令;主CPU负责运动反馈与逻辑控制,从CPU负责运动控制输出,主CPU和从CPU协同合作,共同完成控制任务;运动控制器采用双闭环结构,保证对电机的控制精度;运动控制器的运动控制过程采用梯形图进行编程;
所述的用双闭环结构具体是:从CPU的PWM信号输出与主CPU计数器计数形成闭环,用于控制从CPU发送脉冲的状态及发送脉冲的数量;电机驱动器的反馈与主CPU位置信息采集形成闭环,用于确定被控对象的运动精度。
2.根据权利要求1所述的运动控制器,其特征在于:主CPU和从CPU之间的握手方式包括:单个IO命令快速传递、组合IO命令快速传递和通讯方式数据命令传递;单个IO命令快速传递和组合IO命令快速传递是由主CPU通过IO口发送命令,从CPU通过中断的方式接收命令,根据已经约定的格式确定主CPU发送的命令;通讯方式数据命令传递是由主CPU发起传参数和命令的通讯,从CPU接收后进行校验,并反馈返回帧。
3.根据权利要求1所述的运动控制器,其特征在于:主CPU主要负责以下任务:
A.对从CPU发出的脉冲进行计数,确定运动控制器发送脉冲的状态;
B.接收电机的反馈信号,进行运动位置校正;
C.给从CPU发送控制信号和参数;
D.接收输入输出模块的信号;
E.处理逻辑关系,进行逻辑判断;
F.根据逻辑判断将输出信号输出到输入输出模块模块;
G.负责与上位机或者外围设备进行通讯。
4.根据权利要求1所述的运动控制器,其特征在于:从CPU主要负责以下任务:
a.接收主CPU的运动参数与命令;
b.根据运动参数进行插补运算;
c.输出PWM控制信号。
5.根据权利要求1所述的运动控制器,其特征在于:运动控制器的通信模块由串口通信单元与CAN通信单元组成,串口通信单元用于更新程序与在线监控,CAN通信单元用于扩展外围设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201210047399 CN102591250B (zh) | 2012-02-28 | 2012-02-28 | 一种双cpu组合形式的运动控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201210047399 CN102591250B (zh) | 2012-02-28 | 2012-02-28 | 一种双cpu组合形式的运动控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102591250A CN102591250A (zh) | 2012-07-18 |
CN102591250B true CN102591250B (zh) | 2013-11-06 |
Family
ID=46480083
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201210047399 Active CN102591250B (zh) | 2012-02-28 | 2012-02-28 | 一种双cpu组合形式的运动控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102591250B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102806683A (zh) * | 2012-08-22 | 2012-12-05 | 天津大学 | 基于pci的液压机专用运动控制方法及控制器 |
CN103192545B (zh) * | 2013-03-29 | 2015-04-08 | 天津大学 | 基于以太网的液压机运动控制器以及控制系统和控制方法 |
CN104317560A (zh) * | 2014-09-22 | 2015-01-28 | 杭州电子科技大学 | 一种两层架构的曝光机专用控制器控制程序开发方法 |
CN104571008A (zh) * | 2014-11-20 | 2015-04-29 | 杭州电子科技大学 | 一种印制电路板曝光机用的带安全功能的并行控制方法 |
CN105759604B (zh) * | 2015-11-30 | 2021-09-03 | 张碧陶 | 一种双核伺服驱动系统及伺服电机在线建模方法 |
CN105824270B (zh) * | 2016-03-11 | 2019-02-26 | 湖南晗光智能科技股份有限公司 | 多轴运动控制器 |
CN106896764B (zh) * | 2017-02-17 | 2019-06-07 | 上海格尼特控制技术有限公司 | 工业遥控接收器的双单片机闭环控制方法 |
CN106788087A (zh) * | 2017-03-20 | 2017-05-31 | 深圳市微芯智能科技有限公司 | 电机运动控制系统的控制方法及装置 |
CN107783464B (zh) * | 2017-09-26 | 2020-04-07 | 中国航空工业集团公司西安飞行自动控制研究所 | 一种多通道电动舵机控制方法 |
CN108647178B (zh) * | 2018-05-11 | 2021-06-15 | 杭州电子科技大学 | 双通道通信的方法和设备 |
CN110397612A (zh) * | 2019-07-10 | 2019-11-01 | 湖南明康中锦医疗科技发展有限公司 | 一种涡轮控制系统、控制方法及呼吸支持设备 |
CN115185208B (zh) * | 2022-05-19 | 2024-08-13 | 湖北三江航天万山特种车辆有限公司 | 一种can扩展电路 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1851583A (zh) * | 2006-04-27 | 2006-10-25 | 大连光洋科技工程有限公司 | 嵌入式中档数控系统 |
CN101140466A (zh) * | 2007-09-29 | 2008-03-12 | 昆山华恒工程技术中心有限公司 | 一种主从结构的焊接控制系统 |
CN201489345U (zh) * | 2009-07-23 | 2010-05-26 | 邓莹 | 双处理器运动控制卡 |
CN101846990A (zh) * | 2010-05-28 | 2010-09-29 | 沈阳盛晖测控技术有限公司 | 伺服动力刀塔控制装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3132299B2 (ja) * | 1994-09-01 | 2001-02-05 | 日産自動車株式会社 | 車両用補助舵角制御装置 |
US7038988B2 (en) * | 2001-01-25 | 2006-05-02 | Dphi Acquisitions, Inc. | System and method for controlling time critical operations in a control system for an optical disc drive |
US7245975B2 (en) * | 2005-04-20 | 2007-07-17 | Parker-Hannifin Corporation | Skew compensation |
-
2012
- 2012-02-28 CN CN 201210047399 patent/CN102591250B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1851583A (zh) * | 2006-04-27 | 2006-10-25 | 大连光洋科技工程有限公司 | 嵌入式中档数控系统 |
CN101140466A (zh) * | 2007-09-29 | 2008-03-12 | 昆山华恒工程技术中心有限公司 | 一种主从结构的焊接控制系统 |
CN201489345U (zh) * | 2009-07-23 | 2010-05-26 | 邓莹 | 双处理器运动控制卡 |
CN101846990A (zh) * | 2010-05-28 | 2010-09-29 | 沈阳盛晖测控技术有限公司 | 伺服动力刀塔控制装置 |
Also Published As
Publication number | Publication date |
---|---|
CN102591250A (zh) | 2012-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102591250B (zh) | 一种双cpu组合形式的运动控制器 | |
CN102841618B (zh) | 新型微电脑鼠快速探索自动控制系统 | |
CN100568131C (zh) | 基于mpc5200的多轴运动控制器 | |
CN101216711A (zh) | 两栖机械螃蟹的分级控制装置及控制方法 | |
CN104062935B (zh) | 一种双框架磁悬浮变速控制力矩陀螺集成数字控制系统 | |
CN102841619B (zh) | 微电脑鼠快速探索自动控制系统 | |
CN104129077A (zh) | 一种3d打印机控制器及3d打印机控制的方法 | |
CN103516279B (zh) | 一种基于fpga的永磁同步电机控制芯片 | |
CN102520689A (zh) | 基于龙芯处理器和fpga技术的嵌入式控制器 | |
CN203225046U (zh) | 一种基于单片机的机电系统pid自动控制实验教学平台 | |
CN205992022U (zh) | 一种基于蓝牙无线通讯的电能计量装置 | |
CN103660361B (zh) | 一种伺服压力机控制系统 | |
CN101819427A (zh) | 基于fpga的数字化关节片上控制系统 | |
CN204036852U (zh) | 一种3d打印机控制器 | |
CN201804248U (zh) | 运动控制卡 | |
CN101738987A (zh) | 五轴运动控制卡 | |
CN202351691U (zh) | 基于龙芯处理器和fpga技术的嵌入式控制器 | |
CN103777634A (zh) | 大尺寸球形机器人控制系统 | |
CN107786137A (zh) | 一种步进电机控制系统的设计 | |
CN105159139A (zh) | 基于上下位机的便携式流量压力负载模拟控制系统 | |
CN204155150U (zh) | 一种基于avr的移动机器人控制系统 | |
CN203535485U (zh) | 基于arm9两轮微电脑鼠探索控制器 | |
CN106840096A (zh) | 一种优化温度补偿时间的测斜仪及方法 | |
CN107053169A (zh) | 一种总线型智能伺服驱动系统、机器人及方法 | |
Dong et al. | The design of wireless automatic meter reading system based on sopc |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |