无刷电机位置环-速度环双环PID控制-电机

1,455 阅读1分钟

1 原理

image.png

2 PID整定

2.1 位置期望输入控制

  • 通过5个按键进行,启动,停止,位置+,位置-,方向设置
  • 双环控制首先更新位置环pid_location,注意双环控制,包括两个target (pid_speed,pid_location) image.png image.png image.png

2.2 PID 双环计算触发时机

  • 通过定时器定时进行位置输入计算,进行触发PID 双环计算,执行定时触发设置定时器占空比 image.png

2.3 PID 双环计算

  • bldcm_pid_control函数主要对接外部位置设定,因为位置环在外面,所以位置环输出作为速度环目标输入。
  • 经过双环PID整定后,即可触发换向,实现位置和速度的PID控制,触发函数为:set_bldcm_speed image.png image.png

2.3 触发换向-设置定时器占空比

image.png

  • HAL_TIM_TriggerCallback 一般是自动触发换向,在霍尔传感器或编码器触发点,自动捕获上下边缘,实现定时器捕获回调函数
  • 此处是手动触发,因为人为设置了期望位置,因此在set_pwm_pulse函数中,手动调用 image.png

2.4 最终控制-PWM波形输出

image.png

2.5 每次触发换向进行速度采集并更新

image.png image.png