网站首页 | 经济学论文 | 证券金融 | 管理学 | 会计审计 | 法学论文 | 医药学论文 | 社会学论文 | 教育论文 | 计算机 | 艺术论文 | 哲学论文 | 财务管理 |
写论文网
  • 教育理论论文
  • 基础教育论文
  • 中等教育论文
  • 高等教育论文
  • 职业教育论文
  • 心理学论文
  • 学科教育论文
  • 英语教学论文
  • 您的位置:写论文网 > 教育论文 > 中等教育论文 > 嵌入式控制_嵌入式linux在工... 正文 2019-12-27 07:26:38

    嵌入式控制_嵌入式linux在工业控制领域中的应用

    相关热词搜索:

    嵌入式linux在工业控制领域中的应用

    嵌入式linux在工业控制领域中的应用 关键词:嵌入式系统;
    嵌入式linux;
    工业控制 1 前言 随着Internet的飞速发展,网络应用越来越广泛,对各种工业控 制设备的网络功能要求也越来越高。当前的要求是希望工业控制设备能够支持T CP/IP以及其它Internet协议,从而能够通过用户熟悉的浏览器查 看设备状态、设置设备参数,或者将设备采集到的数据通过网络传送到Wind ows或Unix/Linux服务器上的数据库中。这就要求工控系统必须具 备两方面的功能:一是要在现场完成复杂的测控任务,因为通常一些任务都具有 一定的实时性要求;
    二是要求测控系统能够与某一类型的控制网相连,以实现远 程监控。在目前应用的大多数测控系统中,嵌入式系统的硬件采用的是8/16 位单片机;
    软件多采用汇编语言编程,由于这些程序仅包含一些简单的循环处理 控制流程。因此,单片机与单片机或上位机之间的通信通常通过RS232、R S485来组网。这些网络存在通信速度慢、联网功能差、开发困难等问题。工 业以太网已逐步完善,在工业控制领域获得越来越多的应用。工业以太网使用的 是TCP/IP协议,因而便于联网,并具有高速控制网络的优点。

    现在,32位嵌入式CPU价格的下降和性能指标的提高,为嵌入式系统 的广泛应用提供了可能。那么,限制嵌入式系统发展的瓶颈就突出地表现在软件 方面。尽管从上世纪八十年代末开始,已经陆续出现了一些嵌入式操作系统(比 较著名的有Vxwork、pSOS、Neculeus和Windows C E等),但这些专用操作系统都是商业化产品,其高昂的价格使许多生产低端产 品的小公司望而却步;
    而且,源代码的封闭性也大大限制了开发者的积极性。嵌 入式系统需要的是一套高度简练、界面友善、质量可靠、应用广泛、易开发、多 任务,并且价格低廉的操作系统。如今,业界已经达成共识:即嵌入式linu x是大势所趋。

    嵌入式Linux操作系统以价格低廉、功能强大、易于移植 等特点而正在被广泛采用,并已成为一种新兴力量。

    2 嵌入式linux技术 嵌入式Linux是按照嵌入式操作系统的要求而设计的一种小型操作 系统,它由一个Kernel(内核)及一些根据需要进行定制的系统模块组成。

    Kernel一般只有几百kB左右,即使加上其它必须的模块和应用程序,所需的存储空间也很小。它具有多任务、多进程的系统特征,有些还具有实时性。

    一个小型的嵌入式Linux系统只需要引导程序、Linux微内核、初始化 进程3个基本元素。运行嵌入式Linux的CPU可以是x86、Alpha、 Sparc、MIPS、PPC等。与这些芯片搭配的主板都很小,通常只有一 张PCI卡大小,有的甚至更小。嵌入式Linux所需的存储器不是软磁盘、 硬盘、Zip盘、CD-ROM、DVD这些众所周知的常规存储器,它主要使 用Rom、CompactFlash、M-Systems的DiskOnC hip、Sony的MemoryStick、IBM的MicroDrive 等体积极小(与主板上的BIOS大小相近),且存储容量不太大的存储器。它 的内存可以使用普通的内存,也可以使用专用的RAM。

    与其它嵌入式操作系统相比,Linux的源代码是开放的,不存在黑箱 技术。Linux作为一种可裁剪的软件平台系统,很可能发展成为未来嵌入式 设备产品的绝佳资源。Linux与生俱来的优秀网络血统更为今后的发展铺平 了一条宽广平坦的大路。因此,在保持Linux内核系统更小、更稳定、更具 价格竞争力等优势的同时,对系统内核进行实时性优化,更加使之能够适应对工 业控制领域高实时性的要求。这也正是嵌入式linux操作系统在嵌入式工控 系统中的发展所在。同时也使Linux成为嵌入式操作系统中的新贵。

    用来连接Flash Memory和文件系统的程序都以文件形式存储 在Flash文件中,需要时可以装入内存,这种动态的、根据需要加载的能力 是支持其它一系列功能的重要特征。它能使初始化代码在系统引导后被释放。实 际上,Linux同样还有很多内核外运行的公用程序,这些程序通常在初始化 时运行一次,以后就不再运行。而且,这些公用程序可以用它们相互共有的方式 一个接一个地按顺序运行。这样,相同内存空间可以被反复使用以“召入”每一个 程序,就象系统引导一样。这样可以节省内存,特别是那些配置一次以后就不再 更改的网络堆栈。如果将Linux可加载模块的功能包括在内核里,驱动程序 和应用程序就都可以被加载。由于它可以检查硬件环境并且为硬件装上相应的软 件,从而消除了用一个程序占用许多Flash Memory来处理多种硬件 的复杂性。另外,软件的升级更加模块化,可以在系统运行时在Flash上升 级应用程序和加载驱动程序,其配置信息和运行时间参数可以作为数据文件储存 在Flash中。

    3 嵌入式工业控制网络的实现方案 基于嵌入式linux的工控系统以嵌入式微处理器为核心来运行嵌入式Linux操作系统。应用程序可通过网络进行更新,并可通过键盘进行人机 对话,数据可通过LCD现场显示,重要数据可用文件形式保存在Flash等 闪存存储器中;
    数据和报警信息可通过串口向上位机传输,也可以通过以太网向 工业以太网或Inernet发布,用户还可通过网络实现远程监控和远程维护。

    更为关键的是,可充分利用Internet上已有的软件和协议(如:ftp, http以及Apache  PHP  MySQL等应用程序)迅速搭建前台数 据采集系统,以实现测控系统和后台管理系统的通讯。图1所示是这种实现方案 的系统框图。这种方式的优点有:
    (1)不需专用的通信线路即可用现成的INTER-NET网络将数据 传送到任何地方。

    (2)不仅能够传递数据信号,也可以传递音频和图像信号。

    (3) 由于目前的INTERNET协议是现成和公开的,因此,利用 大到几十兆的 Microsoft IE浏览器,或小到只有600kB的Mo saic浏览器都可以对网络数据进行读取。

    4 系统设计 4.1 硬件设计 嵌入式系统的硬件运行平台是开发应用程序的基础,整个开发板可基于I ntelR SA-1110 微处理器架构。

    图2所示是一个嵌入式系统的硬件结构框图。该硬件针对网络服务的应用 选择了Intel系列中的strongARM MCU。StrongARM SA-1110是一款高性能、低价位、高集成度微处理器。SA-1110芯 片内部集成有能以206MHz运行的32-bit IntelR Stro n-gARM* RISC处理器,以及速度可达100 MHz 的存储器总线和 灵活的存储器控制器,可支持SDRAM、 SMROM 以及variable -latency I/O 设备,并可为系统设计提供较高的存储带宽。由于S A-1110可以适应较大流量的网络应用,因而可为运行Linux提供硬件 上的支持。此外,SA-1110还在开发板上集成有32MB的SDRAM、 8 MB的FLASH、10 baseT以太网接口、RS232/RS485 串口、I/O接口以及扩展FLASH卡存储器等。有关SA-1110更详细的资料可参考有关资料。

    4.2 软件设计 嵌入式操作系统是整个嵌入式系统的核心。如前面所述,嵌入式系统在内 存容量和存储容量不足的情况下,必须对linux进行裁减设计。在裁剪过程 中,所涉及的主要技术有下面几种。

    (1)内核的精简 标准Linux是面向PC的,它集成了许多PC所需要而嵌入式系统并 不需要的功能。因此,对一些可独立加上或卸下的功能块,可在编译内核时,仅 保留嵌入式系统所需的功能模块,而删除不需要的功能块。这样,重新编译过的 内核就会显著减小。

    (2)虚拟内存机制的屏蔽 经过分析发现,虚拟内存是导致Linux实时性不强的原因之一。在工 业控制中,一些任务要满足一定的实时性要求,屏蔽内核的虚拟内存管理机制可 以增强Linux的实时性。当要更改内核的某项机制时,一般不必大规模地写 代码,可采用条件编译的方法。同时由于linux系统对应用进程采用的是公 平的时间分配调度算法,但这一算法也不能保证系统的实时性要求,因此要求对 其进行更改。更改途径有两种:一是通过POSIX,二是通过底层编程。笔者 是通过linux的实时有名管道(FIFO)的特殊队列来处理实时任务的先 后顺序。实际上,实时有名管道就象实时任务一样从不换页,因而可以大大减少 由于内存翻页而造成的不确定延时。

    图3给出了Linux的工作原理框图。

    (3)设备驱动程序的编写 确定了内核的基本功能后,就要为特定的设备编写驱动程序,可按照在L inux下编写驱动程序的规则进行编写。编写的设备驱动程序应当具有以下功 能:
    ●对设备进行初始化和释放;

    ●完成数据从内核到硬件设备的传送和从硬件读取数据两项功能;
    ●读取应用程序传递给设备文件的数据以及回送应用程序请求的数据;

    ●检测和处理设备出现的错误。

    (4)开发基于闪存的文件系统JFFS 应用程序和重要数据通常以文件的形式被存放在闪存文件系统中。JFF S2 文件系统是日志结构化的,这意味着它基本上是一长列节点。每个节点包 含着有关文件的部分信息。JFFS2 是专门为象闪存芯片那样的嵌入式设备 创建的,所以它的整个设计提供了更好的闪存管理,因而具有其它文件系统不可 比拟的优点。具体如下:
    ●JFFS2 在扇区级别上执行闪存擦除/写/读操作要比 Ext2 文件系统好。

    ●JFFS2 提供了比 Ext2fs 更好的崩溃/掉电安全保护。当需 要更改少量数据时,Ext2 文件系统会将整个扇区复制到内存(DRAM) 中,并在内存中合并成新数据再写回整个扇区。而JFFS2则可以随时更改需 要的(不是重写)整个扇区,同时还具有崩溃/掉电安全保护功能。

    实现上述几个步骤后,一个小型的Linux操作系统就构造完成了。构 造后的Linux包括进程管理、内存管理和文件管理等三部分。它支持多任务 并行,有完整的TCP/IP协议,同时Linux内建有对以太网控制器的支 持,可以通过以太网口连到以太网上,以实现远程配置与监控。

    将裁剪好的内核移植到所用的目标板上时,首先应将内核编译成针对该处 理器的目标代码。由于不同硬件体系的移植启动代码会有所不同,因此,一些内 核程序可能要改写。涉及到编写Linux的引导代码和修改与体系结构相关部 分的代码主要是启动引导、内存管理和中断处理部分。将M-System公司 的DOC2000作为系统的启动设备时,引导代码可以放在DOC上。这样  系统加电后,引导代码即可进行基本的硬件初始化,然后把内核映象装入内存并 运行,最后,再将调试好的内核和应用程序烧录到闪存中。由于此时裁剪后的L inux已成功移植到目标平台上,因此,在启动可运行的开发系统时,就可以根 据具体的应用来开发应用程序。如数据采集模块、数据处理模块、通信和数据发 布模块等等。5 结束语 如今,互联网应用正在转到以嵌入式设备为中心,因此,用工控系统与I nternet相结合来实现网络化已是一种必然的趋势。而把嵌入式linu x微处理器内核嵌入到基于StrongARM SA1110 的32位MC U系统中,然后通过构造TCP/IP多种网络协议和基本网络通信协议,再利 用嵌入式操作系统对底层硬件和网络协议的支持,以及对工控系统实时性要求的 lin-ux内核和虚拟内存机制进行改造,即可保证测控任务完成的实时性和 可靠性。可以预见,这种方案在工业控制领域具有很好的应用前景,而且具有开 发周期短、系统性能稳定可靠、适应性强等特点。

    • 范文大全
    • 教案
    • 优秀作文
    • 教师范文
    • 综合阅读
    • 读后感
    • 说说
    嵌入式控制_嵌入式linux在工业控制领域中的应用》由(写论文网)整理提供,版权归原作者、原出处所有。
    Copyright © 2019 写论文网 All Rights Reserved.