董雨声,马松浩,汤庆威,胡福年
(江苏师范大学 江苏 徐州 221000)
绿色出行是当今深入人心的出新方式,选择自行车作为短途出行方式深受欢迎,自行车运动也是一项十分受欢迎的健身运动,而且在运动过程中可以充分享受到大自然,对于生活快节奏的现代人来说,无疑是一种很好的放松方法。对于自行车运动爱好者来说,一种经济实惠、简单便捷的多功能测控系统十分实用,既能实时方便知道车速、环境温度、行驶里程,也可以知道使用者的血压、心率,对不适的身体状况进行报警提醒使用者注意。既可以在室外使用,又适用于室内自行车,满足不同人群的需求,让更多人投入到绿色出行的行动中来。
以MSP430F149单片机为微处理器,与速度测量模块、lcd12864显示模块、Ds18b20温度传感器测量模块、心率测量模块、血压测量模块等组成具有实用价值的便携式自行车功能仪。系统总体结构图如图1所示。
图1 系统总体结构图Fig.1 The overall structure of the system
以MSP430F149单片机为核心,与集成霍尔元件模块组成的测速信模块、与LCD12864组成系统的显示模块,按键扫描模块和电源模块等相结合组成一体式测速系统,与DS18B20传感器如成温度模块。
设计采用MSP430F149单片机为微处理器,msp430系列单片机是由是美国德州仪器(TI)在1996年推出的一种16位超低功耗的单片机[1-2],具有丰富的片内片外接口。通过外接电路包括霍尔传感器,lcd12864,ds18b20温度传感器、心率传感器模块、血压传感器模块等组成具有实用价值的便携式自行车功能仪。
器件选择:采用3144霍尔传感器构成的开关量霍尔传感器,配合磁钢通过对自行车车轮的旋转配合磁钢的作用,使霍尔测速传感器产生脉冲信号,微处理器MSP430对输入的脉冲信号进行计数,再根据车轮的半径,通过编程算出实时的行驶车速。
测量原理:假设某一型号的自行车车轮外径D为60.00 cm,根据公式C=πd计算可知,轮子的周长为1.884 m。用霍尔传感器配合微处理器来采集轮子转一圈的时间T。从而根据C/T,便可以计算出车的速度。在一个计时周期内,当一次触发时,进入中断,并开始计时。紧接着第二次进入中断时,立刻记下计数值,并得出时间差T。设立一个标志位flag即可实现。假设一个计时周期为8 s,也就是最低的计算速度可以达到1.884/8=0.236 m/s=0.8478 km/h,由于msp430f149单片机计数的一个周期为0.000 12 s[3],故最快计时速度也远远超过自行车的实际能到达到的时速。所以这种测速方法理论上完全满足实际要求。
器件选择:采用8位并行、带中文字库LCD12864作为显示输出模块,12864最低至3.0 V电源电压供电,可以直接其显示分辨率为128×64,内置8 192个16*16点汉字,足以显示本设计中需要的全部数据与提示汉字等,12 864与msp430f149单片机接口电路简单稳定,可以直接连接。
采用集成的DALLAS18B20数字温度传感器,全部传感元件及转换电路集成在形如一只小三极管的集成电路内。且仅需占用两个I/O口资源,转换速度快,抗干扰能力强,测量精度也满足要求,可编程的分辨率为9~12位[3],对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.062 5℃,选择任意分辨率都能完全满足系统测量环境温度的精度要求。由于其可用3.0~5.5 V的宽供电电压范围,方便系统的供电电源设计,若用寄生电源供电方式可以直接通过与微处理器I/O口的数据线供电,这样外接连线更加便捷。
器件选择:采用图2所示的HK-2000A型脉搏传感器,其采用高度集成化工艺,将力敏元件(PVDF压电膜)、灵敏度温度补偿元件、感温元件、信号调理电路集成在传感器内部。具有灵敏度高、抗干扰性能强、过载能力大、一致性好、性能稳定可靠、使用寿命长等特点。该脉搏传感器还具有完善的信号调理功能,用户在使用时后级不需要再加滤波等电路。?根据压电式原理采集信号,将模拟信号输出,输出同步于脉搏波动的脉冲信号,脉搏波动一次输出一正脉冲,可以用于脉率数据的实时采集。心率测量系统结构图如下图3所示。
图2 HK-2000A型脉搏传感器Fig.2 HK-2000A-type pulse sensor
图3 心率测量系统结构图Fig.3 Heart rate measurement system diagram
测量方法:将HK-2000A型脉搏传感器绑在使用者的食指或中指尖上,绑时要施加一些压力,手指头应该会感觉到脉搏的跳动,输出插头通过耳机插座转接,接入到MSP430f149单片机中,通过在设定时间内测到的脉冲次数,计算出心率。
器件选择:Freescale MPXV5050GP压力传感器是最新型的单片式带信号调节的硅压力传感器,集成了片上技术、双极运算放大器电路和薄膜电阻器网络,可提供高输出信号和温度补偿功能,提供与所施压力成正比、精确的高电平模拟输出信号。因其体积小巧、可靠性高,适用于血压测量。
原理:本系统测量血压采用示波法[4]。测量过程中采用袖带来阻断上臂动脉血流。在充气过程中,压力增加,检测静压力和袖带内气体的振荡波,振荡波起源于血管壁的搏动。当袖带压力高于收缩压时,动脉被压闭,此时因近端脉搏的冲击而呈现细小的振荡波。随着袖套压力下降,在袖带静压力小于舒张压之前,动脉管壁在舒张期已充分扩展,管壁刚性增强,因而波幅维持在较小的水平。示波法血压测量就是根据脉搏波振幅与袖带压力之间的关系来估计血压的。将脉搏波振动信号的幅值与信号的最大幅值相比进行归一化处理,通过确定收缩压和舒张压的归一化系数来识别收缩压与舒张压。血压测量系统结构图如图4所示。
图4 血压测量系统结构图Fig.4 Blood pressure measuring system structure diagram
测量方法:由单片机发出指令,控制气泵和电磁阀,实现袖带的充气和放气,由袖带内部的MPXV5050GP压力传感器将测量得到的电压值反馈到单片机中,通过MSP430单片机内部的ADC转换和经过程序处理,计算出收缩压和舒张压,实现血压的测量。
单片机编程选择C语言作为编程语言[6],以IAR for msp430作为开发环境。先初始化液晶、定时器、ds18b20等模块,然后再主程序中调用各个模块函数,计算结果输出到lcd12864上显示。系统总体程序流程图如图5所示。
用霍尔传感器,来采集车轮转一圈的时间T。从而根据C/T,便可以计算出车的速度。当外部触发中断,记录时间T,计时器清零。然后通过时间T(轮子转一圈的时间),算出此时车速[5]。采用集成霍尔传感器,例如3143。可以在有磁场和无磁场两种状况下,产生高低电平。
根据ds18b20芯片手册,因其读写数据指令对时序有严格的要求,只需严格按手册控制读写时间,通过定时器延时能够得到极为精确的μs级延时可以准确的实现温度测量。
本文采用MSP430F149为微处理器,并通过霍尔传感器进行速度测量,用DS18B20温度传感器进行温度测量。速度选取准确,显示稳定,电路简单,成本较低,所得数据可靠更加适应各种恶劣的自然环境,不受泥泞道路、光强度等经常出现的干扰因素的影响,达到了设计要求。软件在IAR for MSP430 IDE环境下采用C语言编写,模块化程序设计,结构清晰,方便维护与扩展。设计中也存在的一些不足之处:如显示器部分占用面积过大,相对比较耗电,批量生产应采用可定制的段式液晶。
[1]李智奇.MSP430系列超低功耗单片机原理与系统设计[M].西安:西安电子科技大学出版社,2008.
[2]秦龙,MSP430单片机C语言应用程序设计实例精讲[M].北京:电子工业出版社,2006.
[3]陶 冶,袁永超,罗 平.基于DS18B20的单片机温度测量系统[J].农机化研究, 2007(10):160-164.
[4]张晓兰,何琳,胡志刚,王笑一.基于MSP430的防水型电子血压计设计[J].计算机测量与控制,2013(2):10-19.
[5]董燕飞,董良师,王洪林.基于单片机的自行车测速系统设计[J].科技广场,2009(9):189-190.
[6]谭浩强.C语言程序设计[M].北京:清华大学出版社,2000.