RS232串口通信及TCPIP通信.docx

上传人:b****6 文档编号:8615145 上传时间:2023-02-01 格式:DOCX 页数:47 大小:134.82KB
下载 相关 举报
RS232串口通信及TCPIP通信.docx_第1页
第1页 / 共47页
RS232串口通信及TCPIP通信.docx_第2页
第2页 / 共47页
RS232串口通信及TCPIP通信.docx_第3页
第3页 / 共47页
RS232串口通信及TCPIP通信.docx_第4页
第4页 / 共47页
RS232串口通信及TCPIP通信.docx_第5页
第5页 / 共47页
点击查看更多>>
下载资源
资源描述

RS232串口通信及TCPIP通信.docx

《RS232串口通信及TCPIP通信.docx》由会员分享,可在线阅读,更多相关《RS232串口通信及TCPIP通信.docx(47页珍藏版)》请在冰豆网上搜索。

RS232串口通信及TCPIP通信.docx

RS232串口通信及TCPIP通信

 

现代铁路远程控制系统

(课程设计)

 

 

一、RS232的电气特性:

RS-232对电气特性、逻辑电平和各种信号线功能都作了规定。

在TxD和RxD上:

逻辑1(MARK)=-3V~-15V

逻辑0(SPACE)=+3~+15V

在RTS、CTS、DSR、DTR和DCD等控制线上:

信号有效(接通,ON状态,正电压)=+3V~+15V

信号无效(断开,OFF状态,负电压)=-3V~-15V

以上规定说明了RS-232标准对逻辑电平的定义。

对于数据(信息码):

逻辑“1”(传号)的电平低于-3V,逻辑“0”(空号)的电平高于+3V。

对于控制信号:

接通状态(ON)即信号有效的电平高于+3V,断开状态(OFF)即信号无效的电平低于-3V,也就是当传输电平的绝对值大于3V时,电路可以有效地检查出来,介于-3~+3V之间的电压无意义,低于-15V或高于+15V的电压也认为无意义,因此,实际工作时,应保证电平在-3V~-15V或+3V~+15V之间。

RS-232与TTL转换:

RS-232是用正负电压来表示逻辑状态,与TTL以高低电平表示逻辑状态的规定不同。

因此,为了能够同计算机接口或终端的TTL器件连接,必须在RS-232与TTL电路之间进行电平和逻辑关系的变换。

实现这种变换的方法可用分立元件,也可用集成电路芯片。

目前较为广泛地使用集成电路转换器件,如MC1488、SN75150芯片可完成TTL电平到EIA电平的转换,而MC1489、SN75154可实现EIA电平到TTL电平的转换。

MAX232芯片可完成TTL←→EIA双向电平转换。

RS232的最大通信距离为15m,最高传输速率为20kbps,只能进行一对一的通信。

RS232使用9针或25针的D型连接器,PLC一般使用9针的连接器,距离较近时只需要3根线。

二、虚拟rs232通信程序,虚拟串口软件VSPD,加入16位的crc校验。

1、串口通信

采用VC++编写程序实现PCCOM1口与COM2口数据通信。

实现在程序界面的一个文本框中输入字符,通过COM1口发送出去,通过COM2口接收这些字符,在另一个文本框中显示,反之亦然。

用MSComm控件事件方式实现pc双串口互通信。

两接口相互发送与接收信息,COM1口发送信息,COM2口接收信息如下:

COM2口发送信息,COM1口接收信息如下:

2、CRC校验

采用字节型算法,字节型算法如下:

1)CRC寄存器组初始化为全"0"(0x0000)。

(注意:

CRC寄存器组初始化全为1时,最后CRC应取反。

2)CRC寄存器组向左移8位,并保存到CRC寄存器组。

3)原CRC寄存器组高8位(右移8位)与数据字节进行异或运算,得出一个指向值表的索引。

4)索引所指的表值与CRC寄存器组做异或运算。

5)数据指针加1,如果数据没有全部处理完,则重复步骤2)。

6)得出CRC。

三、TCP/IP通信程序,分别实现TCP和UDP通信。

1、UDP通信

