西门子PLC通过S7A与IFIX通讯组态实例

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

画面如图,完成下图功能SP反映阀门给定值,以量程为0~100柱状图显示PV反映阀门反馈值,以量程为0~100柱状图显示通过SP下方的数值置数可以对阀门开度进行控制按“打远方”按钮,画面可以通过“开”“关”按钮对阀门进行点动操作。按“打就地”按钮,禁止了画面“开”“关”按钮对阀门进行点动操作。“就地”“远方”的反馈通过DI点的反转实现。步骤:运行S7-300程序新建一个项目,取名为PUMP,确定右键,插入300站点双击硬件进行硬件组态双击Rail,添加机架空机架添加好后如下在1槽填加电源,双击1槽,选择选定的CPU进行填加在2槽添加CPU,双击进行添加。CPU会固定占用2槽和3槽,3槽不能再放其它卡件选中2槽,双击选定CPU填加自动弹出属性-PROFIBUS接口窗口,地址2是CPU地址点击新建,在这个CPU下建立一个PROFIBUS网络连接新建了一个PROFIBUS网络,是因为我们用的实际CPU通过PROFIBUS网络挂了个从站,CPU通过MPI接口和配套通讯线与IM卡连接的确定确定建好CPU后如下在4槽填加CP卡(3槽被CPU占用,添加不进卡件了)选中4槽,双击CP硬件填加CP卡是网卡,电脑通过网线连接到PLC的CP卡与PLC通讯弹出窗口IP地址是我要给PLC的CP卡定义的IP地址,这个地址随着硬件组态的下装写进PLC的CP卡里(写好的IP地址也可随时进行修改)。这个地址必须和我IFIX下SCU建立的数据库地址相同,否则IFIX数据库是访问不了PLC的。这里我设PLC的地址是192.168.0.20。改好IP后点击新建建好一个Ethernet连接,确定i建立好后如下在5槽填加AI卡件选中5槽,双击AI硬件添加双击添加好的AI卡件,进行设置按下图更改AI卡件设置,根据需要进行设置改好后如下,确定在6槽填加AO卡件选中6槽,双击硬件填加双击AO卡件进行设置按下图更改,该卡件是8通道,这里只显示了4个通道,通过输出右边的箭头进行移动,可以查看没显示出来的通道。完成后如下,确定建立从站填加IM卡件确定建立好后如下在从站4槽添加DI卡件在从站5槽添加DO卡件填加完成后如下保存编译回到项目,双击OB1在OB1中建立程序下面是我添加的I/O卡件默认地址。AI卡地址范围PIW272~287A0卡地址范围PQW288~303DI卡地址范围I0.0~I0.7,I1.0~1.7DO卡地址范围Q0.0~Q0.7实际接线如下:I0.0开到位I0.1关到位I0.2远方/就地I0.3故障Q0.0开门Q0.1关门PIW272阀门反馈PQW288阀门指令程序如下符号表中添加这些点,上位调用要使用这些M地址FC105和FC106是系统自动添加的,不用管它,在符号表里删了程序还是可以照常使用。查找PLC并与PLC连接通讯查找PLC自动查找连接到PLC,下图查找到PLC地址是192.168.0.6如果通讯不到PLC是找不到IP地址的点确定上一步找到PLC后,在下图的MAC地址就有了将IP地址改成我要的192.168.0.20打开硬件组态,点下载选中找到的PLC,点确定回到主界面,下载主程序程序建立并下载完成。在FIXI中建立数据库运行双击数据库管理器点击打开本地节点(或在显示可用节点列表选择打开)进行修改打开数据库表格,另存为PUMA关闭,回到主画面双击双击数据库,更改为我建立的数据库名配置SCADA选择驱动器选中我要用的驱动,点击确定配置默认会打开以前已建好的,我们这里新建一个添加改名为LX在LX的下一级新建一个名字改为PUMP,这个名字在IFIX数据库中添加的点名要用到。IP地址是PLC地址,如果和IFIX通讯的PLC地址不是这个,就通讯不起添加数据块名字改为M添加设置好后另存为PUMP设置好后,关闭在数据库中添加点位添加AIMD100阀门反馈双击双击驱动器选我建立的S7A,IO地址格式如下保存添加AOMD104阀门指令添加DIM2.2远方/就地添加DOM2.4开门添加完成后如下:下面开始画图先另存为,新建一个图PUMP添加SP显示PV与SP相同做法,不过连接的点不同类型选为可控制选中这个数字,点数据输入专家画开到位反馈添加打远方按钮双击添加文字对脚本进行修改PrivateSubCommandButton1_MouseUp(ByValButtonAsInteger,ByValShiftAsInteger,ByValXAsSingle,ByValYAsSingle)EndSub在中间添加语句:PrivateSubCommandButton1_MouseDown(ByValButtonAsInteger,ByValShiftAsInteger,ByValXAsSingle,ByValYAsSingle)CloseDigitalPointFix32.FIX.LOS.F_CVEndSub右上角添加鼠标抬起动作脚本PrivateSubCommandButton1_MouseUp(ByValButtonAsInteger,ByValShiftAsInteger,ByValXAsSingle,ByValYAsSingle)EndSub在中间添加语句:PrivateSubCommandButton1_MouseUp(ByValButtonAsInteger,ByValShiftAsInteger,ByValXAsSingle,ByValYAsSingle)OpenDigitalPointFix32.FIX.LOS.F_CVEndSub其它按钮同理。

1 / 67
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功