机器人控制——电机驱动器 learn & mark

电机驱动器主要可以分为两种,数字式的驱动器和非数字式的驱动器:

数字式的基本上依靠总线通讯, 这种驱动器一般支持多种总线,例如 Modbus, Can, Ethercat etc.,通过读写驱动器上的寄存器或者RAM来实现数据交换。在上层就只需要发送简单的控制参数就可以了(例如,PTP运动——在给定的时间运动到给定的位置,PVT——在给定时间以给定速度到达给定位置点,JOG运动——以给定的速度一直运动等等),对应到驱动器上一般有这些控制模式:Homing, Velocity, Profile torque, Profile position, Profile velocity, Cyclic synchronous torque, Cyclic synchronous position
, Cyclic synchronous velocity.
通过 PWM或者PFM调制脉冲宽度或者频率,控制算法一般为PID+前馈控制 feed
forward),一般集成度比较高也可以做得特别小(功率相对小一些,用的一般为MOSFET,而非 IGBT),因此很多小型的机械臂上面使用的就是这种驱动器。例如,该类型的驱动器有Maxon的EPOS系列,以色列的Elmo系列,瑞士的Technosoft的EasyMotion等等。

check this link: http://doc.ingeniamc.com/emcl2/command-reference-manual/motion-controller/motion/modes-of-operation

非数字式的驱动器提供的控制方式就比较灵活了,例如位置控制是通过发送脉冲(个数表示位置,频率表示速度,一般有三种方式:AB相脉冲,或者单相脉冲+方向,或者正相脉冲+反向脉冲)来实现的;速度控制或者力矩控制通过模拟量来控制(10v 表示正向最大速度/力矩, -10v表示反向最大速度/力矩,控制精度就依赖AD的转换精度了)。该种驱动器很多是用来驱动三相交流伺服电机,功率体积相对要大一些。例如,日本的三菱,安川,松下,东方等驱动器。

如果发送的位置指令,那基本上就是通过:位置环->速度环->力矩环 ,再通过控制电路(PWM调压,或者变频,或者带算法的FOC矢量控制)控制电机转矩和转速了。
但是如果只是发送位置指令或者只考虑位置,那么系统的动态响应就比较差(可能出现速度突变,或者加速度突变的情况,导致系统冲击抖动),因此如果要获得更好的控制效果,控制更底层的速度,或者加速度的,或者加加速度(jerk)能是的系统更加稳定。

Torque controller stucture:
User torque rererence → Torque limiter → Torque controller outputs motor PWM
Velocity controller stucture:
User velocity setpoint → Velocity limiter → Velocity controller outputs torque rererence → Torque limiter → Torque controller outputs motor PWM
Position controller stucture:
User position setpoint → Position controller outputs velocity setpoint → Velocity limiter → Velocity controller outputs torque rererence → Torque limiter → Torque controller outputs motor PWM

关于 PID 调节:

伺服系统包括三个反馈回路(位置回路、速度回路以及电流回路)。最内环回路的反应速度最快,中间环节的反应速度必须高于最外环。假使未遵守此原则,将会造成震动或反应不良。伺服驱动器的设计可确保电流回路具备良好的反应效能。用户只需调整位置回路与速度回路参数。系统各参数之间总是相互制约的,如果只有位置回路增益增加,位置回路输出的指令可能会变得不稳定,以致整个伺服系统的反应可能会变得不稳定。通常可参照下列步骤对系统进行调整:


1). 将位置前馈和位置微分设为零,位置增益和速度增益先设在较低值(1/3),然后在不产生异常响声和振动的前提下,逐渐增加速度增益至少有振动则再减小到当前值的80%。

2)增加位置增益至少有振动。再增加位置微分至没有振动。

3)增加位置前馈使滞后和超调最小。

4)如果电机运行时有振动,适当减少速度增益。

5)如果电机停止时有振动,适当减少位置增益,或增加位置微分。

6)如果电机有电磁躁声,适当减少电流增益。

Or, to tune a PID use the following steps:

  1. Set all gains to zero.
  2. Increase the P gain until the response to a disturbance is steady
    oscillation.
  3. Increase the D gain until the the oscillations go away (i.e. it’s
    critically damped).
  4. Repeat steps 2 and 3 until increasing the D gain does not stop the
    oscillations.
  5. Set P and D to the last stable values.
  6. Increase the I gain until it brings you to the setpoint with the
    number of oscillations desired (normally zero but a quicker response
    can be had if you don’t mind a couple oscillations of overshoot)

在整个响应无超调、无振动的前提下,应将位置增益设至最大。随后对速度增益及位置前馈、位置微分进行微调,找到最佳值

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值