车载冰箱温度控制系统_第1页
车载冰箱温度控制系统_第2页
车载冰箱温度控制系统_第3页
车载冰箱温度控制系统_第4页
车载冰箱温度控制系统_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

1、课程大作业设计报告(2019-2020年度第2学期)课程名称:题目:车载冰箱温度控制系统设计与仿真院系:控制与计算机工程学院班级:自动化1704学号:120171070716学生姓名:郭云泉指导教师:张文彪设计周数:2周成绩:日期:2020年5月19日一、设计要求1.根据以下控制装置的组成设计一个车载冰箱温度控制系统(半导体制热和制冷)并说明变送器、控制器和执行器的选型以及相应装置的特点,同时阐述整个系统的控制流程。图1控制装置的组成2.假设车载冰箱温度控制系统被控对象的传递函数为s+1,控制系统的采样周期T为0.5s,基于Matlab软件编写控制算法,实现以上系统对阶跃式温度设定的仿真,完成

2、控制器的参数整定,并分析控制参数对系统性能的影响。二、设计正文1.车载冰箱温度控制系统硬件设计及控制流程描述1.1温度控制系统总体设计架构整个温控系统由Arduino单片机、LCD显示电路、供用户设置预期温度的按键、电源、驱动电路、温度变送装置、半导体制冷片、保温箱体、变压器组成。总体设计框架如图2所示:图2各个部分的相应功能:Arduin弹片机:整个温控系统的控制器。按键:调整预期温度。LCD显示电路:显示预期温度和实时温度。温度变送装置:检测箱体内的温度并转化为数字量送给单片机。驱动电路:将单片机输出的不同占空比的数字PWM脉冲信号转化为模拟的电压,并进行功率放大,驱动半导体制冷片输出不同

3、的功率。半导体制冷片:对箱体内进行制冷。变压器:将汽车电瓶的12V电压转换为5V电压对温控系统供电,其中LCD显示电路、按键电路、温度变送装置均由单片机供电。电源:汽车电瓶1.2控制器的选择此温控系统通过控制器输出不同占空比的PWM,并经驱动电路放大后来控制制冷片功率,从而实现温度调节。因此,控制器需要有能输出不同占空比PWM的IO接口。且此温控系统实现的功能比较简单,对控制器运算能力要求比较低,因此选用了ArdiunoUno单片机作为控制器。ArduinoUNO是基于ATmega328P的Arduino开发板。它有14个数字输入/输出引脚(其中6个可用于PWM输出)、6个模拟输入引脚,一个1

4、6MHz的晶体振荡器,一个USB接口,一个DC接口,一个ICSP接口,一个复位按钮。它包含了微控制器所需的一切,你只用简单地把它连接到计算机的USB接口,或者使用AC-DC适配器,再或者用电池,就可以驱动它。实物图与技术参数如图3、图4所示:图4ArduiinoUN3ATmegdJZSPTfWI5V输人电压(推荐)7-127输人电压(极眼)S-20/数字VO引脚1斗PWMilil6IBKWdlBCADC)6每个I/O直涼输出能力20mA3.酣端输出能R50mAFlash提KB其中引熬序使用0.5KB)SRAM2KEEEPROM1KB16MHz板找LED引脚13长度&.6mm53.4mmWfi2

5、5gUH细IHJtE各个引脚功能如下:Vin:电源输入引脚。当使用外部电源通过DC电源座供电时,这个引脚可以输出电源电压。5V:5V电源引脚。使用USB供电时,直接输出USB提供的5V电压;使用外部电源供电时,输出稳压后的5V电压。3V:33.3V电源引脚。最大输出能力为50mA。GND:接地引脚IOREF:I/O参考电压。其他设备可通过该引脚识别开发板I/O参考电压。Serial:0(RX)、1(TX),被用于接收和发送串口数据。这两个引脚通过连接到ATmega16u2来与计算机进行串口通信。外部中断:2、3,可以输入外部中断信号。中断有四种触发模式:低电平触发、电平改变触发、上升沿触发、下

6、降沿触发。PWM输出:3、5、6、9、10、11,可用于输出8-bitPWM波。对应函数analogWrite()。SPI:10(SS)、11(MOSI)、12(MISO)、13(SCK),可用于SPI通信。可以使用官方提供的SPI库操纵。L-LED:13。13号引脚连接了一个LED,当引脚输出高电平时打开LED,当引脚输出低电平时关闭LED。QDTWI:A4(SDA)、A5(SCL)和丁用【接口,可用于TWI通信,兼容I?C通信。可以使用官方提供的Wire库操纵。AREF:模拟输入参考电压输入引脚。QReset:复位端口。接低电平会使Arduino复位,复位按键按下时,会使该端口接到低电平,

