冷链物流物联网系统低功耗冷藏车厢(源码)
设计了一种基于MSP430F149和CC1101的低功耗温度监控节点,完成了样机的制作和现场测试。节点由主控芯片模块、电源模块、CC1101接口模块和温度采集模块组成,设计了基于CC1101电磁波唤醒功能的被动轮询式通信协议,采用函数宏定义优化和基于情景感知的能量管理技术,实现了在低功耗要求下对冷藏车厢内温度的采集,并通过射频通信模块将温度数据发送至汇聚节点,达到了温度监测的目的。测试结果表明,温度监控节点工作稳定,接收模式电流为25mA,发送模式电流为9mA,睡眠模式电流为3mA,可持续工作90天以上,达到了预期目标。关键词 MSP430F149,CC1101,低功耗,电磁波唤醒,温度采集目 录
1 引言 1
1.1 课题研究背景及意义 1
1.2 国内外研究和发展现状 1
2 系统方案设计 4
2.1 系统总体描述 4
2.2 系统需求分析 5
2.3 总体方案 5
2.4 低功耗设计方案 6
3 硬件设计 11
3.1 主控芯片模块 11
3.2 电源模块 12
3.3 CC1101模块接口 13
3.4 温度采集模块 13
3.5 PCB设计及硬件实物 14
4 程序设计 14
4.1 SPI驱动模块 15
4.2 DS18B20驱动模块 16
4.3 串口驱动模块 17
4.4 CC1101驱动模块 18
4.5 OLED驱动模块 19
4.6 配置模块 19
4.7 主程序模块 19
5 测试 20
结论 23
致谢 24
参考文献 25
1 引言
1.1 课题研究背景及意义
本课题来源于2014年度江苏省科技厅产学研联合创新资金-前瞻性联合研究项目“冷链物流溯源监控物联网系统研发(BY2014097)”。
冷链物流物联网系统中需要对冷藏车厢内的环境温度进行实时地监测和上传,以便追踪在 *好棒文|www.hbsrm.com +Q: ¥3^5`1^9`1^6^0`7^2$
20
结论 23
致谢 24
参考文献 25
1 引言
1.1 课题研究背景及意义
本课题来源于2014年度江苏省科技厅产学研联合创新资金-前瞻性联合研究项目“冷链物流溯源监控物联网系统研发(BY2014097)”。
冷链物流物联网系统中需要对冷藏车厢内的环境温度进行实时地监测和上传,以便追踪在冷藏运输过程中冷藏车厢内温度数据是否在规定范围内。为此,需要设计冷藏车厢内温度监控节点,实现对冷藏车厢内温度的实时监测。由于冷链物流运输过程持续时间长,而温度监控节点携带的电池电量非常有限,且冷藏车厢环境封闭不易更换电池或重新充电。因此,如何满足温度监控节点在低温环境下的低功耗要求成为冷链物流企业目前亟待解决的问题。
1.2 国内外研究和发展现状
随着物联网产业的兴起,无线传感器网络(WSN)[1-4]技术日益得到广泛关注。其中,由于无线传感器节点一般体积微小,通常可携带的电池电量也非常有限。而且其部署的区域环境相对复杂,有些区域甚至人类都无法到达,重新充电或更换电池几乎是不可能的[5]。因此,无线传感器网络的低功耗设计是必须重点考虑的问题之一[6]。为了解决上述问题,从嵌入式智能化传感器系统组成角度出发,需要在硬件设计和程序设计两个方面共同研究无线传感器节点的低功耗设计方法[7]。
在硬件上,一个典型的无线感知节点通常由传感器模块、主控芯片模块、无线收发模块和能量供应模块构成,其中前三个模块消耗能量[8]。由图1-1可知,无线收发模块在上述三个模块中消耗的能量最大。此外,无线收发模块可分为发送、接收、空闲和睡眠四种工作模式,其中发送模式所消耗的能量最大,接收和空闲模式所消耗的能量,睡眠状态下所消耗的能量最小。微控制器模块所消耗的能量远小于无线收发模块,而传感器模块所消耗的能量最少,相较于其他模块基本上可以忽略不计。
由上可知,硬件上低功耗设计优化的主要研究对象是无线收发模块,其次是微处理器模块,传感器模块则可以忽略不计。
图1-1无线感知节点功耗分布[9]
对于无线收发模块来说,降低功耗最直接的方法是提高芯片的设计生产工艺,使其整体的工作能耗降低。其次也可以采用多种工作模式,通过模式切换的方式来降低功耗,如发送、接收、空闲和睡眠模式。由图1-1可知,无线收发模块中空闲状态的能耗几乎和接收状态相同,而睡眠状态能耗很低,使用多种工作模式时可以将空闲模式切换至睡眠模式,以此有效地减少空闲模式的持续时间以降低功耗。但是,上述方法也存在问题。在无线传感器网络中,传感器节点进入睡眠模式后无法知道其它节点何时会发送数据给自身,所以只能由MCU定时地唤醒无线收发模块并切换到接收模式来检测空中的电磁波,这种机制并没有解决在其它节点无数据传输的时候本节点唤醒MCU和通信模块所带来的功耗浪费问题。另外,上述方法还带来了时间延迟问题,即当其它节点需要向该节点发送数据包时,可能由于此节点处于睡眠状态而不能实时地接收到其它节点的数据[10]。
文献[11]采用波束供电技术解决了上述问题。波束供电技术的理论来源是麦克斯韦的电磁场理论,即变化的电场产生变化的磁场,在变化的磁场周围又会产生变化的电场,由此使能量通过交替变化的电磁场辐射出去[11]。当有电磁波时,接收天线能从交变的电磁场中获得工作所需的能量,波束供电的原理如图1-2所示。接收天线接收到电磁波后,在电感和电容C1上产生谐振电流,谐振电流通过二极管进行整流后为电容C2进行充电,由此提供足够的瞬时电流使芯片能够工作。使用上述原理外加放大电路即可检测空中的电磁波并产生足够的电平触发微控制器的外部中断,实现射频唤醒功能。
图1-2波束供电原理[11]
上述方法能够在不消耗额外能量的条件下及时地通过外部中断唤醒微控制器,有效地解决了频繁唤醒微控制器和无线通信模块所带来的功耗浪费问题。但是,上述方法在硬件设计上需要增加额外的电路和元器件,增加了设计难度和成本。并且当无线信道干扰严重的情况下,无线传感器节点容易被误唤醒,造成无谓的能量损耗。
对于微处理器来说,CPU电路的静态功耗很低,在当前工艺下占总功耗的1%以下[12],可以暂不考虑。其动态功率计算公式为:
式中,Pd为CPU的动态功耗;CT为CPU的负载电容;V为CPU的工作电压;f为CPU的工作频率[13]。
由上式可知,要降低CPU的功耗,在能够正常运行的前提下,要尽可能地降低供电电压和工作频率。另外,现在主流的低功耗微处理器一般都支持多种工作模式,适当的工作模式切换也可以降低功耗。
在软件上,为了解决无线传感器节点处于睡眠状态后不能实时地响应其他节点的请求的问题,引入了时间同步的技术。由于传统的时间同步协议NTP [14]和GPS [15]都不适合无线通信中使用通信不稳定,单个成本低,对功耗敏感的特点,各国学者提出了许多适合无线传感器网络的同步算法,这些算法主要可分为基于接收者-接收者的同步算法、基于成对同步的双向同步算法和基于发送者-接收者的单向同步算法。接收者-接收者的典型代表算法为RBS[16],该算法使用一个参考节点周期性地发送参照广播,广播域中的节点根据接收到的时钟数据和自身的时间进行比较得出偏移量,并与广播域中其它节点进行时间信息交换,从而进行同步。RBS算法对于有n个节点的网络,需要O(n2)的信息交换,信息交换开销大。成对同步的代表算法为TPSN[17]算法,此算法分为两个阶段:层次发现阶段和同步阶段。层次发现阶段从根节点开始通过广播包的形式将所有节点划分层次;同步阶段上层节点分别与下层所有节点进行成对同步。该算法只在树的边上进行同步,减小了信息交换的开销,但如果根节点损坏,则需要重新划分节点层次和同步,耗费时间。基于发送者-接收者的同步算法的原理为发送节点发送一个包含本地发送时间戳信息的时间同步数据包,接收节点用本地时钟记录接收时间并取出同步数据包中的时间戳信息,然后根据此时间戳调整自身时钟与同步节点时钟同步。该算法只需要发送一次时间同步消息,减少了网络开销,但由于不能准确估计网络延迟,所以同步精度会有所下降。对比上述三种同步算法,对于冷藏车厢内一个汇聚节点和四个采集节点构成的简单星形拓扑网络显得并不适用。由于在整个冷链物流运输过程中并不需要每时每刻对温度数据进行监测,探索引入基于情景感知的能量管理策略降低温度监控节点功耗。情景感知[18]是指应用能够获
1 引言 1
1.1 课题研究背景及意义 1
1.2 国内外研究和发展现状 1
2 系统方案设计 4
2.1 系统总体描述 4
2.2 系统需求分析 5
2.3 总体方案 5
2.4 低功耗设计方案 6
3 硬件设计 11
3.1 主控芯片模块 11
3.2 电源模块 12
3.3 CC1101模块接口 13
3.4 温度采集模块 13
3.5 PCB设计及硬件实物 14
4 程序设计 14
4.1 SPI驱动模块 15
4.2 DS18B20驱动模块 16
4.3 串口驱动模块 17
4.4 CC1101驱动模块 18
4.5 OLED驱动模块 19
4.6 配置模块 19
4.7 主程序模块 19
5 测试 20
结论 23
致谢 24
参考文献 25
1 引言
1.1 课题研究背景及意义
本课题来源于2014年度江苏省科技厅产学研联合创新资金-前瞻性联合研究项目“冷链物流溯源监控物联网系统研发(BY2014097)”。
冷链物流物联网系统中需要对冷藏车厢内的环境温度进行实时地监测和上传,以便追踪在 *好棒文|www.hbsrm.com +Q: ¥3^5`1^9`1^6^0`7^2$
20
结论 23
致谢 24
参考文献 25
1 引言
1.1 课题研究背景及意义
本课题来源于2014年度江苏省科技厅产学研联合创新资金-前瞻性联合研究项目“冷链物流溯源监控物联网系统研发(BY2014097)”。
冷链物流物联网系统中需要对冷藏车厢内的环境温度进行实时地监测和上传,以便追踪在冷藏运输过程中冷藏车厢内温度数据是否在规定范围内。为此,需要设计冷藏车厢内温度监控节点,实现对冷藏车厢内温度的实时监测。由于冷链物流运输过程持续时间长,而温度监控节点携带的电池电量非常有限,且冷藏车厢环境封闭不易更换电池或重新充电。因此,如何满足温度监控节点在低温环境下的低功耗要求成为冷链物流企业目前亟待解决的问题。
1.2 国内外研究和发展现状
随着物联网产业的兴起,无线传感器网络(WSN)[1-4]技术日益得到广泛关注。其中,由于无线传感器节点一般体积微小,通常可携带的电池电量也非常有限。而且其部署的区域环境相对复杂,有些区域甚至人类都无法到达,重新充电或更换电池几乎是不可能的[5]。因此,无线传感器网络的低功耗设计是必须重点考虑的问题之一[6]。为了解决上述问题,从嵌入式智能化传感器系统组成角度出发,需要在硬件设计和程序设计两个方面共同研究无线传感器节点的低功耗设计方法[7]。
在硬件上,一个典型的无线感知节点通常由传感器模块、主控芯片模块、无线收发模块和能量供应模块构成,其中前三个模块消耗能量[8]。由图1-1可知,无线收发模块在上述三个模块中消耗的能量最大。此外,无线收发模块可分为发送、接收、空闲和睡眠四种工作模式,其中发送模式所消耗的能量最大,接收和空闲模式所消耗的能量,睡眠状态下所消耗的能量最小。微控制器模块所消耗的能量远小于无线收发模块,而传感器模块所消耗的能量最少,相较于其他模块基本上可以忽略不计。
由上可知,硬件上低功耗设计优化的主要研究对象是无线收发模块,其次是微处理器模块,传感器模块则可以忽略不计。
图1-1无线感知节点功耗分布[9]
对于无线收发模块来说,降低功耗最直接的方法是提高芯片的设计生产工艺,使其整体的工作能耗降低。其次也可以采用多种工作模式,通过模式切换的方式来降低功耗,如发送、接收、空闲和睡眠模式。由图1-1可知,无线收发模块中空闲状态的能耗几乎和接收状态相同,而睡眠状态能耗很低,使用多种工作模式时可以将空闲模式切换至睡眠模式,以此有效地减少空闲模式的持续时间以降低功耗。但是,上述方法也存在问题。在无线传感器网络中,传感器节点进入睡眠模式后无法知道其它节点何时会发送数据给自身,所以只能由MCU定时地唤醒无线收发模块并切换到接收模式来检测空中的电磁波,这种机制并没有解决在其它节点无数据传输的时候本节点唤醒MCU和通信模块所带来的功耗浪费问题。另外,上述方法还带来了时间延迟问题,即当其它节点需要向该节点发送数据包时,可能由于此节点处于睡眠状态而不能实时地接收到其它节点的数据[10]。
文献[11]采用波束供电技术解决了上述问题。波束供电技术的理论来源是麦克斯韦的电磁场理论,即变化的电场产生变化的磁场,在变化的磁场周围又会产生变化的电场,由此使能量通过交替变化的电磁场辐射出去[11]。当有电磁波时,接收天线能从交变的电磁场中获得工作所需的能量,波束供电的原理如图1-2所示。接收天线接收到电磁波后,在电感和电容C1上产生谐振电流,谐振电流通过二极管进行整流后为电容C2进行充电,由此提供足够的瞬时电流使芯片能够工作。使用上述原理外加放大电路即可检测空中的电磁波并产生足够的电平触发微控制器的外部中断,实现射频唤醒功能。
图1-2波束供电原理[11]
上述方法能够在不消耗额外能量的条件下及时地通过外部中断唤醒微控制器,有效地解决了频繁唤醒微控制器和无线通信模块所带来的功耗浪费问题。但是,上述方法在硬件设计上需要增加额外的电路和元器件,增加了设计难度和成本。并且当无线信道干扰严重的情况下,无线传感器节点容易被误唤醒,造成无谓的能量损耗。
对于微处理器来说,CPU电路的静态功耗很低,在当前工艺下占总功耗的1%以下[12],可以暂不考虑。其动态功率计算公式为:
式中,Pd为CPU的动态功耗;CT为CPU的负载电容;V为CPU的工作电压;f为CPU的工作频率[13]。
由上式可知,要降低CPU的功耗,在能够正常运行的前提下,要尽可能地降低供电电压和工作频率。另外,现在主流的低功耗微处理器一般都支持多种工作模式,适当的工作模式切换也可以降低功耗。
在软件上,为了解决无线传感器节点处于睡眠状态后不能实时地响应其他节点的请求的问题,引入了时间同步的技术。由于传统的时间同步协议NTP [14]和GPS [15]都不适合无线通信中使用通信不稳定,单个成本低,对功耗敏感的特点,各国学者提出了许多适合无线传感器网络的同步算法,这些算法主要可分为基于接收者-接收者的同步算法、基于成对同步的双向同步算法和基于发送者-接收者的单向同步算法。接收者-接收者的典型代表算法为RBS[16],该算法使用一个参考节点周期性地发送参照广播,广播域中的节点根据接收到的时钟数据和自身的时间进行比较得出偏移量,并与广播域中其它节点进行时间信息交换,从而进行同步。RBS算法对于有n个节点的网络,需要O(n2)的信息交换,信息交换开销大。成对同步的代表算法为TPSN[17]算法,此算法分为两个阶段:层次发现阶段和同步阶段。层次发现阶段从根节点开始通过广播包的形式将所有节点划分层次;同步阶段上层节点分别与下层所有节点进行成对同步。该算法只在树的边上进行同步,减小了信息交换的开销,但如果根节点损坏,则需要重新划分节点层次和同步,耗费时间。基于发送者-接收者的同步算法的原理为发送节点发送一个包含本地发送时间戳信息的时间同步数据包,接收节点用本地时钟记录接收时间并取出同步数据包中的时间戳信息,然后根据此时间戳调整自身时钟与同步节点时钟同步。该算法只需要发送一次时间同步消息,减少了网络开销,但由于不能准确估计网络延迟,所以同步精度会有所下降。对比上述三种同步算法,对于冷藏车厢内一个汇聚节点和四个采集节点构成的简单星形拓扑网络显得并不适用。由于在整个冷链物流运输过程中并不需要每时每刻对温度数据进行监测,探索引入基于情景感知的能量管理策略降低温度监控节点功耗。情景感知[18]是指应用能够获
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/jsjkxyjs/2696.html