基于LABVIEW计算机测控系统综合实践报告学生姓名:苏豪育学号:06050318专业班级:自动化06-4班2010.3.24计算机测控系统综合实践报告一、实验目的:利用Labview软件和相关硬件设备,完成电机转速控制对象和温度加热控制对象等控制系统设计和调试。掌握PID参数调整的方法以及基于Labview软件设计图形化编程语言的方法,完成电机转速和温控炉温度的控制实验。二、实验设备计算机、实验箱、NI_6008数据采集卡、直流电机(风扇)、温控炉、连接导线以及LabVIEW7.1软件等三、实验内容1、熟悉和学习Labview软件相关内容(结合提供的书面资料和电子资料等);2、利用Labview软件根据工艺要求综合设计前面板,包括PID控制器操作面板(按照标准仪表调节器面板进行设计,至少有手/自动、正/反作用、内/外给定等切换开关,SV、MV、P、I、D等参数的设置,SV、PV、MV等参数的显示等)、重要工艺参数上、下限报警指示、重要工艺数据实时曲线显示等;3、设计控制面板程序,利用公式节点、分支结构等模块实现控制器面板各功能调度、数据采集、基本PID控制算法、控制输出等;4、结合两控制对象的特点,根据控制参数调节规律,正确调整PID作用方式和PID控制参数记录完整的实验曲线;5、根据上面的内容写出完整的综合实践报告。四、实验步骤1、熟悉和学习Labview软件;2、对所用全部硬件结合实验箱利用万用表等工具进行单独测试,检查功能是否正常,按照要求连接控制系统输入输出回路,利用Labview软件自带的测试软件对NI_6008数据采集卡所用到的AI/AO通道进行测试;3、按照实践要求设计前面板;4、按照实践要求设计控制面板程序(按输入模块、控制模块、输出模块的结构),实现手动控制功能;5、利用公式节点等实现基本PID控制算法;6、系统调试,完成速度控制系统和温度控制系统的整体调试;7、记录实验结果,包括前操作面板、控制模板、控制参数调整结果、工艺阶跃响应调节控制曲线;五、补充说明1、直流电机速度控制对象,其自身控制信号大约为-2.5~2.5VDC,测量输出信号为幅值为0~5VDC的脉冲信号(正常情况下大约每秒32个脉冲,一转二个脉冲,对应0~1000转/分钟,每个对象都不一样,要进行测试,在编程是量程标度转换时要使用),要注意控制信号大约为-2.5VDC时电机转速最快,控制信号大约为2.5VDC时电机转速最慢,但不一定为零,以实际测试多少而定;2、由于NI_6008卡件AO输出信号范围为0~5VDC,而控制对象自身控制信号为-2.5~2.5VDC,可以利用运算放大器线性变换0~5VDC信号范围为-2.5~2.5VDC;3、温度控制对象输入信号范围大约为-6.0~3VDC(以实际测量为准),负值对应高温,正值对应低温,其控制信号(幅值小于5VDC)为一定频率可调占空比方波信号;4、基本PID控制算法要求实现无扰手/自动、正/反作用切换功能;5、程序设计和系统调试均包括电机速度控制对象和温度控制对象两部分;6、在连接线路时切不可带电操作,经指导老师确认线路连接无误后,才允许闭合电源开关。六:实验过程及分析(一)风扇转速控制系统1.熟悉和学习Labview软件。通过Labview的学习,至少要学会在前面板中加入控件,在程序框图中连接对象,加入函数等基本功能。还要学会使用一些结构函数,如公式节点,While函数,Case结构等。学会信号的采集,输出,处理等,这些都是在本实验中需要用到的。2.搭建外部硬件电路由于我们的控制对象风扇的自身控制信号为-2.5~2.5V,而采集卡的输出信号范围为0~5V,所以需要将0~5V信号转化为-2.5~2.5V信号,转化电路如下:图中+5V电压由实验箱提供,0~5V的电压信号由NI—6008卡件AO1端口提供;-2.5~2.5V的电压接到实验箱的DA1端口上作为风扇的转速控制信号,NI—6008卡件AI0端口信号线接到实验箱上的PL0口上。3.前面板的设计前面板的设计要包括PV,SV,MV,PV100%,SV100%,MV100%,ΔMV的显示,可以添加WaveformChart来实现,分别用来显示PV,SV,MV.PV100%,SV100%,MV100%另外添加报警灯,和转速。PID参数设置及数字显示用来进行PID参数的设置,PV,SV,MV的数字显示,上下限值得设定,正反作用选择,手自动切换等。正反作用的选择通过一个VerticalSlideSwitch来实现,当选择正作用时为1,选择反作用时为0。手自动切换也同样,当置为手动时为1,置为自动时为0。STOP用来控制整个系统,当按下STOP时,系统停止运行。4.设计控制面板程序整个控制面板程序总体来说可以认为是分为3部分,数据采集部分,PID程序设计部分,数据输出部分。输入及信号处理部分:通过DAQ模块输入电压值,并通过器件timingandTransition将其转化为脉冲信号,然后加入滤波器优化数据,一转为两个脉冲,所以输出频率为转速的2倍。将输出的信号进行上下限报警PID程序设计部分:在PID程序设计过程中,要考虑到手自动切换问题,正反作用选择问题,采样周期T的处理等问题。具体PID算法如下:floatq1,q2,q3,e0;q1=Kp*(1+T/Ti+Td/T);q2=Kp*(1+2*Td/T);q3=Kp*Td/T;if(A==1){e0=PV-SV;e0=(e1+e2+e0)/3.0;MV=MV0+K*(q1*e0-q2*e1+q3*e2);if(MV0)MV=0;if(MV4.98)MV=4.98;}if(A==0){if(MV0)MV=0;if(MV4.98)MV=4.98;MV=mv;SV=PV;e0=0;}在PID程序设计过程中需要注意到的问题。(1)实现PID算法还需用到移位寄存器,将e1的值赋给e2,将e0的值赋给e1,将上一个周期的MV作为下一个周期的MV0,采用三个寄存器将此功能实现。另外要给各寄存器赋0。(2)采样周期的处理问题:采用一个WaitUntilNextMultiple函数,每Tms进行一次循环运算。同样还要注意采样周期大于系统本身的周期,若小于的话还是要等系统周期到了才可以。(3)手自动切换的问题,当手自动开关打到手动时,A=0。(4)正反作用选择问题:当正作用时,K=1;反作用时K=-1;(4)PV,SV,MV从转速r/s向100%的转换。副函数内容:SV100=100*(PV-6.4)/(15.8-6.4);SV100=100*(SV-6.4)/(15.8-6.4);MV100=100*(MV-0)/(4.98-0);5控制效果1)自动控制Kp=0.2,Ti=2,Td=0,T=0.5s.2)手动控制当SV=PV=9r/s时,无扰切换至MV=2.63V,MV100%=52.9%。实习总结:经过将近一周的努力,转速控制系统的设计已经完成,在前面板上即可进行操作,该系统可以完成手自动的双向无扰切换,对于SV,PV,MV还有转速r/s格式和100%格式两种,使得程序更加完美,另外转速也可以实现正反作用选择,PID参数设置,上下限报警等功能。改变采样周期T有两个影响:对控制效果的影响及对采点的影响。当增大T时,相当于减小了积分时间,增大了积分作用,导致超调量有所增加。同时,T增大,采样周期增大,单位时间内采点数减小,曲线不如原来平滑。总统来说,风扇转速控制起来还是比较简单的,风扇转速经常会有小幅度的波动,这与系统自身有关,只要波动不是很大即在允许范围内。