通讯中断 pc |
您所在的位置:网站首页 › 梁家辉精彩视频 › 通讯中断 pc |
同样是使用使用FB65但RFID与PC的连接DB用法有一定的区别: 首先说一下什么是FB65: 通过TCP和ISO on TCP使用 两个通信伙伴都调用FB 65 "TCON"来设置和建立通信连接。在这些参数中,您要指定哪个伙伴是主动通信传输点、哪个伙伴是被动通信传输点。 设置并建立连接后,CPU会自动对连接进行维护和监视。 如果连接中断,如由于线路中断或远程通信伙伴而造成的中断,主动伙伴会尝试重新建立已组态的连接。在这种情况下,不必再次调用FB 65 "TCON"。 当调用FB 66 "TDISCON"或CPU进入STOP模式时,现有连接将被终止并删除已组态的连接。要重新设置并再次建立该连接,必须再次调用FB 65 "TCON"。 下面各自介绍一下程序结构和设置: RFID的设置 SICKRFID里软件程序里的设置: RFID的背景数据块定义FB的连接格式:和UDT65一致! 在程序中设置格式: FB520程序分析: 用户程序和操作系统通信层之间该连接的标识号(数值范围:W#16#0001至W#16#0FFF)您必须在各个带有标识号的块中指定参数的值。 TCON_PARAM.id := INT_TO_WORD(VerbID.ID); 20 建立连接的方式的标识号:必须将FALSE分配给该参数。 TCON_PARAM.active_est := True;S7作Client时为主动 TRUE S7作Server时为被动FALSE TCON_PARAM.connection_type := B#16#11; 协议类型:11TCP/13UDP B#16#03:通过CPU 319-3 PN/DP上的集成IE接口进行通信 TCON_PARAM.local_device_id := INT_TO_BYTE(VerbID.DeviceID); =3 以十六进制表示的端口号 TCON_PARAM.local_tsap_id[1] := WORD_TO_BYTE(SHR(IN:=INT_TO_WORD(VerbID.lokalPort),N:=8)); 2111 TCON_PARAM.local_tsap_id[2] := WORD_TO_BYTE(INT_TO_WORD(VerbID.lokalPort)); TCON_PARAM.rem_staddr_len := B#16#4; 远程连接终端的地址长度:4: 参数rem_staddr中有效的IP地址 TCON_PARAM.rem_tsap_id_len := B#16#2; 所使用的参数rem_tsap_id的长度 连接设备的IP地址: TCON_PARAM.rem_staddr[1] := INT_TO_BYTE(VerbID.IP[1]); 10 TCON_PARAM.rem_staddr[2] := INT_TO_BYTE(VerbID.IP[2]);200 TCON_PARAM.rem_staddr[3] := INT_TO_BYTE(VerbID.IP[3]);27 TCON_PARAM.rem_staddr[4] := INT_TO_BYTE(VerbID.IP[4]);48 TCON_PARAM.rem_tsap_id[1] := B#16#8; 远程标示号0840---2112 TCON_PARAM.rem_tsap_id[2] := B#16#40; 远程标示号 在与中控室电脑连接时FB600 的静态变量格式与RFID的格式一致证明 DB860关于与PC连接用设置结构: FB600程序分析: L DBW [AR1,P#0.0] 1 连接ID用户程序和操作系统通信层之间该连接的标识号 T #Verbindung.id L B#16#11 使用TCP连接方式 T #Verbindung.connection_type SET 建立连接的方式的标识号:必须将FALSE分配给该参数。 R #Verbindung.active_est L 0 //0 不用指0 T #Verbindung.rem_staddr_len // 远程连接终端的地址长度 PC的IP地址: L DBW [AR1,P#4.0] //VerID.IP[1] 192 T #Verbindung.rem_staddr[1] L DBW [AR1,P#6.0] //VerID.IP[2] 168 T #Verbindung.rem_staddr[2] L DBW [AR1,P#8.0] //VerID.IP[3] 0 T #Verbindung.rem_staddr[3] L DBW [AR1,P#10.0] //VerID.IP[4] 11 T #Verbindung.rem_staddr[4] L 0 T #Verbindung.rem_tsap_id_len // 所使用的参数rem_tsap_id的长度 连接设备的IP地址: L 2 //所使用的参数local_tsap_id的长度为2 T #Verbindung.local_tsap_id_len L DBW [AR1,P#12.0] //2000 T #Verbindung.local_tsap_id[2] // 低字节 SRW 8 T #Verbindung.local_tsap_id[1] // 高字节 L DBW [AR1,P#2.0] B#16#03:通过CPU 319-3 PN/DP上的集成IE接口进行通信 T #Verbindung.local_device_id 从对FB600和FB520程序分析我们可以知道它们公用的程序结构还是使用了UDT65的标准化的结构,都使用了TCP连接,只是端口各不相同罢了,一个是2111而另一个是2000.在就是和RFID通讯时作主站,和PC通讯时作从站. --------------------------------END------------------------- 每天进步一点点 Make small but daily progress |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |