嵌入式系统在工业控制中的应用
嵌入式技术是21世纪最有生命力的新技术之一,目前已经广泛应用于社会生活的各个方面。嵌入式系统的应用与开发则是当今计算机行业发展的一个热点。现今嵌入式软件的应用与开发的领域主要有:国防、移动通信、电子、办公自动化、机/车顶盒、掌上电脑(或PDA)、手机软件、工业控制、信息家电等领域。工业等各部门对智能控制需求的不断增长,对嵌入式微处理器的实时性、运算速度、可扩充能力、系统可靠性、功耗和集成度等方面提出了更高的要求。
2、嵌入式系统与工业控制网络
美国电气工程师协会(IEE)的一个定义:嵌入式系统是用来控制或监视机器、装置或工厂等大规模系统的设备。嵌入式系统通常具有如下特性:
(1)通常只执行特定功能;是在特定领域内完成特定的功能的专用计算机系统,比如,它可用于一种工业仪器,也可能用于航天设备中的某个电子装置。这一点与一般桌上型办公设备或数据库系统有很大区别。
(2)嵌入式系统中硬件配置一般是根据系统的性能指标来确定的;除了附加的调试接口外,没有多余的硬件设备,一般是以计算机周边器件构成核心,其规模可在大范围内变化。如从8051芯片到X86芯片。而且嵌入式系统中是软件和硬件紧密结合。
(3)严格的时序和稳定性要求;这是因为在机器控制的大型系统中,程序运行稍有差错则可能使得整个系统失去控制,甚至酿成灾害。而且系统一般不进行交互动作,所以要求系统的自动运行要稳定、纠错能力强,可靠运行。
(4)具有实时性;因为在工业控制应用中大多数是属于过程控制,这些领域对系统要求是必须具有实时性,而且还要求有实时性的嵌入式操作系统。
(5)嵌入式系统的开发一般采用宿主机/目标机模式;在某个环境下调试好目标机器的软件和硬件,才能使目标机器离开开发环境,从而独立运行。
嵌入式系统是电脑软件与硬件的综合体,它是以应用为中心,以计算机技术为基础,软件硬件可裁剪,从而能够适应应用系统,对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。它将操作系统和功能软件集成于计算机硬件系统之中,简单的说就是系统的应用软件与系统的硬件一体化,类似于BIOS的工作方式,具有软件代码小,高度自动化,响应速度快等特点。特别适合于要求实时的和多任务的体系。
工业控制网络是由传感器、执行机构、显示和数据记录设备等组成,用于监视和控制电气设备的系统。通常除遇到系统不能自愈的故障需要人工干预排除外,均应有自动实现监控功能。在工业应用中,控制网络可以用于监视设备的状态、调节转速和流量等、采集模拟输入量、顺序开关/起停设备、与主控机通信并在显示器或专门定制的显示设备上显示各参量的大小和状态。由于工业控制系统特别强调可靠性和实时性。控制网络数据通信以引发物质或能量的运动为最终目的。用于测量与控制的数据通信的主要特点是:允许对实时的事件进行驱动通信,具有很高的数据完整性。
智能仪表的出现推动着工业控制网络的发展,新一代的工业控制网络呼唤功能更强大的仪表和控制器的出现,面向工业控制的嵌入式系统应势而生。
3、系统实现
系统的实现包括硬件实现和软件实现。
硬件实现
系统结构框图如图1。两个串行通信接口可以采用RS232。用以采集来自其他设备的远程的数据,然后由ARM微处理器进行处理,处理后的结果通过以太网接口分发给其他设备。为了调试的方便,Flash存储器使用了两个,512K的用于存储引导装载程序,2M的用来承载包含应用程序的操作系统映像。此种设计方式可以使在启动加载方式下,调试不同操作系统的应用程序时,只需要简单的更换包含对应的操作系统的引导程序的Flash芯片就能做到。为了满足大多数情况的需要,内存选用容量为16M的16bit的芯片。10M以太网接口的设计是考虑到通用性。为了调试的方便,这里使用了一个JTAG(国际标准测试协议)接口,可以访问其他系统资源,它还可以跟仿真器相连。USB接口分为两个主机接口和一个设备接口。LED用来在调试和使用过程中的显示数据结果。

图1 系统硬件结构图
软件实现
软件的实现包括两个方面,一个是系统的内核,另一个是设备的驱动程序。
(1)首先编译 Kernel的源代码
执行下列命令:
cd /usr/src/linux
make mrproper
make xconfig
会出现一个界面,可以根据自己的实际需要来选择。在编译内核的过程中,最繁杂的事情就是这步配置工作。在配置过程中,大部分选项可以使用其缺省值,只有小部分需要根据用户不同的需要选择。选择的原则是将与内核其它部分关系较远且不经常使用的部分功能代码编译成为可加载模块,有利于减小内核的长度,减小内核消耗的内存,简化该功能相应的环境改变时对内核的影响;不需要的功能就不要选;与内核关系紧密而且经常使用的部分功能代码直接编译到内核中。在选项Code maturity level options、Loadable module support、Processor type and features、Networking options、Network device support、ISDN subsystem、Character devices等分别选择适合自己所需要的项目。File systems建议选择相应的项目,为了以后扩充使用。
(2)为每个设备编写程序
Linux系统的设备驱动程序完成的主要工作是:
① 对每个硬件设备进行初始化和释放;
② 数据传输,将数据从内核传到硬件设备,或者从硬件设备传到内核,读取应用程序传送给硬件设备的数据和回送应用程序请求的数据;
③ 检测和处理硬件设备出现的错误和异常;
Linux系统的设备驱动程序的主要组成部分有:
① 自动配置和初始化子程序;
② 服务于I/O请求的子程序;
③ 中断服务子程序;
根据所选择的设备和设备所要完成的功能分别进行编写。
本文为授权转载文章,任何人未经原授权方同意,不得复制、转载、摘编等任何方式进行使用,e-works不承担由此而产生的任何法律责任! 如有异议请及时告之,以便进行及时处理。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。
- 上一篇文章:基于嵌入式系统的机械车载监控终端研究
- 下一篇文章:嵌入式系统架构的发展趋势及比较分析
- 南京代理低价格供应贝加莱嵌入式系统
- [推荐]ARM及嵌入式linux培训视频+dsp CPLD FPGA开发视频+嵌入式系统开发实用技术视频
- [推荐]ARM及嵌入式linux培训视频+dsp CPLD FPGA开发视频+嵌入式系统开发实用技术视频
- [推荐]ARM及嵌入式linux培训视频+dsp CPLD FPGA开发视频+嵌入式系统开发实用技术视频
- [推荐]ARM及嵌入式linux培训视频+dsp CPLD FPGA开发视频+嵌入式系统开发实用技术视频
- [推荐]ARM及嵌入式linux培训视频+dsp CPLD FPGA开发视频+嵌入式系统开发实用技术视频
- [注意]ARM及嵌入式linux培训视频+dsp CPLD FPGA开发视频+嵌入式系统开发实用技术视频
- 32位嵌入式系统——IT从业人员的机遇与挑战
