基于PID控制的数字恒流源报告_第1页
基于PID控制的数字恒流源报告_第2页
基于PID控制的数字恒流源报告_第3页
基于PID控制的数字恒流源报告_第4页
基于PID控制的数字恒流源报告_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、-*工业大学测控仪器设计报告组号2 组 组 员 吴东航1110340108章一林1110340114郭伍昌1110340109学 院机械工程学院专 业测控技术与仪器指导教师 隋修武 2021 年 1 月 16 日目录1 课程设计的目的和意义32 设计任务33 设计背景34 总体设计方案45 硬件电路设计45.1 采样模块45.2 滤波模块65.3 运算放大模块65.4 A/D转换模块75.5 显示模块86 软件电路设计106.1流程图106.2 PID控制算法126.3 PWM输出126.4 A/D转换137 调试与仿真结果分析138 心得体会149 参考文献14附录一电路图15附录二程序16

2、摘要:针对各种低压电器校验及性能测试过程中需要高稳定、高精度的恒流源要求, 在对现有主要恒流源产品设计仔细分析的根底上, 设计了一种以AT89C51为核心的高稳定数控恒流源。整个系统采用闭环PID控制, 输出PWM波控制恒流源的电流。经实际应用测试, 该恒流源输出电流可在10 mA 左右恒定, 当电源电压变化、负载电路变化时,恒流源的精度在1mA以。1 课程设计的目的和意义测控系统设计是测控技术与仪器专业实践教学环节的重要组成局部,是“测控系统原理与设计课程理论教学的有益补充,“测控系统原理与设计是测控技术与仪器专业的一门综合性专业课,在理论教学的同时,要求学生掌握传感器的选型,测控电路的分析

3、、设计、调试,微处理器的电路与程序设计、控制算法设计、计算机的综合应用等,以便对测控系统形成完整的认识。通过本课程设计,完成基于PID控制的数字恒流源的设计,熟悉和掌握工业生产和科学研究中的测量和控制系统的组成原理及设计方法,学会运用所学的单片机、测控电路、控制算法等方面的知识,进展综合应用,设计出完整的测控系统,实现预期功能,培养自学能力、动手能力、分析问题能力和应用理论知识解决实际问题的能力。2 设计任务设计基于PID控制的数字恒流源,设计要求如下1、 采用8051系列单片机输出PWM波控制恒流源的电流。2、 采用PID控制算法,实现对恒流源的闭环控制。3、 恒流源的电压为5V,恒流输出1

4、0mA。4、 采用LCD液晶1602显示电流值。5、 当电源电压变化、负载电路变化时,恒流源的精度在1mA以。3 设计背景相对于电压源, 电流源具有抗干扰能力强, 信号传输不受距离影响等。电流源是一种能向负载提供恒定电流的电路。它既可以为各种放大电路提供偏流以稳定其静态工作点, 又可以作为其有源负载以提高放大倍数, 在差动放大电路、脉冲产生电路中得到了广泛应用。一般的恒流电流源往往是固定的一种输出电流值,或仅有几挡电流值, 往往存在调节围小、稳定性差等缺点, 不便于通用,且所设定的输出电流值是否准确不经测试无法知道。低纹波、高精度稳定直流电流源是一种非常重要的特种电源, 在现代科学研究和工业生

5、产中得到了越来越广泛的应用。4 总体设计方案以AT89C51为核心,采用闭环PID控制,输出PWM波控制恒流源的电流,经信号调理后,通过A/D转换送入单片机,通过LCD显示电流。由于单片机控制算法灵活, 程序相对简单, 且本钱较低, 应选用AT89C51单片机实现数字控制。为实现电流模拟量到数字量的转换,应选用ADC0809实现A/D转换。通过三极管C9014及相关电路实现电流信号的放大。为获得稳定的电流设计一个RC滤波电路去除干扰。具体来说, 该数字恒流源主要由以下模块构成:采样模块、滤波模块、运算放大模块、A/D转换、显示模块等。图1为系统构造框图。PWM波滤波采样LCD显示单片机A/D转

6、换运算放大 图1 系统构造框图5 硬件电路设计5.1 采样模块通过单片机输出的PWM波,由于从PWM处输出的方波通过三极管后,通过采样电阻R6,以保证IN1处的电压恒定,为了使得A/D转换标度变换计算方便,减少计算机的计算量,因此R6电阻阻值采用100欧姆,当电流输出为10mA的时候,对应电压值为1V。为了使得输出的电压值趋于平缓,因此增加电容C4100uF,将交流转换为直流电压输出。当三极管工作在非线性区即三极管工作在饱和区或截止区,此时三极管相当于开关器件。PWM波为高电平时,三极管b-e端导通,保证IN1处输出恒定电压;PWM波为低电平时,b-e端截止,IN1出R6处无电流。三极管采样模

