直流电机:为何直流电机要用PID调速?
直流电机在应用中,除了恒速运行的产品外,像玩具汽车、电动牙刷、美容仪、大到工业设备都是需要对直流电机进行调速控制的,所以说调速是非常重要的。
在直流电机中,采用的是PID方法调速,有的人可能在想:我直接输入输出速度对应PWM不行吗?
我们下面简单讲解下:PID是反馈环的调节机制,PWM是一种波形,假如设定直流电机一个转速,PWM波形输出后,检测直流电机的实际转速,如果速度低于了设定值,那就会加大占空比,高于设定值的话就会减小占空比。根据机械惯性,直流电机转速变化会有时间差,对于不同转速的误差,占空比都是在变化的,直流电机转速快,占空比就减小,转速慢了占空比又会变大,直流电机在运转中是不能一直来回变大变小,而在控制理论中的PID调节就是解决这种问题的。
直流电机转速有误差,把实测转速输入和设定比较的差值用PID运算输出控制电流,那么增减转速就可以实现精确控制了(注:PID控制和直流电机或者交流电机没有直接关系,PID只是一种控制方法)。
所以说,直接输入转速用PWM精准控制是不现实的,PWM控制的是直流电机的电流,电流决定了直流电机的扭矩,也就是输出力,假设直流电机负载1公斤,转速3000转,那么负载2公斤还需要保持3000转的速度,电流就会增加了。
直流电机
直接控制还有一个问题是,假如负载是静止的,现在需要达到3000转的转速,电流是0.5A,那么直流电机需要一段时间都会到3000转的转速,PID控制速度调节开始电流会很大,会让直流电机快速的加速,等速度稳定下来再稳定电流在0.5A,所以PID在直流电机控制中,实时响应非常好。
直流电机曲线
所以现在的工业直流电机控制采用PID,先控制速度,最后再控制电流,这也是目前成本比较低经过验证的控制算法(微型直流电机只需要控制电压的输出即可控制转速,非常的简单)。
基于直流无刷电机的PID控制算法实现
对无刷直流电机转速的控制即可采用开环控制,也可采用闭环控制。与开环控制相比,,速度控制闭环系统的机械特性有以下优越性:
闭环系统的机械特性与开环系统机械特性相比, 其性能大大提高; 理想空载转速相同时, 闭环系统的静差率(额定负载时电机转速降落与理想空载转速之比) 要小得多;当要求的静差率相同时, 闭环调速系统的调速范围可以大大提高。
无刷直流电机的速度控制方案可以采用PID控制算法实现。
PID调节器是一种线性调节器,它将给定值r(t)与实际输出值c(t)的偏差的比例(P)、积分(I)、微分(D)通过线性组合构成控制量,对控制对象进行控制。
数学分析
PID调节器的微分方程
模拟PID控制规律的离散化
数字PID控制器的差分方程
编码实现
定义PID结构体
typedef struct
{
float KP; //比例项系数
float KI; //积分项系数
float KD; //微分项系数
float e_1; //上次的误差值
float e_2; //上上次的误差值
float e_3; //上上上次的误差值
float uk; //PID反馈数值
float T; //时间差值
float LastT; //时间绝对值
}
分别计算比例项、微分项和积分项,再求和。
1、计算比例项
x = (Error + 4.0 * PIDP->e_1 + PIDP->e_2) / 6.0; //取平均值滤波
x1 = (PIDP->e_1 + 4.0 * PIDP->e_2 + PIDP->e_3) / 6.0;
Error,误差值;
x,滤波后的本次误差 ;
x1,滤波后的上次误差。
计算得出比例反馈项Dup = PIDP->KP * (x - x1);
2、计算微分项
TS = PIDP->T / 1000.0; //将时间差值转换成以秒为单位
计算微分项Dud = PIDP->KD * (error - 2 * PIDP->e_1 + PIDP->e_2) / TS;
3、计算积分项
Dui = PIDP->KI * TS * x;
4、求和
PID反馈数值PIDP->uk = Dup + Dui + Dud;
最终实现
根据以上算法得出来的PID修正数值,能良好地调整电机转速,并且能使电机在不同负载的条件下保持可调节的速度匀速转动。
根据电机的实际运行情况,PID 算法可以得到相应地改进而更加完善,并可与其它控制算法结合在一起,以产生更好的控制效果。
相关问答
能否根据直流电机参数求得它所需的PID控制的参数?-盖德问答-...
你首先要对被控对象建模的吧,然后利用经典的理论,确定pid的参数。
嵌入式怎样控制直流电机正反转?
嵌入式系统可以通过PWM(脉冲宽度调制)或GPIO(通用输入输出)信号来控制直流电机的正反转。以下是一些可能的步骤:1.通过PWM信号控制电机的转速:PWM信号可以...
IGBT如何驱动直流电动机?单片机控制?
1,简单的开关控制,用单片机引脚输出高低电平,控制MOS管驱动电路。2,正反转控制,需要两个单片机引脚,一个控制正反转,一个控制启动与否。3,需要控制速度...1...
三菱A0J2-E56DT三菱fxpid怎么样啊
[回答]输入电压及电流:DC12/24V7mA。输入应答时间:10ms。16点/1个公共端。正极共用。输出点数:24点。输出电压:DC12V/24V三菱fxpid。OFF时漏电流:0.1mA...
1500w电机用多少pid?
一个大功率1500w的直流电机(跑步机上的那种),,现在通过编码器来获取电机转速,,然后采用pid对电机调速1.编码器我用的是1000线的,,电机控制转速范围为80...
光伏pid是什么意思?
光伏pid是:potentialInducedDegradation,潜在电势诱导衰减,是光伏电池板的一种特性,指在高温多湿环境下,高电压流经太阳能电池单元便会导致输出下降的现象。...
关于直流电机弱磁升速的两种方案比较-盖德问答-化工人互助问...
我使用过西门子6ra70整流装置作为直流电机传动控制装置,如果工艺控制要求不是很高,只要按照手册要求的必要数据输入并进行一次优化后,转速可选择在...
智能汽车直流电动机闭环调速系统的设计_汽配人问答
[最佳回答]你的设计“回答字数在10000字以内”是不够的,想一想,唉-算了吧!
什么是直流调速器?
[回答]查阅了派克直流调速器手册,可以搭配500A的调速器,用于是把电机参数整定好即可,其它参数根据用于拒绝原作。直流调速器飞车的原因:直流调速器就是调...
机器人技术及起应用的作业谁帮做下一、单选题1.直流电动机是...
[最佳回答]建议你到工控网论坛上发