- 
	
	
		
			
			
				Thành viên Mới
			
			
				
			
			
			
			 
			
				
				
				
				
				
			
		 
		
			
				
				
				
					Truyền thông giữa 2 con S7 - 1200 dùng lệnh TSEND_C và TRCV_C
				
				
						
							
							
						
						
				
					
						
							Mình đang gặp vấn đề về truyền thông giữa 2 con S7 - 1200. Giả sử con PLC1 có địa chỉ IP cuối là 0.3, con này là con để truyền dữ liệu.Mình muốn truyền 1 khối dữ liệu được đóng gói trong khối DB ( gồm 2 giá trị kiểu Real) được truyền bằng lệnh TSEND_C.
  Con PLC2 có địa chỉ IP cuối 0.2 là con nhận dữ liệu từ con thứ PLC 1, dùng lệnh TRCV_C để nhận. Mình đã cấu hình đầy đủ thông số đều ok hết. Nhưng kết quả nhận được của con PLC 2 là chỉ nhận được 1 giá trị đầu tiên của con PLC1, còn giá trị thứ 2 thì không nhận được. 
 Mình muốn hỏi tại sao lại không nhận được tất cả các giá trị đã đóng gói trong khối DB đã gửi đi.
Mong mọi người giúp đỡ
						
					 
					
				 
			 
			
			
				
				
				
					
						Lần sửa cuối bởi khoatoan, ngày 10-07-2016 lúc 09:28 PM.
					
					
				
				
				
				
				
					 
				
				
				
			 
			
			
		 
	 
		
	
 
- 
	
 
- 
	
	
		
			
			
				Thành viên cấp 1
			
			
				
			
			
			
			 
			
				
				
				
				
				
			
		 
		
			
				
				
						
						
				
					
						
							Hi khoatoan,
- Nếu xài TIA V13 SP1 trở xuống, bạn có thể gởi chương trình mình test dùm cho nhe.
						
					 
					
				 
			 
			
			
		 
	 
		
	
 
- 
	
 
- 
	
	
		
			
			
				Thành viên Mới
			
			
				
			
			
			
			 
			
				
				
				
				
				
			
		 
		
			
				
				
						
						
				
					
						
							Vậy b đưa gmail dùm mình, mình gửi chương trình cho. Có gì test dùm mình với, cảm ơn b nhùi
						
					 
					
				 
			 
			
			
		 
	 
		
	
 
- 
	
 
- 
	
	
		
			
			
				Thành viên Mới
			
			
				
			
			
			
			 
			
				
				
				
				
				
			
		 
		
			
				
				
						
						
				
					
						
							Cái này do LEN của bạn chưa đủ.
Nếu là 2 giá trị kiểu Real thì nhập LEN phải là 8 (8 byte).
						
					 
					
				 
			 
			
			
		 
	 
		
	
 
- 
	
 
- 
	
	
		
			
			
				Thành viên cấp 3
			
			
				
			
			
			
			 
			
				
				
				
				
				
			
		 
		
			
				
				
						
						
				
					
						
							
	
		
			
			
				
					
 Gửi bởi 
khoatoan
					
				 
				Mình đang gặp vấn đề về truyền thông giữa 2 con S7 - 1200. Giả sử con PLC1 có địa chỉ IP cuối là 0.3, con này là con để truyền dữ liệu.Mình muốn truyền 1 khối dữ liệu được đóng gói trong khối DB ( gồm 2 giá trị kiểu Real) được truyền bằng lệnh TSEND_C.
  Con PLC2 có địa chỉ IP cuối 0.2 là con nhận dữ liệu từ con thứ PLC 1, dùng lệnh TRCV_C để nhận. Mình đã cấu hình đầy đủ thông số đều ok hết. Nhưng kết quả nhận được của con PLC 2 là chỉ nhận được 1 giá trị đầu tiên của con PLC1, còn giá trị thứ 2 thì không nhận được. 
 Mình muốn hỏi tại sao lại không nhận được tất cả các giá trị đã đóng gói trong khối DB đã gửi đi.
Mong mọi người giúp đỡ
			
		 
	 
 Anh gửi cho em vào gmail em xem với : [email protected]
						
					 
					
				 
			 
			
			
		 
	 
		
	
 
