当前位置:文档之家› 如何编写自由口协议程序,自由口通信的基本步骤

如何编写自由口协议程序,自由口通信的基本步骤

如何编写自由口协议程序,自由口通信的基本步骤

?前面以S7-200SMART与英威腾变频器进行自由口通信为例详细讲解了自由口通信的方法及步骤,本文再带大家一起来学习与V20变频器进行自由口通信的程序编写方法。V20支持标准的modbusRTU协议,真正使用时可以使用modbus通信,本文主要是教大家如何编写自由口协议程序。总结了一下自由口通信的基本步骤如下:

?

?

1.研究弄懂对方的通信协议。

?

?

?自由口也称自由协议或无协议通信,即通信双方没有共同的通信协议,只能临时根据某一方的协议进行发送和接收数据,以达到交换数据的目的。那幺意味着每次书写的程序没有固定格式,不仅需要变成人员能掌握程序的编写,还要求编程人员能快速的读懂对方的通信协议。

?

?

?查阅V20变频器手册得知,FC3 - 读保持寄存器读保持寄存器命令格式:?

?变频器响应反馈数据格式:

?

?FC6 - 写单一寄存器命令格式:

自由格式协议_chn

自由协议 控制器与显示器相连接的一个简单的通信协议,控制器是主控端, 显示器是从属端,在控制器中,只需编写简单的通信读/写程序,而不用编写通信中断服务程序。 首先,控制器发送一个请求给显示器,显示器接受请求之后,给控制器回复一个响应。显示器和控制器交换数据为128(最大)字,为MW0~MW127,字的每个比特可以作为线圈使用,为MWx.i(x=0..127,i=0..15)。 请求的格式: 站号:显示器站号(0~255,0表示广播方式,显示器不需要回复) 命令:‘R’表示从显示器读取,‘W’表示向显示器写数据 地址:MW(0~127)的索引号 长度:需要读/写MW的个数(1~128) 数据:MW的值,如果命令是‘R’则没数据 校验:从站号到校验前的字节,所有字节相加,再取0x100的余数 (注意:如果校验是0x5A,则忽略,不作检查) 状态:通信的状态 :0 –正常 :1 –地址错误 :2 –长度错误 :3 –范围错误(地址+ 长度> 128 ) :4 –命令错误 当命令是‘W’或不正常时,则没有地址、长度和数据 数据的格式

协议: 首先,控制器发送一个请求给显示器。显示器收到请求后,检查校验,如果校验正确,且站号等于显示器本身站号,显示器就响应这个请求。否则,显示器将不作响应。 控制器需要检查显示器的响应是否超时,超时时间为50毫秒。如果超时,控制器应该重新发送请求。 显示器检查接收数据是否超时,超时时间为25毫秒。如果超时,显示器初始化通信,等待控制器的新的请求。 读(从显示器读数据) 数据:需要读的MW的值 写(向显示器写数据) 例子 a) 控制器从DP210读MW0,MW1 控制器发送:01H 52H 00H 02H 55H DP210回应:01H 00H 00H 02H 00H 00H 00H 0CH 0FH (MW0=0 MW1=12) b) 控制器写256 到MW0 控制器发送:01H 57H 00H 01H 01H 00H 5AH DP210回应:01H 00H 01H

单片机串口通信协议程序

#include #include #define R55 101 #define RAA 202 #define RLEN 203 #define RDATA 104 #define RCH 105 //#define unsigned char gRecState=R55; unsigned char gRecLen; unsigned char gRecCount; unsigned char RecBuf[30]; unsigned char gValue; void isr_UART(void) interrupt 4 using 1 { unsigned char ch; unsigned char i; unsigned char temp; if (RI==1) { ch=SBUF; switch(gRecState) { case R55: // wait 0x55 if (ch==0x55) gRecState=RAA; break;