UDP是一种无连接的、不可靠的传输协议,也无法保证数据包的传输顺序,UDP协议常用于对传输可靠性不高,而对协议传输速率要求较高的场合。

Windows中的网络协议实现基于套接字socket,套接字是一个io句柄,其读写方法类似于文件io。

本次首先建立一个UDP客户程序,程序先建立一个UDP套接字,向指定地址发出一个数据包,然后等待服务器的回应,再实现一个UDP服务端程序,程序先建立一个绑定到本机指定端口的socket,然后等待网络数据,接收到网络数据后,给对方发出回应,具体过程如下:

服务器首先启动,通过调用socket()建立一个套接口,然后bind()将该套接口和本地地址(IP地址和端口)联系在一起,服务器调用recvfrom()等待接收数据。

客户机通过调用socket()建立一个套接口,然后bind()将该套接口和本地地址(IP地址和端口)联系在一起,客户机调用sendto()向服务器发送数据;服务器的recvfrom()接收到客户机的数据后,调用sendto()向客户机发送应答数据;客户机的recvfrom()便接收到了服务器的应答数据;最后,待数据传送结束后,双方调用closesocket()关闭套接口。

建立步骤如下:

服务器端socket-->bind-->listen-->accept

客户端socket-->connect

UDP客户端的运行结果:

UDP服务器端的运行结果:

2、TCP通信

TCP连接提供了可靠的通信连接,从TCP连接的一端发出数据,能完整的,并且按照发送顺序传输到另一端,TCP连接并没有明显的数据包边界。

TCP套接字的使用,和UDP有类似之处,但由于TCP是有连接的协议,所以必须先建立连接,而连接建立以后,socket就只能和与其建立连接的socke通信,而不像UDP那样可以和任意IP和端口通信。

具体步骤,服务器首先启动,通过调用socket()建立一个套接口,然后bind()将该套接口和本地地址(IP地址和端口)联系在一起,再listen()使套接口做好侦听的准备,并规定它的请求队列的长度,之后就调用accept()来接收连接,并获得客户机的地址信息;客户在建立套接口后就可调用connect()和服务器建立连接;连接一旦建立,客户机和服务器之间就可以通过调用:

send()和recv()(或read()和write())来发送和接收数据;最后,待数据传送结束后,双用closesocket()关闭套接口。

TCP客户端运行结果:

TCP服务器端的运行结果:

四、现场总线查资料(CANprofiebuslonworks)

1、CAN

1.1CAN的基本概念

CAN是控制器局域网络(ControllerAreaNetwork,CAN)的简称,是由研发和生产汽车电子产品著称的德国BOSCH公司开发了的,并最终成为国际标准(ISO118?

8)。

是国际上应用最广泛的现场总线之一。

在北美和西欧,CAN总线协议已经成为汽车计算机控制系统和嵌入式工业控制局域网的标准总线,并且拥有以CAN为底层协议专为大型货车和重工机械车辆设计的J1939协议。

近年来,其所具有的高可靠性和良好的错误检测能力受到重视,被广泛应用于汽车计算机控制系统和环境温度恶劣、电磁辐射强和振动大的工业环境。

CAN是ControllerAreaNetwork的缩写(以下称为CAN),是ISO国际标准化的串行通信协议。

在汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统被开发了出来。

由于这些系统之间通信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。

为适应“减少线束的数量”、“通过多个LAN,进行大量数据的高速通信”的需要,1986年德国电气商博世公司开发出面向汽车的CAN通信协议。

此后,CAN通过ISO11898及ISO11519进行了标准化,在欧洲已是汽车网络的标准协议。

CAN的高性能和可靠性已被认同,并被广泛地应用于工业自动化、船舶、医疗设备、工业设备等方面。

现场总线是当今自动化领域技术发展的热点之一,被誉为自动化领域的计算机局域网。

它的出现为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持。

1.2、CAN的特点

由于采用了许多新技术及独特的设计,CAN总线与一般的通信总线相比,它的数据通信具有突出的可靠性、实用性和灵活性。

其特点可概括如下:

●CAN是到目前为止唯一有国际标准的现场总线。

●CAN为多主方式工作,网络上任一节点均可在任意时刻主动地向网络上其他节点发送信息,而不分主从。

