基于uC/OS—II操作系统和LPC2220微控制器实现数据采集记录仪的设计

发布时间:2023-04-13  

1 引言

数据采集记录仪在工业控制领域中有着十分重要的意义。在许多工业场合。尤其是对于一些分散的、无人值守的现场.需要对数据进行定时采集以便及时了解现场的情况.并根据情况发送控制命令。以前这些系统大多采用普通的单片机来实现.其缺陷是明显的.如系统资源短缺、指令不够精简、CPU操作频率低等,大大地限制了其使用场合。现在广泛使用的是ARM和PC机通过串行口构成的多微机监测系统.但仍存在问题,比如多仪器问的精确同步。


本文提出了一种基于ARM和GPS(Global Positioning System)的数据采集记录仪,并结合uC/OS—II嵌入式实时操作系统来实现。该系统具有良好的环境适应性、多仪器间的精确同步性、人机交互性、稳定性、高效性,很适合运用于电化学实验、腐蚀测量工程等领域。


2 系统总体结构设计

本数据采集记录仪主要包括两大部分:数据采集与数据存储传输。本文主要介绍数据采集模块的设计与实现。整个系统的系统功能模块如图1所示。


该系统要求采集4路电压通路.采集时间为100ms~255h.并连续记录ON、OFF电位至少24小时(不需要记录整个波形):同时由于本数据采集记录仪是一个多仪器系统,要求所有仪器都能够精确同步。因此.该系统要求每分钟,秒钟记录一次测试时间(GPS时间)。并将此时间与其它仪器记录时间相比。其它仪器记录时间用GPS同步。同时,该系统要求支持本地数据存储和u盘数据保存功能.且u盘数据保存的可存储容量取决于u盘的整体容量:该系统支持多种数据通讯功能。如Zigbee通讯、SPI总线接口通讯、I2C总线接口通讯、UART异步串行通讯。

基于uC/OS—II操作系统和LPC2220微控制器实现数据采集记录仪的设计

图1 数据采集记录仪的功能模块图

结合图1,可得整个系统的实现方案.如下:

1)与硬件平台相关的软件部分分析与实现,并编写相应的底层函数:

2)进行uC/OS—II嵌入式实时操作系统在LPC2220微处理器的移植:

3)系统各功能模块的分析与实现:

4)系统调试及改进。


该系统采用uC/OS-II嵌入式实时操作系统作为中问件,并将与硬件平台相关的部分与相应功能模块的实现隔离开来,尽可能地实现硬件与软件分开.这样方便进行系统设计。uC/OS-II嵌入式实时操作系统是一个多任务的实时内核,其允许建立多达63个用户任务.并根据程序建立和运行的情况.决定在什么时候从一个任务切换到另一个任务。同时。任务的优先级也是uC/OS-II嵌入式实时操作系统必须得到的信息之一。具体的任务划分如图2所示:

图2 系统任务划分图

3 数据采集模块原理与底层设计

3.1 采集信号分析

由于本数据采集记录仪主要应用于电化学实验及腐蚀测量工程中.其对信号采集与记录上有较高的要求.如下:

1) 3路直流0~±2.5V。14~16bit,分辨值0.1mV;

2) 1路交流0~±40v 14~16bit,分辨值0.1mV,自动档量程预选;

3) 4路通用10位AD.范围0~5v(预留)。

信号的采集过程为:首先采集并存储128个信号采样点,计算并存储此128个信号采样点中8个连续数据点的“斜率”。8个连续数据点的“斜率”计算算法为:首先每2个连续数据点计算一次斜率K1=(Y1-Y2)/(X1-X2).一次循环后得到4个斜率.对4个斜率取平均值并将此作为8个连续数据点的“斜率”。然后对前后一段时间的斜率的大小与走势进行比较.并根据相应的阈值来确定ON/OFF电位的位置。


3.2 数据采集

由于LPC2220内部提供一个8路10位A/D转换器.且转换时间低至2.44us捕足该系统对信号采集的基本要求。因此在进行数据采集的时候.就直接利用其内部提供的A/D转换器。LPC2220拥有一个10位8路A/D转换器.A/D转换器的基本时钟由VPB时钟提供.每个转换器包含一个可编程分频器,可将时钟调整至逐次逼迫转换所需的4.5MHz(最大)。完全满足精度要求的转换需要11个转换时钟。

此MD转换器的主要特性如下:

* 1个10位逐次逼近式模数转换器:

* 具有掉电模式:

* 10位转换时间小于2.44μs;

* 一个或多个输入的Burst转换模式:

启动A/D转换器的方式非常灵活.既可以单路软件启动,也可以设置为BURST模式对几路信号逐个循环采样。与其他LPC2000系列单片机相比.LPC2220增加了独立的基准电压源引脚.这对提高转换精度很有利。

由于被采集信号相对较复杂,且在ON/OFF电位处可能有较大的纹波,而实验证明最大程度的硬件滤波也无法达到非常理想的要求,因此必须使用软件滤波来减少纹波对信号采样的影响.具体滤波方法主要有中值/中值平均滤波法、限幅,限幅平均滤波法、算术/算术平均滤波法、消抖,消抖平均滤波法、加权递推,加权递推平均滤波法等。该系统主要采用中值平均滤波法与算术平均滤波法相结合的方法。

与数据采集有关的函数调用如下:

void ADInit(uint8 channel) //ADC初始化

uint32 ADRead(uint8 channel) //切换到ADC的任何一个通道并读取转换数据

void ADProcessfuint8*data) //数据处理与ON/OFF电位确定

数据采集模块基本流程图如图3所示。

图3 数据采集模块基本流秤图

3.3 数据采集模块测试

将系统数据采集模块输入端连接到现场传感器数据输出端.并结合ADSI.2中的AXD调试环境针对用户的相应操作对整个系统进行调试。测试结果如下:

1) 单通道数据采集测试结果及分析:单通道数据采集结果1如图4(a),ON电位为-0559.0mV,OFF电位为-0594.OmV,测量长度为00000000.4 S。数据采集结果2如图4(b)。上一次ON电位为-0589.0mV.OFF电位为-0584.0mv:当前ON电位为-0492.2mV.OFF电位为-0492.4mV.测量长度为00013467.8m。测试结果符合信号要求。

2) 四通道数据采集测试结果及分析:四通道数据采集如图5所示通道1数据为--0848inV.通道2数据为--0726mV,通道3数据-0023mV.通道4数据为-0152mv测量长度为147879221m。四个通道数据都正常.偏离实际信号数据在误差范围内。

图4 单通道数据采集结果

图5 四通道数据采集结果

4 结束语

本数据采集记录仪在LPC2220微控制器的硬件系统支持下.结合uC/OS一Ⅱ嵌入式实时操作系统和GPS全球定位系统实现对工业信号进行采集、记录、传输(无线与有线)、显示等功能。并具有以下创新点:

1)结合uCOS嵌入式实时操作系统进行系统设计.可以更大程度地提高系统的稳定性、高效性、智能性及降低系统开发的难度:

2)采用GPS全球定位系统技术辅助系统功能设计.可以实现各子系统间的精确同步,保证系统的稳定性;

3)提供多种形式的数据存储与转存接口;

4)提供Zigbee无线通讯,可以多系统组网,相互协调运作。

本文重点介绍的数据采集模块是整个数据记录仪的重要组成部分,具有高效性、高速性、实时性、智能性,精确同步性等特点。


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>