S7-300串口通讯模块CP340和CP341的区别

针对西门子S7-300的无线通讯,有通过无线以太网进行的无线通讯,也可以通过串口进行无线通讯,主要是根据用户要求的通讯速度,通讯距离来决定选用何种通讯方式。

赛远的无线通讯,主要采用低频段的无线通讯方式,具有通讯的衍射能力强,被遮挡时可以选择其他路径进行传输,通讯协议灵活等特点,但通讯速度不高,最大为19200bps。

针对S7-300的无线串口通讯,可以通过部分紧凑型S7-300C上的本机串口,赛远还推荐通过带有两个串口的S7-200来完成,当然也可以通过串口模块CP340和CP341进行通讯,针对CP340和CP341,价格不同,功能也不同,主要对比如下:


序号

内容

CP340

CP341

1

MODBUS

不能插硬dongle

CP341可插所谓的狗直接支持Modbus

2

价格

2000元多

4000元多

3

供电

cp340不要24VDC供电

要24VDC供电

4

最大通讯速度

最高19200bps,不如CP341; 使用ASCII,最高9600bps

最高76800bps

5

协议

只支持 ASCII 和3964(R) 两种协议;

支持ASCII协议,传输的字符是以ASCII码形式吧,双方协议可以自定义吧,如约定开始结束字符,约定校验方法,如CRC校验,BCC校验,自己编程比较灵活。

ASCII 和3964(R)、RK512、 Modbus Master、 Modbus Slave

6

具体的设置方法

STEP7里有关CP340的功能块FB P_RCV,有使能接受位EN_R,有停止接受R,接受数据所放的数据块号DB_NO,数据开始字节DBB_NO等,在硬件组态的参数里

XON/XOFF Characters (Value Range: 0 to 7FH/FFH (7/8 data bits), Default Value: 11H for XON, 13H for XOFF)

For data flow control with XON/XOFF, specify here the codes for XON and XOFF. Choose only characters which are not included in the user data.在参数里设置通讯速率,字符位数,停止位数,校验,然后调用系统功能块。step7要安装点对点软件包,在硬件组态里双击cp340,点击parameter,在protocol里选择ascii,双击protocol就可以看到通讯速度等设定选项了。

也有人这么用:我一般都用CP340来实现MODBUS的通信:

做一个大的FB,比如FB100,作为主程序,利用接收发送块的完成故障位来协调发送和接收,并判断故障等。

FB101作为协议处理程序,接收到数据利用CRC校验判断数据有效性后存储数据并根据条件组织下一帧Modbus报文(有控制命令优先处理控制命令),取FB101的ENO信号延时相应时间后激活FB3的发送位。

FB2,FB3,FB101都作为多重背景被FB100调用。

Modbus RTU是基于串口的一种通信协议,协议开放,多用于连接现场仪表设备,通信距离与串行通信定义相同。由于报文简单、开发成本比较低,许多现场仪表仍然使用Modbus RTU协议通信。Modbus RTU格式通信协议以主从的方式进行数据传输,主站发送数据请求报文到从站,从站返回相应报文。

CP341发送模块的发送程序主要是通过调用功能块FB8来实现,FB8是基于上升沿触发工作的.来一个上升沿FB8工作一次向总线上发送一个请求数据包,所以在程序中一定要设计一个触发代码段,来不断的使REQ:=M50.0循环往复的置“1”置“0”,这样FB8就可以正常运行了。

在设计程序时一定要注意FB8的参数SF:=‘S’及R_TYP:=‘X’的值都是大写否则程序调试不成功。FB8需要一个背景数据块.这一背景数据块一般由系统自动生成.以上程序中为DB3;对于通过CP34 1的Modbus Master驱动通讯的发送模块需要设计发送数据块DB块.用来对主站发送参数进行设置和初始化。

接收程序是调用FB7来实现的,由于CP341可以处理接收程序的细节部分.因此对于设计者来说只需要进行简单的设计就可以实现数据的接收。

对于Modbus多从站的通信(CP341带硬件狗为主站),编程时尤为需要注意,对于地址和站号等的轮询需要合理安排,否则会引起从站间的数据混乱。同时注意读上来的高低字节问题。

7

规格型号

CP340有4种型号,及支持协议:

。。(1)6ES7 340-1AH00-0AE0 S7300 RS232C 串行通讯模板 ASCII, 3964R,USS

。。(2)6ES7 340-1AH01-0AE0 S7300 RS232C 串行通讯模板 ASCII, 3964R, printer,USS

。。(3)6ES7 340-1BH00-0AE0 S7300 20mA TTY串行通讯模板 ASCII, 3964R, printer,USS

。。(4)6ES7 340-1CH00-0AE0 S7300 RS422/485串行通讯模板 ASCII, 3964R, printer,USS

CP341有3种型号,及支持协议:

。。(1)6ES7 341-1AH0x-0AE0 S7300 RS232C 串行通讯模板 RK512, ASCII, 3964(R), Modbus Master/Slave(RTU格式), Data Highway(DF1协议) ,USS

。。(2)6ES7 341-1BH0x-0AE0 S7300 20mA TTY串行通讯模板 RK512, ASCII, 3964(R), Modbus Master/Slave(RTU格式), Data Highway(DF1协议) ,USS

。。(3)6ES7 341-1CH0x-0AE0 S7300 RS422/485串行通讯模板 ASCII, Modbus Master/Slave(RTU格式), Data Highway(DF1协议) ,USS

 

8

管脚定义

通信处理器模块 CP340, CP341 以及 CP441 的 RS232C (V2.4)接口管脚的定义与 PC/PG 的 9 针 COM2 接口定义是一致的,并都是 9 针插头。

通信处理器模块 CP340, CP341 以及 CP441 的 RS232C (V2.4)接口管脚的定义与 PC/PG 的 9 针 COM2 接口定义是一致的,并都是 9 针插头。

9

ASCII通讯所需的功能块

FB3—发送,FB2—接收,流量控制及辅助信号控制—FC5,FC6

FB8—发送,FB7—接收,流量控制及辅助信号控制—FC5,FC6

10

工作存储器中的块,最大FB长度

2700字节

5500字节


总体来说,CP340是CP341的经济型,少了很多功能,包括协议支持方面,如CP341支持MODBUS RTU,而CP340不支持。

我们在有些场合,为了节约成本,用过这样的方案:用一个CPU224XP作为MODBUS通讯设备(主/从都支持),而用另外一个通讯口与S7-300的PLC进行连接做MPI从站,S7-300用“X_GET”和“X_PUT”向S7-200中读写数据,使用的效果看,既稳定编程也简单,最重要的是省钱,但从机柜设计和接线上来说,没CP340简单。

采用无线串口通讯时,直接采用赛远的工业无线通讯模块SY-WT6,本机带有RS485/232接口,可以通过DB9标准接头或者端子型连接,通过标准的24VDC进行供电,一定要选用优质的开关电源,纹波系数小,具有较强的电源输出品质保证能力,这点对于无线通讯的稳定保证相当重要。


商务咨询QQ
技术支持QQ
反馈意见