●在报文标识符上,CAN上的节点分成不同的优先级,可满足不同的实时要求,优先级高的数据最多在134μs内得到传输。

●CAN采用非破坏总线仲裁技术。

当多个节点同时向总线发送信息出现冲突时,优先级较低的节点会主动退出发送,而最高优先级的节点可不受影响地继续传输数据,从而大大节省了总线冲突仲裁时间。

尤其是在网络负载很重的情况下,也不会出现网络瘫痪的情况(以太网则可能)。

●CAN节点只需通过对报文的标识符滤波即可实现点对点、一对多点及全局广播等几种方式传送接收数据。

●CAN的直接通信距离最远可达10km(速率在5kbps以下);通信速率最高可达1Mbps(这时通讯距离最长为40m)。

●CAN上的节点数主要取决于总线驱动电路,目前可达110个。

在标准帧报文标识符有11位。

而在扩展帧的报文标识符(29位)的个数几乎不受限制。

●报文采用短帧结构,传输时间短,受干扰概率低,保证了数据出错率极低。

●CAN的每帧信息都有CRC校验及其他检错措施,具有极好的检错效果。

●CAN的通信介质可为双绞线、同轴电缆或光纤,选择灵活。

●CAN节点在错误严重的情况下具有自动关闭输出功能,以使总线上其他节点的操作不受影响

●CAN总线具有较高的性能价格比。

它结构简单,器件容易购置,每个节点的价格比较低,而且开发技术容易掌握,能充分利用现有的单片机开发工具。

1.3、CAN总线协议的基本规则

(1)总线访问:

采用载波监听多路访问,CAN控制器能够在总线空闲时,就是节点侦听到网络上至少存在3个空闲(隐形位)时开始发送,采用硬同步,所有的控制器同步都为与帧的起始的前沿。

过了一定时间,并在在一定条件后,重同步。

(2)仲裁:

各节点向总线发电平时也对总线上电平进行读取,并于自身发送的电平进行比较,相同则发下一位,直至全部发完。

不同则说明网络上有更高优先级的信息帧正在发送,即停止发送,退出竞争。

(3)编码/解码:

帧起始域、仲裁域、控制域、数据域和CRC序列均使用位填充技术进行编码,就是5个连续的同状态电平插入一位与它相补的电平,还原时每5个同状态的电平后的相补电平被删除。

(4)出错标注:

当检测到位错误、填充错误、形式错误或应答错误时,检测出错条件的CAN控制器将发送一个出错标志。

(5)超载标注:

一些控制器会发送一个或多个超载帧以延迟下一个数据帧或远程帧的发送。

1.4、CAN总线的工作原理

CAN是控制器局域网络(ControllerAreaNetwork,CAN)的简称,是由研发和生产汽车电子产品著称的德国BOSCH公司开发了的,并最终成为国际标准(ISO11898)。

是国际上应用最广泛的现场总线之一。

在北美和西欧,CAN总线协议已经成为汽车计算机控制系统和嵌入式工业控制局域网的标准总线,并且拥有以CAN为底层协议专为大型货车和重工机械车辆设计的J1939协议。

近年来,其所具有的高可靠性和良好的错误检测能力受到重视,被广泛应用于汽车计算机控制系统和环境温度恶劣、电磁辐射强和振动大的工业环境。

CAN总线原理是通过CAN总线、传感器、控制器和执行器由串行数据线连接起来。

它不仅仅是将电缆按树形结构连接起来,其通信协议相当于ISO/OSI参考模型中的数据链路层,网络可根据协议探测和纠正数据传输过程中因电磁干扰而产生的数据错误。

CAN网络的配制比较容易,允许任何站之间直接进行通信,而无需将所有数据全部汇总到主计算机后再行处理。

当CAN总线上的一个节点(站)发送数据时,它以报文形式广播给网络中所有节点。

对每个节点来说,无论数据是否是发给自己的,都对其进行接收。

每组报文开头的11位字符为标识符,定义了报文的优先级,这种报文格式称为面向内容的编址方案。

CAN信号可以使用双绞线、光纤等介质传输。

具体信号也是逻辑电平,采用差分方式传输。

