当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]以高性能的S3CA4BOX芯片为处理器核心,结合嵌入式实时操作系统μC/OS-Ⅱ,设计并实现了实时性强、结构优化的农田信息采集系统;构建了嵌入式系统软硬件平台,详细阐述了应用软件的任务设计、优先级安排和各任务之间的关联性,经过理论和实验证明,该农田信息采集系统性能优良,可靠性高。

0 引言

精细农业的核心问题可叙述为信息获取、农田信息管理和分析、决策分析、决策的农田实施四大部分。其中农田基础信息(土壤养分、湿度、理化性状、苗情、病虫草害)的获取和处理是精细农业技术的起点。如果这个问题解决不好就很难真正地实施精准农业。农田信息主要包括地理环境、土壤环境、小气候、水环境、与作物生长状况相关的信息以及管理信息等,具有量大、多维(信息多种多样)、动态、不确定(系统的噪声或随机噪声)、不完整、时空变异性强等特点。在精细农业研究中,目前优先需要考虑的是土壤水分、土壤养分、土壤压实、耕作层深度和作物病虫草害及作物苗情分布信息等,要求能够定位、快速、精确、连续地测量。传统的实验室分析方法已很难满足这一要求,为此,需要开发适用于精细农业的农田信息快速采集技术。本设计以S3CA4B0X为主体,构建农田信息采集系统的硬件平台,并在S3CA4B0X内部嵌入μC/OS-Ⅱ实时操作系统,可大大提高系统的稳定性和实时响应能力,增强系统的可靠性、可扩展性、可移植性。

1 μC/OS-Ⅱ简介

嵌入式实时操作系统μC/OS-Ⅱ的全名是Micro-Controller Operating System Version2,是基于优先级的抢占式实时多任务操作系统,包含了实时内核、任务管理、时间管理、任务间通信同步(信号量,邮箱,消息队列)和内存管理等功能。

μC/OS-Ⅱ采用微内核设计,使用C语言编写,追求编程的灵活性,可配置、可裁剪、可扩充、可移植。μC/OS-Ⅱ是基于优先级的可剥夺型实时多任务内核,优先级算法采用查表法,切换速度快。μC/OS-Ⅱ可以处理和调度多达64个任务,目前有8个留给系统使用,应用程序可使用多达56个任务。

2 硬件系统设计

2.1 农田信息采集系统结构

系统主要由通讯模块、农田数据采集模块、数据处理及存储模块几部分组成。主要完成以下几个方面功能:

(1)在农田信息采样时,通讯模块接收全球定位系统GPS经纬度位置信息,数据采集模块完成田间土壤参数信息的采集,系统的多个模拟信号输入通道与田间土壤水分、温度、养分等传感器探针相连,测量田间土壤的水分、养分、温度等参数值,然后与上位计算机相连,进行处理。

(2)在工作室进行农田数据处理时,通讯模块将采集的农田数据传给计算机,计算机上的软件进行一系列处理,最终生成田间土壤水分分布图、养分分布图和温度变化图等并保存。

(3)农田信息采集系统扩展CAN总线数据收发接口后,可与农机机械的(拖拉机、收割机等)CAN控制总线相连接,帮助驾驶员驾驶农业机械在田间实施农业操作。在需要进行自动变量施肥、变量喷洒农药等农业作业中,要求农机机械在特定的农田中采取特定的行进速度,以达到喷撒物的剂量与农田作业的要求相适应。并依据农业信息采集系统和专家系统提供的农机机械作业路线,使驾驶员操作农机机械按照电子地图上设计的行走路线行走,从而完成播种、施肥、灭虫、灌溉、收割等工作,包括完成耕地深度、施肥量、灌溉量的控制任务等。

2.2 农田信息采集系统的硬件方案

本系统以嵌入式微处理器ARM S3C44B0X芯片为核心,包括传感器信息采集电路、串口通讯电路、GPS通讯电路、扩展的CAN总线、数据存储电路、液晶屏显示电路、键盘接口电路以及功能键盘等构成。系统结构如图1所示。


3 农田信息采集系统软件设计实现

3.1 μC/OS-Ⅱ嵌入式操作系统在S3CA4B0X芯片上的移植

在嵌入式操作系统应用中,每个任务都是相互独立的,而且会发生频繁的任务转换,为了使转换的任务能够返回到原来的断点,所以必须得把与转换的任务运行环境密切相关的各种寄存器和变量全部保存起来。这就是定义构造一个用户任务堆栈结构,来保证多任务嵌入式操作系统的正常运行,这种堆栈结构保存了与各个转换的任务运行环境密切相关的所有寄存器变量,而且所有任务的堆栈结构必须完全一致,这样才能用统一的任务切换程序在任务之间作频繁的任务转换,而且还要求不会破坏各个任务的实时运行环境。因此在建立每一个新任务的同时,必须为该任务分配一定的系统资源,包括一个任务栈、一个任务控制块,并将与该任务密切相关的各个变量,比如任务优先级别、堆栈大小等变量保存到任务控制块中,同时还得完全按照任务堆栈初始化结构那样初始化该任务的任务堆栈,然后将任务堆栈的栈顶指针保存到该任务控制块的相应位置。

