运动控制系统简介

前言

最近在做伺服电机方面工作,接触到的一些基础的知识,感觉还是非常值得去了解这些内容的,因此将自己从网络上,以及一些手册里的内容,放到这里。

运动控制

运动控制主要分两个方向,一个是运动控制,通常用于机械领域;另一个就是过程控制,通常使用于化工领域。而运动控制指的是一种起源于早期的伺服系统,基于电动机的控制,以实现物体对角位移、转矩、转速等等物理量改变的控制。

电机控制与运动控制

电机控制(这里指伺服电机)主要关注的是控制单个电机的转距、速度、位置中的一个或多个参数达到给定值。而运动控制主要关注点在于协调多个电机,完成指定的运动(合成轨迹、合成速度),比较着重轨迹规划、速度规划、运动学转换。

运动控制往往是针对产品而言的,包含机械、软件、电气等模块,例如机器人、无人机、运动平台等等,是对机械运动部件的位置、速度等进行实时的控制管理,使其按照预期的运动轨迹和规定的运动参数进行运动的一种控制。

两者有部分内容是重合的:位置环/速度环/转距环可以在电机的驱动器中实现,也可以在运动控制器中实现.

伺服电机的构成

伺服电机的装置由下列三者构成:

1,发出动作指令的”指示装置”(控制器,Controller),

2,依照指示装置的指示讯号与回馈讯号下等指令使电机动作的”控制装置”(伺服放大器),

3,以及将由伺服放大器而来的电力供给驱动控制对象和侦测其状态的”驱动、感测装置”。

运动控制系统的典型构成

1, 开环系统(电机:步进电机;驱动器:脉冲分配,电流放大)

2,半闭环系统(电机:直流伺服电机、交流伺服电机;驱动器:电流放大,位置反馈控制)

3,半闭环系统(直流伺服电机、交流伺服电机;驱动器:速度反馈控制,电流放大;运动控制器:运动规划,速度指令,位置反馈取自电机轴)

4, 全闭环系统(驱动器:速度反馈控制,电流放大;运动控制器:运动规划,速度指令,位置反馈取自负载)

全闭环伺服系统可以消除机械传动带来的误差,而半闭环系统只能补偿部分误差,因此,半闭环伺服系统的精度比全闭环伺服系统的精度要低一些。由于采用了位置检测装置,所以全闭环系统的位置精度在其他因素确定了之后,主要取决于检测装置的分辨率和精度。

注意半闭环系统2与3的区别。驱动器如果工作在位置模式,运动控制器就只做位置轨迹的规划(Trajectory generator),每个通信周期发送目标位置到驱动器。驱动器接收到设定位置后,与当前位置比较,并依据控制器-驱动器通信周期与驱动器位置环周期进行线性或者非线性插值,将插值作为每个位置环周期的“设定位置”。

假设驱动器位置环周期是125us,控制器和驱动器通信周期为 2ms,当前位置为 0,目标位置为 1mm,那么接下来 16 个周期驱动器位置环的“设定位置”就依次为:0.0625mm,0.125mm, 0.1875mm, 0.25mm,…,1mm. 如果没有插值,那么接下来驱动器的第 1 个周期的设定位置就是 1mm,驱动器在第 125us时,位置为 1mm,在 2-16 个周期,设定位置维持不变,相当于电机停止,直到第 2ms,接收到新的“给定位置”。由于间隔仅为 2ms,电机并不会真的停止,而是表现为顿挫感,转动不流畅。

驱动器如果工作在速度模式,那么控制器就不仅做位置曲线的规划,还要完成位置环的调节。此时NC周期与位置环周期相等,不必插值。伺服驱动器的位置环被忽略,其速度环直接接受上层给出的”设定速度”。

位置控制

位置控制主要有三种模式:周期同步位置模式 (CSP),轮廓位置模式 (PPM),位置模式 (PM)。

周期同步位置模式(CSP)

周期同步位置模式 (Cyclic synchronous position mode) ,与轮廓位置模式 (Profifile Position Mode) 不同,其轨迹发生器位于控制器端,而非驱动器内。在该模式下,控制器只需要周期性的下发目标位置即可(与位置插补模式的原理相类似),而且可以设置附加的速度前馈 (Velocity offffset) 或转矩前馈 (Torque offffset),即轮廓位置模式的 Trajectory Generator 在驱动器内,周期同步位置模式的 Trajectory Generator 在控制器内,而位置模式(Position Mode)、电子手轮模式(Master Encoder Mode)、脉冲/方向模式(Step Direction Mode)则不需要轨迹生成器。

