西门子S7-200 SMART PLC之间通过指令实现S7通讯
	                        
	                            王曾
	                            发布于2023-03-24 15:19
	                            
	                                
	                                224
	                            
	                            
	                                
	                                2
	                            
	                            
	                            标签:西门子PLC
	                        
	                     
	                    
	                        
	导读:
	S7-200 SMART CPU 固件版本 V2.0 及以上版本的 CPU 可实现CPU、编程设备和HMI(触摸屏)之间的多种通信:
	— CPU与编程设备之间的数据交换。
	— CPU与HMI之间的数据交换。
	— CPU与其他S7-200 SMART CPU之间的PUT/GET通信。
	S7-200 SMART CPU 以太网连接资源如下:
	— 1个连接用于与STEP7 Micro/Win SMART软件的通信。
	— 8个连接用于CPU与HMI之间的通信。
	— 8个连接用于CPU与其他S7-200 SMART CPU之间的PUT/GET主动连接
	— 8个连接用于CPU与其他S7-200 SMART CPU之间的PUT/GET被动连接
	CPU1 (192.168.2.1 ) 把VB100~107数据传输到CPU2 (192.168.2.2 ) VB0~7
	CPU1 (192.168.2.1 ) 把VB100~107数据读取到CPU2 (192.168.2.2 ) VB0~7
	一、 PUT/GET 指令格式 
	S7-200 SMART CPU提供了PUT/GET 指令,用于S7-200 SMART CPU之间的以太网通信(PUT/GET 指令格式见 表 1)。PUT/GET 指令只需要在主动建立连接的 CPU 中调用执行,被动建立连接的 CPU不需要进行通信编程。PUT/GET 指令中TABLE 参数用于定义远程CPU的 IP地址、本地CPU和远程 CPU的数据区域以及通信长度(TABLE 参数定义见 表 2)。
	 
	
		
			
				| 
						LAD/FBD
					 | 
						STL
					 | 
						描述
					 | 
			
				| 
						  | 
						PUT TABLE
					 | 
						PUT 指令启动以太网端口上的通信操作,将数据写入远程设备。PUT 指令可向远程设备写入最多 212 个字节的数据。
					 | 
			
				| 
						  | 
						GET TABLE
					 | 
						GET 指令启动以太网端口上的通信操作,从远程设备获取数据。GET 指令可从远程设备读取最多 222 个字节的数据。
					 | 
		
	
 
	表 1 PUT和GET 指令
	 
	
		
			
				| 
						字节偏移量
					 | 
						Bit 7
					 | 
						Bit 6
					 | 
						Bit 5
					 | 
						Bit 4
					 | 
						Bit 3
					 | 
						Bit 2
					 | 
						Bit 1
					 | 
						Bit 0
					 | 
			
				| 
						0
					 | 
						D1
					 | 
						A2
					 | 
						E3
					 | 
						0
					 | 
						错误代码4
					 | 
			
				| 
						1
					 | 
						 远程 CPU的 IP地址
					 | 
			
				| 
						2
					 | 
			
				| 
						3
					 | 
			
				| 
						4
					 | 
			
				| 
						5
					 | 
						预留(必须设置为0)
					 | 
			
				| 
						6
					 | 
						预留(必须设置为0)
					 | 
			
				| 
						7
					 | 
						 指向远程 CPU 通信数据区域的地址指针
					 
						(允许数据区域包括:I、Q、M、V)
					 | 
			
				| 
						8
					 | 
			
				| 
						9
					 | 
			
				| 
						10
					 | 
			
				| 
						11
					 | 
						通信数据长度5
					 | 
			
				| 
						12
					 | 
						 指向本地 CPU 通信数据区域的地址指针
					 
						(允许数据区域包括:I、Q、M、V)
					 | 
			
				| 
						13
					 | 
			
				| 
						14
					 | 
			
				| 
						15
					 | 
		
	
 
	表 2 PUT和GET 指令的TABLE参数定义
	 
	1 D :通信完成标志位,通信已经成功完成或者通信发生错误。
	2 A :通信已经激活标志位。
	3 E :通信发生错误,错误原因需要查询 错误代码4。
	4 错误代码 :见表 3 PUT 和 GET 指令TABLE 参数的错误代码。
	5 通信数据长度 :需要访问远程 CPU通信数据的字节个数,PUT 指令可向远程设备写入最多 212 个字节的数据,GET 指令可从远程设备读取最多 222 个字节的数据。
	 
	
	
		
			| 
					
 错误代码
 | 
					描述
				 | 
		
			| 
					0
				 | 
					通信无错误
				 | 
		
			| 
					1
				 | 
					PUT/GET TABLE参数表中存在非法参数:
				 
					本地CPU通信区域不包括 I、Q、M 或 V。
				 
					本地CPU不足以提供请求的数据长度。
				 
					对于 GET指令数据长度为零或大于 222 字节;对于 PUT指令数据长度大于 212 字节。
				 
					远程CPU通信区域不包括 I、Q、M 或 V。
				 
					远程CPU 的IP 地址是非法的 (0.0.0.0)。
				 
					远程CPU 的IP 地址为广播地址或组播地址。
				 
					远程CPU 的IP 地址与本地 CPU的IP 地址相同
				 
					远程CPU 的IP 地址位于不同的子网。
				 | 
		
			| 
					2
				 | 
					同一时刻处于激活状态的 PUT/GET 指令过多(仅允许 16 个)
				 | 
		
			| 
					3
				 | 
					无可以连接资源,当前所有的连接都在处理未完成的数据请求(S7-200 SAMRT CPU主动连接资源数为 8 个)。
				 | 
		
			| 
					4
				 | 
					从远程 CPU 返回的错误: 
				 
					请求或发送的数据过多。
				 
					STOP 模式下不允许对 Q 存储器执行写入操作。
				 
					存储区处于写保护状态
				 | 
		
			| 
					5
				 | 
					与远程 CPU 之间无可用连接: 
				 
					远程 CPU 无可用的被动连接资源(S7-200 SMART CPU被动连接资源数为 8 个)。
				 
					与远程 CPU 之间的连接丢失(远程 CPU 断电或者物理断开)。
				 | 
		
			| 
					6-9
				 | 
					预留
	                    
	                    
	                        若有收获,就点个赞吧! 
                            文章来源于网络及文献如有侵权请联系站长 
	                            分享到:
	                            
	                                
	                                    ![]() 微信扫一扫分享 
	                                                      
	                             阅读与本文标签相同的文章 
	                            
	                            		西门子PLC
	                            
	                         
  
  
 |