基于单片机的以太网嵌进式控制器设计

来源:本站
导读:目前正在解读《基于单片机的以太网嵌进式控制器设计》的相关信息,《基于单片机的以太网嵌进式控制器设计》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《基于单片机的以太网嵌进式控制器设计》的详细说明。
简介:本文设计了基于SX52BD网络单片机的嵌进式控制器的硬件结构和相关软件, 设计的以太网嵌进式控制器是以SX52BD为核的新型“嵌进式WebServer”,除了编写传统的控制、通讯软件外,在基于以太网数据传输基础上,将传统Web功能融进控制器,给出相关的协议栈软件设计、Java Applet客户真个应用设计。以太网应用于产业控制系统是可行的。

1引言

网络控制系统又称为控制网络,基于网络的控制系统经过近30年的发展,从原来基于模拟信号传输的控制系统DCS,发展到数字化、智能化、全分散的现场总线系统,给产业自动化带来一场深层次的革命。随着Intranet/Internet信息技术的飞速发展,现场总线新技术及应用成了科研职员关注的研究热门,研究解决从现场控制层到治理层能实现全面的无缝信息集成,并提供全面开放的基本构架。本文对以太网分布式控制系统的重要接进设备:嵌进式控制器做了具体设计。

2硬件设计

整个控制器的硬件构成如图1所示。

基于单片机的以太网嵌进式控制器设计

图1控制器硬件组成示意图

整块电路板由5V直流供电,它集成了速度达50MHz的SX52BD微处理器、24C256EEPROM芯片、RJ-45以太网接口,RS-232接口、RS-485接口、网页内容下载DEBUG接口、以太网控制芯片采用RealTek公司的RTL8019AS,该芯片是一款全双工以太网控制器,可以工作在EthernetII和IEEE802.3,l0Base5,l0Base2,l0BaseT下,并与NE2000兼容。E2PROM主要用来存WEB页面、图像文件、PDF文档等内容,因此没有特殊要求,可自由选择,一般32KB左右即可,我们采用24C256芯片。SX52为核心芯片,通过它控制以太网控制芯片RTL8019AS,进而完成接进网络的工作;而且可以通过编程来选择通讯电路类型,如RS232,RS485,MODEM等。该控制器设计最大的特点在于:用简洁硬件构架应用平台,使原本硬件本钱所需的支出可用于相对复杂的软件开发上,且该方案的I/O接口可以自由扩展和支配。应用程序放在FlashRAM或EEPROM里,其它要经常修改的参数和实时数据放在SRAM里。I/O采集的接口硬件电路和总线相连。

2.1微处理器选型

SX52BD是SX系列产品,是采用CMOS工艺制造的、可配置的控制器。它的操纵频率可达到50/76/100MHz,是一种高速计算机;其大部分指令为单周期指令,运行速度可达到一般MCU的20倍;灵活的I/O特性使之具有高效的实时控制功能,正由于它的高速运行特性,设备可以用软件模块(虚拟外设)替换一部分过往由硬件实现的实时功能,这是SX系列的最重要的特点。下面是SX52BD的主要性能和特点:

①CPU性能。基于RISC结构,采用压缩的指令系统,除branch外大部分为单周期指令;操纵频率最高可达100MHz,此时指令周期为lOns,内部中断响应时间达30ns;可以通过运行时间内读代码(IREAD指令)进行快速平台查找;它能克服一般MCU运行速度慢的缺点,使得SX系列的内部程序达到硬件实时控制功能的目的。

②硬件外设特性。内部包含2个(带8位预定标器的)16位定时器,运行方式有软件时钟模式、PWM模式、同步PWM/捕捉模式以及外部事件模式:有一个(带8位预定标器的)可编程的8位定时/计数器(RTCC)和看门狗计时器(共享RTCC预定标器);内部包含模拟比较器,这对于一般的应用来说显得十分方便。

③由于SX系列高速运行特性,再加上灵活的I/O功能,设备就可以用软件模块(虚拟外设)代替那些硬件所具有的正确的实时功能。目前可以实现的虚拟外设大多用于通讯设备(例如通讯接口和Internet连接协议等)以及作为运行速度比较高的信号发生装置和转换装置。

④编程和调试支持。可以通过串口或并口对芯片进行在线编程(例如可以接振荡器引脚进行在线串行编程),芯片具有在线调试支持逻辑。对于实时仿真、全程调试,可以由第三工具供给商提供完备的开发环境。这些软件支持包括:即时可用的虚拟外设模块库、虚拟外设综合实例以及用于通讯的应用工具包等。