7、从而让Arduino复位。1.3温度变送装置的选择考虑到车载冰箱实际应用和控制器接口资源有限,温度变送装置应具有体积小,测量精度高,占用接口资源少的特点,因此,采用DS18B20作为测量变送装置。实物图和封装图如图5、图6所示:图7图5GNDIADUDD图6相关技术特性如下:、独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。、测温范围一55C+125C,固有测温误差1C。、支持多点组网功能,多个DS18B20可以并联在唯一的三线上,最多只能并联8个,实现多点测温,如果数量过多,会使供电电源电压过低,从而造成信号传输的不稳定。、工作电

8、源:3.05.5V/DC(可以数据线寄生电源)、在使用中不需要任何外围元件、测量结果以912位数字量方式串行传送接线原理图如图7所示:VCC1.4半导体制冷片的选择选取TEC1-12706型半导体制冷片。实物图如图8所示:图8相关特性参数如下:外部尺寸:40*40*3.75mm内部阻值:2.12.4Q(环境温度23lC,lkHZAc测试)最大温差:ATmax(Qc=0)67C以上。工作电流:Imax=4.3-4.6A(额定12V时)额定电压:12V(Vmax:15V启动电流5.8A)致冷功率:Qcmax60-72W工作环境:温度范围-55C80C(过高的环境温度降直接影响制冷效率)1.5驱动电

9、路的设计根据帕尔贴效应,半导体制冷片的吸热量的大小与电压值成正比,通过改变制冷片两端的电压值便可以改变制冷片的功率。温控系统是通过输出不同占空比的PWM脉冲信号来改变制冷片两端电压值,从而实现改变制冷片功率的目的。虽然选用的控制器具备输出PWM的功能,但是仅靠ArduinoUno单片机的输出无法驱动制冷片工作,所以选用AQMH2407ND作为外部驱动电路的驱动芯片,驱动制冷片工作。AQMH2407ND相关电气参数和接线原理图如图9、图10所示:顶目参数备注输入电压范围DGOAst按键模块A3r-u套Sa.SQ茴uVCC按键模块主要实现对预期温度的加减,因此需要一加一减两个独立按键。接线原理图如

10、图12所示:K210KVCCTSW-1SW-2图12散热模块半导体制冷是基于帕尔贴效应,热端的散热情况关系到冷端的制冷效率。为保证冷端制冷效果,在热端需加装散热板和散热风扇。散热板可选择铜制或铝制金属板。散热风扇选取任意由12V电源供电的即可。系统控制流程系统开始工作后通过按键输入预期的温度并在LCD1602上显示,DS18B20测量冰箱内的温度,将温度信号转化为数字量返送给单片机并显示在LCD1602显示装置上。单片机根据实时温度与预设温度的偏差,对TEC1-12706半导体制冷片输出功率进行调整,直至冰箱内温度到达预设温度,控制过程结束。在调节过程中,测量变送器测量的温度始终实时显示在显示

11、器上。关于控制系统存在的干扰及抗干扰措施不同功能的模块均有接地,但由于各个模块接地点不同,可能产生共模干扰。只需要将各个芯片的接地点接在一起进行共地处理即可。.由汽车电瓶驱动整个温度控制系统,电瓶可能由于老化造成输出电压减小,但通过LM2596转换即可得到稳定的电源。为避免冰箱内温度变化造成系统频繁启停,应在控制器中加入惰性区,当实时温度与预设温度的偏差超过一定限度后再启动系统进行制冷。2.车载冰箱温度控制系统软件仿真PID算法的实现分析:此次仿真采用理想的位置型算式,控制器输出规律如下图。ML式屮Kp为比例系数:圧称为积分系数:人过称为微分系数将被控对象传递函数离散化:因此求得输出相应与控制

12、器输出之间的关系:在MATLAB中实现以上两条核心算式即可。2.1被控对象在无控制器时的阶跃响应程序:G=tf(l,l,l,iodelay,l);%建立被控对象传递函数%绘制阶跃响应曲线sys=feedback(G,1);step(sys)运行结果:0.70.6StepResponse4cq20aat)p2=aEaJI调节时间ts=6.6s;超调量overshoot=38.4%;上升时间:tr=0.546s;峰值时tp=2.36s2.2加入位置型PID控制(参数均设置为1)后的阶跃响应:2.2.1程序:ts=0.5;G=tf(1,1,1,iodelay,1);dsys=c2d(G,ts,z);

13、num,den=tfdata(dsys,v);el=0;ul=0;u2=0;%采样时间为05s%建立被控对象传递函数%z变换离散化%以向量的格式输出num和den%上一时刻的偏差%上一时刻输出的控制量%上上时刻输出的控制量u3=0;yl=0;sum_e=0;kp=1;ki=1;kd=1;u=zeros(1,1000);time=zeros(1,1000);fork=1:1:1000time(k)=k*ts;r(k)=1;%上上上时刻的输出的控制量%上一时刻输出的响应值%偏差累计量%比例系数%积分系数(ki=kp*ts/ti)%微分系数(kd二kp*td/ts)%设置一行1000列的零向量,将控