两条线号线分别是CAN_H和CAN_L。

H和L均为2.5V左右时,表示信号逻辑“1”,也称为“隐性”。

采用CAN_H比CAN_L高表示逻辑“0”,称为“显性”,CAN_H=3.5V,CAN_L=1.5V。

CAN总线采用CSMA/CD模式检测整个网络,只有当总线处于空闲状态时,才允许发送。

当发生冲突时CAN收发器具备仲裁能力,仲裁规则根据每个设备的ID决定,ID越小优先权越高。

帧格式:

标准帧具有11bit识别符;扩展帧具有29bit标识符。

帧类型:

数据帧从发送器传输到接收器。

由7个不同的位场组成:

帧起始位、仲裁场、控制场、数据场、校验场、应答场、帧结尾。

数据场长度可以为0。

远程帧由总线单元发出,请求发送具有统一识别符的数据帧。

错误帧任何节点检测到总线错误就发出错误帧。

过载帧用以在先行和后续的数据帧之间附加一定延时。

1.5、应用举例

CAN总线在工控领域主要使用低速-容错CAN即ISO11898-3标准,在汽车领域常使用500Kbps的高速CAN。

一般汽车拥有,车身、舒适、多媒体等多个控制网络,其中车身控制使用CAN网络,舒适使用LIN网络,多媒体使用MOST网络,以CAN网为主网,控制发动机、变速箱、ABS等车身安全模块,并将转速、车速、油温等共享至全车,实现汽车智能化控制,如高速时自动锁闭车门,安全气囊弹出时,自动开启车门等功能。

CAN系统又分为高速和低速,高速CAN系统采用硬线是动力型,速度500kbps,控制ECU、ABS等;低速CAN是舒适型,速度:

125Kbps,主要控制仪表、防盗等。

又如医院的燃气锅炉,其向洗衣房、制剂室、供应室、生活用水、暖气等设施提供蒸汽。

医院采用接力式方式供热,对热网进行地域性管理,分四大供热区。

其中冬季暖气的用气量很大,据此设计了基于CAN现场总线的分布式锅炉蒸汽热网智能监控系统。

现场应用表明:

该楼宇自动化系统具有抗干扰能力强,现场组态容易,网络化程度高,人机界面友好等特点。

二、profibus

2.1简介

PROFIBUS是l987年德国联邦科技部制订的现场总线德国国家标准,目前是IEC61158国际标准中的Type3部分。

物理接口采用RS-485标准,网络拓扑为线性总线两端加终端电阻。

PROFIBUS是一种国际化、开放式、不依赖于设备生产商的现场总线标准。

PROFIBUS传送速度可在9.6kbit/s~12Mbit/s范围内选择,且当总线系统启动时,所有连接到总线上的装置应该被设成相同的速度。

广泛适用于制造业自动化、流程工业自动化和楼宇、交通、电力等其他领域自动化。

它还用于工厂自动化车间级监控和现场设备层数据通信与控制的现场总线技术。

可实现现场设备层到车间级监控的分散式数字控制和现场通信网络,从而为实现工厂综合自动化和现场设备智能化提供了可行的解决方案。

PROFIBUS由三个兼容部分组成,即PROFIBUS-DP、PROFIBUS-PA、PROFIBUS-FMS。

主要使用主-从方式,通常周期性地与传动装置进行数据交换。

PROFIBUS–DP:

是一种高速低成本通信,用于设备级控制系统与分散式I/O的通信。

使用PROFIBUS-DP可取代24VDC或4-20mA信号传输。

PORFIBUS-PA:

专为过程自动化设计,可使传感器和执行机构联在一根总线上,并有本征安全规范。

PROFIBUS-FMS:

用于车间级监控网络,是一个令牌结构、实时多主网络。

与其它现场总线系统相比,PROFIBUS的最大优点在于具有稳定的国际标准EN50170作保证,并经实际应用验证具有普遍性。

2.2协议结构

PROFIBUS协议结构是根据ISO7498国际标准,以开放式系统互联网络作为参考模型的。

第一层定义物理的传输性,第二层定义总线存取协议,第七层定义应用功能,3-6层未用。

(1)PROFIBUS-DP:

