当前位置:文档之家› 分布式实验报告.

分布式实验报告.

实验一循环灯监控一、实验目的1、掌握s7300与wincc如何通信2、掌握wincc变量定义及与控制变量如何绑定3、了解分布式控制系统中操作站的主要功能。

4、熟悉WINCC软件图形开发界面。

二、实验要求实现控制系统组态过程,具体要求如下:1、S7300PLC仿真器与计算机相连的组态过程。

2、图形界面设计实现。

3、数据报表界面实现三、实验原理与常规的仪表控制方式不同的是集散控制系统通过人机操作界面不仅可以实现一般的操作功能,而且还增加了其他功能,例如控制组态、画面组态等工程实现的功能和自诊断、报警等维护修理等功能。

此外,画面方便的切换、参数改变的简单等性能也使集散控制系统的操作得到改善。

操作站的基本功能:显示、操作、报警、系统组态、系统维护、报告生成。

操作站的基本设备有操作台、微处理机系统、外部存储设备、操作键盘及鼠标、图形显示器、打印输出设备和通信接口等。

(1)西门子S7系列PLC编程软件本装置中PLC控制方案采用了德国西门子公司S7-300PLC,采用的是Step 7编程软件。

利用该软件可以对相应的PLC进行编程、调试、下装、诊断。

(2)西门子WinCC监控组态软件S7-300PLC控制方案采用WinCC软件作为上位机监控组态软件,WinCC 是结合西门子在过程自动化领域中的先进技术和Microsoft的强大功能的产物。

作为一个国际先进的人机界面(HMI)软件和SCADA系统,WinCC提供了适用于工业的图形显示、消息、归档以及报表的功能模板;并具有高性能的过程耦合、快速的画面更新、以及可靠的数据;WinCC还为用户解决方案提供了开放的界面,使得将WinCC集成入复杂、广泛的自动化项目成为可能。

四、实验步骤1、对PLC进行硬件组态:在新建项目下选择“SIMATIC 300 Station”---“hardware”,打开硬件组态窗口。

2、点击项目名称,在右方的空白处添加PROFIBUS和MPI对CPU和PROFIBUS 和MPI进行总线的连接。

4、程序仿真1)、仿真创建图4-32)仿真现象5、画面编辑1)、界面设计正转按钮可以将其中的画面窗口中通过跳转显示正转的时候的循环灯运行情况,反转按钮可以将其中的画面窗口中通过跳转显示反转的时候的循环灯运行情况,退出按钮添加C动作,点击即可退出程序。

2)、变量管理---“SIMATIC S7 Protocol Suite”,如图4-7所示:图4-7在MPI中创建“新的驱动程序的连接”,命名为“step7”,在下面创建变量,如图4-8所示:其中A0.0~A0.5控制正转的6个灯,M0.0,M0.1,M2.0分别为启动、停止、反转按钮,控制灯的运动。

3)、连接诊断选择“开始”---“SIMATIC”---“wincc”---“TOOLS”---“Channel Diagnosis”若其中均为绿色勾,则为通信成功,否则视为不成功,需重新设置地址。

如图4-11所示:图4-114)、变量连接对于灯的连接,如图4-12所示:4-12对于按钮的连接,如图4-13所示:图4-135)、激活现象激活之后,点击绿色按钮(左边),程序进入正转环节,点击红色按钮(右边)则停止。

点击反转按钮,跳转到反转界面,点击反转中的绿色按钮开始反转,点击红色按钮即停止。

点击退出按钮则关闭界面与程序。

正转图如图4-14所示:图4-14六、实验思考1、实验中主画面设计和变量有何关系?2、报警画面如何设计?3、报表数据与现场参数连接如何建立?实验二模拟量控制实验一、实验目的1、掌握控制如何采集、仿真2、掌握线性化编程与结构化编程3、了解数据块在结构化编程中如何体现。

4、熟悉WINCC软件图形开发界面。

二、实验要求实现控制系统组态过程,具体要求如下:1、控制的组态过程。

2、数据块设计实现。

3、界面设计实现三、实验原理1、模拟量I/O模块图3-12、模拟量控制系统设计举例如图所示为一搅拌控制系统,由3个开关量液位传感器,分别检测液位的高、中和低。

现要求对A、B两种液体原料按等比例混合,请编写控制程序。

要求:按起动按钮后系统自动运行,首先打开进料泵1,开始加入液料A→中液位传感器动作后,则关闭进料泵1,打开进料泵2,开始加入液料B→高液位传感器动作后,关闭进料泵2,起动搅拌器→搅拌10s后,关闭搅拌器,开启放料泵→当低液位传感器动作后,延时5s后关闭放料泵。

按停止按钮,系统应立即停止运行。

四、实验步骤1、对PLC进行硬件组态:在新建项目下选择“SIMATIC 300 Station”---“hardware”,打开硬件组态窗口。

图4-12、点击项目名称,在右方的空白处添加PROFIBUS和MPI对CPU和PROFIBUS和MPI进行总线的连接。

图4-23、组态完成后,编写程序。

1)、搅拌控制系统线性程序设计OB100块:2)、搅拌控制系统结构化软件设计4、程序仿真搅拌控制系统线性程序设计1)、仿真创建图4-32)、仿真结果I0.0=ONPIW256<100 Q4.0=ON 如图4-4PIW256>=100 Q4.0=OFF Q4.1=ON 如图4-5PIW256>=200 Q4.1=OFF Q4.2=OFF T1 如图4-6T1=ON Q4.2=OFF Q4.3=ON PIW256=0 T2 如图4-7 T2=ON Q4.3=OFF搅拌控制系统结构化软件设计1)、仿真创建图4-82)、仿真结果由于仿真结果图与上一个的实验结果完全一样,则不截图进行说明。

