打印
[应用相关]

STM32食物溯源系统

[复制链接]
1659|70
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主

使用特权

评论回复
沙发
goodluck09876|  楼主 | 2019-8-24 18:56 | 只看该作者

使用特权

评论回复
板凳
goodluck09876|  楼主 | 2019-8-24 18:56 | 只看该作者
    三个模块分别独立完成各自的数据采集任务,最后统一将数据上传到应用服务器数据
库进行保存。以上三个功能模块的实现,均是综合运用传感技术、个体识别、通信传输等
电子信息技术的过程。本文对三个功能模块实现主要采取以下技术路线:
    1)圈外活动监测模块
    (1)电源管理。对生猪个体活动的跟踪,是通过将功能模块内置于一款设计的宠物项
圈的形式来完成。所以该功能模块必须是电池供电,那么对模块进行节电和电量检测等设
计也就必不可少。
    (2)运动轨迹跟踪定位。本文设计通过GPS定位技术来完成生猪户外活动的跟踪和数
据采集。必须要对GPS定位数据进行滤波以降低该误差,在此基础上才能计算出可靠的
运动量等其它数据。
    (3)监测数据传输。针对养殖场地地形复杂、地域广阔,生猪数量多、活动性强等特
点,本文设计通过ZigBee技术在猪圈内搭建无线网络环境,模块采集的数据从项圈内的
ZigBee终端完成无线传输功能。

使用特权

评论回复
地板
goodluck09876|  楼主 | 2019-8-24 18:57 | 只看该作者
    圈外活动监测模块内置于宠物项圈佩戴于生猪脖颈,采集的数据与个体身份的绑定,
通过网络中心识别上传设备的地址,再往上传数据中添加对应身份信息的方式来完成。
    2)体重监测模块
    (1)体重数据采集。对生猪自然活动状态下进行体重数据的自动获取,不仅需要一套
牲畜电子秤,更需要有一种对动态数据的过滤和处理过程。
    (2)称重个体识别。本文设计通过RFID射频识别技术来识别称重对象的身份,完成
体重数据与个体身份信息的绑定。
    (3)监测数据传输。通过电子秤采集的称重数据,应当通过适当的方式完成数据上传。
    3)牲畜成长过程监测模块
    (1)视频监控。通过监控摄像头来完成对养殖现场录像视频数据的获取。
    (2)活动信息记录。本文设计通过RFID技术,来完成对监控点生猪的个体识别和活
动信息的记录。
    (3)个体活动视频获取。监控录像视频保存的是群体目标共同的活动数据,模块目标
为得到个体生猪生长过程的视频数据,本文设计通过视频分割技术结合个体活动信息从原
始录像文件中分割出有效的视频片段作为有效数据。

使用特权

评论回复
5
goodluck09876|  楼主 | 2019-8-24 18:57 | 只看该作者

使用特权

评论回复
6
goodluck09876|  楼主 | 2019-8-24 18:57 | 只看该作者

使用特权

评论回复
7
goodluck09876|  楼主 | 2019-8-24 18:57 | 只看该作者
    1)定位数据获取
    此处定位数据包括运动轨迹数据与活动量数据两类。
    运动轨迹数据用于描述生猪每日的大致运动行程,本文采用GPS定位技术来获取。
GPS获取的定位数据受到天气、收发设备时钟差等影响精度上会存在一定误差[[35],本模
块中因采用第三方定位模块,我们无法对卫星、天气等加以控制,系统只能设计一套最优
控制滤波算法来最大限度地降低定位数据误差。
    在获取GPS定位数据的基础上,模块仍需要据此来计算其它相关数据,主要为日运
动量和运动时间。运动时间可根据处理器时钟进行累计,但是GPS数据中却不包含运动
距离这项数据。模块只能通过一套软件算法,来实现GPS经纬度到距离的转换得到运动
里程这项数据。

使用特权

评论回复
8
goodluck09876|  楼主 | 2019-8-24 18:57 | 只看该作者
    2)电源管理
    上文提到,圈外活动监测模块是以宠物项圈为载体来完成其功能,整个功能模块通过
铿电池供电。一块充满电量的铿电池应当要维持模块长期可靠的运行,例如7天,模块必
须具备电量检测和节电管理等来警示和降低不必要的电源损耗。

使用特权

评论回复
9
goodluck09876|  楼主 | 2019-8-24 18:58 | 只看该作者
    3)数据传输功能
    本文对生猪圈外活动数据的采集策略为:在圈外活动时实时获取定位数据并本地保
存,待生猪返回猪圈结束圈外活动,再通过网络环境完成数据上传功能。本文选用ZigBee
无线通信协议来设计网络环境,该环境的搭建必须要满足多个活动对象分别传输大量数据
的需求;此外,数据通信必须采用一种报文通信协议,来确保大量不同种类数据的识别。

使用特权

评论回复
10
goodluck09876|  楼主 | 2019-8-24 18:58 | 只看该作者

使用特权

评论回复
11
goodluck09876|  楼主 | 2019-8-24 18:58 | 只看该作者
    本文采用的STM32F103作为单片机主控单元,通过铿电池经电源管理模块来供电,
