c - S 曲线运动曲线(电机速度 v/s 时间)

标签 c pic motordriver

我正在尝试使用我的 XE166 设备控制工业交流伺服电机。

Controller 使用 PULSE 和 DIRECTION 控制与伺服 Controller 连接。

为了实现无抖动运动,我一直在尝试创建 S 曲线运动曲线(电机速度 v/s 时间)。

计算瞬时速度没有问题,因为我知道电机每个脉冲移动的距离和脉冲持续时间。

我需要了解如何得出一个我可以使用的数学方程式,它会告诉我第 n 个脉冲持续时间应该是多少才能使速度曲线成为 S 曲线。

由于这些必须是任何需要运动控制的领域(机器人、CNC、工业)的共同要求,所以必须有一些标准引用来实现它。

满怀期待

最佳答案

我刚刚在 robotics 上回答了一个类似的问题。

标准解决方案是使用低电平 velocity PID controller 在给定速度需求的情况下生成 PULSE 和 DIRECTION 信号,然后使用外部监控 Controller 根据速度需求 (mm/s) 向上或向下倾斜使用您所需的加速度 (mm/s/s) 和 jolt (mm/s/s/s) 控制参数。

This picture shows a schematic diagram of jerk, acceleration, and speed, assuming all three are limited in their magnitude, when linearly going from one point to another, which are sufficiently far apart to reach the respective maxima.

最初,我建议您按照我在 Control both Velocity and Position (Linear actuator) 中的建议尝试梯形速度曲线(加速度的瞬时变化),然后扩展它以在以后添加颠簸/冲击项。

关于c - S 曲线运动曲线(电机速度 v/s 时间),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30861760/

相关文章:

python - Python 编程 : Controlling Stepper Motor + Raspberry Pi Zero + L293D IC

c - 带直流电机/编码器的 PID 反馈和位置 Controller

c - 如何/何时将内存分配给 C 中的全局变量

python - 有没有办法使用 Motor 定义 MongoDB 模式?

c - 确定目标文件的 BSS 大小

c - 了解 DelayMS 功能如何与 PIC18F 单片机配合使用

c - PIC 18F452 生命周期定时器存储器

c - SPI 电子墨水显示屏与 PIC 18F46K22 连接时出现问题

c - BLOB,它是如何工作的

c - 作为结构的二维指针