7、块电路设计如图2所示。本设计中采用三极管C9014充当放大器件,9014是非常常见的晶体三极管,在收音机以及各种放大电路中经常看到它,应用围很广,它是NPN型小功率三极管。图3为三极管C9014的管脚图。 图2 采样模块电路设计图3 C9014管脚图5.3 运算放大模块 电阻R7和C5构成简单的滤波电路,由于标度变换使得运放为1,因此将反向输入和输出连在一起构成电压跟随器。在这里我们选用了两个方案,第一种用OP07构成电压跟随器,OP07闭环带宽约为400500kHz,并且当VCC给5V时,运放线性区最大输出电压一般只有3V左右,经实验测得由OP07构成的电压跟随器输出不稳定。第二种方案选用L

8、M324构成的电压跟随器,经实验测得满足要求。从运放的输出端输出送入A/D转换模块。运算放大电路如图5所示。本设计中采用LM324四运放集成芯片,它采用14脚双列直插塑料封装。它的部包含四组形式完全一样的运算放大器,除电源共用外,四组运放相互独立。每一组运算放大器可用图6所示的符号来表示,它有5个引出脚,其中“+、“-为两个信号输入端,“V+、“V-为正、负电源端,“Vo为输出端。两个信号输入端中,Vi-为反相输入端,表示运放输出端Vo的信号与该输入端的位相反;Vi+为同相输入端,表示运放输出端Vo的信号与该输入端的相位一样。图6为LM324的引脚图。图5 信号放大模块电路设计图6 LM324

9、引脚图5.4A/D转换模块通过ADC0809将获得的电流转换成数字量后,送入单片机。ADC0809是8位的逐次逼近型A/D转换器,带8个模拟输入通道,芯片带地址译码器输出带三态数据锁存器。本例所使用的IN0通道地址为000,由于本例仅使用了IN0通道,因此电路中直接将这ADDC、ADDB、ADDA三只引脚全部接地。A/D转换电路如图7所示。START引脚在一个高脉冲后启动A/D转换,当EOC引脚出现一个低电平时转换完毕,然后由OE引脚控制,从并行输出端读取一字节的转换结果。转换过程中芯片所需要的时钟信号由单片机定时器中断子程序提供。图8为ADC0800的引脚图。图7A/D转换模块电路设计图8A

10、DC0809引脚图5.6 A/D参考电压模块为了实现标度变换,采用TL431构成的可调稳压模块作为A/D的参考电压。将参考电压调成2.55V,通过式1计算得到,电压值和转换值的对应关系为100倍,这样减少了CPU的计算量,减少了失误。参考电压模块电路图如图9。 1 图9 可调稳压模块5.5 显示模块采用LCD1602显示电流值。本设计中将单片机P0口通过排阻与1602相连,构成电路的显示模块。如图10所示。LCD1602是工业字符型液晶,能够同时显示16*02即32个字符。具有微功耗、体积小、显示容丰富、超薄轻巧的特点,常用在袖珍式仪表和低功耗应用系统中。1602的各管脚功能如图10所示, 1

11、脚VSS为电源地;2脚VCC接5V电源正极;3脚V0为液晶显示器比照度调整端,接正电源时比照度最弱,接地电源时比照度最高比照度过高时会 产生“鬼影,使用时可以通过一个10K的电位器调整比照度;4脚RS为存放器选择,高电平1时选择数据存放器、低电平0时选择指令存放器。5脚RW为读写信号线,高电平(1)时进展读操作,低电平(0)时进展写操作; 6脚E(或EN)端为使能(enable)端,高电平1时读取信息,负跳变时执行指令;714脚D0D7为8位双向数据端;1516脚空脚或背灯电源;15脚背光正极;16脚背光负极。图10显示模块电路设计图11LCD1602引脚图6 软件电路设计6.1流程图系统软件

12、完成以下几个功能:(1)系统初始化, 包括各外围接口芯片的初始化;(2)用PID 算法实现对恒流源的闭环控制,由PID计算后得到的输出值控制PWM波;(3)实现A/D 转换;(4)LCD的送显功能;(5)移动滤波局部。主程序流程图如图12所示,LCD1602子程序流程图如图13所示,移动滤波子程序流程图如图14所示,A/D转换子程序流程图如图15所示。开场开场系统初始化LCD初始化读取A/D转换的滤波值延时设置显示位置计算偏差Error写数据增量式PID运算数据显示计算得出PWM_ON改变占空比,输出PWM波 图12 系统主程序流程图 图13 LCD1602子程序流程图开场初始化Ni9?AD采