GPS模块作为定位模块,ZigBee模块作为无线传输模块,本地存储模块将以mircoSD卡
作为存储器。文中涉及的模块均为第三方己开发模块,使用时无需了解其内部工作原理,
所以本文不再对其进行工作原理阐述。下面,本文将设计一款合适的宠物线圈,作为载体
携带圈外活动监测模块来完成对定位数据的获取。

使用特权

评论回复
12
goodluck09876|  楼主 | 2019-8-24 18:59 | 只看该作者

使用特权

评论回复
13
goodluck09876|  楼主 | 2019-8-24 18:59 | 只看该作者
    现根据以上各模块的尺寸,设计一款宠物项圈。项圈主要由皮带与三块功能盒组成,
分别标识为M1, M2, M3。其中M1中内置最小系统、电源电路模块、RFID卡,并具备
电源开关与两个指示灯,分别指示电量与系统工作情况;M2中内置GPS定位模块与
ZigBee无线模块,M3中主要存放铿电池。三块功能盒均做封闭防水设计,且各棱角光滑,
通信、充电接口等均以盒子侧面的插排接口的形式完成。宠物项圈的设计概念图如下所示:


使用特权

评论回复
14
goodluck09876|  楼主 | 2019-8-24 19:00 | 只看该作者

使用特权

评论回复
15
goodluck09876|  楼主 | 2019-8-24 19:00 | 只看该作者

使用特权

评论回复
16
goodluck09876|  楼主 | 2019-8-24 19:01 | 只看该作者

使用特权

评论回复
17
goodluck09876|  楼主 | 2019-8-24 19:01 | 只看该作者
    1)功耗分析
    在宠物线圈设计一节中,表3.1己将各主要功能模块的额定工作电流列出,由于电}1.}
芯片和各功能模块在低功耗状态下的电源损耗较小,便不再计算此状态下的电能损耗。
    现对假设生猪在正常情况下每天平均有10小时的圈外活动时间,14小时位于猪圈内
进行补饲、休息或睡眠。考虑生猪的活动速率较慢,将GPS模块输出频率配置为O.1HZ,
即每10获取一次定位数据。则主要耗电模块在工作状态下的电能损耗计算如下:
    (1)单片机与GPS模块
    ①当生猪位于圈外活动时,GPS根据输出频率实时工作,单片机也必定处于工作状
        态;
    ②当生猪位于猪圈休息时,单片机也需要实时通过GPS定位数据监测生猪是否离开
        猪圈,所以也是处于工作状态。
    所以单片机与GPS模块几乎一天工作24小时,单片机每日消耗电流264mAh,  GPS
模块每日消耗电流1080mAh o

使用特权

评论回复
18
goodluck09876|  楼主 | 2019-8-24 19:01 | 只看该作者
    (2) ZigBee无线通信模块
    ZigBee模块的功耗主要体现在进行数据传输时,所以其电能的消耗取决于传输数据量
的大小。现计算每日需要上传的数据及数据量如下:
    对于每条GPS定位数据,需要上传的数据包括:
    ①经度、纬度、海拔高度均为实型数据,各占4字节;
    ②日期、时刻采用整形数据,各占4字节长度。此处通过以处理器换算时间来换取
      存储空间和传输负荷的降低,例如整形数据“151203”表示201 _5年12月3日,
        同理时刻数据。
    对于户外运动量数据,需要上传的数据包括:
    ①日期采用整形数据,占4字节;
    ②日运动量和运动时长为整形,各占4字节。
    每条GPS定位数据内容占20字节长度。GPS模块每10秒获取一次定位数据,一天
总共获取169kB定位数据;每条户外运动量数据占12字节,但是这种运动量数据每日只
需上传一次。

使用特权

评论回复
19
goodluck09876|  楼主 | 2019-8-24 19:02 | 只看该作者
    2)节电算法
    根据上述功耗分析,本文主要采用引入以下三个策略来进行功耗管理:
    (1)休眠策略
    该策略的启用与否取决于生猪的位置是否位于猪圈,当生猪在猪圈内则GPS模块停
止工作进入休眠状态,离开猪圈则唤醒启动定位服务。

使用特权

评论回复
20
goodluck09876|  楼主 | 2019-8-24 19:02 | 只看该作者
    要实现上述策略,检测生猪相对猪圈的位置至关重要,对该位置的检测有两种方法:
    .定位数据检测
    首先是通过GPS定位数据比对猪圈位置信息的识别方法。通过该方法可以判别生猪
是否进入或离开猪圈,但是当识别生猪进入猪圈而启动休眠,模块便无法再获取定位数据,
不能准确判断生猪是否离开猪圈。
    .ZigBee模块检测
    再者就是根据ZigBee模块的特性来识别。上文提到系统将无线网络环境布置于猪圈
内部,根据ZigBee协议的自组网特性,当生猪上的终端节点进入该无线网络,其网络发
现和网络加入都有相应应答;而当终端节点离开无线网络,则其与父节点每_5分钟的心跳
数据也就停止。根据这个特性,系统便可识别生猪是否位于猪栏。
    通过ZigBee模块来识别的方法更简单方便,而且其功耗远小于GPS模块的电源损耗,
故本文采用ZigBee模块识别方法:
    休眠:当识别到生猪己进入猪圈并且停留超过_5分钟;
    唤醒:当识别到生猪离开猪圈,则GPS模块热启动(is)进入定位工作状态。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

220

主题

5843

帖子

21

粉丝