- 
	
 
- 
	
	
		
			
			
				Thành viên Mới
			
			
				
			
			
			
			 
			
				
				
				
				
				
			
		 
		
			
				
				
						
						
				
					
						
							mình gửi vào gmail bạn rồi đó, có gì bạn tham khảo nhé. Rồi mọi người cùng thảo luận.
						
					 
					
				 
			 
			
			
		 
	 
		
	
 
- 
	
 
- 
	
	
		
			
			
				Thành viên cấp 3
			
			
				
			
			
			
			 
			
				
				
				
				
				
			
		 
		
			
				
				
						
						
				
					
						
							
	
		
			
			
				
					
 Gửi bởi 
khoatoan
					
				 
				mình gửi vào gmail bạn rồi đó, có gì bạn tham khảo nhé. Rồi mọi người cùng thảo luận.
			
		 
	 
 Em không có PLC thật nên em ko test được cho anh, down vào PLCSIM thì ko down được. Em thấy anh đang để độ dài dữ liệu truyền là 0 trong khi cả khối DB của anh có tận 18 bytes. Cái tham số LEN trong đó mặc định là 0, nếu LEN bằng 0 thì chỉ truyền 1 byte thôi anh nhé, anh thử để 18 xem có truyền được cả khối DB đó không! Với lại cái anh để tham số DATA truyền là P#DB1.DBX0.0 BYTE 18 nữa nhé. Của anh đang là P#DB1.DBX0.0 REAL 3. Em gửi link ví dụ truyền.
https://www.fshare.vn/file/CG1GWXPGUNI8
						
					 
					
				 
			 
			
			
				
				
				
					
						Lần sửa cuối bởi kochodoi, ngày 10-14-2016 lúc 03:50 PM.
					
					
				
				
				
				
				
				
				
			 
			
			
		 
	 
		
	
 
- 
	
 
- 
	
	
		
			
			
				Little PLC
			
			
				
			
			
			
			
			 
			
				
				
				
				
				
			
		 
		
			
				
				
						
						
							
						
				
					
						
							
	
		
			
			
				
					
 Gửi bởi 
khoatoan
					
				 
				Mình đang gặp vấn đề về truyền thông giữa 2 con S7 - 1200. Giả sử con PLC1 có địa chỉ IP cuối là 0.3, con này là con để truyền dữ liệu.Mình muốn truyền 1 khối dữ liệu được đóng gói trong khối DB ( gồm 2 giá trị kiểu Real) được truyền bằng lệnh TSEND_C.
  Con PLC2 có địa chỉ IP cuối 0.2 là con nhận dữ liệu từ con thứ PLC 1, dùng lệnh TRCV_C để nhận. Mình đã cấu hình đầy đủ thông số đều ok hết. Nhưng kết quả nhận được của con PLC 2 là chỉ nhận được 1 giá trị đầu tiên của con PLC1, còn giá trị thứ 2 thì không nhận được. 
 Mình muốn hỏi tại sao lại không nhận được tất cả các giá trị đã đóng gói trong khối DB đã gửi đi.
Mong mọi người giúp đỡ
			
		 
	 
 Có thể sử dụng coi lại trạng thái trigger của lệnh. Tạo 1 pointer với khoảng 10 real xem dữ liệu truyền nhận sao.
						
					 
					
				 
			 
			
			
			
			
		 
	 
		
	
 
- 
	
 
		
		
		
	
 
	
	
	
	
	
	
	
	
	
	
	
	
		
		
		
		
			
				
				Quyền viết bài
			
			
				
	
		- Bạn Không thể gửi Chủ đề mới
 
		- Bạn Không thể Gửi trả lời
 
		- Bạn Không thể Gửi file đính kèm
 
		- Bạn Không thể Sửa bài viết của mình
 
		-  
 
	
	
	Nội quy - Quy định
 
			 
		 
	 
 
   
  
  
 
	
					 
				  
			  
		  
		
		
			Back to Top
			
				Múi giờ GMT +7. Bây giờ là 10:58 PM. 
				
				Phiên bản 4.2.5 
Phát triển bởi thành viên PLCVietNam®.
					
				
				
				
					 
			
		 
 
Đánh dấu