工业总线设备网络化改造的实现_第1页
工业总线设备网络化改造的实现_第2页
工业总线设备网络化改造的实现_第3页
工业总线设备网络化改造的实现_第4页
工业总线设备网络化改造的实现_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、工业总线设备网络化改造的实现47工业总线设备网络化改造的实现王勇1,吴旭文2,张惊雷1,黄惟一1(1.东南大学仪器科学与工程系,江苏南京210096;2.南京航空航天大学自动化学院,江苏南京210016摘要:利用低成本单片机与以太网控制芯片设计并实现了串口、现场总线转以太网TCP/IP模块,专门为单片机设计了由RTOS(嵌入式实时操作系统与裁减后的TCP/IP协议栈构成的单片机嵌入式控制系统。完成了异种网络的融合。软件系统(包括TCP/IP协议栈能够方便移植上各种8位、16位、32位处理器平台,实现各种嵌入式网络服务。成果对于工业设备的网络化实现提供了网关服务,满足对功能、成本、体积和功耗等要

2、求。关键词:单片机;TCP/IP;嵌入式系统;Ethemet中图分类号:TP336文献标识码:B文章编号:10008829(200511004703Realization of Network Reconstructing Industry Bus EquipmentWANG Yon91,WU Xu.wen2,ZHANG Jingleil,HUANG Weiyil(1.Southeast University,Nanjing210096,China;2.College of Automatization,NUAA,Nanjing210016,ChinaAbstract:This design,

3、based on MCU series8051and Ethernet control chip,implements the TCP/IP module.The MCU has anespecially designed embedded system involving a RTOS and a predigested TCP/IP protocol stack.It runs with less realtime constraints and responds quickly to interrupts.The predigested TCP/IP stacks runs stably

4、.Having been put to test in LAN and WAN,it proves to meet the demand of lowrate communication in the industry field.The system,with the TCWIP stack,Can be transplanted to any of the8-digit,16digit,or 32一digit processor platform and manage all kinds of services on embedded networks.It enables the TCP

5、/IP gateway service as well as providing an economical,reliable and transplantable plan for the notification of in-dustrial equipment.Key words:MCU;TCP/IP;embedded system;Ethernet1工业以太网:下一代现场总线目前的工业智能设备大多数还处于单独应用的阶段,以微控制器(MCU为核心的嵌人式系统与一些监测、伺服、指示设备配合实现一定的功能。在一些工业和汽车应用中,为了实现多个MCU之间的信息交流,利用CAN、RS-232、R

6、S-485等总线将MCU组网,但这种网络的有效半径有限,有关的通信协议比较少且开放性差。随着现代化工厂管理模式的进展,企业对生产控制系统(PCS提出了新的要求。在PCS设计过程中,通常采用的是现场总线控制系统(FCS。应该说,现场总线的出现确实给工业自动化带来一场深层次的革命,但由于现场总线数据传送距离短,相互之间兼容性收稿日期:20050601作者简介:王勇(1961一,男,副教授,在读博士,主要研究方向为测控技术与仪器。差、生产现场自控设备种类繁多,导致不同的总线产品之间无法实现互连、互换、统一组态及互操作,信息网络存在协议上的鸿沟导致出现“自动化孤岛”等。近年来,以太网以其结构简单、投资

7、经济、使用方便等优点不断地应用到工业现场。将单片机嵌入控制系统与Ethernet/Internet结合的想法很早就有了,主要困难在于Intemet上面的各种通信协议对于计算机存储器、运算速度等要求较高,而工控用嵌入式系统大量的是8位和16位MCU,且片上资源有限。如何使嵌入式系统支持TCWIP等Intemet协议的研究非常有实际意义,因为嵌入式系统接入Intemet后将使远程监控、远程诊断和远程维护变得非常容易,异种网络融合成为可能。本设计就是用单片机嵌入式系统实现异种网络协议的转换,完成工业控制网络广域化。要将现场设备融人Ethernet/Internet网络,必须有简明、可靠的TCW IP

8、协议栈,所以能够成功移植TCP/IP协议成为设备网络化进程中最重要的问题。 48测控技术>>2005年第24卷第11期2系统总体结构2.1硬件总体结构设计目前在工业控制领域应用的处理芯片品种较多,技术都比较成熟,稳定性好,选择余地较大。8位单片机以51内核单片机为代表,16位单片机以TI MSP430为代表。51内核单片机是目前应用最广泛、涉足人数最多的单片机,工业控制产品大多数是基于51内核单片机开发的。它的最大优点是技术成熟,电磁兼容性好,价格便宜,开发成本低。已有许多公司开发了以51为内核的功能强大、片上资源较丰富的单片机,如Cygnal,Atmel,SST,Dallas等,

9、而且有的单片机工作频率提高到了100Mips,有的单片机提供片内大容量的程序存储FLASH,有的单片机带USB接口,有的单片机提供在线调试、在线下载功能,大大地减轻了开发人员对仿真实验平台的依择UT6225632K×8bit动态RAM作为数据缓存。考虑模块产品化的要求,在模块设计时用看门狗和电源复位电路,防止单片机由于外部干扰进入死循环,还需要将模块的配置信息保留在模块内部,所以使用了X25045看门狗复位芯片。该芯片内部还有4 Kbit的E2PROM的存储空间,可以用来存储模块的一些配置信息,如模块的MAC地址、IP地址、网关、端口、远端服务器地址等在模块初始化需要配置的信息。硬件

10、的总体结构如图1,硬件模块保障了基本功能的完成。RJ45接口HR61101G 卜:j?地瓠L一工一+。+I。lx5045E gM墟L粥3轳P1麓总线L控制器L爿RT8019A片S. 1MAX卜RXD<=今J1232_赖。由于都是基于51内核结构,所以这些单片机的指令都是兼容的,程序的可移植性比较强。基于以上的考虑,选择SST公司的SST89E564RD 单片机作为系统核心处理芯片。该单片机最大的特点是具有在线调试和在线下载功能。内部程序FLASH 64KB,达到51内核单片机寻址最大范围,能够容纳裁减后的TCP/IP协议。外部接口丰富,有1个SPI口,1个UART口,1路PWM输出,可以

11、作为扩展外部电机控制。TCP/IP协议的最底层IP层,很多定义都是16位或32位的,这样使得能够处理16位、32位运算的CPU,如80386、ARM、MIPS、DSP等具有速度上的优势。由于指令及资源上的原因,在UNIX上实现的代P/IP协议的原代码并不能够直接移植到8位的单片机上。所以如何裁减TCP/IP协议、合理分配单片机内外部资源、优化代码提高单片机程序执行效率与提高程序代码的可移植性是本课题中的研究重点。通过计算,10Mb/s的数据流大于SST89E564RD 单片机的处理能力,所以选择价格低廉的10Mb/s ISA 总线接口的网络芯片RTS019AS较为合适。目前在工业以太网领域网络

12、接口芯片大多选择10Mb/s的芯片。由于需要处理网络数据包,一个最大网络数据包有1514B,而SST89E564RD内部的RAM只有256B,所以需要外扩RAM。同时TCP/IP协议栈需要考虑数据阻塞、超时重发等,需要比较大的数据缓存空间,选图1硬件框图2.2软件总体结构设计软件采用模块化思想设计,见图2。主要有以下几个功能模块:(1串行通信模块。用于与外部的串行总线进行通信,所有数据的收发都在模块内部完成,对其他的模块不构成影响。模块收发数据的处理参考双口RAM的概念。(2TCP/IP协议栈¨o。将传送数据封装TCP/IP协议,然后通过以太网接口芯片发送至以太网中,模块内部使用透明

13、模块的设计方法,输入输出数据由网络模块自动完成,无须外部干预。在嵌入式Internet的环境里实现完整的协议簇(约80KB是不合适的,需要对协议模块简化与修正。如放弃对拆分功能的支持,因为实现拆分和重组将浪费CPU的程序空间和执行时间;代码要求短小,以节省ROM空间;增加头部预测算法,以提高输入中断的处理速度;单包发送,不实现滑动窗口协议,不考虑流量控制和拥塞控制等。-。J.里竺竺坚竖竺整一j图2软件总体结构RFCll22定义了TCP/IP实现的兼容性建议,并 工业总线设备网络化改造的实现49说明了TCP的功能需求。裁减过程就是将RFCll22的所有需求列表,然后根据系统资源和应用实际需求决定

14、裁减、支持还是部分支持,并增加一些改善系统性能的内容,根据需要选择实现服务器端的TCP有限状态机。协议栈接口设计不遵循BSD Socket接口标准,软件状态机由事件或用户来触发。简化后的协议包括IP、UDP和TCP等协议核心的全部或部分功能,且尽可能使网络协议保持功能和机制上的完整性。整个TCP协议的实现,基于TCP状态机,每个状态机对应各自的处理函数。在TCP协议中用系统时钟计时判断数据包发送是否超时,单片机内部的3个时钟,一个作为串口波特率发生器,用另一个作为系统时钟,考虑到使用实时操作系统,所以TCP计时器的时钟使用操作系统的时钟,就是将一个计时器,分为多个操作系统时钟源,这样TCP计时

15、中断由操作系统产生,同时这个时钟可以被多个任务同时使用,由操作系统分配时钟间隔和产生中断向量。这样的使用方法比较灵活,可以有效地扩展为其他时钟的中断源。(3任务调度模块。串口模块、外部设备管理、TCP/IP协议栈、RT8019AS驱动需要有一个调度程序进行任务调度,系统的时钟源和中断向量也由这个部分产生,所以主控模块的任务调度能力以及中断响应的实时性都应比较好心J。本设计中,采用实时嵌入式操作系统的概念完成这个主控模块的设计,以保证任务调度的正确,系统内部资源不易溢出,能够处理异常的错误,整个模块的工作稳定、实时、高效。(4外围设备驱动。外围设备包括RT8019AS、X25045、串口及总线设

16、备,通过设备驱动的接口函数对这些外设进行读写,从而达到将整个系统融为一体的效果,使单片机内部对这些设备操作,如同操作内部寄存器一样方便。驱动程序要求规范,以保证网络数据收发的正确性。2.3系统任务调度模块的设计与实现这个部分是整个程序的核心部分,称为内核。内核负责管理各个任务,或者说为每个任务分配CPU时间,并且负责任务之间的通信。内核提供的基本服务是任务切换。实时内核允许将应用分成若干个任务,并由实时内核来管理它们M J。网络部分和串口、总线部分都有比较多的任务需要通过系统调度来完成,运用实时嵌入式操作系统(RTOS的概念,参考相应的RTOS旧1源码根据51内核单片机的硬件特点,自行编写了简

17、单实用、具有时间轮盘和实时任务调度的嵌入式操作系统。(1时间轮盘的实现。单片机SST89E564自带3个计数器,用Timer0产生1ms的时间中断,中断处理函数内用计数器以25ms为间隔给不同的任务标志置位。程序结构如下: void timer0_int(voidinterrupt1/1ms中断static int count=0;switch(countcase25:system_event l=EVENT_AItI-RETRANSMIT;/不同的时间间隔给不同的事件标志置位case50:systemevent l=EVENT-1CP_RETRANSMIT;if(count=100count

18、=0;/完成一次循环,重新计数count+:(2任务调度的实现。任务调度的实现通过在主循环中不断地轮询时间标志位,如果为真,则执行;为假,则跳过。程序结构如下:while(1if(system_event&EVENT_ETHARRIVEDEA=0;/关闭中断,防止函数重入system_event&=(EVENT_ETH_ARRIVED;/恢复标志位EA=1;EthRECE(;else if(system_event&EVENT_ARP-RETRANSMITEA=0;/关闭中断,防止函数重入system_event&=(EVENT_ARP_RETRANSMIT;/

19、恢复标志位EA=1;ARP_RETRANSMIT(;else if(system_event&EVENr-TCP_RETRANSMIT EA=0;/关闭中断,防止函数重入system_event&=(EVENT_TCP_RETRANSMllr;/恢复标志位EA=1;TCP_RETRANSMrr(;系统任务调度模块(内核是整个系统的框架,也是之后其他模块运行的平台,一切系统中断事件的产生与任务调度管理都是由这个部分完成。(下转第65页 采样延迟对调制自适应均衡性能影响的研究65(n爪P,(”/T、(”(n/1、+.("吖(V k埘%献芦矸(一八一嘛砖。X口/冻胡/莓P?

20、("LJ畿(”。:(。Uwn图2LSL自适应均衡网络(n,占。b(n为误差模的平方即模方,。+。(n为偏反射系数。在随后的算法迭代运算中,还有y。(n为新旧数据空间夹角参量,艿为软约束初始化系数。对于自适应均衡算法,遗忘因子A是重要的一参数,一般取值在0.950.9995之间,用此因子对输入信号加指数权A”,即时间越近加权越大。这样使算法更能反映当前情况,加强对非平稳信号的适应性。A较大时,抗噪能力强,但跟踪能力差。算法的迭代式如下:初始值为e。b(O=。(0=07。(0=1幺(o=占:(o=艿对于n1,迭代循环用下列各式e:(n=(n=菇(n占:(n=磊(n=蠢(rt一1+菇2(n

21、 yo(n=1对于0m一1,各参数量由下列各式迭代求得:偏反射系数。+。(n=。+。(n一1+兰:群前向预测误差“(n=(n一垒竺生!掣后向预测误差b小-e6。o(n-1一警前向误差模方F:+,(n=占:(n一:;÷!告后向误差模方占。b+。(n:占:(n一1一垒毒号S妥上新113数据空间夹角参量y。+。(凡一1=y。(n一1一措2QSPK(正交相移键控调制数传终端调制可分单道方式、双道方式两类,单道方式如二进制、戈进制,双道方式即正交调制方式,如正交调幅(QAM、正交移相键控(QPSK。QSPK是一种四相制的相位键控调制,每个码元包含两位二进制信息,通过载波的4种不同相位信息表征传

22、递数的字信息。双比特码元中两个信息比特通常按格雷编码排列00、01、10、11,采用格雷编码的好处在于相邻的双比特码元中两个信息比特只会有一个变化,从而消除(上接第49页评价系统任务调度模块(内核是否符合要求,有两个关键的指标,一个是对系统CPU占用的时间,另一个是实时响应能力。通过内核空负载运行与满负载运行测试内核的CPU占用时间,整个内核最小基本上不占用CPU资源,最大CPU占用时间与任务数量有关系,每多一个任务对CPU的占用率也是非常低的,这就表明内核对CPU的占用率非常低,能够将几乎全部的CPU资源留给系统任务使用,大大提供了内核的运行能力。整个系统完成后的测试结果表明,本设计实现的基于51内核单片机的嵌入式实时操作系统能够满足比较复杂的任务调度,实时响应能力好,能够应付许多对实时响应要求比较高的工控场合。3结束语经调测,整套程序已经比较稳定,TCP和UDP收发数据正常,TCP超时重传效果很好,在测试数据发送时断开网线3min内TCP状态保持良好,断开网线3min以上TCP能自动关闭原有连接,重新建立新的连接,并将继续传输数据。协议栈稳定性测试证明,整个单片机TCP/IP协议栈表现良好。设备实运行3个月状态正常。本系统(包括TCP

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论