STM32使用串级PID对编码器电机进行控制

目录

1. PID的作用

   1.1 PID应用概述

1.2 PID参数调整

1.3  实物

2.代码部分

2.1 定时器采样周期计算

2.2 PID算法代码

3.实物接线


设计目标:使电机以目标速度达到目标位置

1. PID的作用

   1.1 PID应用概述

      PID控制器是一种广泛应用于工业控制系统的反馈控制器,其名称来源于其三种基本控制规律:比例(Proportional)、积分(Integral)和微分(Derivative)。其基本原理是通过反馈实现控制,反馈来源是电机上安装的编码器,编码器种类有很多,常见的是霍尔式还有光电式,本文中使用的电机使用的就是霍尔式编码器电机

       普通电机上电后即可进行旋转运动,运动方向可以通过调节控制器的高低电平翻转来实现,而调节输出的电压,则可实现对电机的速度调节。

       在一个周期内,反复调节输出电压,即可实现调速,这是目前最常见的调速方式,即调整同一周期内通电的时间,同一周期内通电时间越长,等效电压越大,而等效电压越大,电机速度越快,考虑到电机的机械特性,每个电机的机械特性都不尽相同,如果只是单纯改变占空比,输出PWM,电机难以实现较为准确的速度控制,且很多场景中,运行路径是固定的,这就需要电机拥有重复定位的精确性,这就需要使用到编码器。

     通过STM32单片机开启定时器读取编码器值,这个代码来自江协科技。通过读取的值可以获取到电机的运动状态。

     在获取到编码器值后,需要将其保留下来,这就需要使用定时器中断,代码中是用定时器2,每隔10ms进入一次中断,进行一次编码器值的获取。

1.2 PID参数调整

      本文使用的是速度位置串级PID,在调节时,理论上应当先调节速度环,再调节外环,速度环作为内环,其响应速度通常要求比位置环快,以确保系统能够快速响应速度变化,

      调整速度环的比例增益(Kp),使其具有足够的增益来快速响应速度偏差,同时避免系统过冲或振荡。

      调整微调积分增益(Ki)以消除稳态误差,但要防止积分饱和。

      调整微分增益(Kd)可以帮助减少超调和振荡,提高系统的稳定性和响应速度。

      实际上调试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值