13、集到的数据放入最高位所有数据左移,低位扔掉,求和Y求和,取平均值图14 移动滤波子程序流程图开场A/D初始化启动A/DN转换是否完成Y送P1至k返回k图15A/D转换子程序流程图6.2 PID控制算法比例、积分、微分控制( PID控制) 是过程控制中应用最广泛的一种控制方式。比例控制是一种最简单的控制方式。其控制器的输出与输入误差信号成比例关系。当仅有比例控制时系统输出存在稳态误差;在积分控制中,控制器的输出与输入误差信号的积分成正比关系,为了消除稳态误差,在控制器中必须引入“积分项,积分项对误差取决于时间的积分,随着时间的增加,积分项会增大它推动控制器的输出增大使稳态误差进一步减小,直到等于

14、零;在微分控制中,控制器的输出与输入误差信号的微分即误差的变化率成正比关系,自动控制系统在克制误差的调节过程中可能会出现振荡甚至失稳,应使抑制误差的作用的变化“超前,即在误差接近零时,抑制误差的作用就应该是零,即参加微分环节。在本系统中, 采用增量式PID 控制对电流偏差值进展处理, 其公式如下:如令,式中,为纯比例作用下的临界振荡周期,则有这样整个问题便简化为只要一个参数,故称其为归一参数整定法。改变,观察控制效果,直到满意为止,该法为实现简易的自整定控制带来方便。在本系统中,另,通过PID增量式得出PID=,再加上控制目标来控制PWN波的占空比,即PWM_ON=Last_out+PID,从

15、而通过PID控制算法,实现对恒流源的闭环控制。6.3 PWM输出PWM波是通过定时中断实现的,定时时间为0.2ms,即每0.2ms中断一次。PWM波的占空比经过PID控制算法,从而到达跟踪的目的。因此,经过PID增量控制算法后得到的PWM_ON=Last_out+PID修订了的值。将PWM波的周期设定为200个定时周期即0.2ms*200=40ms,每进一次中断效劳子程序就比拟一下高电平数是否到了PWM_ON,如果没到,就让输出为一个定时周期的高电平,要是高电平数到了PWM_ON,就输出FFH-PWM_ON个低电平,一直到200个定时周期完毕为一个PWM波周期。此时让高电平数仍从0开场加起,再

16、看是否到了PWM_ON,从而决定输出是高电平还是低电平,可以循环。这样就可以根据PWM_ON来改变PWM的占空比。6.4 A/D转换通过定时中断实现A/D转换,定时时间为20ms,即每20ms中断一次。每中断十次,进展一次A/D采样,即采样时间是20ms*10=200ms,而PWM波的周期为40ms,采样时间远大于PWM周期的2倍,符合采样定理。7 调试与仿真结果分析在调试过程中,并不是一帆风顺的,当最初的焊接完成,烧录程序之后LCD一直显示一个错误值,并且不受控制,经过仔细的排查,发现是没有接上拉电阻并且有一根导线虚焊,解决这个问题之后,又遇到了电压跟随器没有输入却有输出的现象,经过查阅资料

17、,在此电路中,用OP07搭建的电眼跟随器不符合要求,因此选用LM324搭建的电压跟随器。这样输出结果接近了10mA左右,但是一直不稳定,这样我在电压跟随器的输入端参加了一个滤波电路选择适合的比例系数使得输出电压稳定下来。 电路板上显示的结果与要求的10mA存在着0.4mA的误差和送,经过分析,认为可能是由于以下几点原因造成的:1.标准器误差,提供标准值的器件如标准电阻,标准电容等标准器件本身会带有一定的误差;2.焊接过程中产生的误差,在焊接的过程中不可防止的会产生随机误差,这会对最终的结果产生一定的影响;3.在对PID控制算法的过程中,的值为估算值,可能会对结果产生一定影响。8 心得体会 在为