14、制量预设为0%设置1000个时间点%设置1000次循环,每次步进值为1%每个计算点对应的时间%设置期望值y(k)=-l*den(2)*yl+num(2)*u3;%系统响应输出序列e(k)=r(k)-y(k);%计算误差值u(k)=kp*e(k)+ki*sum_e+kd*(e(k)-el);%PID控制器输出sum_e=sum_e+e(k);u3=u2;u2=ul;ul=u(k);yl=y(k);el=e(k);end%更新偏差累计量%更新上上上一时刻输出的控制量%更新上上一时刻输出的控制量%更新上一时刻输出的控制量%更新上一时刻输出的响应值%更新上一时刻的偏差%循环结束plot(time,y)

15、;xlim(0,10);holdon;运行结果2.3.1.1程序:ts=0.5;G=tf(1,1,1,iodelay,1);dsys=c2d(G,ts,z);num,den=tfdata(dsys,v);el=0;ul=0;u2=0;u3=0;yl=0;sum_e=0;kp=1.041;ki=0;kd=0;u=zeros(1,1000);time=zeros(1,1000);fork=1:1:1000time(k)=k*ts;2.3.1在纯比例作用下,逐步改变比例带大小,直至响应曲线衰减率为0.75。次试凑,得在kp=1.041,即比例带6s=0.9606时,衰减率为075。%采样时间为0.5

16、s%建立被控对象传递函数%z变换离散化%以向量的格式输出num和den%上一时刻的偏差%上一时刻输出的控制量%上上时刻输出的控制量%上上上时刻的输出的控制量%上一时刻输出的响应值%偏差累计量%比例系数%积分系数(ki二kp*ts/ti,令ti二无穷)%微分系数(kd二kp*td/ts,令td=0)%设置一行1000列的零向量,将控制量预设为0%设置1000个时间点%设置1000次循环,每次步进值为1%每个计算点对应的时间r(k)=1;%设置期望值y(k)=-l*den(2)*yl+num(2)*u3;%系统响应输出序列e(k)=r(k)-y(k);%计算误差值u(k)=kp*e(k)+ki*s

17、um_e+kd*(e(k)-el);%PID控制器输出sum_e=sum_e+e(k);u3=u2;u2=ul;ul=u(k);yl=y(k);el=e(k);endplot(time,y);xlim(0,20);%更新偏差累计量%更新上上上一时刻输出的控制量%更新上上一时刻输出的控制量%更新上一时刻输出的控制量%更新上一时刻输出的响应值%更新上一时刻的偏差%循环结束holdon;2.3.1.2运行结果临界振荡周期ts=4s。整定参数2321根据此表,整定PID控制器参数,程序如下ts=0.5;G=tf(1,1,1,iodelay,1);dsys=c2d(G,ts,z);num,den=tfd

18、ata(dsys,v);el=0;ul=0;u2=0;u3=0;yl=0;sum_e=0;dets=0.9606;%采样时间为05s%建立被控对象传递函数%z变换离散化%以向量的格式输出num和den%上一时刻的偏差%上一时刻输出的控制量%上上时刻输出的控制量%上上上时刻的输出的控制量%上一时刻输出的响应值%偏差累计量%8s赋值det=0.8*dets;kp=1/det;tk=4;ti=0.3*tk;ki=kp*0.5/ti;td=0.1*tk;kd=kp*td/0.5;u=zeros(1,1000);time=zeros(1,1000);fork=1:1:1000time(k)=k*ts;r

19、(k)=1;%8赋值%比例系数%振荡周期为4s%积分时间%积分系数(ki=kp*ts/ti)%微分时间%微分系数(kd二kp*td/ts)%设置一行1000列的零向量,将控制量预设为0%设置1000个时间点%设置1000次循环,每次步进值为1%每个计算点对应的时间%设置期望值y(k)=-l*den(2)*yl+num(2)*u3;%系统响应输出序列e(k)=r(k)-y(k);%计算误差值u(k)=kp*e(k)+ki*sum_e+kd*(e(k)-el);%PID控制器输出sum_e=sum_e+e(k);u3=u2;u2=ul;ul=u(k);yl=y(k);el=e(k);endplot