定义了第一、二层和用户接口。

第三到七层未加描述。

用户接口规定了用户及系统以及不同设备可调用的应用功能,并详细说明了各种不同PROFIBUS-DP设备的设备行为。

(2)PROFIBUS-FMS:

定义了第一、二、七层,应用层包括现场总线报文规范( FMS)和低层接口(Lower Layer Interface - LLⅠ)。

FMS包括了应用协议并向用户提供了可广泛选用的强有力的通信服务。

LLⅠ协调不同的通信关系并提供不依赖设备的第二层访问接口。

(3)PROFIBUS-PA:

PA的数据传输采用扩展的PROFIBUS-DP协议。

另外,PA还描述了现场设备行为的PA行规。

根据IEC1158-2标准,PA的传输技术可确保其本征安全性,而且可通过总线给现场设备供电。

使用连接器可在DP上扩展PA网络

2.3PROFIBUS传输技术

2.3.1用于DP/FMS的RS-485传输技术

由于DP与FMS系统使用了同样的传输技术和统一的总线访问协议,因而,这两套系统可在同一根电缆上同时操作。

RS-485传输是PROFIBUS最常用的的一种传输技术。

这种技术通常称之为H2。

采用的电缆是屏蔽双绞铜线。

RS-485传输技术基本特征:

(1) 网络拓扑:

总线型,两端有有源的总线终端电阻。

(2) 传输速率:

9.6K bit /s~12M bit/ s

(3) 介质:

屏蔽双绞电缆,也可取消屏蔽,取决于环境条件(EMC)。

(4) 站点数:

每分段32个站(不带中继器),可多到126个站(带中继器)。

(5) 插头连接:

最好使用9针D型插头

2.3.2用于PA的IEC1158-2传输技术

(1)数据IEC1158-2的传输技术用于PROFIBUS-PA,能满足化工和石油化工业的要求。

它可保持其本征安全性,并通过总线对现场设备供电。

(2)IEC1158-2是一种位同步协议,可进行无电流的连续传输,通常称为H1。

传输使用固定波特率31.25kbit/s。

(3)IEC1158-2技术用于PROFIBUS-PA,其传输以下列原理为依据:

1.每段只有一个电源作为供电装置。

2.当站收发信息时,不向总线供电。

3.在稳定状态下,每个现场设备所消耗的为恒定的基本电流。

4.现场设备其作用如同无源的电流吸收装置。

5.在主总线的两端各有一个无源的终端器。

6.允许使用线型、树型和星型网络。

7.为提高可靠性,设计时可采用冗余的总线段。

8.为了调制的目的,假设每个部线站至少需用10mA基本电流才能使设备启动。

通信信号是由发送设备将电流从±9mA调至基本电流的方法产生。

2.4PROFIBUS总线存取协议

1、三种PROFIBUS(DP、FMS、PA)均使用一致的总线存取协议。

该协议是通过OSI参考模型第二层(数据链路层)来实现的。

它包括了保证数据可靠性技术及传输协议和报文处理。

2、在PROFIBUS中,第二层称之为现场总线数据链路层(Fieldbus Data Link - FDL)。

介质存取控制(Medium Access Control - MAC)具体控制数据传输的程序,MAC必须确保在任何一个时刻只有一个站点发送数据。

3、PROFIBUS协议的设计要满足介质控制的两个基本要求:

①.在复杂的自动化系统(主站)间的通信,必须保证在确切限定的时间间隔中,任何一个站点要有足够的时间来完成通信任务。

②.在复杂的程序控制器和简单的I/O设备(从站)间通信,应尽可能快速又简单地完成数据的实时传输。

因此,PROFIBUS总线存取协议,主站之间采用令牌传送方式,主站与从站之间采用主从方式。

4、令牌传递程序保证每个主站在一个确切规定的时间内得到总线存取权(令牌)。

在PROFIBUS中,令牌传递仅在各主站之间进行。

5、主站得到总线存取令牌时可与从站通信。

每个主站均可向从站发送或读取信息。

因此,可能有以下三种系统配置:

①.纯主-从系统

②.纯主-主系统

③.混合系统

6、以一个由3个主站、7个从站构成的PROFIBUS系统为例:

