热门搜索:
西门子S120模块代理商
《销售态度》:质量保证、诚信服务、及时到位!
《销售宗旨》:为客户创造价值是我们永远追求的目标!
《服务说明》:现货配送至全国各地含税(17%)含运费!
《产品质量》:原装正品,全新原装!
《产品优势》:专业销售 薄利多销 信誉好,口碑好,价格低,货期短,大量现货,服务周到!
1. 串行通讯模块基本信息介绍
CP340/CP341/CP440/CP441-1/CP441-2模块是西门子S7-300/400系列PLC中的串行通讯模块,这些模块具有1个或2个(CP441-2)串行通讯接口(RS232C、20mA-TTY或RS485/422)。您可以使用这些通讯模块实现S7-300/400系统与其他串行通讯设备的数据交换,例如打印机、扫描仪、智能仪表、第三方MODBUS主从站、Data Highway、变频器,USS站等。
1.1 产品订货信息
下表给出了常用串行通讯模块以及相关产品的订货信息:
表1 串口通讯模块以及相关产品的订货信息
说明:1、当您要实现MODBUS或Data Highway通讯时,需要在CP341/CP441-2模块上插入相应协议的硬件狗,这里我们所提到的硬件狗、Dongle、协议驱动或Loadable driver指的是同一个东西,如下图:
2、MODBUS 是单主站结构的串行通信协议,系统中只能够有一个MODBUS主站,并且只能够实现主站和从站的数据交换,从站之间不能进行数据交换。
3、一般来讲,RS232C接口的通讯较大距离为15m,20mA-TTY接口的通讯较大距离为100m(主动模式)/ 1000m(被动模式),RS422/485接口的通讯较大距离位1200m。
4、Serial CPs模块可以同时与多台串行通讯设备进行通讯,如同时连接多个变频器、多个智能仪表等,如果您采用ASCII 通讯方式,需要人为地定义数据帧格式,可以在发送的数据包中包括站号、数据区、读写指令等信息,供Serial CPs 模块所连接的从站设备鉴别数据包是发给哪个站的,以及该数据包是对那个数据区进行的读或写。
5、串行通讯模板只有RS232C、20mA-TTY或RS485/422 三种电气接口类型,如果您想实现串口的光纤通讯,只能在电子市场上购买第三方制造的电气与光缆的转换设备,西门子不提供该类设备。
1.2 常用文档的下载链接
西门子S120模块代理商
表2 串行通信应用文档列表
2、CP340/CP341调试步骤
在您的计算机上首先安装 STEP7 软件和 CP340/CP341 模块的软件驱动程序(SIMATIC S7-CP PtP Param V5.1),模块驱动程序包括:对 CP340/CP341 进行参数化的组态界面(在 STEP7 的硬件组态界面下可以打开)、用于串行通讯的功能块以及模块不同应用方式的例子程序。光盘上模块手册的附录B中说明了 CP 模板通讯口的针脚定义。
2.1模块参数化
在硬件组态窗口中双击 CP 模板,打开 CP 模板的属性窗口,请记录下模板的硬件地址,在编写通讯程序时,你需要该地址参数。
点击属性窗口上的 Parameters 按钮,选择你所要使用的通讯协议,这里我们选用 ASCII 协议,双击信封图标。
弹出 ASCII 协议通讯参数设置窗口,这里我们使用默认值:9600 bit/s,8 data bits,1 stop bit,even parity。对您的硬件组态存盘编译,下载硬件组态,如果此时SF灯亮,请将通讯电缆与另一个通讯伙伴进行连接后,SF灯熄灭,说明硬件组态正确。
2.2 编写通讯程序
在安装完 CP341的驱动程序,MODBUS 主站软件,MODBUS 从站软件等 3 个软件后,你可以在目录….\Siemens\STEP7\Examples 当中找到关于 CP341 的串口通讯和 MODBUS 通讯的例子程序,通过在 STEP7 软件的 SIMATIC Manager 下打开例子程序。
你可以使用 CP341 串口例子程序中 3964(R) 站 中的程序块实现 ASCII 通讯协议。打开 CPU 站下的 Blocks 文件夹,复制所有的程序块(除了 system data)到你的项目当中,只要作一些简单的参数修改,就可以实现相应的通讯了,如果你的 CP340/CP341 的硬件地址与例子程序当中的不同,那么你应当修改相应程序块 LADDR 参数,并与 CP340/CP341 模块实际的硬件组态地址值相同。修改后,下载程序块,将 CPU 切换至运行状态,CP340/CP341 开始循环发送数据,您可与看到 “TxD”灯闪烁。
西门子S120模块代理商
下图显示了调用 FB7/FB8 实现通讯功能,在线监视的状态:
注意这里一定要将 M20.0 和 M30.0 使能位置为TRUE,同时在您的程序中插入接收数据区 DB1 和发送数据区 DB2 。
您打开**级终端软件后,定义连接的名称,确定通讯端口以及串口通讯的属性(波特率、数据位个数、校验类型、流控类型等),界面如下列图:
这里请您注意,如果您是用的是其他COM口,请根据实际连接的COM口进行选择,波特率、数据位,奇偶校验位,停止位,流控要与CP340/CP341组态时设定的值一致,起始位为1位,停止位可设定为1/2位,但必须是1,不能修改。
2.3 MODBUS 从站调试
将您的PC和PLC连接起来,PLC上电,点击Load Drivers图标,弹出装载驱动窗口。
点击Load Drivers按钮,完成从站驱动安装过程,进行MODBUS 驱动装载的时候,PLC必须处于STOP状态。在点击信封图标,打开MODBUS 从站参数窗口。
默认从站地址222,然后在设定MODBUS从站的Function Code地址与PLC中M、I、Q等地址的对应关系。
以上所设定的参数含义是MODBUS主站读从站的前256个位(00001-00256)对应S7300站中MB0-MB31中的数据,主站读从站*257个到512个位对应QB0-QB31。
2.4 MODBUS 主站调试
**个字节说明从站站号为5,*二个字节说明Function Code为1,*三个字节和*四个字节中的字说明读从站地址偏移40位(5个字节)的数据区,*五个字节和*六个字节中的整数说明读取16位的数据,即一个整数。这些信息您可以在MODBUS 主站手册的*五章中获取,通过上面的下载路径,您可以下载到该手册。
产品名称
订货号
备注
通信模块
S7-200 CPU
参考S7-200样本或手册
S7-200
CM 1241-RS232
6ES7 241-1AH30-0XB0
S7-1200
CM 1241-RS485
6ES7 241-1CH30-0XB0
CPU313C-2PtP
6ES7 313-6BF03-0AB0
S7-300 CPU
CPU314C-2PtP
6ES7 314-6BG03-0AB0
CP340-RS232C
6ES7 340-1AH02-0AE0
S7-300 CP
CP340-20mA-TTY
6ES7 340-1BH02-0AE0
CP340-RS422/485
6ES7 340-1CH02-0AE0
CP341-RS232C
6ES7 341-1AH02-0AE0
CP341-20mA-TTY
6ES7 341-1BH02-0AE0
CP341-RS422/485
6ES7 341-1CH02-0AE0
CP440
6ES7 440-1CS00-0YE0
S7-400
CP441-1
6ES7 441-1AA04-0AE0
CP441-2
6ES7 441-2AA04-0AE0
CP441-2 RS232C接口子模块
6ES7 963-1AA00-0AA0
CP441-2 20mA TTY接口子模块
6ES7 963-2AA00-0AA0
CP441-2 RS422/485接口子模块
6ES7 963-3AA00-0AA0
ET200S ISI 3964/ASCII
6ES7 138-4DF01-0AB0
ET200S
ET200S ISI MODBUS/USS
6ES7 138-4DF11-0AB0
连接电缆
RS232C 接口 5m
6ES7 902-1AB00-0AA0
9针D型孔接头
RS232C 接口 10m
6ES7 902-1AC00-0AA0
RS232C 接口 15m
6ES7 902-1AD00-0AA0
20mA-TTY 接口 5m
6ES7 902-2AB00-0AA0
9针D型针接头
20mA-TTY 接口 10m
6ES7 902-2AC00-0AA0
20mA-TTY 接口 50m
6ES7 902-2AG00-0AA0
RS422/485 接口 5m
6ES7 902-3AB00-0AA0
15针D型针接头
RS422/485 接口 10m
6ES7 902-3AC00-0AA0
RS422/485 接口 50m
6ES7 902-3AG00-0AA0
加载驱动协议
MODBUS 主站硬件狗Dongle
6ES7 870-1AA01-0YA0
包括软件、手册光盘
MODBUS 主站硬件狗Dongle
6ES7 870-1AA01-0YA1
不包括软件、手册光盘
MODBUS 从站硬件狗Dongle
6ES7 870-1AB01-0YA0
包括软件、手册光盘
MODBUS 从站硬件狗Dongle
6ES7 870-1AB01-0YA1
不包括软件、手册光盘
图1
文档编号
文档中文标题
A0081
CP340/341/440/441 通讯及编程
A0336
CP341 MODBUS RTU多站点轮询
A0384
S7-300 CP341作主S7-200作从的MODBUS通信
A0123
ET200S MODBUS/USS 模板使用指南
A0413
如何通过MODBUS协议实现 S7-1200与S7-200通讯
A0440
CP340 CP341基于ASCII驱动协议的多站点轮询
F0426
串行通信模块常见问题集
下面简要描述了 CP340/CP341 应用 ASCII 或 MODBUS 协议的调试过程,详细的模块使用请参考相应模块的手册或参考下载中心应用文档,参见本文“1.2 常见文档的下载链接”下载相关资料。
图 2
图 3
图 4
调用 FB7/FB8 (CP341) 或 FB2/FB3 (CP340) 实现模块的字符收发功能:
图 5
图 6
调试CP340/CP341 的一个基本方法是采用 PC 机上的串口通讯调试软件。Windows 系统自带的**级终端 ( Hyper Terminal ) 软件是一个非常方便的串口调试工具。用电缆将CP340/CP341 的通讯口和 PC 机的 Com 口(RS232C)连接起来,如果你采用的是 RS485/422 或 20mA-TYY 接口的模块,那还需在中间加一个 RS485??RS232 或20mA-TYY ??RS232 信号转换器,打开**级终端的路径如下图:
图 7
图 8
首先需要在CP模块上插入MODBUS 从站Dongle,然后安装MODBUS 从站驱动软件包,您可以在上面的下载路径中获得,安装完软件包后,在您的项目中组态MODBUS从站,双击CP341模块,在模块的属性窗口中点击Parameter按钮,选择MODBUS从站协议:
图 9
图 10
图 11
图 12
> Function Code 01,05,15 对应M,Q,T,C等数据区,可读可写,具体的字节范围由您在MODBUS 从站组态时设定。
> Function Code 02对应M,I数据区,只读,具体的字节范围由您在MODBUS 从站组态时设定。
> Function Code 03,06,16 对应DB区,可读可写,在MODBUS 从站组态时设定对应的DB块。
> Function Code 04 对应DB区,只读,在MODBUS 从站组态时设定对应的DB块。
在STEP7的SIMATIC Manager中打开MODBUS 从站例子程序,将例子程序当中的所有程序块复制到您的项目当中,修改OB1当中的Network1里的LADDR参数,与您模块的实际硬件地址相同,将blocks文件夹下载到PLC当中,CPU运行,对M180.0和M180.5置位,就可以在MODBUS 主站上得到数据了,这里您需要注意S7 PLC与MODBUS 主站之间的数据地址对应关系,MODBUS从站手册中包括了相关信息,通过上面的下载路径,您可以下载到该手册。
WinCC 作为MODBUS 主站,进行浮点数读取时,Tag的类型应当选为浮点数32位,注意地址偏移为 32的整数倍+1(即33、65、97),如果采用选用Input Bits/Output Bits方式读写(Function Code 01,02),在PLC当中应当将一个字的高低8位进行对调。如果选用Input Words/Output Words方式读写(Function Code 03,04),在PLC当中将一个双字的高低16位进行对调,S7200 MODBUS 程序块的浮点数处理存在误差,大致在0.5%左右。
首先需要在CP模块上插入MODBUS主站Dongle,然后安装MODBUS 主站软件包,您可以在上面的下载路径中获得,安装完软件包后,MODBUS主站驱动的装载过程与从站相同。
在STEP7的SIMATIC Manager中打开MODBUS主站例子程序,将例子程序当中的所有程序块复制到您的项目当中,DB42是MODBUS 发送到到从站的数据区,该DB区**个字节位从站的站地址,*二个字节为Function Code值,代表指令的读写功能和数据区,*三个字节和*四个字节所组成的整数代表所读数据区的地址偏移量,*五个字节和*六个字节所组成的整数代表总共要读写多少位数据,注意该数值必须在1-2040范围内,否则发送
指令不执行。下图说明了DB42前几个字节所代表的含义。
图 13