SX设备在实际应用中能够提供新的思路和解决办法,一方面它可以应用于一些常规的设备,如:过程控制器、电子设备/工具、安全/监视系统、汽车用户、动力控制系统、私人通讯设备等等;另一方面,SX通讯控制器为SX堆栈的硬件平台,它能实现执行整个TCP/IP协议、物理层及其相关的高速通讯层一虚拟外设模块,它的网络连接协议栈工具能使单片网络服务器和E-mail设备在嵌进式场合中应用,这些工具包括TCP/IP网络连接协议的物理层界面,利用这些工具可以开发出一些本钱低廉的嵌进式Internet设备。

2.2基于SX52BD的嵌进式控制器的主要单元电路设计

1、用SX52BD控制的执行器开关电路

基于单片机的以太网嵌进式控制器设计

图2电磁开关接口电路

现代自动化控制设备中都存在一个电子与电气电路的互相联结题目,一方面要使电子电路的控制信号能够控制电气电路的执行元件(电动机、电磁铁、电灯等);一方面又要为电子电路的电气提供良好的电隔离,以保护电子电路和人身的安全,电子继电器便能完成这一桥梁作用。图2是控制器中直接用SX52BD控制产业电路的电器开关功能单元接口电路图。RELAY_A接SX52BD的RA3引脚,控制器主板上共设计了四路控制开关电路,控制信号分别接SX52BD的RA0-RA3引脚。

2、以太网接进电路

要将嵌进式设备无缝接进以太网络控制系统,首先要解决的题目之一就是与以太网的接口题目,如何将通用计算网络接口器件应用于嵌进式网络控制器。我们采用了台湾Realtek公司生产的TRL8019AS以太网控制器,它具有极佳的性价比,由于其优良的性能、低廉的价格,使其在市场上10MPbs网卡中占有相当的比例。其主要性能包括:(l)适应Ethemet11、IEEE802.3、10Base5、10Bases、10BaseT;(2)支持8位、16位数据总线;(3)全双工,可同时达到10MbPs的收发速率,具有睡眠模式,以降低功耗;(4)内置16KB的SRAM,用于收发缓冲,降低对主处理器的速度要求;(5)可连接同轴电缆和双绞线,可自动检测所连接的介质;(6)100脚的TQFP封装,减小了PCB尺寸。

3、与以太网通讯的RS-485串行通讯接口

RS-485总线以其抗干扰能力强、支持多节点远间隔通讯和高接收灵敏度以及连线简单等优点在控制领域得到了广泛应用。监控系统使用基于RS-485总线构成的分布监控方式,能够完成在恶劣的现场环境中的多种监测控制功能。

SX52BD处理器同时具有控制和通讯的功能。正由于SX52BD嵌进式以太网控制模块同时具备以太网的通讯、RS-485串行通讯以及数据运算处理能力,可以利用其作为RS-485与产业以太网的通讯转换节点。节点的作用就是将产业现场的传感器或执行器的信号转换为能在产业以太网上进行发送的数据包,从而与现场的其他节点直接进行通讯,终极使TCP/IP协议能工作在控制系统的现场设备层。

RS-485通讯接口电路的总体结构框图如图3所示。SX52BD嵌进式以太网控制模块固然内部支持RS-485的串行通讯格式,但模块上没有RS-485的驱动电路,所以在控制器的模板上我们自己建立了驱动电路。本方案选用了性能较好的接口驱动芯片MAX485。MAX485为8个管脚,DIP封装,1脚RO为数据接收端;2脚RE为数据接收答应端,低电平有效;3脚DE为数据发送答应端;6、7脚为电流环回路端;它把一个三态差分线路驱动器和一个差分线路接收器组合在一起,并共用A、B两根总线。它的传输方向由DE和RE所控制,当DE=1时,驱动器优先,可进行数据发送,此时接收器呈高阻状态;RE=0时,接收器优先,可进行数据接收,此时驱动器呈高阻状态。

基于单片机的以太网嵌进式控制器设计

图3RS-485接口驱动电路框图

4、采用光电隔离设计的数字量输进输出电路

整个嵌进式控制器我们设计了数字量输出和数字量输进。嵌进式微处理器是一个数字信号处理系统,它给出的控制量就是一个数字量。为了防止产业现场强电磁干扰或工频电压通过输进输出通道串进测控系统,一般要将整个控制器与外设隔离开来,即需要采用隔离技术。在数字隔离技术中,最常用的隔离手段是使用光电隔离器,由于光信号的传送不受电场、磁场的影响,能有效地隔离信号的干扰。光电隔离器把发光器件和光敏器件组装在一起通过光实现藕合,构成电-光-电转换的器件,当在发光管两端加一定电压时,放光管通过一定的电流而发光,该光信号经光敏器件接收后又转为电信号。光电隔离器输进端与输出端之间的联系是通过“光”来实现的,所以光电隔离能实现较好的电气隔离。

3以太网嵌进式控制器的软件设计