轮廓位置模式 (PPM)

轮廓位置模式下,驱动器接收主站发送来的目标位置指令,在驱动器内部根据速度、加速度规划参数设置进行轨迹规划。例如:应用程序要求伺服轴以设定的速度、加速度运动到某个目标位置,驱动器接到这个指令后,在内部的轨迹生成器中计算出每个 NC 周期(比如:1ms)伺服轴应该到达的位置,然后发送给位置环去执行。

位置模式(PM)

位置需求值可直接设定。位置模式允许无轮廓线定位,即目标位置被立即设置为位置控制环的一个新的设定值。位置模式是一种有用的操作模式,在这种情况下,轴作为一个隶属轴,由没有大跳跃的渐进式位置设定值所控制。因此,不需要路径生成器。累进设定值的例子是模拟设定值电压。不产生路径的特殊工作模式是主编码器模式,从轴跟随来自外部编码器的信号脉冲 (例如主轴) 或步进方向模式,步进电机驱动的每个脉冲指令对应一个小的旋转角度。另外的操作模式允许运行运动控制器而不接收在线命令。相反,使用模拟电压信号或信号脉冲作为命令值。这些传入的信号被转换成设定值,直接馈入相应的控制回路而没有一个轮廓或轨迹被产生。

伺服系统相关概念

伺服系统通常由三个反馈系统构成,由外到内分别是位置环、速度环和电流环。调整时,内环的响应性要高于外环的响应性,如果不遵守该原则,则会使系统响应性变差或产生振动。电流环调节器参数仅与电机参数有关,相同电机的电流环参数确定后,如果负载改变,只需调整速度环调节器参数和位置环调节器参数即可,电流环调节器参数不用再做调整。如下所示为应用在机器人上的三环控制简图(非驱控一体)

在交流伺服控制系统中,交流伺服电机运行状态的优劣取决于位置环、速度环和电流环三环控制器设计的好坏。交流伺服控制系统有两种,一种是位置伺服控制系统,包括电流控制器、速度控制器和位置控制器;另一种是速度伺服控制系统,只包括电流控制器和速度控制器。因此选取合适的参数,能够在一定程度上提高系统的快速性、稳定性、准确性。

在电流控制器、速度控制器和位置控制器中,电流控制器是最关键、重要的环节,因为不管是速度还是位置控制,最后都要转化成对交流电机电流的控制。速度环的作用是保证速度指令与交流电机的实际转速相同,从而消除负载转矩扰动等因素对交流电机的影响,通过交流电机的实际转速和输入的速度指令相比较,速度控制器利用其差值直接产生指令控制电流,并与电流指令共同作用,控制交流电机匀速、加速、减速旋转,从而达到交流电机实际转速与控制指令保持一致。位置环的作用是生成交流电机的速度指令,并能够使交流电机准确的跟踪、定位。交流电机的实际位置与设定的目标位置相比较,位置控制器利用其偏差生成交流电机的速度指令。当交流电机启动后,在距离目标位置较大的区域,位置控制器产生最大速度指令,从而使交流电机加速运动后以最大速度恒速运行,在距离较小的区域,位置控制器生成逐次减小的速度控制指令,从而使交流电机减速运动,直至到目标位置后静止。

在清能德创的伺服驱动说明书上,有提到过,电流环调节器参数仅与电机参数有关,因此在调整三环控制的时候,仅需要考虑速度环和运动环即可, 实际上还是需要有经验的人去调整电流环参数的。

交流伺服系统的组成

交流伺服系统是以交流伺服电动机为控制对象的自动控制系统, 它主要由伺服控制器、伺服驱动器和伺服电动机组成。交流伺服系统 主要有3种控制模式,分别是位置控制模式、速度控制模式和转矩控制模式。在不同的模式下,系统工作原理略有不同。交流伺服系统的控制模式可通过设置伺服驱动器的参数来改变。

工作在位置控制模式时的系统组成及说明

当交流伺服系统工作在位置控制模式时,能精确控制伺服电动机的转数,因此可以精确控制执行部件的移动距离,即可对执行部件进行运动定位控制。

