基于MSP430 单片机的无线信号采集系统
2015-03-06陈雷亮张仁杰
陈雷亮,张仁杰,刘 虎,刘 振
(上海理工大学 光电信息与计算机工程学院,上海 200093)
风能是目前最有开发利用前景的可再生清洁能源,风力发电作为风能利用的主要方式而备受关注[1]。风机叶片是风力发电机的关键部件,其性能的好坏直接影响整机运行的稳定。为了解风机叶片的振动状态,需对其进行测量。由于风力发电机叶片特殊的工作方式,采用传统的测量振动方法无法满足要求[2]。此外,振动传感器要安装在旋转的风力机叶片上,不能经常拆卸,因此需考虑固定和系统的功耗问题。无线传感技术成为了当今国内外研究的热点,在各领域都具有广阔的应用前景[3]。为此,设计了一种以MSP430单片机为核心,以SV610 收发芯片作为无线通信模块的采集系统。低功耗、实时性是该设计的最大特点。
1 无线采集系统的硬件设计
系统采用模块化设计思路,由压电传感器、单片机控制系统、信号处理模块、无线通信模块等部分组成,系统组成如图1 所示。
图1 无线采集系统的组成
1.1 传感器选择
由于叶片测振的特殊性,需要将传感器要安装在叶片上,所以对传感器的选择也提出了要求,既要满足低频高灵敏度,同时也要求质量轻[4]。此外,还考虑到风力发电机在野外受到风力的影响情况复杂,为了全面反映受损情况,需考虑三维受力方向,即X、Y、Z 轴3 个方向受力。本文选用深圳杰英特传感仪器有限公司Mini-Sensor 压电加速度传感器,该传感器的灵敏度可达1 V/g,质量仅为0.5 g,使用温度范围为-40 ~80 ℃。
1.2 信号预处理
信号预处理主要由两部分组成:放大器和滤波器。由于压电加速度传感器的内阻很高,而且输出的信号微弱,因此前置放大滤波电路有3 个作用:(1)将传感器的高阻抗输出变换成低阻抗输出。(2)将传感器的微弱信号进行放大。(3)将噪声信号滤除掉。原理图如图2 所示。
图2 信号预处理原理图
1.3 单片机的选择
选用MPS430 单片机作为系统的MCU,MSP430 单片机是美国德州仪器(TI)公司推出的高集成度、高精度的单芯片系统,是目前工业界中具有最低功耗的16位RISC 混合信号处理器[5],具有较低的工作电压,在1.8 ~3.6 V 之间均可正常工作。其功耗低,在活动模式时,工作电流为350 μA,在休眠模式下为0.5 μA 电流。MSP430 具有丰富的外设,片内具有3 个时钟信号,包括1 个高频时钟,1 个低频时钟和1 个DCO。灵活的时钟选择使得系统可以在合理的时钟下进行工作,大幅降低了系统功耗,方便了系统设计[6]。
MPS430 有一种正常工作活动模式与5 种低功耗模式。在本无线采集系统中,MPS430 平时工作于低功耗模式3(LPM3),在此模式下CPU 处于禁止状态,DOC 被禁止,直流发生器被禁止,MCLK 被禁止,SMCLK 被禁止,仅ACLK 处于活动状态。当上位机给出采集信号的请求后,将单片机唤醒,工作完后再次进入低功耗模式,单片机硬件原理图,如图3 所示。
图3 硬件原理图
下位机单片机的功能主要是数据的采集与发射,P6.0~P6.2功能选择为外围模块,负责3 路信号的采集。通信模式采用UART 模式,P3.4和P3.5选择外围模块,负责接收上位机指令信号和发送A/D 采样后的信号。A/D 采样的参考电压选择2.5 V,本文采用XC622125芯片,该芯片具有低功耗和低压差优点。考虑到系统功耗问题,时钟模块只外加了32 768 Hz 的手表晶振,最低采样时间可达32 ms。
1.4 无线通信模块
SV610 是高集成无线数据传输模块,采用高性能的Silicon Lab Si4432 射频芯片。极低的接收灵敏度,再加上业界领先的100 mW 的输出功率保证扩大范围和提高链路性能。模块提供了多频段信道以及网络ID 来降低传输过程中的干扰以提高传输性能。小体积、远距离传输、宽范围的工作电压乃至丰富便捷的编程设置使之得到了广泛的应用。
SV610 有多种数据传输率可选,灵敏度高达-121 dBm,工作频段有433/470/868/915 MHz 多个频段选择,本文选择433 MHz 频段。在理想环境中,传输距离可达1 400 m,其工作电压2.8 ~6.0 V,工作温度范围为-20 ~+70 ℃。
模块在配置模式下,可通过PC 软件或UART 接口在线设置相关参数。
2 无线采集系统的软件实现
采集系统软件包括主程序和中断服务程序,主程序进行初始化设置、外部中断设置,然后进入低功耗模式[7]。单片机收到上位机采集信号的请求后,通过UART 中断将单片机从睡眠模式中唤醒,进入中断服务程序开始A/D 采样。采样完成后调用发射程序,并将数据通过UART 发给接收模块,发送结束,系统重新进入睡眠状态[8]。程序流程如图4 所示。
图4 程序流程图
2.1 MSP430 串口通信
MSP430 通信模块在每个采样周期内将采集并进行A/D 转换后的12 Byte 的数发送给PC 机[9]。初始化中设置UART0 模块工作,选择时钟信号为ACLK,数据位为8 位,波特率为9 600 bit·s-1,发送数据方式为主动发送。当接收到一个完整的数据,产生一个信号URXIFG0=1,表示接受完整的数据。当数据正在发送中,UTXIFG0=1,此时不能再发送数据,必须等当前数据发送完毕(UTXIFG0=0)才能进行发送。
2.2 A/D 转换
由于MSP430F135 带有ADC12 模块,其由12 bit的SAR 核、采样保持电路、模拟开关、参考电压产生与选择电路、ADC 时钟选择电路等组成。ADC12 可在没有CPU 的参与下,独立实现16 次采样、转换和存储操作。ADC12 模块可独立断电,以便于低功耗设计。所以只需设置相应的寄存器就可以实现转换功能。
为减少CPU 功耗,程序采用中断触发方式,A/D采样由定时器中断触发。由于MSP430 内部A/D 寄存器是12 位,在无线传输时,发送数据缓存只有8 位,因此在传送的时候需要将采集的数据拆分成高8 位和低8 位然后放入数组进行发送,在接收端将接收的数据进行重新整合,完成采样数据的接收。
3 测试结果
将无线模块连接好,先进行应答测试[10]。上位机给出相应的命令,测试单片机是否能接收到,并给出正确的应答。图5 为应答测试结果。
图5 应答测试结果
经调试,系统收发模块均可正常工作。然后给出3 路信号,由前面可知A/D 采样的参考电压设置为2.5 V,故采样通道一端加2.5 V 的电压,另一端接地,还有一端接信号端。显示结果,如图6 所示。
无线通信需解决的最大问题就是保证传输数据的准确性,即要求误码率低。误码率是衡量数据在规定时间内数据传输精确性的指标,误码率=错误码元数/传输总码元数×100%。
图6 测试结果
从图6 可看出,PC 机可正确接收到12 Byte 的数据。实验采样间隔为32 ms,采样时间为30 min,将上述接收到的数据通过上位机处理,最后得出误码率为1.2%。此外,还进行其他电压测试,路信号都能正常工作,且误码率低,工作稳定。
4 结束语
本文描述了基于MSP430 单片机的无线信号采集系统。通过调试证明系统可正常运行,各方面指标都能达到设计要求。整个系统集成度高,功耗低,无线传输稳定,误码率低,且质量轻,可靠性高,易于控制和使用灵活等优点,因而性价比高。此设计已应用于风机叶片信号采集系统。
[1] 贺德馨.风工程与工业空气动力学[M].北京:国防工业出版社,2006.
[2] 孙安萍.风电发展专利情报分析研究[D].绵阳:西南科技大学,2011.
[3] Niranchana S,Dinesh E.Optimized tracking and detection of target nodes in wireless sensor networks[C].2013 International Conference on Information Communication and Embedded Systems(ICICES),2013:695-700.
[4] 邓英.风力发电机组设计与技术[M].北京:化学工业出版社,2011.
[5] 邹方卫,宋高俊,宋财华.基于MSP430 的射频卡读写系统设计与实现[J].计算机与现代化,2013(5):227-230.
[6] 胡大可.MSP430 系列单片机C 语言程序设计与开发[M].北京:北京航空航天大学出版社,2005.
[7] 汪华章.低功耗无线数据传输模块的研究与设计[J].中原工学院学报,2009,20(4):58-61.
[8] 李朝青.无线发送/接收IC 芯片及其实据通信技术选编[M].北京:北京航空航天大学出版社,2003.
[9] 孙波,王勇.基于MSP430 的串口扩展设计[J].电子测试,2010(4):64-67.
[10]吴键,袁慎芳.无线传感器网络节点的设计和实现[J].仪器仪表学报,2006,27(9):140-144.