您的位置:控制工程论坛网论坛 » 嵌入式系统 » 基于嵌入式uClinux系统工业以太网设备的设计

jshfq

jshfq   |   当前状态:在线

总积分:17995  2024年可用积分:0

注册时间: 2007-08-06

最后登录时间: 2013-11-04

空间 发短消息加为好友

基于嵌入式uClinux系统工业以太网设备的设计

jshfq  发表于 2008/6/1 7:46:19      886 查看 0 回复  [上一主题]  [下一主题]

手机阅读









基于嵌入式uClinux系统工业以太网设备的设计

 
1 引言 


  在现实的工业控制领域系统中,各厂家产品兼容性差、价格昂贵、底层通信速度慢是现场总线技术一直没有得到大力推广的原因。工业以太网技术的出现和快速发展,不但很好的解决了这些问题,同时也为现场总线技术的发展开辟了一个更为广阔的空间。另外,嵌入式技术应用于智能测控系统中,具有以下特点:可以完成数据测量、数据处理、过程控制等多种任务;能确保一些任务的实时性;具有一定自诊断、自校正的功能;便于连接工业以太网,利用工业以太网实现远程监控和数据通信。这些都大大提高了测控系统的性能。


2 工业以太网的特点


  与其他现场总线或工业通信网络相比,工业以太网具有以下优点:


  应用广泛:以太网是目前应用最为广泛的计算机网络技术,具有广泛的技术支持。几乎所有的编程语言都支持以太网应用开发,如Java、Visual C++及Visual Basic等。这些编程语言由于广泛使用,并受到软件开发商的高度重视,具有很好的发展前景。因此,如果采用以太网技术,可以保证多种开发工具、开发环境供选择。


  成本低廉:由于以太网的应用最为广泛,因此受到硬件开发与生产厂商的高度重视与广泛支持,有多种硬件产品供用户选择。而且由于应用广泛,硬件价格也相对低廉。目前以太网网卡的价格只有PROFIBUS,FF等现场总线产品的十分之一,并且随着集成电路技术的发展,其价格还会进一步下降。


  通信速率高:以太网的通信速率已由10M转向100M的快速以太网,1000M以太网技术已经开始应用,10G以太网也正在研究,其速率比目前的现场总线快得多,可以满足对带宽的更高要求。


  软硬件资源丰富:由于以太网已应用多年,人们在以太网的设计、应用等方面有很多的经验,对其技术也十分熟悉。大量的软件资源和设计经验可以显著降低系统的开发和培训费用,从而可以显著降低系统的整体成本,并大大加快系统的开发和推广速度。


  可持续发展潜力大:由于以太网的广泛应用,使它的发展一直受到广泛的重视和吸引大量的技术投入。并且,在这信息瞬息万变的时代,企业的生存与发展将很大程度上依赖于一个快速而有效的通信管理网络,信息技术与通信技术的发展将更加迅速,也更加成熟,由此保证了以太网技术不断地持续向前发展。


  易于与企业内部网(Intranet)和互联网(Internet)连接:能实现办公自动化网络与工业控制网络的信息无缝集成。


  以太网在运用于实时的工业控制系统也有其不足之处,这主要是因为:


  以太网采用CSMA/CD碰撞检测方式,在网络负荷较重(大于40%)时,网络通信具有不确定性,不能满足工业控制的实时性要求。


  传统以太网所用的接插件、集线器、交换机和电缆等是为办公室应用而设计的,不符合工业现场恶劣环境的要求,在工厂环境中,以太网抗干扰(EMI)性能较差。


  若用于可燃、易爆等危险场合,以太网不具备本安特性,同时以太网不具备通过信号线向现场仪表供电的性能。


3 工业以太网通信协议


  工业以太网即应用于工业自动化领域的以太网技术。对应于国际标准化组织的开放系统互连参考模型(ISO/OSI),工业以太网协议在物理层和数据链路层均采用IEEE802.3标准,在网络层和传输层则采用被称为以太网上的"事实上"标准的TCP/IP协议簇(包括UDP、TCP、IP、ARP、ICMP、IGMP等),它们构成工业以太网的低四层,在高层协议中,工业以太网协议通常忽略掉会话层和表示层,而只定义应用层,也有的工业以太网协议还定义了用户层,其通信协议模型如图1所示。目前已经存在工业以太网协议有:Modbus/TCP(Schneider,1999)、Interbus (Phoenix,1999)、Ethernet/IP(ODVA,1999)、IDA(Vendor Alliance,2000)、HSE(Foundation,2000)、Profinet(Profibus,2001)。



点击看大图


图1 工业以太网通信系协议模型