移植工作主要是改写OS_CPU.H,OS_CPUA.ASM,OS_CPU.C,OS_CFGH,INCLUDES.H,其中与处理器相关的文件为:OS_CPU.H,OS_CP U.C,OS_CPU_.A.ASM。μC/OS-Ⅱ嵌入式操作系统硬件和软件体系结构如图2所示。

在数据类型定义中,S3C44B0X芯片是32位处理器,但是,μC/OS-Ⅱ嵌入式操作系统所处理的仍然是INT16U。用户必须将任务堆栈的数据类型告诉给μC/OS-Ⅱ嵌入式操作系统。这个过程是通过为OS_STK声明正确的C数据类型来完成的。S3C44B0X芯片的堆栈成员是16位的,所以将OS_TsK声明为无符号整形数据类型,定义如下:

tyPedefunsignedlong OS_STK;
堆栈增长方向OS_STK_GROWTH定义如下:
#defin OS_STK_GROWTH左堆栈增长方向为从上往下增长
#define STACKSIZE256/μC/OS-Ⅱ嵌入式操作系统需要先禁止中断访问代码的临界区,并且在访问完毕后重新允许中断。

与所有的实时内核一样,μC/OS-Ⅱ嵌入式操作系统需要先禁止中断再访问代码的临界区,并且在访问完毕后重新允许中断。这就使得μC/OS-Ⅱ嵌入式操作系统能够保护临界区代码免受多任务或中断服务例程的破坏。在S3CA4B0X芯片上是通过两个函数(OS_ENTER_CRITICAL()和OS_EXIT_RITICAL())实现开关中断的。

3.2 任务优先级及任务关联设计

在本项目中,为实现农田信息采集系统的功能要求,在μC/OS-Ⅱ中设计以下任务:时钟节拍任务、键盘任务、显示任务、数据采集任务(土壤水分、土壤养分、土壤压实、多点温度数据采集)、数据处理及存储任务、串口通讯任务。数据采集任务、数据处理与存储任务设置为周期性任务。在这些任务中,μC/OS-Ⅱ时钟节拍服务是通过中断服务子程序调用时钟节拍函数来实现的。因而采用定时器1产生中断,定时周期10ms。除此以外,该函数还要启动A/D转换以及每隔一段时间发送消息给相应的任务,从而触发相应的任务执行等。因此,优先级最高;数据采集任务、串口接收任务和串口发送任务实时性要求比较高。其中,串口接收任务是关键任务和紧迫任务,遗漏接收内容是不允许的;数据采集任务是紧迫任务,但不是关键任务,遗漏一个数据还不至于发生重大问题;在串行口发送任务中,CPU是主动方,慢一些也可行,只要将数据发出去就可以。显示任务和键盘任务是人机接口任务,实时性要求较低。由于显示任务要等数据处理及存储任务所得的数据,故数据处理及存储任务的优先级可安排得比键盘任务和显示任务高一些。农机设备控制任务的实时性要得到保证,因此要设为较高优先级。

由于系统的实际运行效果是各个任务配合运行的结果,这种配合过程又是通过操作系统的管理来实现的,即通过调用操作系统服务函数来实现的。“何时调用系统服务”和“调用什么系统服务”是任务设计中的关键问题,这个问题与任务之间的相互关联程度有关,需要通过分析这种关联关系才能确定。为了进行任务设计,必须把这些任务之间的相互关系搞清楚。

根据农田信息采集系统功能需求,设计任务关联图如图3所示。系统应用软件包含10个任务:传感器数据采集任务为周期性任务,以一定的时间间隔采集数据,通过消息队列将所采集数据传输给LCD显示任务,并通过邮箱1#传递给数据处理与存储任务,同时,GPS接收的位置信息通过邮箱2#及时插入采集的数据当中;数据处理与存储任务以信号量1#将数据通过串口通讯任务传递给计算机,并在计算机上生成田间土壤水分分布图、养分分布图和温度变化图等数据,计算机生成的数据又经串口通讯任务由信号量2#发给扩展CAN总线任务,以此来控制农田机械设备执行相应的程序,完成自动变量施肥、变量喷洒农药等;键盘扫描任务、数据处理与存储任务等和显示任务同步,以消息队列1#通知显示任务更新显示。


4 结束语

本文以嵌入式微处理器S3CA4B0X芯片为主体,构建农田信息采集系统的软硬件平台,分析了μC/OS-Ⅱ操作系统的特点,并在嵌入式微处理器S3C44B0X芯片内嵌入μC/OS-Ⅱ实时操作系统,阐述了基于μC/OS-Ⅱ操作系统的农田信息采集系统的设计与实现方法。由此开发的农田信息采集系统的实时响应速度快,并实现软件设计模块化,可大大提高系统的稳定性和实时响应能力,增强系统的可靠性、可扩展性、可移植性,有着广泛的应用前景。

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

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