仪表技术与传感器
I nstru ment Technique and Sens or 2008
No 13
收稿日期:2007-10-20 收修改稿日期:2007-12-20
基于以太网的单片机点对多控制系统
张 鸣,葛惠民,朱 荔
(浙江机电职业技术学院,浙江杭州 310053)
摘要:介绍了一种基于以太网的点对多分布式控制系统。控制系统以PC 机作为主机,DE -311为网络服务器、单片机为数据采集和温度(参数)控制从机,实现主从式多机通信。解决了单纯的RS -485网络存在的问题,实现了远距离的数据传输与控制。
关键词:以太网;RS -485接口;多机串行通信;通信协议
中图分类号:TP212 文献标识码:B 文章编号:1002-1841(2008)03-0052-03
Po i n t 2to 2m ulti po i n t M CU System Ba sed on Ethernet Protocol
ZHANG M ing,GE Hui 2m in,ZHU L i
(Zheji a ng I n stitute of M echan i ca l and Electr i ca l Eng i n eer i n g,Hangzhou 310053,Ch i n a)
Abstract:A point 2t o 2multi pointMCU syste m based on the Ethernet p r ot ocol was intr oduced .A host 2client multi point commu 2nicati on mechanis m was realized using PC as the host of the contr ol syste m,DE -311as the net w ork server,MCU as clients for the data acquisiti on and te mperature para meters contr ol .This structure s olves the p r oble m s exist in pure RS -485net w orks,reali 2zes re mote data trans m issi on and contr ol .
Key words:Ethernet;RS -485interface;multi point serial communicati on;communicati on p r ot ocol 1 系统控制原理1.1 系统设计1.1.1 系统拓扑结构
图1为系统的总体设计方框图,系统包括DE -311组成的以太网和从机组成的RS -485网络,分2个层次,从机负责温度采集,每个从机的数据通过DE -311传送到主机,由主机进行数据处理,由于DE -311工作在主机/驱动程序操作模式,从机采集的数据可以通过DE -311实现远程数据传送,而上位机软件可以直接应用原485网络的应用程序,每个DE -311可以管理32个从机,主机与DE -311组成局域网
。
图1 系统的总体设计方框图
系统采用RS -485网络服务器,服务器通过以太网用
TCP /I P 协议访问异步串行通信设备接入网络。通过网络,主机
可访问位于任何物理位置的串行通信口,可集中管理大量的分布控制系统。服务器用以太网连接,但W I N DOW S 主机可将它当作一个真实的COM 口,现在的基于串行通信口编写的软件可不做任何修改直接用于该服务器,体现TCP /I P 网络的优势,使用驱动盘中的安装程序可非常简单地将该服务器映射成主
机的任何COM 口。用户还可用S OCKET 编程访问该服务器,将它作为网络上的一台计算机。
1.1.2 串口服务器
串口设备服务器采用NP ORT EXEPRESS DE -311型。DE
-311为单口服务器,每个DE -311带有一个RS -485串口和
一个10MB 的以太网口,通过拨码开关,可以设置串口类型,通过DE -311,可以让RS -485设备上以太网。尽管串口设备服务器在物理上采用以太网连接,但通过驱动程序,DE -311的串口可能被映射为W indows 操作系统下的1个标准串口或
L inux 下的real tty 口,应用程序可以对其进行收发和控制。
系统采用主机/驱动程序操作模式。此种模式比较方便,使用驱动程序在主机与设备联网服务器之间建立一个透明的传输通道,将服务器上的每一个串口虚拟映射成为主机上的1个标准串口。主机模式的重要性在于用户可以继续使用原有的基于RS -485等串口通信的软件而无须对软件和设备本身进行任何修改,方便用户使用。驱动程序负责将发送到主机串口上的数据打包发送到主机所连接的网络上。在连接的另一端,串口设备联网服务器从以太网上接收T CP /I P 数据包,解释
包中的数据,透明发送到相应的串口设备。主机/驱动程序操作模式允许用户通过1个或多个单口设备联网服务器,在主机和远程单口设备之间设置更多的高级通信方式。使用这个操作模式时,多个主机可以分别使用1个单口设备联网服务器的不同单口,也可以实现多个主机共享串口设备联网服务器的同
1个串口。
1.1.3 从机地址分配
每个DE -311分配1个I P 地址,每个从机分配1个设备地址,如从机1的上层I P 地址为192.168.80.1,485设备地址
第3期
张鸣等:基于以太网的单片机点对多控制系统
53
为1,在从机33的上层I P 地址为192.168.80.2,485设备地址也为1,见图1。
1.2 RS -485网络
RS -485多机通信如图2所示。其中RE 为接收器输出使
能端,已置为固定低电平(接收器使能始终有效);DE 为发送器输出使能端,PC 机一端由串行口的握手信号RTS 控制,单片机一端则固定置高电平(发送器使能也始终有效)。图中的A 、B 分别接接收器正负输入端;y 、x 分别接发送器正负输出端
。
图2 RS -485全双工通信网
采用RS -485接口可以实现多机间串行通信,根据使用的接口芯片不同,可挂接的节点数量不同,通常可达32~128个。在采用RS -485接口实现多机串行通信时,要特别注意发送器输出使能的控制问题。对于全双工方式,多机间数据通信需要采用主从方式,其中,左侧的相当于主机,其余只能作为从机,
(即PC 机作为主机,各单片机作为从机);主机发送使能可以始
终处于有效状态,但从机中每一时刻只能有一个发送器的输出使能处于有效状态。为了使多机间能够实现正确的数据通信,需要自定义通信协议来满足以上要求。
PC 机接口电路上的发送器输出使能受RS -232C 接口中的RTS 控制,对应于8250控制寄存器MCR 的D 1位。MCR 的口地址为串口基地址加04H (如串口1基地址为3F8H,对应的MCR 寄存器地址为3FCH )。向MCR 的D 1位写0使发送器输出使能有效;反之,向该位写1使发送器输出使能无效。
串行通信只提供电气与机械规范,多机通信时数据交换协议需要自定义。系统采用的多机通信协议如下:
(1)主机先发送从机地址,等待从机回应,握手成功后,接收数据。
(2)主机接收数据时先接收数据长度,再接收真实数据及检验码。
(3)从机接收到本机地址后开始发送数据,发数据时把S M2位清零。发完后重新置1。从机间没有数据交换。1.3 单片机与PC 机通信协议1.3.1 帧格式
PC 机必须能够向单片机发送寻地址、命令、字段、数据首
地址长度、数据块及各种校验。单片机必须能够向PC 机发送本机地址、数据长度及数据块及校验码。
1.3.2 差错检测
系统运用冗余校验码识别差错。每发送1个数据块,仅当数据接收正确时,才会发送响应帧,否则发送错误信号,要求重发,直到正确为止。为了防止出错而引起死锁,需要出错程序。
1.3.3 通信方式
一次通信过程分为3个阶段:主机与从机连接挂钩与握手
阶段、发送(接收)阶段、结束阶段。第1阶段,主机发从机地址信号,从机接收后,是本机地址则清S M2,回送本机地址以应
答。否则,不清S M2,回到等待状态。第2阶段,主从机间进行数据命令交换,并检验。主机接收全部从机数据,自身对这些数据进行处理。第3阶段,由于通信系统出错或误码率码次数越限,宣告通信失败而结束通信。1.3.4 通信方式设置
(1)数据帧格式。传输波特率为1200bit/s,1位起始位,1位结束位,8位数据位,奇偶位用来区分地址/数据,如为地址,奇偶位恒为1,如为数据,奇偶位恒为0。单片机发送地址信息时,S M2置1,发送数据时S M2清0。
(2)信号。FFH 为命令从机复位,00H 为传错重机关报再发送,01H 为命令温控设备升温,10H 为命令温控设备降温。
(3)单片机通信方式设置为方式3。2 从机控制器设计2.1 硬件设计
从机硬件电路由单片机S51、A /D 转换电路及其通信接口电路组成。图3为从机RS -485与单片机的接口电路,2片
MAX485实现TT L 电平与485电平的转换
。
图3 RS -485/TT L 电平转移的接口电路
图4为实现232/485电平转换的原理框图,其中使能控制信号DE 决定驱动器发送允许或禁止。当驱动器被禁止时,其输出信号为高阻态,而接收具有较高的输入阻抗,所以处于禁止状态的驱动器和多个接收器挂接在传输线上不会影响信号正常传送,故多个驱动器和接收器可共享同一组公用传输线
。
图4 原理框图
图5为RS -232/RS -485电平转换电路图。电路主要由2片MAX485和1片MAX -232组成,MAX -232实现RS -232电平与TT L 电平转换,MAX -485实现RS -485与TT L 电平的转换。
2.2 软件设计
从机软件流程图见图6,主要由初始化程序、A /D 转换、数据处理等组成。
以下为A /D 转换程序:
ADC:MOV DPTR,#2000H;指向A /D 转换器
MOVX @DPTR,A;启动A /D 转换
54
I nstru ment Technique and Sens or
M ar 12008
图5 RS
-232/RS -485电平转换电路图
图6 从机软件流程图
SET B P 1.0;P 1.0为输入方式
JNB P1.0,$;等待A /D 转换结束
MOV DPTR,#2000H
MOVX A ,@DPTR;取A /D 转换所得数据
MOV R 0,A;保存
MOV DPTR,#T ABLE;指向温度转换表首地址 MOVC A,@A +DPTR;取对应温度值勤(BCD 码)
MOV R 1,A;保存温度值RET
3 结束语
论述了用以太网与RS -485构成网络系统的基本组网方法,并在温度控制系统中得到实际应用。在具体应用中,由于其硬件电路已比较成熟,设计中的问题主要集中在网络协议和服务软件的设计上。同进还必须考虑系统的实时性和可靠性,因此必须对数据进行压缩,以减少数据流量,并采取隔离、屏蔽和防雷等措施。参考文献:
[1] ANDRE W S,T ANENBAUM.计算机网络.3版.熊桂喜译.清华大
学出版社,1998.
[2] 鲍小南.单片机基础应用.杭州:浙江大学出版社,2002.
[3] 李众,高键.单片机与FX 系列P LC 通信协议应用研究.华东船舶
工业学院学报(自然科学版),2001(5):46-50.
作者简介:张鸣(1957—),工程师,研究方向为单片机及多机通讯应用
研究。E -mail:zyzjs@nbi p.net
(上接第51页)4 结束语
利用US B2.0和CP LD 设计实现的高速数据采集系统可用于扩频信号的实时数据采集。该系统在20MB /s 的数据采集传输速率下,可以完成数据的存盘和实时波形显示,系统性能稳定,满足设计要求,在工业生产和科学研究中将有广泛的应用前景。参考文献:
[1] 胡晓军,张爱成.US B2.0接口开发技术.西安:西安电子科技大学
出版社,2005.
[2] EZ -US B FX2Technical Reference Manual Versi on2.2[EB /OL ].
[2003-07-09].htt p://www .cyp ress .com /default .ht m .[3] 苗书立,杨建宇.12b 双通道高速A /D 转换器AD 9238的原理及
应用.现代电子技术,2004(13):1-4.
[4] EZ -US B R FX2T M GP I F Pri m er [EB /OL ].[2003-03-12].ht 2
t p://www .cyp ress .com /default .ht m .
[5] 李亭,李华.GP I F 与F I F O 接口设计.电测与仪表,2006,43(6):56
-58.
[6] 王金明,杨吉斌.数字系统设计与Veril og HDL.北京:电子工业出
版社,2002.
作者简介:于雪磊(1981—),硕士研究生,研究方向为嵌入式系统的软
硬件开发。E -mail:yuxuelei01@163.com
信息速递
#2008福布斯中国企业潜力榜公布,中控、威胜等7家仪器仪表企业入围#方正欲做中国PCB 业NO 11
#北京电子信息产业重大项目签约6个项目#目前我国最南端的电子信息产业基地正式启动#机械工业首批行业工程(技术)研究中心批准并授牌
详情请浏览www .17sens or .com下载本文