广东白云学院 刘 康 程尹力
电机是电控系统当中必不可少的控制设备,本设计选用STC-89C52RC单片机作为核心处理器设计一款能够实现PID算法调控的电机控制系统,调速功能采用PWM作为转速控制方式配合霍尔传感器采集电机转速达到PID算法控制调速的功能实现,实现多档位PID转速调节功能。
电机是电控系统当中必不可少的控制设备,电机产品根据应用场景的不同而采用不同的控制方式,其中直流电机的应用是较为广泛的,直流电机的控制难度低并且驱动性和制动性都比较好,因此,设计一种基于PID算法的直流电机控制系统具有重要的意义。
PID电机控制系统根据功能模块可以分为主控部分、数据显示部分、按键控制部分、电机驱动部分、测速感应部分、电源部分,六个部分功能模块实现各自的分工智能,统筹配合以后实现系统所需的目标功能。主控部分的功能是协调系统各个部分功能器件实现各自的功能,数据显示部分和按键控制部分构成人机交互部分,人机交互部分的功能主要实现系统相关数据的显示和相关参数的设定,电机驱动部分则是驱动控制电机的核心电路和测速感应电路构成电机闭环控制部分也是系统的核心部分,系统整体框图如图1所示。
图1 系统结构框图
STC89C52RC单片机内置ISP在线编程功能,可以通过串口接口进行程序下载,其系统核心电路包括了复位电路和晶振电路,晶振电路的作用是为单片机的运行提供一个基准时间信号,该时钟信号决定了单片机的运行速度的快慢,本设计选用11.0592MHz的石英晶振作为晶振电路的晶振源,配合STC89C52RC单片机1T的运行速度可以达到接近12MHz的机器周期。系统核心电路如图2所示。
图2 系统核心电路图
液晶显示器是系统选中的数据显示器件,LCD12864显示器可以显示128行64列像素显示区域,采用ST7920作为驱动器件内部自带汉字库,能够方便的实现汉字数据和基本字符数据,并且带有GRAM字模显示功能,LCD12864液晶显示电路如图3所示。
图3 LCD12864电路图
PID电机控制系统选用了矩阵键盘,其功能是输入PID参数和设定目标速度。因为只是进行仿真设计,所以电路中没有做防静电干扰方面的设计。又因为单片机引脚内部带有上拉电阻,所以矩阵键盘没有独立加上拉电阻。
图4 按键电路图
PID电机控制系统的电机驱动芯片采用L298N电机驱动芯片,该芯片能够实现最高达到46V的电压并且输出电流可以达到2A,内置四路的达林顿管,带有四路驱动信号输出能够实现两路电机的正反向驱动,在信号输入端加入光耦实现单片机和L298的电气信号隔离,提高了系统的稳定性,电机驱动电路如图5所示。
图5 电机驱动电路图
PID电机控制系统的电器元件都是5V供电的元器件,所以在电源电路的设计上采用了5V锂电池外部供电的方案,为了让低频和高频信号都可以稳定的通过,在电路设计上采用大电容并上小电容的设计方式来实现。电源电路如图6所示。
图6 电源电路图
本设计设计利用Proteus电路仿真软件搭建系统的硬件电路,然后在单片机当中导入编译完成的hex文件即可开启电路仿真功能模拟。
仿真启动以后的仿真状态如图7所示,其中LCD12864液晶显示器的显示内容的第一行显示的是参数说明信息,由图可见初始化的PID控制参数分别是100、20、15,这三个PID数据都是放大了一百倍以后的数据值便于系统调节,初始化以后的速度值是50转每分钟,而反馈的当前转速是51转每分钟,因为仿真中的电机选用的是带有编码反馈的motor-encoder电机所以可以通过其反馈的脉冲信号可以检测到此时的电机转动速度,而仿真当中的四个LED灯则是指示设定状态的指示灯。
图7 电路仿真图
通过按键调节重新设定了电机转速为120转每分钟,设定以后的仿真电路如图8所示。
图8 转速调节仿真图
经过Proteus仿真电路仿真以后电机控制系统的各个功能已经顺利完成了,在仿真中利用单片机内部的定时器产生PWM信号控制电机进行正反转结合调速控制,在电机速度控制上采用了PID算法对电机进行控制,经过不断的调试调整仿真电路运行稳定符合设计要求。