您当前的位置:五五电子网电子知识电工技术电工文摘基于西门子PRODAVE和S7-300 PL的气力输送 正文
基于西门子PRODAVE和S7-300 PL的气力输送

基于西门子PRODAVE和S7-300 PL的气力输送

点击数:7694 次   录入时间:03-04 11:55:23   整理:http://www.55dianzi.com   电工文摘
气力输送实验室系统中,利用Visual Basic编写的上位机监控软件在和S7-300 PLC进行通讯时,主要调用了load_tool、unload_tool、new_ss、db_read、db_wtite、d_field_read、d_field_write等函数。其中,load_tool的作用是检查通讯、对通讯参数初始化;new_ss用于上位机需要和PLC进行数据交换时,进行通讯检查并激活通讯连接;db_read、db_wtite、d_field_read、d_field_write分别用来对S7-300系列PLC的数据单元(WORD或BYTE)进行读写操作;unload_tool用于在退出系统以前断开和PLC之间的通讯连接,当需要退出监控系统时可以调用此函数。

在对上述函数调用之前,需要在VB模块中作类似如下的声明,以调用相应的函数,例如,当在程序执行过程中调用load_tool函数时,可声明如下:
Declare Function load_tool Lib “w95_s7m.dll” (ByVal nr As Byte, ByVal dev As String, adr As plcadrtype) As Long
这样,当上位机执行到对load_tool的调用时,它会自动访问安装在操作系统上的w95_s7m.dll动态链接库,从而可以实现初始化通讯连接的目的。
下面给出了气力输送实验系统上位机监控软件程序运行时实现与PLC通讯检查并加载主监控界面功能的程序代码。
Public Sub Form_Load()
Dim ss As String
Dim msg As Integer
plcadr(0).adr = 2
plcadr(0).SEGMENTID = 0
plcadr(0).RACKNO = 0
plcadr(0).SLOTNO = 2
plcadr(1).adr = 0
plcadr(1).SEGMENTID = 0
plcadr(1).RACKNO = 0
plcadr(1).SLOTNO = 2
res = load_tool(1, “S7ONLINE”, plcadr(0))
If (res <> 0) Then
ss = “通讯失败,无法建立连接!”
msg = MsgBox(ss, vbExclamation + vbRetryCancel, “提示信息!”)
If msg = 4 Then Call Form_Load
Else: maincontr.Show
End If
End Sub
上述代码执行时,用户启动上位机监控系统软件,软件首先检查是否有在线的PLC连接,如果在线连接成功,即上位监控计算机经由适配器与PLC的CPU模块通讯无误,那么系统将执行maincontr.Show语句,显示主监控界面。否则,将显示“提示信息”对话框,提示操作人员无法与PLC建立通讯,操作人员应当检查通信线路,然后重试建立连接,或者取消连接检查而直接查看监控画面。
上位机监控软件中其它诸如数据采集、状态显示、实时控制等方面功能的实现与此类似,不再赘述。
(3)数据采集与分析软件设计。数据采集与分析是实验系统重要组成部分,是改进系统和完善工艺的理论依据和科学基础。为了满足工艺研究人员对采集数据多方面的查看与分析要求,对实验数据的处理与分析可借助于专门的工程软件MATLAB来实现。

图4 实验数据作图GUI对话框

图4是在GUI环境下开发的对采集数据进行作图的初始对话框,它主要由两个操作按钮和文字提示信息组成。使用时,操作人员可通过点击“上载”按钮来指定采集数据所在位置,然后,系统将自动绘制各采集模拟量的MATLAB图形,当操作人员点击“取消”按钮时,将关闭该对话框并返回。
上述的用户界面在MATLAB中保存为两个文件,它们分别时SF.m和SF.fig,其中SF.m为“上载”按钮的调用(Callback)函数,函数主要内容如下所示:
function pushbutton1_Callback(hObject, eventdata, handles)
Mpic
function pushbutton2_Callback(hObject, eventdata, handles)
close
其中,pushbutton1、pushbutton2分别是提示对话框中两个操作按钮的名称,而Mpic是被调用的又一M-file,作用是根据需要对采集到的各量绘制其MATLAB图形。作为示例,图5给出的是绘制仓泵重量随时间变化图形的M-file代码及趋势图。
clear
x=load(‘E:/matlab6p5p1/work/数据/009.txt’)
t=1:360
plot(t,x(:,7),‘.-k’)
title(‘Container Weight (Kg)’)
ylabel(‘DATA NO. 9’,‘fontsize’,12)
xlabel(‘TIME (S)’,‘fontsize’,10)

4 结束语
根据上述的气力输送实验系统,我们以粉煤灰为输送介质,通过对有压、无压、流化等不同工艺流程进行气力输送,为粉煤灰气力输送系统的研究和现场工程实施提供了大量的参考数据和设计依据。同时,借助本文所构造的气力输送实验系统,并通过在该实验平台上的气力输送实验,我们完成了江苏靖江热电厂粉煤灰气力输送系统与上海外高桥热电厂烟气脱硫工程石灰石粉气力输送系统的设计,并在工程实际实施过程中为现场工作的顺利开展提供了大量的指导。
通过将该气力输送实验系统与工业应用实际相结合,并通过在该实验系统上的多次实验,本文所设计的气力输送系统可以很大程度地改进目前在气力输送领域所存在的问题,优化当前的气力输送系统结构,并为以后气力输送的发展与应用提供新的思路,具有广泛的实际应用价值。

上一页  [1] [2] 


本文关键字:西门子  气力输送  电工文摘电工技术 - 电工文摘