CP3425使用心得.docx
《CP3425使用心得.docx》由会员分享,可在线阅读,更多相关《CP3425使用心得.docx(15页珍藏版)》请在冰点文库上搜索。
![CP3425使用心得.docx](https://file1.bingdoc.com/fileroot1/2023-6/3/d2323157-cffb-4291-ab98-a4220772d464/d2323157-cffb-4291-ab98-a4220772d4641.gif)
CP3425使用心得
CP342-5模块使用心得
工程要求:
3台西门子S7-312PLC通过MPI连接进展数据交换,然后,数据经过PROFIBUS-DP通讯模块——PROFIBUS-DP/MODBUS网关,与客户的MODBUS设备进展数据通讯。
本程序中根本可分为MPI通讯,PROFIBUS-DP主从通讯〔CP342-5为主站,网关的PROFIBUS-DP为从站,〕,客户的MODBUS-RTU(RS485)主从通讯〔客户MODBUS为主站,网关的MODBUS为从站〕。
首先,建立工程并组态硬件,安装网关的GSD文件及添加网关图标文件。
详细方法是将GSD文件拷贝到Step7\S7DATA\GSD下,图标文件拷贝到Step7\S7DATA\NSBMP下。
配置如下列图
配置完成硬件后,编译存盘。
详细组态地址如图
编写MPI通讯程序,根据本系统要求,故采用单向通讯
与双向通讯时两方都需要编写发送和接收块不同,单向通讯只在一方编写
通讯程序,这也是客户机与效劳器的关系,编写程序一方的CPU作为客户机,
没有编写程序一方的CPU作为效劳器,客户机调用SFC通讯块对效劳器的数据
进展读写操作,这种通讯方式合适S7-300/400/200之间通讯,S7-300/400的
CPU可以同时作为客户机和效劳器,S7-200只能作效劳器。
SFC67(X_GET)用
来读回效劳器指定数据区中的数据并存放到本地的数据区中,SFC68(X_PUT)
用来写本地数据区中的数据到效劳器中指定的数据区中,我们以举例的方式说
明怎样调用SFC通讯块来实现单向通讯,先介绍S7-300/400之间的通讯,与上
例一样,建立两个S7站,STATION1,CPU为S7-416-2,MPI地址为2作为客户
机;STATION2,CPU为S7315-2DP,MPI地址为4作为效劳器,调用SFC68,
CPU416把本地数据区的数据DB1.DBB0以后的76个字节存储在CPU315的
DB1.DBB0以后的76个字节中,调用SFC67,CPU416读出CPU315的数据
DB1.DBB0以后的76个字节,放到本地DB2.DBB0以后的76个字节中,例子程
序如下〔通常在OB35中编写〕:
参数DEST_ID表示对方的MPI地址,VAR_ADDR表示指定效劳器的数据区,
SD表示本地数据区〔数据源〕,当M1.1为1时,CPU416将数据区的数据从
DB1.DBB0以后的76个字节的数据存放到CPU315的数据区DB1.DBB0以后的76
个字节中。
RD为本地数接收区,当M1.3为1时,CPU416将CPU315中从DB1.DBB0以
后的76个字节中的数据存放到本地数据区DB2.DBB0以后的76个字节中。
数
据区最大为76个字节。
同时在一个CPU中调用SFC67和SFC68将占用一个动态
连接,当M1.5为1时中断通讯并释放连接。
例子程序参见光盘,工程名为
MPI_SFC_PG300。
同样S7-300CPU也可以作为客户机,S7-400CPU也可以作为服
务器。
编写PROFIBUS通讯,参阅以下:
PLC–PLC之间的ProfiBus通讯
1.CP342-5作主站与FC1(DP_SEND),FC2(DP_RECV)的应用
CP342-5是S7-300系列的PROFIBUS通讯模块,带有PROFIBUS接口,
可以作为PROFIBUS-DP的主站也可以作为从站,但不能同时作主站和从站,
而且只能在S7-300的中央机架上使用,不能放在分布式从站上使用。
由于S7-
300系统的I区和Q区有限,通讯时会有些限制;而用CP342-5作为DP主站
和从站不一样,它对应的通讯接口区不是I区和Q区,而是虚拟通讯区,需要
调用FC1和FC2建立接口区,下面以例子来介绍CP342-5作为主站的使用方
法。
1.1所需硬件和软件
软件:
硬件:
1.PROFIBUS-DP主站带CP342-5的S7-300CPU315-2DP
2.从站选用ET200M
3.MPI网卡CP5611
4.PROFIBUS电缆及接头
1.2网络配置图
带CP342-5的S7CPU315-2DP的网络配置图如下列图所示:
此组态实例是选用CP342-5接口作为主站和ET200M组成PROFIBUS网
络。
首先,将CP342-5插在S7-300的中央机架上,用一条PROFIBUS总线
将CP342-5和ET200M相连接。
1.3组态
翻开SIMATICMANAGER软件,在FILE菜单下选择NEW新建一个项
目,在NAME栏中输入工程名称,将其命名为“CP342-5_master〞,在下方
的StorageLocation中设置其存储位置,如下列图:
在工程窗口的左侧选中该工程,按右键在弹出的下拉菜单中选择InsertNew
Object和SIMATIC300Station插入一个S7-300站,那么插入的S7-300站即显
示在右侧的窗口。
双击SIMATIC300Station目录下的hardware图标,翻开HWconfiguration进
行硬件组态。
在HWconfiguration主界面的右侧按实际硬件安装顺序完成系统
硬件组态。
在菜单栏中选择“View〞菜单,并在下拉菜单中选择“Catalog〞打
开硬件目录;在左侧目录中翻开SIMATIC300文件夹,在RACK-300下选择
一个机架,把选用的机架拖到屏幕的左上方。
同时在2号槽和4号槽分别插入
CPU和CP342-5模块。
在配置CPU时,会自动弹出一个对话框,此时不用做任何设置,直接点击OK即可。
由于在该实例中,将CP342-5作为主站,配置CP342-5网络设置时,先新建一条PROFIBUS网络,然后组态PROFIBUS属性如下列图:
本例中选择传输速率为“〞和“DP〞行规,无中继器和OBT等网
络元件,点击“OK〞按钮确认。
然后定义CP342-5的站地址,本例中为2号
站,参加CP后,双击该栏,在弹出的对话框中,选择“OperatingMode〞标
签,选择“DPmaster〞形式,如下列图:
点击“OK〞按钮确认主站组态完成。
组态从站:
在HWconfiguration主界面中,在右图
中选择PROFIBUSDPDPV0SlavesET200M
如下列图所示,并为其配置2个字节个输入和2个字节输
出点,输入输出点的地址从0开场,是虚拟地址映射
区,而不占用I区和Q区,虚拟地址的输入区在主站上
要调用FC1(DP_SEND)与之一一对应,虚拟地址的
输出区在主站上要调用FC2(DP_RECV)与之一一对
应,假如修改CP342-5的从站开场地址,如输入输出
从地址2开场,相应的FC1和FC2对应的地址区也要
相应偏移2个字节。
组态完成后下载到CPU中,假如没有调用FC1,FC2,
CP342-5PROFIBUS的状态等“BUSF〞将闪烁,在OB1中调用FC1,FC2
后通讯将建立。
配置多个从站虚拟地址区将顺延。
1.4编程
在OB1中调用FC1和FC2,FC1和FC2的位置如右图,详细程序如下:
参数含义:
CPLADDR:
CP342-5的地址。
SEND:
发送区,对应从站的输出区。
RECV:
接收区,对应从站的输入区。
DONE:
发送完成一次产生一个脉冲。
NDR:
接收完成一次产生一个脉冲。
ERROR:
错误位。
STATUS:
调用FC1,FC2时产生的状态字。
DPSTATUS:
PROFIBUS-DP的状态字节。
从上面我们可以看出,MB20,MB21对应从站输出的第一个字节和第二个
字节,MB22,MB23对应从站输入的第一个字节和第二个字节。
连接多个从站
时,虚拟地址将向后延续和扩大,调用FC1,FC2只考虑虚拟地址的长度,而
不会考虑各个从站的站号。
假如虚拟地址的开场地址不为0,那么调用FC的长
度也将会增加,假设:
虚拟地址的输入区开场为4,长度为10个字节,那么对
应的接收区偏移4个字节相应长度为14个字节,接收区的第5个字节对应从站
输入的第一个字节,如接收区为P#M0.0BYTE14,MB0~MB13,偏移4个字
节后,MB4~MB13与从站虚拟输入区一一对应。
编完程序下载到CPU中,通讯区建立后,PROFIBUS的状态灯将不会闪烁,
例子程序参见光盘“PROFIBUS〞目录下的工程名“CP342-
5_MASTER〞。
注意:
使用CP342-5作为主站时,因为本身数据是打包发送,不需要调用SFC14,
SFC15,由于CP342-5寻址的方式是通过FC1,FC2的调用访问从站地址,
而不是直接访问I/Q区,所以在ET200M上不能插入智能模块,如:
FM350-
1、FM352等项,所有从站的TiTo时间保持一致。
由于本工程中使用的是第三方的硬件,因此,程序中需要增加一句控制来对第三方硬件进展使能,详细参数参阅第三方硬件手册。
详细梯形图如下:
〔使PROFIBUS输出数据进入MODBUS1XXXX和3XXXX。
〕,实际编程请理解使用,实际地址与虚拟地址与MODBUS地址对应关系如下:
PROFIBUS真实地址
PROFIBUS虚拟地址
MODBUS对应地址
MODBUS使用命令
QB0
QB1
10001
02H读命令
.
.
.
.
.
.
QB3
10032
QW4
30001
04H读命令
.
.
.
.
.
.
QW12
30005
IB0
IB1
00001
01H读、05H写、OFH
写命令
.
.
.
.
.
.
IB3
00032
IW4
40001
03H读、06H写、10H
写命令
.
.
.
.
.
.
IW12
40005
以上程序测试通过。
以下是MODBUS测试软件承受的数据,证明成功。
下列图为在0B35中编写的MPI通讯程序
通讯图片