当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]基于μC/OS—II的数据采集控制系统设计

0 引言

在一些工业现场中,设备长时间运行容易出现故障,为了监控这些设备,通常利用数据采集装置采集他们运行时的数据并送给PC机, 通过运行在PC机上的特定软件对这些数据进行分析,以此判断当前运行设备的状况,进而采取相应措施。当前常用的数据采集装置,在其系统软件设计中,多采用 单任务顺序机制。这样就存在系统安全性差的问题。这对于稳定性、实时性要求很高的数据采集装置来说是不允许的,因此有必要引入嵌入式操作系统。本文以 μC/OSII为操作系统平台,基于ARM7系列处理器设计了一种通用的高性能数据采集控制系统。

1 系统总体设计

系统总体结构框图如图1所示。系统采用LPC2220工业级ARM7微控制器,内嵌μC/0S—II实时操作系统,支持10M以太网(工业级)、CF卡接口、USB主机控制器、板载电子硬盘FOB(Flash ON Board)、A/D转换、低功耗RTC等功能。核心模块与各采集控制模块之间采用具有光电隔离的RS485通讯接口。基于RS485总线的数据采集控制模块,可实现对电压、电流、脉冲/频率、状态量等各种类型信号的采集和开关量控制,以满足设施环境内各种传感器数据的采集和执行机构的智能化控制。
 

2 硬件设计

2.1 MiniARM工控模块

MiniARM工控模块主要由LPC2220(ARM7TDMI)微控制器、程序存储器、数据存储器、工业级以太网控制器CS8900A、USB HoST控制器和NAND F1ash存储器组成。MiniARM工控模块接口图如图2所示。

同时工控模块有256M的板载电子盘,一个标准的外置RTC实时时钟(PCF8563),2个UART控制器,一路高速I2C总线以及一路高速SPI总线等硬件资源。同时工控模块内嵌μC/OS—II实时操作系统,TCP/IP协议以及FAT32文件管理系统等。工控模块上的这些软硬件资源,可以很方便的实现远程网络访问,以及大容量的数据存储,满足我们的需要。

2.2.1 数据采集/控制模块设计

数据采集/控制模块的设计如图3所示,具有4个输入或输出通道,通过单片机实现数据采集与控制,与核心模块之间通过RS485总线实现通讯,采用光电隔离技术和内嵌工业标准的Modbus协议,有效增强通讯稳定性,通讯距离可延伸至1200米,总线驱动能力可达128个模块。
 

3 软件设计

3.1 核心模块软件设计

μC/OS—II是个实时操作系统。它是一个完整、可移植、可固化及可剪裁的抢占式多任务内栊适合小型控制系统具有执行效率高、占用空间小等特点。μC/OS-II系统内核的核心是任务调度机制。μC/OS-II下每个任务可以有休眠、就绪、运行以及中断等状态。μC/OS-II提供的任务间的通信力式有很多,如信号量、消息邮箱、消息队列和事件标志组等。

核心模块内嵌μC/OS—II实时操作系统,根据数据采集控制系统所需要完成的功能和需求,将系统划分为5个任务:数据采集控制任务,数据存储任务,远程网络访问任务,用户界面任务以及用户应用程序任务。为了保证系统的实时性,必须合理的设定任务的优先级。为了简化设计,对于运行任务较少的数控系统可以采用静态任务优先级分配。根据任务对响应时间的敏感程度及重要性,任务的优先级次序如下:

用户应用程序>数据采集控制任务>用户界面任务>数据存储任务>远程网络访问任务,每个任务实现一种相对独立的功能,系统任务流程图如图4所示。

数据采集控制任务主要完成数据的采集和对开关量的控制。核心模块作为主机,采集控制模块作为从机。主机通过论询的方式,每隔1秒向从机依次发送Modbus读寄存器命令帧。从机收到命令后,向主机返回采集到的数据。当程序控制逻辑或用户通过触摸屏需要开关量动作时,主机向从机发送写寄存器命令帧,相应的从机响应并打开或关闭电磁阀。

数据存储任务主要完成对采集到的数据的存储。当数据采集控制任务完成一次数据采集任务之后,数据存储任务会在电子盘上建立txt文件,并将数据存储到文件中。当数据存储任务检测到有U盘插入时,会将电子盘上的txt文件转存到U盘,并删除电子盘上的原文件。

远程网络访问任务主要实现用户通过网页浏览器实现对数据的查看和对开关的控制。远程网络访问任务一直监控有没有HTTP请求,当有HTTP请求时任务会将数据以HTTP协议发送给浏览器客户端。用户对控制模块的远程控制是通过提交表单的形式来实现的。

用户界面任务主要完成用户与系统的交互。通过大屏幕彩色液晶实时显示采集到的数据,并且可以显示数据的实时曲线。用户以通过触摸屏可以对系统进行设置和控制。

3.2 数据采集/控制模块软件设计

RS一485标准只是一个物理的通信接口标准,要实现总线监控还要在此基础上建立自己的高层通信协议。Modbus协议是美国可编程控制器供应商Modicon公司制定的一种工业通讯协议,现在已经被许多工控厂商所支持,广泛的应用到只能仪表,总线监控等领域。

Modbus协议采用主从结构的通信方式,适用于半双工的RS一485总线。协议规定总线上有一个主机,多个从机,每个主机分配唯一的地址。工作时可采用命令/应答的通讯方式,主机向要从机发出命令帧,地址匹配的从机进行响应,并向主机发出与命令帧对应的应答帧。Modbus有两种通信模式:ASCII模式和RTU模式。在本系统中采用RTU模式。RTU消息帧典型格式如表l所示。

在本采集控制系统中,核心模块作为主机,各个采集和控制模块作为从机响应主机发出的命令帧。当主机发送Ox03功能码时,从机会把模拟量的值或者状态量/频率量的值返回给主机。当主机发送0x16功能码时,会使控制模块开关量通断,并且控制模块会返回当前的状态。每个数据采集/控制模块有4路输入或输出通道。因此在每个采集/控制模块内部定义了4个寄存器,每个寄存器占两个字节。采集/控制模块按字节接收数据,每接收一个字节就进入一次串口中断。进入串口中断之后,对接收到的数据进行解析。解析数据的流程图如图5所示。

4 结束语

该系统采用了实时操作系统,使系统优先级明确,提高了实时性,同时实现了大容量的数据存储和远程网络访问。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