3个主站之间构成令牌逻辑环。

当某主站得到令牌报文后,该主站可在一定时间内执行主站工作。

在这段时间内,它可依照主-从通讯关系表与所有从站通信,也可依照主-主通讯关系表与所有主站通信。

7、在总线系统初建时,主站介质存取控制MAC的任务是制定总线上的站点分配并建立逻辑环。

在总线运行期间,断电或损坏的主站必须从环中排除,新上电的主站必须加入逻辑环。

8、第二层的另一重要工作任务是保证数据的可靠性。

PROFIBUS第二层的数据结构格式可保证数据的高度完整性。

9、PROFIBUS在第二层按照非连接的模式操作,除提供点对点 逻辑数据传输外,还提供多点通信,其中包括广播及群播功能。

广播通信是指一个主动站向所有其他站发送无需应答的报文;群播是指一个主动站向一个预先确定的站发送无需应答的报文。

2.5基本特征

PROFIBUS-DP具有如下特性:

(1)速率:

在一个有着32个站点的分布系统中,PROFIBUS-DP对所有站点传送512bit/s输入和512bit/s输出,在12Mbit/s时只需1毫秒。

(2)诊断功能:

广泛的PROFIBUS-DP诊断功能可对故障进行快速定位。

诊断信息在总线上传输并由主站采集。

诊断信息分三级:

-本站诊断操作:

本站设备的一般操作状态,如温度过高、压力过低。

-模块诊断操作:

指出一个站点的某具体I/O模块故障。

-通道诊断操作:

一个单独输入/输出位的故障。

PROFIBUS—PA具有如下特性:

(1)适合过程自动化应用的行规使不同厂家生产的现场设备具有互换性。

(2)增加和去除总线站点,即使在本征安全区域也不会影响到其它站。

(3)在过程自动化的PROFIBUS—PA段与制造业自动化的PROFIBUS—DP总线段之间通过耦合器连接,并使可实现两段间的透明通信。

(4)使用与IEC61158—2技术相同的双绞线完成远程供电和数据传送。

(5)在潜在的爆炸危险区可使用防爆型“本征安全”或“非本征安全”。

2.6PROFIBUS在配电自动化中的应用

配电是电力系统发电、输电和配电中直接面向电力用户的重要环节。

八十年代末,配电自动化在美国等工业发达国家逐步发展起来。

配电自动化的内容大致分为四个方面:

1)馈线自动化;2)用户自动化;3)变电站自动化;4)配电管理自动化。

城市配电自动化是国家最近几年重要的投资方向,配网自动化为电网的运行监测、快速故障定位、故障隔离等提供了有力的保障措施。

电力配电系统环境特殊,需要一种可靠性高、实时性强、容易操作的测控网,并能把上层的管理网和前端的测控网连接起来。

主要用于低层设备通信的现场总线完全可以适用于这种要求。

这对利用现有设备,进一步提高配电网的自动化水平,提高供电可靠性,增加电网经济效益,都具有十分重要的意义。

基于现场总线的电力配电监控网络构成

系统主要特点:

1、友好的人机界面;

2、强大的网络通信;

3、可靠的安全管理;

4、实时的故障报警和事件处理;

5、完善的数据报表;

6、系统内相关资源的数据采集、监控和共享;

7、为各级电力系统的管理者提供的决策帮助;

8、系统可靠性、稳定性和可视化的明显提高;

9、对各个智能子系统的远程监控;

现场总线控制系统的优点:

现场总线设备的智能化和全数字化,使设备管理网络化成为现实,同时也提高机组运行的安全可靠性。

现场总线设备将微处理器置入现场智能设备中,具有数字计算和数字通信能力,传感测量、补偿计算、工程量处理等功能可在现场总线设备中完成。

现场总线技术不仅能传送过程I/0信号,还能传送非过程数据,此类数据包括组态下载、远程操作和整定参数及设备管理所需参数(如诊断、状态、校验数据),使设备的信息量大大增加,为实现状态检修、性能优化控制和优化管理奠定了可靠的数据基础。

 

3、Lonworks

3.1、简要介绍

LonWorks是美国Echelon公司1992年推出

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 少儿英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1