嵌进式控制器内的主控程序采用SASM汇编语言编写,SX系列共有65条指令,其中基本指令57条,等效指令8条。系统的开发回采用了UBICOM公司提供的汇编/编程器软件“SXKEY52.EXE”,实现软件在线仿真、调试和程序SIP方式编程下载。客户端软件采用HTML语言和JavaApplet设计。

3.1网络协议栈的软件设计

当数据包通过RJ-45接口传送到RTL8019As和MCU后,系统内部的TCP/IP堆栈进行数据包解析和流向判定,然后进行解包或者打包的动作,以继续进行后续工作。显然,终极的处理结果都要通过WebServer来进行。

通常,所谓的TCP/IP协议是一个四层协议系统,包括数据链路层、网络层(含IP协议)、传输层(含TCP协议)和应用层,每一层负责不同的功能。基于TCP/IP协议可以实现多种功能应用。在我们设计的系统中,主要是分析HTTP,也就是WebServer在应用层的主要构成协议。其它的协议功能的实现就不再分析了。PI包含编址方案,并提供寻址功能;TCP则是在不同主机的对等进程之间提供可靠的进程间通讯。与TCP两端口所连接的实体中,一端为应用程序进程或用户,另一端则为底层协议,如IP协议。TCP在建立连接过程中采用三次握手机制,以保证数据的可靠性。利用提供的TCP/IP协议包,可以轻松建立起TCP/IP通讯。当通讯建立以后,就可以在此基础上进行后续的进一步应用功能扩展。

3.2RS-485接进以太网的软件设计

嵌进式控制器把传感器的RS-485通讯格式数据转换为产业以太网接收的TCP/IP协议格式的数据包,可以通过两个实时的任务运行实现。一个任务是模块从RS-485串行口读取来自传感器的数据:另一任务则是将模块获得的数据从以太网接口发送到需要数据的其他网络节点,它们通过共享数据缓存区实现数据交换。

3.3JavaApplet在客户真个应用

Applet是运行在浏览器上的Java程序。它不能独立运行,它的字节码文件必须嵌进到另一种语言HTML的文件中,并由浏览器采用调用Applet方法来解释执行,JavaApplet字节码程序可以完成特殊的Applet任务。本系统客户端软件实际上就是JavaApplet的一个应用,用户界面的内容可以由Applet来实现。

可以通过控制界面显示控制参数的开关状态,并通过控制面板的选取控制系统,并进行查询。客户端与服务器通讯过程通过创建socket来实现。Socket类和ServerSocket类是用Java实现Socket通讯的主要工具。创建一个ServerSocket对象就创建了一个监听服务,创建一个Socket对象就建立一个Client与Server间的连接。用下面的语句创建一个ServerSocket类,同时在运行该语句的控制器的指定端口外建立一个监听服务:

ServerSocketMyListener=newServerSocket(8000);

为了随时监听可能的Client请求,还应该执行如下的语句:

SocketLinkSocket=MyListener.accept();

当Client程序需要从Server端获取信息及其他服务时,创建一个Socket对象:

SocketMySocket=newSocket(“SevrerComPuterName”,8000);

本文作者创新点:在本嵌进式控制器中,嵌进式控制器的设计包括硬、软件两部分设计,向上与计算机通讯,设计了RJ-45接口、存储器接口等,向下与控制设备通讯,设计了相应RS-232接口、RS-485接口、电磁控制开关接口等。客户计算机上只要有SQLSERVER,SOCKET,EXPLORER等即可与嵌进式控制器通讯,而嵌进式控制器上有WebServer,SOCKET,系统软件网页服务器程序等。

参考文献:

[1]葛永明,林继宝.嵌进式系统以太网接口的设计[J].电子技术应用,2002,(3),17-19

[2]王化祥,林慧.产业控制和应用现状和发展趋势[J].世界仪表与自动化,2003.10:43-45

[3]冯冬芹,金建祥,褚健.浅谈以太网应用于产业现场的关键技术[J].世界仪表与自动化,2002,6(4):8-13

[4]董小国,王蓉.基于Web的中水远程监控系统的设计与实现[J].微计算机信息,2006,12-1:86-88

[5]隋运峰,刘一博,谢意,周建鸿.TCP在有线电视网络中的题目和解决方法[J].微计算机信息,4-3:141-143

[6]ARM7TDMI(Rev4)TechnicalReferenceManual.

[EB/OL].http://www.arm.com/pdfs/DDI0210B_7TDMI_R4.pdf

[7]顾咏枫,陈章龙.嵌进式Linux裁剪方法[J].小型微型计算机系统,2003.24(9):1697-1700

[8]俞建新等.嵌进式应用程序开发综合实验9例[M].北京:清华大学出版社.2006

提醒:《基于单片机的以太网嵌进式控制器设计》最后刷新时间 2024-03-14 01:16:32,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《基于单片机的以太网嵌进式控制器设计》该内容的真实性请自行鉴别。