I0.0=ONPIW256<100 Q4.0=ONPIW256>=100 Q4.0=OFF Q4.1=ONPIW256>=200 Q4.1=OFF Q4.2=OFF T1T1=ON Q4.2=OFF Q4.3=ON PIW256=0 T2T2=ON Q4.3=OFF5、画面编辑1)、画面设计2)、变量管理---“SIMATIC S7 Protocol Suite”,如图4-12所示:图4-12在MPI中创建“新的驱动程序的连接”,命名为“WinLc”,在下面创建变量,如图4-13所示:图4-13---“System Info.chn,如图4-14所示:图4-143)、激活现象Process按钮进入Process子画面,如图4-17所示:图4-17在Process子画面中,调节滚动条可以观察到水箱中液位的变化情况,同时将液位的高度以数字显示在左边的变格中,开关可以控制阀门的开通与关断。

Alarm按钮进入Alarms报警画面,如图4-18所示:在Alarms报警子画面中,开关用来控制阀门的报警情况,滚动条用于显示液位高低,当快了满的时候进行报警,下方的报警表格用于记录报警的时间与具体情况。

图4-183、点击Trend按钮进入Trend子画面,如图4-19所示:图4-19在Trend子画面中,滚动条可以任意调节液位的高低,最后可以通过下方的趋势图来反映液位的变化情况,而系统CPU的利用率可以通过直方图和下方的曲线图表现出变化情况,而RAM的是不变的,则是一条平行于时间的直线。

六、实验思考1、线性程序设计和结构化程序设计应用哪种场合?2、模拟量控制与开关量控制有哪些区别?3、画面如何设计?4、数据块如何设计?实验五 时滞对象PID 位置算法控制实验一、实验目的1、掌握PID 位置算法如何用程序来实现2、掌握零阶保持器的作用及离散化方法3、掌握过程输出如何仿真4、Matlab 程序设计方法及调试。

二、实验要求具体要求如下:1、模拟PID 的离散化方法。

2、程序设计实现。

3、过程输出仿真。

三、实验原理控制对象及参数如下位置式PID 控制算法:. 0()d kt jo j e t t T e =≈∑⎰100[()]S D k P k j k k j I ST u K e e e e u T T -==++-+∑ 位置式控制算法提供执行机构的位置 k u ,需要累计k e 零阶保持器处理方法:四、实验参考程序Ts=20; %采样时间K=1;Tp=60;%峰值时间tol=80;sys=tf([K],[Tp,1],'inputdelay',tol);%时滞系统,Gp (s )的表达式表示 dsys=c2d(sys,Ts,'zoh'); %输入加入零阶保持器的方法将传递函数离散化()7165.02835.0*4d --=∧z z sys [num,den]=tfdata(dsys,'v');% 提取差分方程系数,‘v ’是指以向量形式输出 num=0 0.2835;den=1.0000 -0.7165u_1=0.0;u_2=0.0;u_3=0.0;u_4=0.0;u_5=0.0;%数字控制器初始值输出设置为零 数字控制器输出u 滞后了4个采样周期 e_1=0;%系统误差初始值设置为零ei=0;%所有采样时刻误差值之和开始时为零y_1=0.0;%系统初始时刻输出设置为零for k=1:1:300time(k)=k*Ts;%采样时间信号值yd(k)=1.0;%tracking step signal 跟踪阶跃信号y(k)=-den(2)*y_1+num(2)*u_5;%计算含有滞后环节被控对象预估模型输出值()()()()()52835.017165.0y 7165.012835.00z 15-=--⇒-+=--z u k y k z z U z Ye(k)=yd(k)-y(k);%计算系统误差de(k)=(e(k)-e_1)/Ts;%系统误差的变化率ei=ei+Ts*e(k);%计算所有采样时刻误差值之和delta=0.885;%稳定范围宽度TI=160;TD=40;u(k)=delta*(e(k)+1/TI*ei+TD*de(k));%采用位置型控制算法e_1=e(k);%更新系统误差值u_5=u_4;u_4=u_3;u_3=u_2;u_2=u_1;u_1=u(k);%更新控制器的输出 y_1=y(k);%更新系统的输出1()()(1)G s G z z s -⎡⎤=-⎢⎥⎣⎦Zendfigure(1);plot(time,yd,'r',time,y,'k:','linewidth',2);%绘图xlabel('time(s)');ylabel('yd and y');legend('ideal position signal',' position tracking');Simulink仿真:五、实验思考题1、PID 位置算法如何实现?2、过程输出如何仿真?3、当tol=120 时,程序如何修改?当tol=120 时,6s /tol =T ,则有u_1=0.0;u_2=0.0;u_3=0.0;u_4=0.0; u_5=0.0;u_6=0.0;u_7=0.0;y(k)=-den(2)*y_1+num(2)*u_9;()7165.02835.0*8d --=∧z z sys ()()()()()92835.017165.0y 7165.012835.00z 19-=--⇒-+=--z u k y k z z U z Y4、PID 位置算法对时滞对象控制品质效果影响如何?有没有更好的方法?如何实现并检验控制效果?PID 位置算法对时滞对象控制品质效果为稳态误差为0,但动态特性不好,有超调。

相关主题