伺服控制器发出控制信号和脉冲信号给伺服驱动器,伺服驱动器输出U、V、W三相电源电压给伺服电动机,驱动电动机工作,与电动机同轴旋转的编码器会将电动机的旋转信息反馈给伺服驱动器,如电动机每旋转一周编码器会产生一定数量的脉冲送给驱动器。伺服控制器输出的脉冲信号用来确定伺服电动机的转数,在驱动器中,该脉冲信号与编码器送来的脉冲信号进行比较,若两者相等,表明电动机旋转的转数已达到要求,电动机驱动的执行部件已移动到指定的位置。控制器发出的脉冲个数越多,电动机会旋转更多的转数。

工作在速度控制模式时的系统组成

当交流伺服系统工作在速度控制模式时,伺服驱动器无需输入脉冲信号也可正常工作,故可取消伺服控制器,此时的伺服驱动器类似于变频器,但由于驱动器能接收伺服电动机的编码器送来的转速信息,不但能调节电动机转速,还能让电动机转速保持稳定。

伺服驱动器输出U、V、W三相电源电压给伺服电动机,驱动电动机工作,编码器会将伺服电动机的旋转信息反馈给伺服驱动器。电动机旋转速度越快,编码器反馈给伺服驱动器的脉冲频率就越高。操作伺服驱动器的有关输入开关,可以控制伺服电动机的启动、停止和旋转方向等。调节伺服驱动器的有关输入电位器,可以调节电动机的转速。

工作在转矩控制模式时的系统组成及说明

当交流伺服系统工作在转矩控制模式时,伺服驱动器无需输入脉冲信号也可正常工作,故可取消伺服控制器,通过操作伺服驱动器的输入电位器,可以调节伺服电动机的输出转矩(又称扭矩,即转力)。

伺服电动机与编码器

交流伺服系统的控制对象是伺服电动机,编码器通常安装在伺服电动机的转轴上,用来检测同服电动机的转速、转向和位置等信息。

编码器

编码器旋转一周产生的脉冲个数称为分辨率。

增量编码器

增量编码器的特点是每旋转一定的角度或移动一定的距离会产生一个脉冲,即输出脉冲随位移增加而不断增多。坑的是不能掉电保存,有段时间用这个编码器增加了不少自己的工作量。。。。。

绝对值编码器

增量编码器通过输出脉冲的频率反映电动机的转速,通过A、B相脉冲的相位关系反映电动机的转向,故检测电动机转速和转向非常方便。绝对值编码器可以解决增量编码器测位时存在的问题,它可分为 单圈绝对值编码器和多圈绝对值编码器。

单圈绝对值编码器只能对一个圆周进行定位,超过一个圆周定位 就会发生重复,而多圈绝对值编码器可以对多个圆周进行定位。

伺服驱动器的结构与原理

伺服驱动器又称伺服放大器,是交流伺服系统的核心设备。伺服驱动器的品牌很多,常见的有三菱、安川、松下和三洋等。 伺服驱动器的功能是将工频(50Hz或60Hz)交流电源转换成幅度和频率均可变的交流电源提供给伺服电动机。当伺服驱动器工作在速度控制模式时,通过控制输出电源的频率来对电动机进行调速;当工作在转矩控制模式时,通过控制输出电源的幅度来对电动机进行转矩控制;当工作在位置控制模式时,根据输入脉冲来决定输出电源的通断时间。

上位机通过发送脉冲到伺服驱动器,来实现控制。在这种方式下,用脉冲频率来控制速度,用脉冲个数来控制位置。同样,伺服驱动器也会发送脉冲数,来告诉上位机,伺服电机的位置和速度。比如,我们约定伺服电机10000个脉冲旋转一圈,那么,当上位机发送10000个脉冲,伺服电机旋转一圈,实现位置控制。如果上位机在一分钟内发完这10000个脉冲,那么伺服电机的速度就是1r/min,如果实在一秒钟内发完,那么伺服电机的速度就是1r/s,也就是60r/min。

低端PLC,数控系统,以及各种单片机系统一般都是采用这种模式,简单易行,成本低廉。很显然,当伺服轴数增加,这种控制方式的缺点就会显现出来,上位机硬件成本会增加,配线会很复杂,而且现场EMC不好的话,脉冲极易丢失。所以,这种模式一般是在四轴以下,所以,大部分PLC的脉冲控制轴数都在两轴或是三轴,极少部分PLC可以实现四轴。

不想介绍伺服驱动器的主电路,因为这个和自己读研的方向就差不多。。。。。问题是那会就懒得学,哈哈哈。。。。

电子齿轮比设计

