闭环控制是通过编码器获取电机转速,再利用PI控制电机转速维持在设定值的一种控制方法。速度闭环不使用D微分项。本资源是一个可用的Arduino mega2560 pid控制电机,如果想实现四轮控制,仅需要把程序复制修改三次即可。
内容结构:
1.引用<FlexiTimer2.h> 定时中断库;
2.定义引脚、变量;
3.setup函数、loop函数;
4.中断控制函数;
5.外部中断读取编码器数据,具有二倍频功能;
6.PI控制器;
7.实际控制函数,函数功能:赋值给PWM寄存器,入口参数:PWM;