20、(time,y);xlim(0,20);%更新偏差累计量%更新上上上一时刻输出的控制量%更新上上一时刻输出的控制量%更新上一时刻输出的控制量%更新上一时刻输出的响应值%更新上一时刻的偏差%循环结束holdon;a203O.G0.40.226a101218232.3.2.2运行结果:整定结果仍然不够理想,根据经验对参数进行再次整定。%采样时间为0.5s%建立被控对象传递函数%z变换离散化%离散化后提取分子分母%上一时刻的偏差二次整定2.3.3.1根据经验法对参数进行整定,kp、ki、kd分别调整至0.8、0.3、0.3。ts=0.5;G=tf(1,1,1,iodelay,1);dsys=c2d(

21、G,ts,z);num,den=tfdata(dsys,v);el=0;ul=0.0;u2=0;%上一时刻输出的控制量%上上时刻输出的控制量u3=0;yl=0;sum_e=0;kp=0.8ki=0.3%上上上时刻的输出的控制量%上一时刻输出的响应值%偏差累计量%比例系数%积分系数(ki=kp*ts/ti)kd=0.3u=zeros(1,1000);time=zeros(1,1000);fork=1:1:1000time(k)=k*ts;%微分系数(kd二kp*td/ts)%设置一行1000列的零向量,将控制量预设为0%设置1000个时间点%设置1000次循环,每次步进值为1%每个计算点对应的时

22、间r(k)=1;%设置期望值y(k)=-l*den(2)*yl+num(2)*u3;%系统响应输出序列e(k)=r(k)-y(k);%计算误差值u(k)=kp*e(k)+ki*sum_e+kd*(e(k)-el);%PID控制器输出sum_e=sum_e+e(k);u3=u2;u2=ul;ul=u(k);yl=y(k);el=e(k);endplot(time,y);xlim(0,50);holdon;2.3.3.2运行结果如下:%更新偏差累计量%更新上上上一时刻输出的控制量%更新上上一时刻输出的控制量%更新上一时刻输出的控制量%更新上一时刻输出的响应值%更新上一时刻的偏差%循环结束与未加pi

23、d控制器时的阶跃响应相比较,超调量overshot=13.6%,明显降低,调节时间明显减少,响应速度加快。2.4控制参数对系统性能的影响设置不同的控制参数,分别作出相应的响应曲线,比较各个参数或控制环节对系统性能的影响。2.4.1程序:PID=2.4,0,0;2.4,0.88,0;3.4,0.88,0;2.4,1.8,0;2.4,1.8,0.25;2.4,1.&1;%初始化6组PID参数forpid=1:1:6;ts=0.5;G=tf(1,1,1,iodelay,1);dsys=c2d(G,ts,z);num,den=tfdata(dsys,v);el=0;ul=0.0;yl=0;%设置大循环

24、,pid参数分别取不同的值%采样时间为05s%建立被控对象传递函数%z变换离散化%以向量的格式输出num和den%上一时刻的偏差%上一时刻输出的控制量%上一时刻输出的响应值sum_e=0;kp=PID(pid,1);ki=PID(pid,2);kd=PID(pid,3);u=zeros(1,1000);time=zeros(1,1000);fork=1:1:1000time(k)=k*ts;r(k)=1;%偏差累计量%比例系数%积分系数%微分系数%设置一行1000列的零向量,将控制量预设为0%设置1000个时间点%设置1000次循环,每次步进值为1%每个计算点对应的时间%设置期望值y(k)=-

25、l*den(2)*yl+num(2)*ul+num(1)*u(k);%系统响应输出序列e(k)=r(k)-y(k);%计算误差值u(k)=kp*e(k)+ki*sum_e+kd*(e(k)-el);%PID控制器输出sum_e=sum_e+e(k);ul=u(k);yl=y(k);el=e(k);end%更新偏差累计量%更新上一时刻输出的控制量%更新上一时刻输出的响应值%更新上一时刻的偏差%循环结束subplot(2,3,pid);plot(time,y);xlim(0,10);title(Kp=,num2str(kp),Ki=,num2str(ki),Kd=,num2str(kd)holdo

26、n;用下的在0-10s内的响应曲线,end%在同一幅图中以2行3列同时输出6组pid参数作标题分别为对应的pid参数值%循环结束2.4.2运行结果:理论上,增大比例系数kp会使系统上升时间缩短,即响应速度加快,但由于本系统采样周期T=0.5s过大,在图中难以比较。但比较图二图三可知,比例系数kp增大时,系统振荡次数增多,调节时间变长。在系统稳定的前提下,适当增大kp可以减小稳态误差,但并不能彻底消除稳态误差。比较图一图二图三可知,当引入积分环节,能够减少系统振荡次数,缩短调节时间。但当积分系数ki增大,即积分时间偏小时,系统重新出现振荡,调节时间也相应增大,若继续增大积分作用,系统可能不稳定。积分作用有助于消除系统误差,提高系统控制精度。比较图四五六可知,当引入微分作用,能够

温馨提示

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

评论

0/150

提交评论