在实际应用中, 电动机与其他机械传动装置连接时, 电动机每转动一圈, 将转换为相应的位移, 带动负载运动。 位置指令通常是由上位机产生的, 是具有一定频率和个数的脉冲。 当指令脉冲当量和位置反馈脉冲当量不一致时, 采用电子齿轮的方法来进行调节是必需的, 它的好处可以用一个例子说明。

如图所示, 位置环中没有电子齿轮设计时, 要将工件移动 10mm, 上位机要做如下处理:

① 电动机转 1 圈为 6mm, 移动 10mm 需要 1. 6666 圈;

② 转动 1 圈需要 10000 个脉冲, 转动 1. 6666 圈, 一共需要 16666 个脉冲;

③ 发出 16666 个指令脉冲。

上位机在每次送出指令脉冲之前, 都要进行上述 “变换”, 受限于机械结构, 并且相应地增加了运算量。位置环中使用电子齿轮设计, 事先根据机械条件, 设定好电子齿轮比分子和分母的值, 参数一旦设定好, 只要机械条件不变, 就无需再次修改。 由于电子齿轮功能的存在, 上位机不用再进行 “变换” 指令, 彻底与机械结构脱离关系。 具体方法是:

① 首先确定机械要移动 1μm, 需要多少个脉冲, 由转 1 圈移动 6mm 计算出转动 10 / 6 个脉冲可以移动 1μm;

② 接下来设定电子齿轮比, 电子齿轮分子为 10, 分母为 6;

③ 最后在上位机选定脉冲当量为 1, 即 1 个脉冲代表移动 1μm, 这样要移动 10mm, 上 位机按指令单位计算出要发送 10000 个脉冲。

这样, 上位机不再需要额外计算, 只要把插补器送出的值折算成脉冲当量值后发出脉冲即可。根据上例, 可以定义出电子齿轮比。 假定相对于每一脉冲信号的机械运动部件的位移单位为 a 微米, 即脉冲当量为 a(a 一般为 1 或者 10、 100、 1000 等。), 在该机械结构下, 电动机转动 1 圈 (有 P 个反馈脉冲) 需要移动 x 微米, 则电子齿轮比 K 为:

K = A/B =aP/x

实际应用中, K 一般取值范围为 0. 01 ~ 100, 如果根据 a、 P、 x 计算出的 K 超出了这个范围, 伺服单元不能正常动作, 这时需要变更机械构成, 或者变动指令单位 a。

电子齿轮是位置环中的一个特殊功能, 它通常放在位置环的给定通道入口处, 齿轮比值 K 的变化实际上只是调节了位置指令脉冲频率, 从而改变了电动机的转速。 因此改变齿轮比 值不会影响位置环的性能。

通讯方式

通讯方式就是专门为解决脉冲方式的不足而产生的,已经成为一种发展趋势,他把脉冲数和脉冲频率通过通讯的方式,发送给伺服驱动器,这种方式不但可以传递伺服电机的位置信息,还能传递各种状态信息,比如伺服电机的电流,扭矩以及伺服驱动器的故障代码等等,很显然,当轴数多的时候,这种方式的优势不言而喻。

由于运动控制的特殊性,所以不同的厂家都推出自己的运动控制总线,既有开放的,也有封闭的,比如CANopen,以及在此基础上开发的CANmotion和CANlink,MECHATROLINK-II,CCLink等等。随着工业以太网技术的发展,基于以太网的运动控制总线也应运而生,比如EtherCAT,ProfinetNet,MECHATROLINK-III等等。还有基于光纤的SERCOS,SSCNETⅢ/H等等。虽然通讯的形式繁多,但他们解决的一般都是实时性问题,因为对于运动控制来说,实时性是非常重要的。从应用开发的角度来说,脉冲和通讯是没有区别的,只是信号传递的形式发生了变化。

参考

1,XXX已失联

2,gk-auto

3, CoolDrive R 系列伺服驱动器用户说明书

4, 伺服马达—维基百科

5, 《交流伺服系统设计指南》——孙与等著

CMakeLists Eigen FCPX GNU Gazebo Git Interest KDL Life Linux Matrix ODE ROS Ros UML Ubuntu VcXsrv algorithm algorithms axis-angle bode calibration chrome control cpp data_struct dots figure gdb latex launch life linux mac math matlab memory motor moveit operator optimal algorithm python robot robotics ros ros2 rtb simulation stl thread tools twist urdf velocity vim web work wsl
知识共享许可协议