18、期两周的测控系统设计里,我们组的三位成员都收获了很多。首先大家分工明确,各司其职,在最后的调试阶段又同心协力,共同攻坚克难,最终取得了胜利。第二,对测控系统设计有了生动的理解,不再只是停留在书本上空洞的框架里,而是通过这次的课程设计有了准确的理解和系统的认识。第三,对PID控制算法的实际运用有了一定的了解,之前只是在理论上对PID有过接触,这次能够将PID控制算法运用在实际设计中,感觉到对PID又有了更深的认识,尤其是通过增量式PID对参数进展整定。第四,在调试过程中会遇到各种问题,这时,不仅需要扎实的专业功底,同时更需要细心,耐心,专心,在仿真结果正确,但调试并没有到达预期的效果时,要对电路

19、进展彻底仔细的检查,对每一局部的电压电阻等逐一进展测量,弄清每一局部的工作原理,找出问题并一一解决。 最后,感隋修武教师和辉、田松等两位研究生给予的帮助和指导。经过两周的课程设计,我们受益良多。 在这个过程中,我们经历了选定方案、仿真调试、实验调试、最终成品几个阶段。 在此期间,我们遇到了好多问题,在不断发现问题和解决问题中不断完善我们的设计,在不断完善中取得进步!9 参考文献1 涵.MCS-51 /96系列单片机原理及应用M.航空航天大学, 1998.2 传友,晓斌.测控系统原理与设计M.航空航天大学.2021.3 童诗白, 华成英. 模拟电子技术根底M.高等教育.2001.4 红, 黄韬,

20、 王进华,细端. 基于增量式PID控制的数控恒流源J.现代电子技术, 2021,34(20): 190-192.5 晓娟, 庆明, 唐君明. 基于单片机的数控恒流源设计J.大学自然科学学报, 2021, 6: 21-44.6 东坡. 基于单片机的数控恒流源设计与实现J.仪器仪表, 2021,(6): 58-60.附录一 电路图附录二 程序*include *include *include*include*include *include /-相关宏定义-/*define uint unsigned int*define uchar unsigned char*define delay4us(

21、) _nop_();_nop_();_nop_();_nop_();/-1602端口定义-/sbit RS = P25;sbit RW = P26;sbit E = P27;/-ADC0808引脚定义-/sbit CLK=P24;sbit START=P20; sbit EOC=P21; sbit OE=P22; /-PWM输出口定义-/sbit PWMout = P33;/-标志位及变量定义-/bit flag1=0;bit flag2=0;uchar CYCLE; /周期 uchar PWM_ON=50;/低电平时间uint ten_minute=0;uint one_minute=0;u

22、char i=0;uchar Display_Buffer = 00.00mA;uchar code Line1 = Current Value:;uchar value_buf10;/-PID参数定义-/int d;uchar M=0;double SetPoint; /设定恒流值 double Error=0.0;/定义偏差double error1=0.0; /前一拍误差 double error2=0.0; /前两拍误差int Last_out=0;int dd; double Kp;/-毫秒级延时子程序-/ void DelayMS(uint ms)/延时程序uchar *,j;fo

23、r(j=0;jms;j+)for(*=0;*=148;*+);/-LCD1602相关子程序-/-查忙-/bit LCD_Busy_Check() bit result;RS = 0;RW = 1;E = 1;delay4us();result = (bit)(P0&0*80);E = 0;return result;/-写指令-/void LCD_Write_mand(uchar cmd) while(LCD_Busy_Check();RS = 0;RW = 0;E = 0;_nop_();_nop_();P0 = cmd;delay4us();E = 1;delay4us();E = 0;/

24、-设置显示位置-/void Set_Disp_Pos(uchar pos) LCD_Write_mand(pos | 0*80);void LCD_Write_Data(uchar dat)/写数据 while(LCD_Busy_Check();RS = 1;RW = 0;E = 0;P0 = dat;delay4us();E = 1;delay4us();E = 0;/-LCD初始化-/void LCD_Initialise() /初始化LCD_Write_mand(0*38); DelayMS(5);LCD_Write_mand(0*0c); DelayMS(5);LCD_Write_ma

25、nd(0*06); DelayMS(5);LCD_Write_mand(0*01); DelayMS(5);void LCD_SHOW(uint b)Set_Disp_Pos(0*01);for(i=0;i14;i+) LCD_Write_Data(Line1i);Display_Buffer0=b/1000+0; /数据显示Display_Buffer1=b%1000/100+0;Display_Buffer3=b%100/10+0;Display_Buffer4=b%10+0;Set_Disp_Pos(0*46);for(i=0;iCYCLE-1) PWM_ON=CYCLE; if(PWM_ON1) PWM_ON=1;Last_out=PWM_ON;uchar filter()/移动平均滤波法 uchar i; double sum=0; int

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论