case RAA: if (ch==0xaa) gRecState=RLEN; else if (ch==0x55) gRecState=RAA; else gRecState=R55; break; case RLEN: gRecLen=ch; gRecCount=0; gRecState=RDATA; break; case RDATA: RecBuf[gRecCount]=ch; gRecCount++; if (gRecCount>=gRecLen) { gRecState=RCH; } break; case RCH: temp=0; for(i=0;i

常用的硬件接口及通信协议详解

一:串口 串口是串行接口的简称,分为同步传输(USRT)和异步传输(UART)。在同步通信中,发送端和接收端使用同一个时钟。在异步通信中,接受时钟和发送时钟是不同步的,即发送端和接收端都有自己独立的时钟和相同的速度约定。 1:RS232接口定义 2:异步串口的通信协议 作为UART的一种,工作原理是将传输数据的每个字符一位接一位地传输。图一给出了其工作模式: 图一 其中各位的意义如下: 起始位:先发出一个逻辑”0”的信号,表示传输字符的开始。

数据位:紧接着起始位之后。数据位的个数可以是4、5、6、7、8等,构成一个字符。通常采用ASCII码。从最低位开始传送,靠时钟定位。 奇偶校验位:资料位加上这一位后,使得“1”的位数应为偶数(偶校验)或奇数(奇校验),以此来校验资料传送的正确性。 停止位:它是一个字符数据的结束标志。可以是1位、1.5位、2位的高电平。 空闲位:处于逻辑“1”状态,表示当前线路上没有资料传送。 波特率:是衡量资料传送速率的指针。表示每秒钟传送的二进制位数。例如资料传送速率为120字符/秒,而每一个字符为10位,则其传送的波特率为10×120=1200字符/秒=1200波特。 3:在嵌入式处理器中,通常都集成了串口,只需对相关寄存器进行设置,就可以使用啦。尽管不同的体系结构的处理器中,相关的寄存器可能不大一样,但是基于FIFO的uart框图还是差不多。

发送过程:把数据发送到fifo中,fifo把数据发送到移位寄存器,然后在时钟脉冲的作用下,往串口线上发送一位bit数据。 接受过程:接受移位寄存器接收到数据后,将数据放到fifo中,接受fifo事先设置好触发门限,当fifo中数据超过这个门限时,就触发一个中断,然后调用驱动中的中断服务函数,把数据写到flip_buf 中。 二:SPI SPI,是英语Serial Peripheral Interface的缩写,顾名思义就是串行外围设备接口。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB 的布局上节省空间,提供方便,正是出于这种简单易用的特性,现在越来越多的芯片集成了这种通信协议。

编码器RS485自由通讯协议

编码器RS485自由通讯协议 正常工作状态编码器按照编程设定参数:波特率为设定值,一般为9600、19200、38400等,数据位8位,停止位1位,无奇偶校验,无控制流。 编码器的主被动模式需对编码器进行设定。 编码器为主动模式时,即编码器主动向上位机发送数据。数据长度为13位16进制ASCII码,格式为:=±DATA↙,即: 1 2 3 4 5 6 7 8 9 10 11 12 13 = ± DATA ↙ 其中,“=”为前导字母,±为符号位。DATA为数据,ASCII格式,10位,由0~9构成,范围为-9,999,999,999~+9,999,999,999。最后是回车符(0D)。 编码器地址为被动模式时,即问答模式。上位机向编码器发送询问指令,指令为4位16进制ASCII 码,格式为:#AB↙(带地址返回主测量值询问指令为:&AB↙)。 AB为编码器地址,范围为0到99。 编码器对上位机回答的数据格式与主动模式发送的数据格式是一样的。 (带地址返回的数据格式在“=”与符号位之间有“AB>”,“>”为分隔符) 例:被动模式,地址设为1,波特率为19200,与上位机通讯时的数据为: 发送:23 30 31 0D 发送:26 30 31 0D 接收:3D 2B 30 30 30 30 30 30 30 30 31 32 0D 接收:3D 30 31 3E 2B 30 30 30 30 30 30 30 30 31 32 0D 即,发送#01↙接收=+0000000012↙。 即,发送&01↙接收=01>+0000000012↙。 编码器RS485信号及接线端子引脚分配 DB9针脚 定义 3 RS485(A+) 8 RS485(B-) 编程允许线(Poen)的使用 编程模式时,编码器棕色线与编程允许线(Poen)并在一起接正电源,兰色线接电源地线。此时,编码器的通讯速率固定为19200bps。 非编程模式,即正常工作时,建议将兰色线与编程允许线(Poen)并在一起接电源地线。 RS485通讯的注意事项: 1. 通讯速率与传输距离是一对矛盾。速率越高,传输距离越近、但也越稳定,反之亦然。 2. 在外部电磁干扰强时,外部置位线在对编码器置位需接高电平,但置位结束后建议强制接低电平,以防止编码器由于外部干扰而突然回零。 3. 在外部电磁干扰强时,RS485接线最好使用双屏蔽电缆。 4. 多个编码器接上位机时,由于编码器返回数据没有奇偶校验,故建议在上位机编程时在时间上对各个编码器返回的数据进行区分。 5. 当系统中有电动机时,编码器电源需与其他电源隔离。 6. 由于RS485电路是差分形式的,A+,B-都是带电压的,常时间接地或接高电平都会造成RS485电路损坏。 上海楚嘉自动化科技有限公司 技术服务部

51串口通信协议(新型篇)

51串口通信协议(新型篇) C51编程:这是网友牛毅编的一个C51串口通讯程序! //PC读MCU指令结构:(中断方式,ASCII码表示) //帧:帧头标志|帧类型|器件地址|启始地址|长度n|效验和|帧尾标志 //值: 'n' 'y'| 'r' | 0x01 | x | x | x |0x13 0x10 //字节数: 2 | 1 | 1 | 1 | 1 | 1 | 2 //求和: ///////////////////////////////////////////////////////////////////// //公司名称:*** //模块名:protocol.c //创建者:牛毅 //修改者: //功能描述:中断方式:本程序为mcu的串口通讯提供(贞结构)函数接口,包括具体协议部分 //其他说明:只提供对A T89c51具体硬件的可靠访问接口 //版本:1.0 //信息:QQ 75011221 ///////////////////////////////////////////////////////////////////// #include #include //预定义 //帧 #define F_ST1 0x6e //帧头标志n #define F_ST2 0x79 //帧头标志y #define F_R 0x72 //帧类型读r #define F_W 0x77 //帧类型写w #define F_D 0x64 //帧类型数据帧d #define F_B 0x62 //帧类型写回应帧b #define F_C 0x63 //帧类型重发命令帧c #define F_Q 0x71 //帧类型放弃帧q #define F_ADDR 0x31 //器件地址0-9 #define F_END 0x7a //帧尾标志z #define F_SPACE 0x30 //空标志0 #define F_ERR1 0x31 //错误标志1,flagerr 1 #define F_ERR2 0x32 //错误标志2 2 //常数 #define S_MAXBUF 16 //接收/发送数据的最大缓存量 #define FIELD_MAXBUF 48 //最小场缓存,可以大于48字节,因为协议是以20字节为

IC卡通信协议详解(7816-3)

目录 第一章IC卡通信过程整体归纳 (1) 第二章IC卡的电气特性 (3) 1.IC卡的触点分配 (3) 2.IC卡的电气特性 (3) 2.1 VCC (3) 2.2 I/O (3) 2.3 CLK (3) 2.4 RST (3) 2.2 VPP (3) 第三章IC卡的操作过程 (4) 1、IC卡操作的一般过程 (4) 2、卡激活 (4) 3、冷复位 (4) 4、热复位 (5) 5、时钟停止 (6) 6、去激活 (6) 第四章复位应答 (8) 1、异步字符 (8) 1.1 字符结构 (8) 1.2 错误信号和字符副本 (8) 2、复位应答 (9) 2.1 复位应答的序列配置 (9) 2.2 复位应答的结构和内容 (11) 第五章协议和参数选择 (14) 1.PPS协议 (14) 2.PPS请求的结构和内容 (14) 3.成功的PPS交换 (14) 第六章异步半双工字符传输协议 (16) 1、命令的结构和处理 (16) 2、过程字节 (16) 3、NULL字节 (16) 4、确认字节 (16) 5、状态字节 (17) 第七章异步半双工块传输 (18) 1.数据块块帧结构 (18) 2.起始域 (18) 3.信息域 (18) 4.终止域 (19) 5.信息域尺寸 (19) 6.等待时间 (19) 7.数据链路层字符成分 (20) 8.数据链路层块成分 (20) 9.链接 (20)

第一章IC卡通信过程整体归纳 根据协议,IC卡的操作信息交互流程大概为(见图1): (1)接口设备能够控制IC卡各IO引脚使其激活。 (2)接口设备给卡发送复位信号使卡复位启动。 (3)卡要向接口设备发送复位应答信号,将通信中必要的相关信息告知接口设备。(4)接口设备对卡进行一次热复位,卡进行复位应答。 (5)接口设备发起一个PPS交互指令,选择要与卡通信的协议和相关参数。 (6)根据选择的协议(T=0或T=1)进行数据的通信。

通讯协议标准

编号: 密级:内部 页数:__________基于RS485接口的DGL通信协议(修改) 编写:____________________ 校对:____________________ 审核:____________________ 批准:____________________ 北京华美特科贸有限公司 二○○二年十二月六日

1.前言 在常见的数字式磁致伸缩液位计中,多采用RS485通信方式。但RS485标准仅对物理层接口进行了明确定义,并没有制定通信协议标准。因此,在RS485的基础上,派生出很多不同的协议,不同公司均可根据自身需要设计符合实际情况的通信协议。并且,RS485允许单总线多机通信,如果通信协议设计不好,就会造成相互干扰和总线闭锁等现象。如果在一条总线上挂接不同类型的产品,由于协议不一样,很容易造成误触发,造成总线阻塞,使得不同产品对总线的兼容性很差。 随着RS485的发展,Modicon公司提出的MODBUS协议逐步得到广泛认可,已在工业领域得到广泛应用。而MODBUS的协议规范比较烦琐,并且每字节数据仅用低4位(范围:0~15),在信息量相同时,对总线占用时间较长。 DGL协议是根据以上问题提出的一种通信协议。在制定该协议时已充分考虑以下几点要求: a.兼容于MODBUS 。也就是说,符合该协议的从机均可挂接到同一总线上。 b.要适应大数据量的通信。如:满足产品在线程序更新的需要(未来功能)。 c.数据传输需稳定可靠。对不确定因素应加入必要的冗错措施。 d.降低总线的占用率,保证数据传输的通畅。 2.协议描述 为了兼容其它协议,现做以下定义: 通信数据均用1字节的16进制数表示。从机的地址范围为:0x80~0xFD,即:MSB=1; 命令和数据的数值范围均应控制在0~0x7F之间。即:MSB=0,以区别地址和其它数据。 液位计的编码地址为:0x82~0x9F。其初始地址(出厂默认值)为:0x81。 罐旁表的编织地址为:0xA2~0xBF。其初始地址(出厂默认值)为:0xA1。 其它地址用于连接其它类型的设备,也可用于液位计、罐区表地址不够时的扩充。 液位计的命令范围为:0x01~0x2F,共47条,将分别用于参数设定、实时测量、诊断测试、在线编程等。 通信的基本参数为:4800波特率,1个起始位,1个结束位。字节校验为奇校验。 本协议的数据包是参照MODBUS RTU 通信格式编写,并对其进行了部分修改,以提高数据传输的速度。另外,还部分参照了HART协议。其具体格式如下: 表中,数据的最大字节数为16个。也就是说,整个数据包最长为20个字节。 “校验和”是其前面所有数据异或得到的数值,然后将该数值MSB位清零,使其满足0~7F 的要求。在验证接收数据包的“校验和”是否正确时,可将所有接收数据(包括“校验和”)进行异或操作,得到的数据应=0x80。这是因为,只有“地址”的MSB=1,所以异或结果的MSB也必然等于1。 本协议不支持MODBUS中所规定的广播模式。 3.时序安排 在上电后,液位计将先延迟10秒,等待电源稳定。然后,用5秒的时间进行自检和测试数据。

永宏FBs-PLC的自由通讯协议及应用

引言 电子技术的日益发展,通讯接口给工业控制的自动化集中控制带来巨大的变化,系统的分布控制,网络的远程监控等都是通过通讯来实现监控。各个智能设备之间要进行正常通讯,首先要保证以下 3 个条件一致:通讯硬件界面相同;通讯参数设置一致;以及通讯协议一致。在串口的通讯中,界面都已经是标准化,参数设定亦可透过设定来保持一致。但在智能自动化设备中,由于品牌和产品都存在差异,对于同一种产品,不同的品牌就可能存在不同的通讯协议!所以,智能设备的通讯,设备的选择是关键!但针对同种协议的产品,就有可能缩小设备选型范围,势必会对系统的组成存在影响。如造成成本的提升,系统得不到优化等问题。 1. 系统硬件要求 1.1 永宏FBs-PLC 通讯功能 永宏FBs-PLC提供相当强大的通讯功能,SoC单晶片中集合 5 个高速通讯端口。主机自带一个通讯端口。多样的扩展方式,可以选择通讯模块或者通讯板实现通讯端口的扩展,单一主机可以最多扩展至 5 个通讯端口;数据传输可以选择ASCII 码或者速度快一倍的二进制码来传输;每个通讯端口通讯速率高达921.6Kbps ;支持RS-232,RS-485,USB 和Ethernet 等界面;通讯协议提供永宏标准通讯协议,工业界通用的ModBus 标准协议,以及自由口协议。这里我们就永宏PLC 的自由通讯协议做进一步探讨。 1.2 永宏PLC 自由通讯协议简介 所谓自由通讯协议,永宏PLC 作为主站,根据通讯的从站设备通讯格式来编写通讯传输数据格式,以保证通讯格式的一致性。在符合从站设备的数据格式时设备才能识别主站发送出来的命令要求,再根据命令来进行处理数据、做响应回复等工作。这样将大大提高PLC 控制对象的通讯接口兼容。 图 1.1 RS-485 单主多从通讯示意图 如图 1.1 所示,一个永宏PLC 可以跟多个智能从站进行通讯;智能从站可以同为一种设备不同品牌,或者不同设备不同品牌,例如其他品牌的PLC、变频器、智能仪表等,只要 符合RS-485 通讯要求即可组网。 2. 软件系统要求与设计

系统串口通讯协议

ZHET 系统串口通讯协议 通 讯 技 术 手 册 型号:SYRDS1-485 (SYRDSSS1) SYRDL1-485 (SYRLSSS1) 玺瑞国际企业有限公司 SYRIS International Corp.

通讯技术手册 通讯协议(Protocol) 卡片阅读机模块(Reader Module)的通讯协议(Protocol)皆出自于SYRIS 的一种标准通讯协议,这种协议格式如下表: 1.SOH 和 END 都是一个字节的控制字符: SOH 控制器端定义为 <0x09> 模块端定义为 <0x0A> END 控制器及模块端均固定为 <0x0D> 其中 <0x> 为十六进制表示法. 2.TYPE 为模块型式编号,固定为一个字节,本型式编号固定为“A”. 3.ID为模块端的识别代码,这一字节的 ASCII 字符必须是在 1 <0x31> 到 8 <0x38> 的范围内,假如控制器端传送之ID值与模块地址编号相同时, 则该模块将会接收控制器端所传送的数据,而模块响应时,也会传回相同的地址编号.

4.FC是通讯功能码(Function Code)和资料(DATA)有相关性,固定为一个 字节,这些资料请参考通讯协议表及相关说明. 5.错误讯息判断代码(Error Code)为两个字节,第一个字节为固定为 <0x0E> ,第二个字节为错误代码,请参考错误讯息代码表. 6.8 BITS BCC是所有字符的检查字段,为二个字节,有关 8 BITS BCC 的 信息和范例程序,请参考附录A. 7.RS485传输协议请设定为”E,8,1”,速率为”19200”. 错误讯息代码表(Error Code Table) ※ Error Code #1固定为 <0x0E>.

电话视频通信协议(协议模板)

A contract is generally a legal act of both parties and can only be established if the parties reach an agreement. Protect the legal rights of both parties after signing. (协议范本) 甲方:___________________ 乙方:___________________ 日期:___________________ 电话视频通信协议(协议模板)

电话视频通信协议(协议模板)说明:合同一般是双方的法律行为,只有双方当事人达成协议才能成立。签订合同后依法保护双方的合法权益,避免很多不必要的争议。可用作电子存档或实体印刷,使用时请详细阅读条款。 甲方:_________乙方:_________ 为了满足宽带网用户使用高科技视频通信的需要,促进中国互联网增值业务的发展,_________公司推出具有国际领先水平的可视电话视频通信业务。为维护甲、乙双方的合法权益,双方就甲方使用乙方提供的视频通信服务一事,根据国内现时的相关法律、行规规定达成如下协议,以供共同遵照执行: 1.为了保证乙方对甲方的服务质量,甲方必须向乙方提供包括姓名(单位用户则为单位全称)、出生年月、住址(包括邮政编码)、身份证号、工作单位、联系电话等在内的客户资料。若甲方提供的客户资料虚假或不详细,乙方保留向甲方要求进一步提供身份证复印件(单位用户则为法人营业执照副本复印件)的权利,必要时有权停止向甲方提供服务,并依法追究甲方的法律责任。乙方保证对甲方提供的身份资料只作提供本协议项下的服务之用,未经甲方授权不向任何第三方公开,但法律另有规定的除外。

各种通信协议

分层及通信协议 协议软件是计算机通信网中各部分之间所必须遵守的规则的集合,它定义了通信各部分交换信息时的顺序、格式和词汇。协议软件是计算机通信网软件中最重要的部分。网络的体系结构往往都是和协议对应的,而且,网络管理软件、交换与路由软件以及应用软件等都要通过协议软件才能发生作用。 一、通信协议 1、什么是通信协议 通信协议(简称协议Protoco l),是指相互通信的双方(或多方)对如何进行信息交换所一致同意的一整套规则。一个网络有一系列的协议,每一个协议都规定了一个特定任务的完成。协议的作用是完成计算机之间有序的信息交换。 通信网络是由处在不同位置上的各节点用通信链路连接而组成的一个群体。通信网必须在节点之间以及不同节点上的用户之间提供有效的通信,即提供有效的接入通路。在计算机通信网中,将这种接入通路称为连接(connection)。建立一次连接必需要遵守的一些规则,这些规则也就是通信网设计时所要考虑的主要问题。 (l)为了能在两个硬件设备之间建立起连接,应保证在源、宿点之间存在物理的传输媒介,在该通路的各条链路上要执行某种协议。 如果传输线路使用电话线,则要通过调制解调器将信号从数字转换成模拟的,并在接收端进行反变换。 如果用的是数字传输线路,则在数据处理设备和通信设备之间,必须有一个数字适配器,以便将数字信号的格式转换成两种设备各自所期望的形式。 为了在两个端设备之间互换数据,需要协调和同步,调制解调器和数字适配器必须执行它们自己的协议。 无论是模拟的还是数字的通信设备,调制解调器和数字适配器的状态必须由接到节点上的设备来控制,这里必定有一个物理的或电气的接口来执行这种功能,执行某种适当的协议来达到这一控制目的。 (2)在计算机通信网中,许多信息源都是突发性的(bursty),问题是要利用信息的这种突发性质来降低消耗在线路上的费用,由此开发了许多共享通信资源的技术。所谓共享,是指允许多个用户使用同一通信资源,这就产生了多用户的接入问题。多路接入

S7-200 CPU 通信口的自由口模式实现 Modbus 通信协议

在组态王里点击“com1”(根据你在前面已经定的com口而定),然后在右边的界面上显示你所建立的文件,然后对你编译的主画面点反键,然后在下拉菜单中点击“测试---”(你的文件名),再随便在选项里输入一个你编写的程序里的标志位,看能不能显示你的PLC内的当前值,如果可以显示,就应该是通信上了。 通过 S7-200 CPU 通信口的自由口模式实现 Modbus 通信协议,可以通过无线数据电台等慢速通信设备传输。这为组成 S7-200 之间的简单无线通信网络提供了便利。 详细情况请参考《S7-200系统手册》(2002 年 10 月或以后版本)的相应章节。Modbus 是公开通信协议,其最简单的串行通信部分仅规定了在串行线路的基本数据传输格式,在 OSI 七层协议模型中只到 1,2 层。 Modbus 具有两种串行传输模式,ASCII 和 RTU。它们定义了数据如何打包、解码的不同方式。支持 Modbus 协议的设备一般都支持 RTU 格式。 通信双方必须同时支持上述模式中的一种。 Modbus 是一种单主站的主/从通信模式。Modbus 网络上只能有一个主站存在,主站在 Modbus 网络上没有地址,从站的地址范围为 0 - 247,其中 0 为广播地址,从站的实际地址范围为 1 - 247。 Modbus 通信标准协议可以通过各种传输方式传播,如 RS232C、RS485、光纤、无线电等。在 S7-200 CPU 通信口上实现的是 RS485 半双工通信,使用的 是 S7-200 的自由口功能。 Modbus RTU 主站指令库(测试版) 西门子针对 S7-200 最新推出支持 Modbus RTU 主站的协议库(测试版),用户可以将这个库添加到 Micro/WIN 软件中,并通过调用库指令,方便地实 现 Modbus RTU 主站的功能。 注意: 1. Modbus RTU 主站指令库的功能是通过在用户程序中调用预先编好的程序功 能块实现的,该库只对 Port 0 口有效。该指令库将设置 Port 0 工作在自由口通信模式下。 2. Modbus RTU 主站指令库使用了一些用户中断功能,编其他程序时不能在用户程序中禁止中断。 使用 Modbus RTU 主站指令库,可以读写 Modbus RTU 从站的数字量、模拟 量 I/O 以及保持寄存器。 要使用 Modbus RTU 主站指令库,须遵循下列步骤: 取得 Modbus RTU 主站指令库文件,并添加到编程软件 STEP 7-Micro/WIN 中;按照要求编写用户程序调用 Modubs RTU 主站指令库。

思科X.25协议详解

C H A P T E R 17Chapter Goals ? Discuss the history and development of the X.25 protocol.? Describe the basic functions and components of X.25.?Describe the frame formats of X.25. X.25 Introduction X.25 is an International Telecommunication Union–Telecommunication Standardization Sector (ITU-T) protocol standard for WAN communications that defines how connections between user devices and network devices are established and maintained. X.25 is designed to operate effectively regardless of the type of systems connected to the network. It is typically used in the packet-switched networks (PSNs) of common carriers, such as the telephone companies. Subscribers are charged based on their use of the network. The development of the X.25 standard was initiated by the common carriers in the 1970s. At that time, there was a need for WAN protocols capable of providing connectivity across public data networks (PDNs). X.25 is now administered as an international standard by the ITU-T. X.25 Devices and Protocol Operation X.25 network devices fall into three general categories: data terminal equipment (DTE), data circuit-terminating equipment (DCE), and packet-switching exchange (PSE). Data terminal equipment devices are end systems that communicate across the X.25 network. They are usually terminals, personal computers, or network hosts, and are located on the premises of individual subscribers. DCE devices are communications devices, such as modems and packet switches, that provide the interface between DTE devices and a PSE, and are generally located in the carrier’s facilities. PSEs are switches that compose the bulk of the carrier’s network. They transfer data from one DTE device to another through the X.25 PSN. Figure 17-1 illustrates the relationships among the three types of X.25 network devices.

通信服务合同模板(标准版)

编号:GR-WR-19539 通信服务合同模板(标准 版) After negotiation and consultation, both parties jointly recognize and abide by their responsibilities and obligations, and elaborate the agreed commitment results within the specified time. 甲方:____________________ 乙方:____________________ 签订时间:____________________ 本文档下载后可任意修改

通信服务合同模板(标准版) 备注:本合同书适用于约定双方经过谈判、协商而共同承认、共同遵守的责任与义务,同时阐 述确定的时间内达成约定的承诺结果。文档可直接下载或修改,使用时请详细阅读内容。 通信服务协议 为保护乙方的通信权利,维护甲方合法的通信经营权,双方本着自愿、平等的原则,达成协议如下: 一、协议双方的权利与义务 (一)乙方的权利与义务 1.依法使用电信的自由和通信秘密受法律保护。 2.有权自主选择使用甲方依法开办的固定电话通信业务。 3.有对甲方执行的收费项目和资费标准的知晓权。 4.应当在约定的时限内(全月)缴纳电信费用。 5.登记办理固定电话业务须提供真实、无误的乙方资料,并对乙方资料的准确性、真实性,承担法律责任。 6.乙方名称、结算方式发生变更时,应在一周内办理变更确认手续,因未按时办理变更手续造成的损失由乙方自行承担。

7.使用的用户终端设备必须符合国家规定的标准并取得进网许可证。 8.使用电信网络传输的信息内容及其后果由乙方负责。 9.配合甲方实施的固定电话服务变更。 (二)甲方的权利和义务 1.按照规定的标准收取各项费用。 2.按照国家规定的服务标准向乙方提供固定电话服务。并在营业场所公布收费项目和资费标准,并为乙方缴费提供方便。 3.甲方免费向乙方提供火警(119)、匪警(110)、医疗急救(120)、交通事故 报警(122)等紧急电话的接入服务。 4.甲方免费向乙方提供长途话费详细清单查询,并为乙方保留话费信息半年。 5.根据国家关于电话交换设备技术规范书、国家计委和信息产业部对电信计费的有关规定,固定网本地电话不提供详细话单。 6.乙方对缴纳的电信费用有异议的,甲方有义务采取必

菱f系列plc编程口通信协议

三菱FX系列 PLC 编程口通信协议总览 三菱PLC-FX2N 三菱FX系列PLC编程口通信协议总览 该协议实际上适用于PLC编程端口以及 FX-232AW 模块的通信。 通讯格式: 命令命令码目标设备 DEVICE READ CMD "0" X,Y,M,S,T,C,D DEVICE WRITE CMD "1" X,Y,M,S,T,C,D FORCE ON CMD " 7" X,Y,M,S,T,C FORCE OFF CMD "8" X,Y,M,S,T,C 传输格式: RS232C 波特率: 9600bps 奇偶: even 校验: 累加方式(和校验) 字符: ASCII 16进制代码: ENQ 05H 请求 ACK 06H PLC正确响应 NAK 15H PLC错误响应 STX 02H 报文开始 ETX 03H 报文结束 帧格式: STX CMD DATA ...... DATA ETX SUM(upper) SUM(lower) 例子: STX ,CMD ,ADDRESS, BYTES, ETX, SUM 02H, 30H, 31H,30H,46H,36H, 30H,34H, 03H, 37H,34H

SUM=CMD+......+ETX; 30h+31h+30h+46h+36h+30h+34h+03h=74h; 累加和超过两位取低两位 1、DEVICE READ(读出软设备状态值) 计算机向PLC发送: 始命令首地址位数终和校验 STX CMD GROUP ADDRESS BYTES ETX SUM 例子:从D123开始读取4个字节数据 02h 30h 31h,30h,46h,36h 30h,34h 03h 37h,34h 地址算法:address=address*2+1000h 再转换成ASCII 31h,30h,46h,36h PLC返回 STX 1ST DATA 2ND DATA ..... LAST DATA ETX SUM 注:最多可以读取64个字节的数据 例子:从指定的存储器单元读到3584这个数据 02h 33h 35h 38h 34h 03h 44h,36h 2、DEVICE WRITE(向PLC软设备写入值) 始命令首地址位数数据终和校验 STX CMD GROUP ADDRESS BYTES 1ST DATA 2ND DATA ...... LAST DATA ETX SUM 例子:向D123开始的两个存储器中写入1234,ABCD 02h 31h 31h,30h,46h,36h 30h,34h 33h,34h,31h,32h,43h,44h,41h,42h 03h 34h,39h PLC返回 ACK (06H) 接受正确 NAK (15H) 接受错误 3、位设备强制置位/复位 FORCE ON置位 始命令地址终和校验 STX CMD ADDRESS ETX SUM 02h 37h address 03h sum FORCE OFF复位 始命令地址终和校验

RIP路由协议详解

RIP路由协议(Routing Information Protocols,路由信息协议)是使用最广泛的距离向量协议,它是由施乐(Xerox)在70年代开发的。当时,RIP是XNS (Xerox Network Service,施乐网络服务)协议簇的一部分。TCP/IP版本的RIP是施乐协议的改进版。RIP最大的特点是,无论实现原理还是配置方法,都非常简单。 度量方法RIP的度量是基于跳数(hops count)的,每经过一台路由器,路径的跳数加一。如此一来,跳数越多,路径就越长,RIP算法会优先选择跳数少的路径。RIP支持的最大跳数是15,跳数为16的网络被认为不可达。 路由更新RIP路由协议中路由的更新是通过定时广播实现的。缺省情况下,路由器每隔30秒向与它相连的网络广播自己的路由表,接到广播的路由器将收到的信息添加至自身的路由表中。每个路由器都如此广播,最终网络上所有的路由器都会得知全部的路由信息。正常情况下,每30秒路由器就可以收到一次路由信息确认,如果经过180秒,即6个更新周期,一个路由项都没有得到确认,路由器就认为它已失效了。如果经过240秒,即8个更新周期,路由项仍没有得到确认,它就被从路由表中删除。上面的30秒,180秒和240秒的延时都是由计时器控制的,它们分别是更新计时器(_updateTimer)、无效计时器(Invalid Timer)和刷新计时器(Flush Timer)。 路由循环距离向量类的算法容易产生路由循环,RIP路由协议是距离向量算法的一种,所以它也不例外。如果网络上有路由循环,信息就会循环传递,永远不能到达目的地。为了避免这个问题,RIP等距离向量算法实现了下面4个机制。 水平分割(split horizon)。水平分割保证路由器记住每一条路由信息的来源,并且不在收到这条信息的端口上再次发送它。这是保证不产生路由循环的最基本措施。 毒性逆转(poison reverse)。当一条路径信息变为无效之后,路由器并不立即将它从路由表中删除,而是用16,即不可达的度量值将它广播出去。这样虽然增加了路由表的大小,但对消除路由循环很有帮助,它可以立即清除相邻路由器之间的任何环路。 触发更新(trigger update)。当路由表发生变化时,更新报文立即广播给相邻的所有路由器,而不是等待30秒的更新周期。同样,当一个路由器刚启动RIP 路由协议时,它广播请求报文。收到此广播的相邻路由器立即应答一个更新报文,而不必等到下一个更新周期。这样,网络拓扑的变化会最快地在网络上传播开,减少了路由循环产生的可能性。 抑制计时(holddown timer)。一条路由信息无效之后,一段时间内这条路由都处于抑制状态,即在一定时间内不再接收关于同一目的地址的路由更新。如果,路由器从一个网段上得知一条路径失效,然后,立即在另一个网段上得知这个路由有效。这个有效的信息往往是不正确的,抑制计时避免了这个问题,而且,当一条链路频繁起停时,抑制计时减少了路由的浮动,增加了网络的稳定性。 即便采用了上面的4种方法,路由循环的问题也不能完全解决,只是得到了最大程度的减少。一旦路由循环真的出现,路由项的度量值就会出现计数到无穷大(_countto Infinity)的情况。这是因为路由信息被循环传递,每传过一个路由器,度量值就加1,一直加到16,路径就成为不可达的了。RIP路由协议选择16作为不可达的度量值是很巧妙的,它既足够的大,保证了多数网络能够正常运行,又足够小,使得计数到无穷大所花费的时间最短。 邻居有些网络是NBMA(Non-Broad_cast MultiAccess,非广播多路访问)

几种通信协议

RS-232-C RS-232-C是OSI基本参考模型物理层部分的规格,它决定了连接器形状等物理特性、以0和1表示的电气特性及表示信号意义的逻辑特性。 RS-232-C是EIA发表的,是RS-232-B的修改版。本来是为连接模拟通信线路中的调制解调器等DCE及电传打印机等DTE拉接口而标准化的。现在很多个人计算机也用RS-232-C作为输入输出接口,用RS-232-C作为接口的个人计算机也很普及。 RS-232-C的如下特点:采用直通方式,双向通信,基本频带,电流环方式,串行传输方式,DCE-DTE间使用的信号形态,交接方式,全双工通信。RS-232-C在ITU建议的V.24和V.28规定的25引脚连接器在功能上具有互换性。 RS-232-C所使用的连接器为25引脚插入式连接器,一般称为25引脚D-SUB。DTE端的电缆顶端接公插头,DCE端接母插座。 RS-232-C所用电缆的形状并不固定,但大多使用带屏蔽的24芯电缆。电缆的最大长度为15m。使用RS-232-C在200K位/秒以下的任何速率都能进行数据传输。 RS-449 RS-449是1977年由EIA发表的标准,它规定了DTE和DCE之间的机械特性和电气特性。RS-449是想取代RS-232-C而开发的标准,但是几乎所有的数据通信设备厂家仍然采用原来的标准,所以RS-232-C仍然是最受欢迎的接口而被广泛采用。 RS-449的连接器使用ISO规格的37引脚及9引脚的连接器,2次通道(返回字通道)电路以外的所有相互连接的电路都使用37引脚的连接器,而2次通道电路则采用9引脚连接器。 RS-449的电特性,对平衡电路来说由RS-422-A规定,大体与V.11具有相同规格,而RS-423-A大体与V.10具有相同规格。

通信协议与编程

MODBUS通讯协议及编程 ModBus通讯协议分为RTU协议和ASCII协议,我公司的多种仪表都采用ModBus RTU 通讯协议,如:YD2000智能电力监测仪、巡检表、数显表、光柱数显表等。下面就ModBus RTU协议简要介绍如下: 一、通讯协议 (一)、通讯传送方式: 通讯传送分为独立的信息头,和发送的编码数据。以下的通讯传送方式定义也与MODBUS RTU通讯规约相兼容: 初始结构= ≥4字节的时间 地址码= 1 字节 功能码= 1 字节 数据区= N 字节 错误校检= 16位CRC码 结束结构= ≥4字节的时间 地址码:地址码为通讯传送的第一个字节。这个字节表明由用户设定地址码的从机将接收由主机发送来的信息。并且每个从机都有具有唯一的地址码,并且响应回送均以各自的地址码开始。主机发送的地址码表明将发送到的从机地址,而从机发送的地址码表明回送的从机地址。 功能码:通讯传送的第二个字节。ModBus通讯规约定义功能号为1到127。本仪表只利用其中的一部分功能码。作为主机请求发送,通过功能码告诉从机执行什么动作。作为从机响应,从机发送的功能码与从主机发送来的功能码一样,并表明从机已响应主机进行操作。如果从机发送的功能码的最高位为1(比如功能码大与此同时127),则表明从机没有响应操作或发送出错。 数据区:数据区是根据不同的功能码而不同。数据区可以是实际数值、设置点、主机发送给从机或从机发送给主机的地址。 CRC码:二字节的错误检测码。

(二)、通讯规约: 当通讯命令发送至仪器时,符合相应地址码的设备接通讯命令,并除去地址码,读取信息,如果没有出错,则执行相应的任务;然后把执行结果返送给发送者。返送的信息中包括地址码、执行动作的功能码、执行动作后结果的数据以及错误校验码。如果出错就不发送任何信息。 1.信息帧结构 地址码:地址码是信息帧的第一字节(8位),从0到255。这个字节表明由用户设置地址的从机将接收由主机发送来的信息。每个从机都必须有唯一的地址码,并且只有符合地址码的从机才能响应回送。当从机回送信息时,相当的地址码表明该信息来自于何处。 功能码:主机发送的功能码告诉从机执行什么任务。表1-1列出的功能码都有具体的含义及操作 数据区:数据区包含需要从机执行什么动作或由从机采集的返送信息。这些信息可以是数值、参考地址等等。例如,功能码告诉从机读取寄存器的值,则数据区必需包含要读取寄存器的起始地址及读取长度。对于不同的从机,地址和数据信息都不相同。 错误校验码:主机或从机可用校验码进行判别接收信息是否出错。有时,由于电子噪声或其它一些干扰,信息在传输过程中会发生细微的变化,错误校验码保证了主机或从机对在传送过程中出错的信息不起作用。这样增加了系统的安全和效率。错误校验采用CRC-16校验方法。 注:信息帧的格式都基本相同:地址码、功能码、数据区和错误校验码。 2.错误校验 冗余循环码(CRC)包含2个字节,即16位二进制。CRC码由发送设备计算,放置于发送信息的尾部。接收信息的设备再重新计算接收到信息的 CRC码,比较计算得到的CRC码是否与接收到的相符,如果两者不相符,则表明出错。

相关主题