4 系统分析及软硬件选型


  4.1 系统分析


  开发工业以太网智能设备的关键是要在嵌入式系统中实现以太网技术即嵌入式以太网,而以太网上各种网络协议的实现对嵌入式系统的运行速度和系统资源都有较高的要求。因此在进行系统方案设计时,除了要考虑常规因素外,还要满足网络功能所提出的需求。工业以太网智能设备的设计以高性能的微处理器和嵌入式操作系统为核心,所以这里主要探讨它们的选型。


  4.2 微处理器选型


  目前市场上主流的32位微处理器有Power PC、68000、MIPS和ARM等。通常在选择微处理器的时候,需要考虑性能、功耗、价格、配套的开发工具以及市场供货等因素,而ARM在这些方面恰好都具有优势。ARM具有业界领先的RISC体系结构,提供各种性能和版本可供选择,各类产品间互相兼容,方便系统升级。各大公司的支持使得产品性价比高,保证有稳定和畅通的供货渠道。此外ARM公司及其合作伙伴提供完整的技术支持,提供相对应的操作系统,提供软硬件设计和开发工具。鉴于ARM微处理器的众多优点,用它来开发硬件平台必定是理想的选择。


  由于ARM微处理器有多达十几种的内核结构,几十个芯片生产厂家,以及千变万化的内部功能配置组合,所以还需要作进一步比较。根据工业以太网设备网络应用的特点,重点考虑微处理的运行速度和片内外围电路后,选择了三星公司的S3C4510B芯片。该芯片属于ARM7系列,典型处理速度为0.9MIPS/MHz,系统时钟可达50MHz,速度已经能够适应绝大多数应用的要求。S3C4510B在片内集成了以太网MAC层控制器,可以简化网络接口电路的设计并提高系统的可靠性。此外该芯片具有同步动态存储器SDRAM控制逻辑,能够以低廉的价格方便地扩展大容量的存储器空间来运行操作系统。


  4.3 嵌入式操作系统选型


  虽然嵌入式系统的应用程序完全可以在"裸机"上运行,但是随着测控设备功能的增强,嵌入式系统所需完成的任务越来越复杂,程序代码越来越庞大,需要管理的外设越来越多,传统的软件开发模式已经显得力不从心。而采用嵌入式操作系统作为软件开发平台,就可以由操作系统来完成任务的管理和系统资源的分配,开发工作的重点才能集中于实际应用系统性能的提高。此外,在操作系统基础上可实现统一规范的编程,使程序具有良好的可读性和可移植性,并可提高开发的效率。


  嵌入式操作系统通常分为商用型和免费型两类。商用的嵌入式操作系统有WindRiver(风河)的VxWorks和pSOS、美国ATI的Nucleus Plus以及Microsoft(微软)的Windows CE等。免费的嵌入式操作系统有嵌入式Linux、uC/OS等。商用型操作系统功能稳定、可靠,有完善的技术支持和售后服务,但往往价格昂贵。免费型操作系统具有源代码公开和无需版税的优势,但也存在着开发困难的不足。


  嵌入式操作系统的选择需要根据用户的硬件平台和实际应用来确定,本系统选用嵌入式uClinux作为软件开发平台。uClinux属于免费型操作系统,是嵌入式Linux的一个分支,已经成功移植到多种像S3C4510B这样不带MMU的微处理器平台上,并在稳定性和其他方面都有上佳表现。更为重要的是uClinux具有完整的TCP/IP协议,可直接在其基础上进行应用层协议开发,大大加快软件开发进程。当然该系统也并非十全十美,它的非实时性就使应用受到一定的限制。不过目前存在两种不同的方案提供uClinux对实时性的支持:RTLinux(RTL)和RTAI,可对内核进行修改使uClinux应用到对实时性要求较高的场合。


