温度控制实验指导书

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

温度控制实验指导书

一、实验原理

温度源把温度信号转成电信号,模块将采集到的模拟量转化成数字量与上位机(计算机)通过232接口通讯,上位机发出相应的指令控制反馈模块对输出量进行实时控制。这样就构成了一个计算机温度控制系统。在定时(5秒)过程中通过控制加热开关的导通和闭合的时间比达到温度控制的目的。

PID控制简介

PID控制器是连续控制系统中技术成熟、应用最为广泛的控制器,在模拟控制系统中,最常用的控制规律足 PID控制。常规 PID控制系统原理框图如图2所示。系统由模拟控制器和被控对象组成。

图2.模拟PID控制系统的原理框图

PID是一种线性控制器,它根据给定值r(t)与实际输出 y(t)构成控制偏差。

e(t)=r(t)一y(t)

将偏差比例(P)、积分(I)和微分(D)通过一定的线性组合构成控制量 U(t)对被控对象进行控制。它的控制规律为:

式中:K P 为比例系数;K I为积分时间常数;K D为微分时间常数。

将上式进行离散化处理,可得PID离散表达式:

式中:k为采样序号,代表的是第k次采样。u(k)为第 k次采样时刻的计算机输出值;e(k)为第k次采样时刻的输入的偏差值;e(k-1)为第 k-1次采样时刻的输入的偏差值。

同理可得u(k-1)的表达式:

用u(k)减去u(k-1),可得△u的值:

△u=K P[e(k)-e(k-1)]+K I e(k)+K D[e(k)-2e(k-1)+e(k-2)]

K P[e(k)-e(k-1)]是比例的贡献,K I e(k)是积分的贡献,K D[e(k)-2e(k-1)+e(k-2)]是微分的贡献。

二、实验目的及内容

1、目的

建立计算机温度控制的实践基础。综合应用所学过的传感器知识,计算机数据采集知识和控制算法,自行设计一个计算机温度控制系统,理解计算机控制系统的基本构成。

2、内容

可通过图1中的路径来组建计算机温度控制方案。

图1.计算机温度控制方案

在本实验中,采用K型热电偶作为传感器,通过采集模块将信号输给计算机。通过在VB环境下对其进行编程,选用PID控制。

三、实验仪器设备

1、CSY-2000型温度源,220V交流电提供加热电源,24V直流电提供风扇电源。

2、工业控制计算机。

3、K型热电偶。

4、台湾铭纬开关电源,220V交流电输入,输出直流电压24V,电流1.5A。

5、SASR-25DA施耐德固态继电器,输入直流电压3~32V,输出交流电压24~380V。

6、台湾泓格公司模块7018、7060、7520,24V直流供电。

7、计算机及232串口线。

8、导线若干。

四、实验方法与步骤

1、按照图中所示接线。

其中,220V交流电为系统提供加热电源,开关电源将其转化为24V直流电,为模块和温度源的冷却风扇供电。K热电偶作为传感器将温度信号转化为有用的电压信号传入7018模块。7018是一个AD转换模块, 它能将电压模拟量转化为机器能识别的数字量,通过DATA口与另外两个模块进行数据传输。各模块之间采用的是485方式通讯,而计算机只有232接口,7520能将这两种方式互相转化,从而使模块和计算机之间能够进行通讯。当信号传到计算机上时,计算机通过PID算法对7060模块发出相应的指令。7060是一个继电器开关模块,收到指令后,控制固态继电器的闭合时间,从而控制温度源加

热的时间,起到调节温度的效果。

2、温度实验一:定时,理解定时器应用语句。

程序代码以及界面

3、温度实验二:用通讯采集信号,结合硬件系统熟悉用计算机和模块之间的通讯来采集温

度信号。

程序代码以及界面

注释:关于控件的添加

右键单击窗口左边的工具栏→点击“部件”→勾选“Microsoft Comm Control 6.0”→点击“确定”即添加控件

4、温度实验三:用通讯控制继电器,断开温度源电源,运行程序,观察固态继电器的开关

变化。

5、认识实验:PID程序,理解其中的算法部分。

程序代码以及界面

Dim y As Single

Dim r As Single

Dim kp, ki, kd As Single

Dim Uap, Uac, OutT As Single

Dim e(0 To 10) As Single

Private Sub Command1_Click()

kp = Val(Textk(0).Text) '输入PID各控制量值

ki = Val(Textk(1).Text)

kd = Val(Textk(2).Text)

r = Val(Text1.Text) '输入目标温度值

e(2) = r - y '计算温度差

If Abs(e(2)) < 10 Then

Uac = kp * (e(2) - e(1)) + ki * e(2) + kd * (e(2) - 2 * e(1) + e(0)) ‘PID算法Else

Uac = kp * (e(2) - e(1)) '只用比例控制,为的是在当前温度与目标温度

相差较大时加速升温

End If

e(0) = e(1)

e(1) = e(2)

OutT = (Uap + Uac)

Uap = OutT

End Sub

6、温度控制,理解其中PID有关算法的语句,并填补空缺的语句。使得程序在默认目标温

度50摄氏度,默认的比例、积分、微分系数下能进行温度控制。

程序代码以及界面

Option Explicit

Dim C(1 To 1000) As String

Dim i As Integer

Dim y(1 To 1000) As Single

Dim e(10) As Single

Dim Uac, Uap As Single

Dim u(0 To 1000) As Single

Dim Kp, Ki, Kd As Single

Dim OutT As Single '继电器通电时间

Dim r As Single '当前采集温度

Private Sub Command1_Click() '开始

Timer1.Enabled = True

Timer2.Enabled = True

Dim t As Single

r = Val(Text1.Text)

'温度坐标图

't轴

For t = 0 To 420 Step 60

If t <> 0 Then

Picture1.Line (t, 2)-(t, 0)

End If

Next t

For t = 0 To 420 Step 12

If t <> 0 Then

Picture1.Line (t, 0.6)-(t, 0)

End If

Next t

'y轴

For t = 0 To 160 Step 20

If t <> 0 Then

Picture1.Line (3, t)-(0, t)

End If

Next t

For t = 10 To 110 Step 20

Picture1.Line (1.5, t)-(0, t)

Next t

For t = 0 To 160 Step 1

If t <> 0 Then

相关文档
最新文档