当前位置:首页 > 基于单片机的直流电机调速系统设计
开始系统初始化显示初始化 调用按键子程序中断处理定时中断为0外中断为0是否有键按下定时中断为1无有测量计算转速键处理子程序系统时间计时、处理发送测量值到从处理器发送数据至从处理器中断返回
图系统主单片机总程序框图
开始系统初始化PID参数初始化查看中断中断0中断1接受设定值子程序接受测量值子程序PID计算处理计算PWM定时值输出PWM信号
图 系统从单片机(PID控制器)程序框图
当系统被启动后,主从单片机初始化。主单片机检测是否有键按下,再执行
键子程序,将输入的值传送到PID控制器,PID控制器经PID计算处理,再计算出PWM的定时值,PID再送出相应的PWM信号,驱动电机转动,主单片机将传感器输入的信号进行计算,再将得出的值输出到PID控制器,PID控制器经计算输
出相应的PWM信号控制电机转速趋于设定的转速。依次循环使电机趋于稳定值。
电机转速测量程序设计
设计中考虑到电机的工作环境一般比较恶劣,因此除了硬件外,从程序上除了要更高的精确度也需要进行更多的抗干扰设计,从而实现软件的大范围检错、纠错或丢弃错误等。在程序的设计过程中,对严重不符合要求的测量数据(如大于6000转对应的数据)进行了丢弃处理,而对于正常范围内的数据错误采用了采5取3求平均的算法(即采集5个数据,去掉 一个最大值一个最小值,然后将剩余3数据求平均)。实验表明,此方法降低了系统采集转速中出现的错误。对于转速的测量方法,是通过速度脉冲信号下降沿触发单片机的外中断,中断服务子程序在某一个脉冲的下降沿开启定时器记时,然后在下一个下降沿关闭定时器,通过对定时器数据进行运算处理可以得到信号周期进而得到速度值。其程序框图如图。可以看出,此方法下的采样周期是随转速变化的,转速越高采样越快。通过这种非均匀的速度采样方式可以使电机在高速情况下,实现高速度高精度的控制。
为“0”开定时器计时设中断标志位为“1”系统时间初始化中断返回图 进入中断检测中断标志为“1”关闭定时器及总中断判断数据是否否正常是否是否采“5”处理是保存数据完成5组数据采否集是“取3”求平均值计算速度值速度值是否正否常是发送到PID控制器系统时间初始化定时器初值初始化中断返回外中断程序框图
共分享92篇相关文档