5 关键技术介绍


  5.1 ARM微处理器


  ARM(Advanced RISC Machines)是对一类基于RISC(精简指令集计算机)架构的32位微处理器的统称,这类微处理器由于采用英国ARM公司的知识产权(IP)而得名。ARM公司成立于1991年,是专门从事基于RISC技术芯片设计开发的公司。作为知识产权供应商,ARM公司本身不直接从事芯片生产,而主要出售芯片设计技术的授权。世界各大半导体生产商从ARM公司购买其设计的ARM微处理器内核,针对各自不同的应用领域,加入适当的外围电路,从而形成自己的ARM微处理器进入市场。


  ARM微处理器由于具有性能高、成本低、功耗低、体积小等优点而在诸多领域得到广泛应用。到目前为止,其应用已经遍及工业控制、消费类电子产品、通信网络、无线通讯等领域,占32位RISC微处理器应用75%以上的市场份额。ARM在32位微处理器领域的领先地位就如同51系列单片机在8位微控制器领域的地位一样。另外,全球已有几十家大的半导体公司使用ARM公司的授权,这使得ARM技术可以获得更多的第三方的工具、制造和软件的支持。


  ARM微处理器是典型的RISC架构,该架构是针对传统CISC(复杂指令集计算机)架构存在的不足而提出来的。CISC架构指令集庞大,指令长度不固定,指令执行周期有长有短,这使得指令译码和流水线的实现在硬件上非常复杂,给芯片的设计开发和成本降低带来了极大困难。ARM微处理器采用RISC架构并结合一些独特的技术,形成以下特点:采用固定长度的单周期指令和灵活简单的寻址方式,执行效率高;大量使用寄存器,数据处理指令仅对寄存器进行操作,指令执行速度快;支持32位的ARM指令集和16位的Thumb指令集,能很好的兼容8/16位器件;可用加载/存储指令批量传输数据,以提高数据的传输效率;硬件上采用桶型移位器,可在一条数据处理指令中同时完成逻辑处理和移位处理;在循环处理中使用地址的自动增减来提高运行效率。


  RM微处理器目前主要包括ARM7、ARM9、ARM9E、ARM10E、SecurCore以及Inter的Xscale和StrongARM等系列。每个系列除具有ARM体系结构的共同特点以外,都有各自的特点和应用领域。


  5.2 uClinux嵌入式操作系统


  uClinux是嵌入式Linux的一个分支,是专门针对没有内存管理单元(MMU)的微处理器设计的嵌入式操作系统,是针对微控制领域的Linux系统。uClinux由Linux2.0/2.4内核派生而来,是通过对标准Linux进行小型化裁剪、优化和代码改写后形成的一个高度优化、代码紧凑的嵌入式Linux操作系统。虽然uClinux内核非常小,但它仍沿袭了Linux系统的绝大部分特性,为在硬件平台上更好的运行各种程序提供了保证。


  uClinux嵌入式操作系统具有如下特点:遵循GPL版权协议,源代码完全开放,可免费获取和使用丰富的软件资源,使软件开发周期大为缩短;是一个功能强大,性能高效稳定的多任务嵌入式操作系统;内核小巧(512k左右)且采用模块化设计,可根据应用需要灵活地裁剪内核和定制功能;具有成熟、完善的网络协议栈,支持所有标准因特网协议,可快速开发嵌入式系统在网络方面的应用;支持多种体系结构,已经在多种硬件平台上成功移植;同标准Linux系统的API函数保持一致,几乎不受没有MMU的影响;具有一整套开发工具,容易建立嵌入式系统的开发环境,并可直接使用内核调试器来进行调试和查错;支持主要的文件系统,如:FAT、EXT2、ROMFS、JFFS等;本身不具有实时性,但已有方案可对内核修改以应用到对实时性要求较高的场合。


  uClinux的基本架构如图2所示:



点击看大图


图2 uClinux 基本结构


  Boot Loader:负责Linux内核启动的代码,用于初始化系统资源以建立Linux内核运行环境,并从Flash存储器中装载初始化ramdisk。


  内核初始化:内核的入口点是start_kernel()函数。它初始化内核的其他部分,包括捕获,IRQ通道,调度,设备驱动,标定延迟循环,最重要的是能够fork"init"进程,以启动整个多任务环境。


  系统调用函数/捕获函数:在执行完"init"程序后,内核对程序流不再有直接的控制权,此后,它的作用仅仅是处理异步事件(例如硬件中断)和为系统调用提供进程。


  设备驱动:设备驱动占据了uClinux内核很大部分。同其他操作系统一样,设备驱动为它们所控制的硬件设备和操作系统提供接口。


  文件系统:文件系统使得用户能够查看存储设备上的文件和路径而无须考虑实际物理设备的文件系统类型。uClinux透明的支持许多不同文件系统,将各种安装文件和文件系统以一个完整的虚拟文件系统的形式呈现给用户。


6 结束语


  随着以太网技术的飞速发展,以太网应用于工业领域的障碍已基本解除。首先是以太网通信速率一再提高。以太网产生迟延的主要原因是由于碰撞,而碰撞产生的概率是由网络负荷决定的。通信速率的提高就意味着相同数据吞吐量条件下,网络负荷减轻和传输延时减少。其次采用双工星型网络拓扑结构和以太网交换技术。以太网交换机实现冲突域的隔离,使各端口之间数据帧输入输出不再受CSMA/CD机制的制约,再加上全双工通信方式使端口间两对双绞线(或两根光纤)上可以同时接收和发送数据,以太网通信确定性和实时性得到保障。同时许多公司也相继开发出适用于工业环境的以太网器件


  。美国Synergetic微系统公司和德国Hirschmann、Jetter AG等公司专门开发和生产了导轨式集线器、交换机产品,安装在标准DIN导轨上,并有冗余电源供电,接插件采用牢固的DB-9结构。美国NETsilicon公司采用NET+ARM体系,研制出低成本的工业以太网通信接口芯片。2003年公布的IEEE-802.3af标准中,对以太网的总线供电规范进行了定义。


  凡此种种,给以太网进入实时控制领域创造了条件。正因为如此,美国权威调查机构ARC(Automation Research Company)预测今后以太网不仅将继续垄断商业计算机网络通信和工业控制系统的上层网络通信市场,也必将领导未来现场总线的发展,Ethernet和TCP/IP将成为器件总线和现场总线的基础协议。美国VDC (Venture Development Corp)的调查报告也指出,Ethernet在工业控制领域中的应用将越来越广泛,世界占有率将由2000年的11%增加到2005年的23%[3]。


  S3C4510B与uClinux系统构成具有工业以太网接口的嵌入式智能设备,并利用TCP套接字实现工业以太网上的数据通信,这种方式综合了uClinux嵌入式系统和工业以太网的优点,能满足当前工业控制领域对测控任务的要求,保证测控任务完成的实时性、可靠性,将会在工业控制领域得到越来越广泛应用。

1楼 0 0 回复