计步器的设计【开题报告+文献综述+毕业论文】

计步器的设计【开题报告+文献综述+毕业论文】

ID:464394

大小:2.21 MB

页数:48页

时间:2017-08-05

上传者:U-944
计步器的设计【开题报告+文献综述+毕业论文】_第1页
计步器的设计【开题报告+文献综述+毕业论文】_第2页
计步器的设计【开题报告+文献综述+毕业论文】_第3页
计步器的设计【开题报告+文献综述+毕业论文】_第4页
计步器的设计【开题报告+文献综述+毕业论文】_第5页
计步器的设计【开题报告+文献综述+毕业论文】_第6页
计步器的设计【开题报告+文献综述+毕业论文】_第7页
计步器的设计【开题报告+文献综述+毕业论文】_第8页
计步器的设计【开题报告+文献综述+毕业论文】_第9页
计步器的设计【开题报告+文献综述+毕业论文】_第10页
资源描述:

《计步器的设计【开题报告+文献综述+毕业论文】》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

本科毕业论文系列开题报告通信工程计步器的设计一、课题研究意义及现状计步器的出现,是由于“健康”在我们的生活中地位的提高,没有健康的身体,一切都将无从谈起。锻炼是保持健康的最佳方式。步行是最简单、方便又廉价的运动形式,这应该是大部分人的最佳选择。四十年前一位日本研究人员吉城旗野提出“日行万步”的运动理念,理念根据为:医学家统计得出,人一天大约要过剩300卡的多余热量,每天步行一万步,就意味着可以把这些过剩热量消耗光。走路时带个计步器,可显示步数、运动时消耗的热量,调节灵敏度的计步器。有了电子计步器,一切都改变了,每天定量记录运动的多少,在闲暇时间适当的步行可以弥补一天运动量的不足。早期的计步器通常利用摆锤原理做为计步技术,靠人体走路时的晃动使小钢球来回滚动来测量步数的,但是多次试验证明,其产生的误差很大。所以后来就发展到用电子感应和加速计技术,这两种技术和之前的摆锤技术相比更准确,更为重要的是,不必像之前那样计步器需要佩带需要和垂直于地面而一般只能带于皮带上,因靠感应身体的震动而计步,可以更多方向的佩带,特别是加速计,更是可以360度任何方向的运作。所以你可以放在口袋或是挂在脖子上,如果计步器体积够簿小,更是可以放在钱包里面。电子计步器主要由振动传感器和电子计数器组成。人在步行时重心都要有一点上下移动。以腰部的上下位移最为明显,所以记步器挂在腰带上最为适宜。所谓的振动传感器其实就是一个平衡锤在上下振动时平衡被破坏使一个触点能出现通/断动作,由电子计数器记录并显示就完成了主要功能,其他的热量消耗,路程换算均由电路完成。目前的计步器类型很多,计步器的功能不仅仅只是第一代记录行走步数功能,还丰富了很多附加功能,除了计步功能,卡路里,距离,收音机和时间也是计步器通常带有的功能,这些功能都非常普遍。 当然,计步器还有很多方面需要改进,虽然现在的计步器比较第一代的计步器在数值方面已经很精确,可以说趋于完美了,而且也发展了很多功能,大大的提高了计步器的使用价值,但是很大的空间需要我们去发展。例如,在携带方面,虽然计步器已经进步的很小只了,但是会经常忘记携带,所以,可以将计步器安装在我们平时注意力较高的物件上,防止忘记携带,比如安装在手机上,手表上,甚至鞋子上。在衍生功能的卡路里功能方面,也许改进,卡路里值与使用者的体重,步行速度都有关系,所以要向计步器输入体重和速度参数。等等。通过这一次的设计,明白步数的精确度在计步器这个电子仪器中是最重要的一环,人体行走时的摆动很复杂,很容易造成传感器的误判,例如,弯腰起身此类动作时,计步器则会认为是行走,所以传感器预先值的设定是非常重要的,当然还有其它预先值。明白每一个细小不起眼的值在仪器设计制作过程中都不容忽视,我们需要进行多次试验和计算,以取得最佳值,当然,误差还是存在的。希望将来能设计出更佳方案,传感器更加精确的信息,将误差值降到最低,并且还可以加入多种功能,以满足不同使用者所需,从而提高计步器的使用价值。二、课题研究的主要内容和预期目标本课题研究的主要内容是设计一个能记录步数和消耗的卡路里的多功能计步器。基本目标是:在使用者行走时,通过传感器,能准确感测到步行时产生的震动,同时led能正确显示出要求的数据,包含行走的总步数,距离,消耗的能量。其中,记录步数的最大值为9999,当步数为9999时,可以按清零键对计步器的数据清零,实现循环使用,并且也设暂停键,暂停期间计步器保持显示最后的数据。在完成基本功能后,可以进一步增加功能,如:在开始计步和结束计步时计步器会发出提示音;每走1000步时,也会发出提示音。三、课题研究的方法及措施通过大量阅读和参考各种有关计步器的资料,基本熟悉研究对象的基本方案和具体原理,在熟悉相关内容之后可以着手选择正确的方案,结合相关的理论知识,通过实践摸索,在有了一个比较全面的理论和实际认识之后,确定本设计的方案采用利用人行走时腰部产生的加速度变化以检测步数,主要是通过加速度传感器ADXL202采集加速度信息并将数据送到单片机进行处理,最后单片机控制整个系统的工作并从数据中检测出步数送到LCD进行显示;外部控制按键进行开关机控制以及功能选择等。如下系统框图所示。 本课题所面临的难点所在为对加速度传感器ADXL202设定它的采样频率和采样带宽,以及软件的程序编写中对加速度峰值的判断门限的选择。在设计过程中可能遇到的问题有:对C8051F005的程序编写不熟悉;采样频率和采样带宽的设定不是最佳值,当采样频率过低时,不能准确反应数据的变化情况;过高时,则引入很多无用信息;还有就是判断门限的选择,偏高会造成漏选,偏低则会误判导致过多等。解决的方法首先要学习C8051F005芯片手册及相关实验书籍,对C8051F005有一个相对系统的了解及独立编程。其次是掌握加速度传感器ADXL202的基本工作原理,并且需要将加速度传感器结合在单片机上编写多种基本功能的程序进行实验。四、课题研究进度计划毕业设计期限:自2010年10月至2011年5月。第一阶段(5周):学习和查找计步器的设计原理以及方案,学习单片机原理,学习PCB板设计和制作的相关理论知识,熟悉相关开发软件以及调试用开发板,完成开题报告、文献综述、外文翻译;具体安排如下:第1周:查找相关资料,了解计步器的基本原理以及可能实现的各种功能,并且结合实际,设定出自己可能完成实现的功能。第2周:查找并学习加速度传感器ADXL202资料,熟悉C8051F005单片机;第3、4周:完成外文翻译、文献综述、开题报告;第5周:准备所需元器件以及前期工作总结。第二阶段(5周):设计计步器的电路图并制板,焊接和调试所制好的PCB板;同时,编写相关的主控程序,进行系统调试;第1周:设计计步器的电路模板,并完成焊接及调试;第2周:编写实现计步,距离,消耗能量功能的主程序; 第3周:结合主程序,编写led显示程序,并调试;第4周:计步器完整系统调试;第5周:其他辅助功能扩展,整理资料为后期写论文作准备。第三阶段(2周):写论文及其他要求的文档。五、参考文献[1]万光毅,孙九安等.SoC单片机实验、实践与应用设计--基于C8051F系列[M].北京:北京航天航空大学出版社,2006,5.[2]潘琢金,施国君等.C8051F单片机应用解析[M].北京:北京航天航空大学出版社,2002,5.[3]SiliconLaboratories.C8051F0XXdatasheet[M].http://www.silicon.com.[4]宋浩然,廖文帅,赵一鸣.基于加速度传感器ADXL330的高精度计步器[J].传感技术学报,2006,(08):1005-1007.[5]韩屏.加速度传感器ADXL202在无线监测中的应用[J].单片机与嵌入式系统应用,2010(04):48-50.[6]庞晶,牟为华.基于ADXL202的计步器[J].电子世界,2004(02):51.[7]戴剑松,李靖等.运用计步器测量步行之研究[N].北京体育大学学报,2008(02).[8]史玉成.计步器:帮您走出健康[N];中国质量报;2007年.[9]CHOSeongyun,PARKChangook.MEMSbasedpedestriannavigationsystem[J].TheJournalofNAVIGATION,2006,59(1):135153.[10]KOICHIS,HIKARUI,YUTAKAS.Nonrestrictedmeasurementofwalkingdistance[C]∥Proceedingsof2000IEEEInternationalConferenceonSystem,man,andCybernetics.Nashville:IEEE,2000:18471852.[11]金英.慢跑的能量消耗[J];辽宁体育科技;1981(01):15-17.[12]蔡忠见.人体活动量的测量[J];渝州大学学报(自然科学版);1997(02):20-21. 毕业论文文献综述通信工程多功能计步器摘要:本文主要介绍了多功能计步器的设计思路。本类多功能计步器主要用于鞋子,在人们行走中,通过传感器,检测到足底压力得到行走或跑步的步数和路程,同时具有活动能量计算,显示,语音的多功能计步器。设计主要采用AT89S52单片机为核心,采集足底压力信号,然后调理整形,由单片机实现步数,体能消耗的计算及显示。关键词:单片机;足底压力;计步器;能量消耗;一、引言随着社会的发展,人们健康意识的提高,越来越注重自己的健康,跑步成为一种方便而又有效的锻炼方式。但是如何知道自己跑了多少步,多远的路程?计步器可以帮助人们实时掌握锻炼情况。它的主要功能是检测步数,通过步数和步幅可计算行走的路程。步幅信息可通过行走固定的距离如20m来计算或是直接输入,高级的计步器还可以计算人体消耗的热量。但这些计算的主要依据是步数的检测[1][2][3]。二、计步器的设计首先,介绍计步器的工作原理。要实现检测步数,首先要对人走路的姿态有一定了解。人在行走时,脚、腿、腰部,手臂都在运动,它们的运动都会产生相应的状态变化,并且也会有一定的规律。研究表明,通过脚的状态变化,来检测步数是最准确的,但是在设计过程中,由于诸多因素的影响,比如考虑到携带的方便性,还有设计方法及元件的限制,人们只能选择通过腰部的运动来检测步数。在第一代计步器设计中,设计者利用腰部运动以检测步数。人在行走时,腰部有上下的垂直运动,在每步开始时会有一个比较大的力,利用对力的峰值检测可以得到行走的步数,使用过程中,使用者将计步器佩戴在腰间,行走一段路,采集到垂直力的曲线,最后可通过曲线图计算得到行走的步数并显示出来[4]。 第一代计步器,在使用过程中,呈现出了诸多问题,如:一,使用时必须佩戴于腰部,此时用要求,明显造成了很大的不方便。二,由于腰部的运动曲线容易变化,运动时,如果使用者运动幅度较小,计步器比较难采集到精确的运动信号,所以设计者又设计出了代替腰部的振荡计步器,此计步器是佩戴与手腕部,通过人在跑步时,手腕的来回晃动,发送给计步器运动的信号,从而得到运动的步数,以及消耗的能量,此设计最大的优点就是携带方便,较之前的计步器,也较精确,但还存在因为运动幅度不定而导致信号采集不准确的,导致计步结果的不准确的缺点。设计者明白,如果不是通过脚检测步数,在设计计步器时,设计方法或仪器的制作无论多少精确,使用者在使用时,由于不是利用脚的运动检测步数,灵敏度受到的影响较大,计步的准确度一定不高,无法达到希望值。为了弥补传统计步器的不足,设计者设计方向渐渐地转向脚,希望能通过脚检测步数,该计步器主要是安装于鞋部,在人们行走过程中,计步器通过传感器,检测到足底压力,开始采集足底压力信号,然后调理整形,通过AT89S52单片机计算得到步数,计步器还设置单片机可以根据所计算的步数,通过预先输入的参数计算运动能量消耗的程序得到相应步数的能量消耗,并且显示步数,能量消耗,运动时间。该设计方法较第一代计步器,由于是利用足底压力得到信号进行计步,优化了计步和活动能量消耗的计算方法,也提高了运动信号检测的准确度和稳定性[5]。设计者在实现基本的计步功能后,还可利用单片机,优化计步器的功能,以制造出一双完美的计步鞋。每次散步,穿上这种特殊的鞋子去散步,在达到定量的运动效果之后,可利用预先设置的闹钟功能进行提醒,或者也可以设定时间,定时进行提醒,提醒使用者停止散步。也可增加MP3功能,当检测到使用者开始运动时,会自动播放音乐,从而令使用者在运动过程中保持愉悦的心情[6]。然后介绍计步器的设计构架以及工作情况。计步器主要包括:主控51系列单片机,传感器,调理整形电路,显示器等四个模块。在用于鞋部的计步器设计时,单片机的作用是至关重要的。51系列单片机是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器,具有1000次擦写周期,非常适合开发新产品使用。在单片机芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得51系列单片机为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。51系列单片机还具有看门狗定时器,定时器/计数器,中断结构,全双工串行口,片内晶振及时钟电路等功能。另外,51系列单片机可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。在空闲模式下时,CPU将停止工作,允许RAM、定时器/计数器、串口、中断继续工作。在掉电保护方式下时,RAM内容被保存,振荡器被冻结, 单片机一切工作停止,直到下一个中断或硬件复位为止。这一系列的功能,完全有利于计步器的设计功能,能精确地完成计步,能量消耗,语音提示,数字显示以及初始的参数输入等功能[7][8][9]。传感器是将足底压力信号传递给51系列单片机的桥梁,需要一定高质量的灵敏度,不但如此,因为传感器是安装于鞋底,所以还在性能和外形上有另外特殊的要求,具有轻便小巧,性能好,不易受压力影响,不妨碍使用者步行等特点。具有上述特点的传感器首选为压电薄膜传感器,压电薄膜传感器具有性能稳定,使用寿命长,柔性好,强度大等特点,完全满足对于传感器的要求[10][11]。在调理整形电路方面,由传感器传来的信号需要经过一定的处理才能传递给单片机,所以调理整形电路可将传感器最初的信号经过放大,滤波,然后整形。整形电路的设计元件主要有LM339电压比较器构成,LM339电压比较器是一种低功耗,低失调电压比较器,当两个输入端电压差别大于10mV就能确保输出能从一种状态可靠地转换到另一种状态,因此,把LM339电压比较器用在弱信号检测等场合是比较理想的。实现将模拟信号到数字信号的转变[12]。显示器基本要求是轻便小巧,可以显示数字就可以,考虑到视觉方面,LCD1602较适宜[13]。计步器的软件设计直接影响计步器的使用价值,计步,能量消耗的计算,语音等等功能都是通过软件设计实现的。软件部分,我们需要完成单片机对各个模块的整合,控制,还有计步,能量消耗,显示,语音等功能的实现。这些都需要对单片机进行编程才能实现。各个功能之间的切换与联系以及按键的设置为主要,定时器中断时间要算的准确,难度较大的能量消耗的计算公式,公式为:能量消耗(Kcal)=0.43*身高+0.57*体重(千克)+0.26*步频(步/分钟)+0.92*时间(分钟)-108.44。此公式有待实验验证[14]。三、结束语通过对计步器的发展以及运作原理进行简要是概括,并且比较了不同的计步器之间的优缺点,以及经过资料收集,设计了一款携带方便,精确度高,性能强,功能多的计步器,此种计步器适用于多种地方。在“亚健康状态”日趋严重的社会。监测健康的小家电在市场上的热销是有目共睹的,在欧美等发达国家,“日行百步” 是公认能保障健康的力量,随身带一个电子计步器督促自己多运动,每天测量自己的运动状况已成为健康时尚,相比之下,我国在这方面的意识在这几年已逐步追上国际的步伐,这大大的促进了中国计步器市场的发展,今后的计步器应当会在功能强大,携带方便,计算准确这些方面寻求突破,可见,探索空间是很大的。我们应该将计步器隐藏于生活中,成为生活的一部分,比如设置于鞋子,衣服,又或者安置于手机,安静,或许还可以安装另外的健康监测程序,比如心率,血压等等。现今,心率计步器,血压计步器,mp3计步器等各种新颖的计步器早已运用于生活中,所以,我们的目标是设计功能更加完善,携带更加方便,测量更加精确的计步器[15][16]。参考文献:[1]戴俊;  电子计步器给您带来健康.健康[2]长乐;  电子计步器——让健身不再盲目.中老年保健[3]杨易华;李裕和;林绍杰;吴效明;岑人经;  基于嵌入式单片机的多功能计步鞋的设计.微计算机信息[4]刘宏,陈永清,李涛.运动营养学.安徽:安徽科学技术出版社.[5]韦启航,陆文莲,傅祖芸等.人体步态分析系统-足底压力测量系统的研制.中国生物医学工程学报.[6]戴剑松,李靖,顾忠科等.步行和日常体力活动能量消耗的推算.体育科学[7]侯振鹏.嵌入式C语言程序设计-使用MCS-51.北京:人民邮电出版社[8]余永权.ATMEL89系列单片机应用技术.北京:北京航空航天大学出版社.[9]张俊才,葛洪央.基于AT89C51单片机的压力控制系统设计.微计算机信息,[10]林和志,陈军东.零延时RS-485接口电路设计与应用.单片机与嵌入式系统应用,北京:北京航空航天大学出版社[11]何希才.传感器技术及应用.北京:北京航空航天大学出版社.[12]贺秀玲,高焕芝,李芳等.基于AT89S52的串口通信控制LCM显示.微计算机信息[13]夏萌;刘文波;  基于嵌入式系统的LED显示屏设计与实现.佳木斯大学学报[14]蔡忠见;  人体活动量的测量.渝州大学学报(自然科学版)[15]多功能一体机的生活情趣.世界发明[16]戴剑松,李靖,顾忠科,孙飙.运用计步器测量步行之研究北京体育大学学报, 本科毕业设计(20届)计步器的设计 摘要计步器可以帮助人们实时掌握锻炼情况。它的主要功能是检测步数,通过步数和步幅可计算行走的路程。并可通过步数,来计算人体消耗的热量。课题的主要任务是完成一个计步器的设计。计步器的工作原理是以计步传感器测到步行所产生的震动,再由单片机经过软件判断后显示出要求的数据。其硬件部分电路由微处理器系统,计步传感器,信号处理模块以及按键和显示模块。主控单片机选用AT89C52,振荡传感器选用水银开关,显示选用带汉字显示的LCD模块。其软件部分主要由主程序、距离计算程序、卡路里计算程序、显示程序以及功能模式切换程序构成。经软硬件调试和实地测试,所设计的计步器具有快跑和慢跑模式,能显示所跑的步数,且能计算运动所消耗的卡路里数。符合任务书的要求,体积小,携带方便和实用等优点,具有一定的实用价值。关键词:单片机;AT89C52;计步器;振荡传感器 AbstractPedometercanhelppeopletocontroloftheexercisereal-time.Itsprimaryfunctionistestingat-batsandcalculatingthedistancewalkingthroughthestepsandstrides.Itcancalculatehumanconsumptionquantityofheatbythesteps.Thetopicmaintaskistocompleteapedometerdesign.Theprocessofhowpedometermaneuversisasfollows,thesensordetectsthevibrationchangeinthewalking.Microcontrollershowsrequirementsofthedataaftersoftwarejudged.Partcircuitofhardwarecircuitisconsistsofmicroprocessor,pedometersensor,signalprocessingmodule,buttonsanddisplaymodule.MastermicrocontrollerchoosesAT89C52,Oscillationsensorchoosesmercuryswitch,CRTchoosesLCDmodulewithChinesedisplaying.Thesoftwareismainlyconsistsofthemainprogram,distancecalculationprocedures,caloriescalculationprocedures,showprogramandfunctionalmodeswitchprogramconstitutes.Bythesoftwareandhardwaredebuggingandfieldtesting,thedesignofpedometerhastowmodesofrunandjogging,andalsocanshowthesteps,cancalculatethenumberofcalories.Itisaccordingwiththecommitmentrequirementsofsmallvolume,convenienttocarryandpracticaletc,andithascertainpracticalvalue.KeyWords:Microcontroller;AT89S52;Pedometer;OscillationSensor 目录1引言11.1课题的研究背景11.2论文内容及章节结构22总体设计32.1设计要求32.2总体方案设计33硬件设计53.1微处理器模块53.2振荡传感器模块63.3显示模块103.4按键处理模块113.5声音模块113.6总体原理图113.7小结124软件设计134.1总体程序134.2主程序144.3距离计算程序154.4卡路里计算程序174.5显示程序194.6功能模式切换程序184.7小结225制作和调试245.1硬件电路的布线和焊接255.2程序编译和调试255.2.1电路调试255.2.2程序调试265.3计步器成品调试28 6结论30致谢31参考文献32附录1系统实物图33附录2系统原理图35附录3毕业设计作品说明书36 1引言1.1课题的研究背景随着社会的发展,人们越来越注重自己的健康,跑步成为一种方便而又有效的锻炼方式。但是如何知道自己跑了多少步?计步器可以帮助人们实时掌握锻炼情况。它的主要功能是检测步数,通过步数和步幅可计算行走的路程。并可通过步数,得以计算人体消耗的热量,因此,各种计步器就应运而生。例如,手表计步器,鞋子计步器,音乐计步器等。计步器是一个佩戴在身上,用来计算走路步数的小配件。计步器原理是利用行走时身体的肢体摆动从而影响振荡传感器,然后由单片机处理振荡信息并进行后续处理,如:计数,存储,计算。显示等。振荡传感器的原理一般都是一个可随意移动的小球,利用物体移动时产生物理的惯性,导致小球在物体内运动,然后利用感应器检测小球的运动,从而确定被检测物的运动状况[1]。本次设计计步器运用到的振荡传感器是水银开关。现在的计步器功能不再只有单一的计步功能,随着技术的提高,还添加进了很多附加功能,有附加MP3功能,有的还可验血压,有的计步器可以输入携带者的体重,然后结合步数,计算所消耗的卡路里值,这个功能是最普遍的附加功能。使用者在行走一段路后,计步器可根据预先设定的使用者信息,如体重,可计算并显示出卡路里数。四十年前一位日本研究人员吉城旗野提出“日行万步”的运动理念,理念根据为:医学家统计得出,人一天大约要过剩300卡的多余热量,每天步行一万步,就意味着可以把这些过剩热量消耗光[2]。走路时带个计步器,可显示步数、运动时消耗的热量,调节灵敏度的计步器。有了电子计步器,一切都改变了,每天定量记录运动的多少,在闲暇时间适当的步行可以弥补一天运动量的不足。 先进的计步器还应设置由于速度值的不同,导致消耗卡路里值的不同,添加快/慢两种情况,可正确的反应出所走的步数与能量消耗量。同样一步,消耗的卡路里是不同的,具体数据见表1-1。因此,添加步行快/慢对于能量消耗值的计算能更加准确。计步器的使用已经越来越普遍,除传统携带在腰部的计步器之外,还设计出了手表计步器,佩戴在手腕上的计步器,利于随时观察步数,卡路里数的情况。另外,国内有家鞋厂,如LANEW公司,更深具创意的将计步器安装在鞋子上,使用更加方便。随着电子技术的高速发展,电子系统的应用领域越来越广泛,计步器的技术追求和发展趋势也相当明显。振荡传感器的快速发展,精度不断提高,附加功能不断添加,数字化趋势。而计步器则向智能化,便携化方向发展。表1-1日常运动所消耗的卡路里表步行速度时间消耗300卡路里所需时间/分钟每分钟消耗热量/大卡燃烧一千克脂肪所需时间/分钟蹒跚步行3.01102.72852缓慢步行3.61003.02567自然步行4.5903.32333快步5.4704.21833全力走7.2387.9975慢跑5555.514001.2论文的内容及章节结构本文主要从总体设计、硬件电路和软件设计、调试结果以及结果分析等方面展开叙述。其中,第二章介绍系统总体设计,对多种方案对比,选择其中一种,并对该系统方案进行概述。第三章介绍系统的硬件设计部分,分模块介绍系统的四个硬件模块的设计(微处理器模块、振荡传感器模块、显示模块、按键模块、声音模块),其中重点介绍完全自行设计并制作的微处理模块。第四章介绍系统的软件部分设计,介绍软件的整体结构以及各个子模块的程序流程图,分析程序功能。重点介绍单片机配置,以及计步,距离,能量计算公式模块功能切换的编写。第五章介绍调试与制作过程,以及测试数据,分析测试结果。第六章介绍本系统的设计过程以及结果。 2总体设计2.1设计要求本课题研究的主要内容是设计一个能记录步数和消耗的卡路里的多功能计步器。基本目标是:在使用者行走时,通过传感器,能准确感测到步行时产生的震动,同时led能正确显示出要求的数据,包含行走的总步数,距离,消耗的能量。其中,记录步数的最大值为9999,当步数为9999时,可以按清零键对计步器的数据清零,实现循环使用,并且也设暂停键,暂停期间计步器保持显示最后的数据。在完成基本功能后,可以进一步增加功能,如:在开始计步和结束计步时计步器会发出提示音;每走1000步时,也会发出相应的提示音。2.2总体方案设计越来越多的人通过体育活动改善了自己的健康,当下计算行进速度或计算活动量也越加盛行,各种计步器就应运而生。传统的计步器对步行者的步数进行计数,主要是利用步行时髋关节移动进行计数,灵敏度受髋关节影响较大,计步的准确度不高。为了克服传统计步器的缺点,设计了一种利用水银开关振荡感应器的具有液晶显示和能计算活动能耗的多功能计步器,通过水银开关检测步行产生的振荡,通过主控芯片计算步数,然后根据所计步数和输入的参数计算能耗,最后通过液晶显示步数、能耗以及时间。对于误差方面,就会利用多次试验,调整水银开关角度,记录各个角度的误差,最后选择最佳角度,即误差值最小,计步的准确度相对最高。本设计采用ATMEL公司的AT89C52单片机为系统核心,先由水银开关传感器采集步行产生的振荡信号,再由单片机的I/O口记录步数,根据记录到的步数和输入的参数计算活动量,最后通过液晶实时显示步数,能耗和时间。其系统框图见图2-1。 复位电路调整/比较振荡晶振电路传感器蜂鸣器MCULCD(AT89C52)1602功能键开始/停止电源按键图2-1系统组成方框图选用AT89C52作为主芯片,此芯片是一种低功耗、高性能的CMOS8位微处理器,具有8KB在系统可编程Flash存储器,1000次擦写周期,非常适合开发研究用[3]。显示器选用PCD8544LCD液晶显示模块,它是由点阵字符液晶显示器和专用的行列驱动器、控制器及必要的连接件,结构件装配而成的液晶显示模块,可以显示数字和西文字符。具有体积小、能耗低、显示方便、超薄轻巧等优点。振荡传感器选用水银开关,性价比较高。 3硬件设计3.1微处理器模块以AT89C52单片机为核心,完成计步、活动量的计算、声音提醒、参数输入以及液晶显示等。本设计采用ATMEL公司的AT89C52单片机为系统核心,先由水银开关传感器采集步行产生的振荡信号,再由单片机的I/O口记录步数,根据记录到的步数和输入的参数计算活动量,最后通过液晶实时显示步数,能耗和时间。AT89C52是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含8kbytes的可反复擦写的只读程序存储器(PEROM)和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度,非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容,片内置通用8位中央处理器(CPU)Flash存储单元,和功能强大AT89C52单片机适合于许多较为复杂控制应用场合[3].该器件是完全集成的混合信号系统级MCU芯片,这些具有片内VDD监视器、WDT和时钟振荡器的MCU是真正能独立工作的片上系统。片内JTAG调试支持功能允许使用安装在最终应用系统上的产品MCU进行非侵入式(不占用片内资源)、全速、在系统调试[3]。该调试系统支持观察和修改存储器和寄存器,支持断点、观察点、单步及运行和停机命令。在使用JTAG调试时,所有的模拟和数字外设都可全功能运行[3]。AT89C52提供以下标准功能:8k字节Flash闪速存储器,256字节内部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C52可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位[4]。在课题的设计中所用到的AT89C52的外部接口以及相应的功能具体如下:1. P1.0:T2(定时/计数器2外部计数脉冲输入),时钟输出,用来启动程式,定时器2中断程序对定时器2中断次数进行计数。2.P1.1:T2EX(定时/计数2捕获/重装载触发输入脚),用来切换显示器模式,这也是选用89C52的原因。因为有捕获自动载入频率产生器的功能。3.作为输入脚用,用来接水银开关、运用单片机I/O口。外部脉冲接到一个I/O口,定时扫描,先检测到高电平,然后检测到低电平,记录一个步数。4.P3.2:INT0外部中断0的输入脚,用来切换快/慢步状态。外部中断0初始化程序主要对外部中断的触发方式进行设置,并关闭中断。5.X1,X2:使用11.059MHZ的石英晶体来产生的整个系统所需的时序。3.2振荡传感器模块图3-1水银开关电路图表3-1振荡传感器振荡传感器优点缺点水银开关价格便宜原理简单震动易受到干扰小型重锤价格便宜原理简单容易机械疲劳,使用寿命短加速规输出准确度高价格昂贵,程序写法复杂如果选用小型重锤作为振荡传感器,但使用不到一个月就会产生机械疲乏,而加速规程序写法较复杂,而且难调试成功。因此选择水银开关,使用简单,虽然会受到干扰,但是如果放置在特定位置,并调节摆放角度,就可获得需要的信号,将误差降至最低。水银开关,它是电路开关的一种,以一接着电极的小巧容器储存着一小滴水银,容器中多数注入惰性气体或真空。 水银开关的工作原理:因为重力的关系,水银水珠会随着容器中较低的地方流去,如果同时接触到两个电极的话,开关便会将电路闭合,开启开关。容器的形状也会影响水银水珠接触电极的条件,例如邮包炸弹使用的会是倒V字型的,令收件人在不知情的情况下倾侧邮包,闭合电路,制动爆炸,但送件人则不会[5]。使用水银开关时,一定要注意安全,因为水银对人体及环境均有毒害,因此使用水银开关时,要务必小心谨慎,以免破裂,在不使用时,也应该妥善处理。具体可供选择的水银开关型号有很多,本设计中选用的水银开关的型号是MAC-709A-516,其具体参数见表3-2。该水银开关的外形图,规格图,玻璃管型水银开关工作原理图分别见图3-2,图3-3,及图3-4。MAC-709A-516是一款玻璃壳封装的水银开关,也是使用最多的一种形式,这种水银开关倾斜一个工作角度时,两个电极通过水银便可进行开关的通/断动作。玻璃管封装式水银开关的优点是可以从外部观察到它的工作状态,缺点是容易破碎,水银外溢。图3-2水银开关外形图图3-3水银开关规格图 图3-4玻璃管型水银开关工作原理图表3-2水银开关参数表型号MAC-709A-516,518,619内阻抗0.05尺寸5*16mm,5*18mm,6*19mm最大电流量500mA玻璃管已经过特殊处理不以打破3.3显示模块图3-5显示模块电路图单片机应用系统中使用的显示器主要有发光二极管显示器,简称LED(LightEmittingDiode);液晶显示器LCD(LiquidCrystalDisplay);近几年也有配置CRT显示器的。液晶显示器简称是利用液晶经过处理后能够改变光线传输方向的特性,达到显示字符或者图形的目的[6]。其特点是体积小、重量轻、功耗极低、显示内容丰富等特点,在单片机应用系统中有着日益广泛的应用。 图3-6PCD854448*84点矩阵LCD本文的设计采用的是型号为PCD8544的LCD,其外形图见图3-6。其内部结构见图3-7。图3-7PCD8544方块图PCD8544是一块低功耗的CMOSLCD控制驱动器,设计为驱动48行84列的图形显示。所有必须的显示功能集成在一块芯片上,包括LCD电压及偏置电压发生器,只须很少外部元件且功耗小[6]。5110与微控制器的接口使用串行总线。以下是PCD8544主要的几个引脚的功能:SDIN:串行数据线;SCLK:串行时钟线;D/C:模式选择;SCE:芯片使能; RES:外部复位输入端。功能引脚与单片机管脚的连接方式如图3-5所示。SCE与单片机的P2.3连接,将RES(RST)连接到单片机的P2.4,D/C连接到单片机的P2.5引脚,将DIN连接到单片机的P2.6,SCLK连接到P2.7。3.4按键模块图3-8按键模块电路图按键按照结构原理可分为两类,一类是触点式开关按键,如机械式开关、导电橡胶式开关等;另一类是无触点式开关按键,如电气式按键,磁感应按键等。前者造价低,后者寿命长。目前,微机系统中最常见的是触点式开关按键[7]。按键按照接口原理可分为编码键盘与非编码键盘两类,这两类键盘的主要区别是识别键符及给出相应键码的方法。编码键盘主要是用硬件来实现对键的识别,非编码键盘主要是由软件来实现键盘的定义与识别[7]。全编码键盘能够由硬件逻辑自动提供与键对应的编码,此外,一般还具有去抖动和多键、窜键保护电路。这种键盘使用方便,但需要较多的硬件,价格较贵,一般的单片机应用系统较少采用。非编码键盘只简单地提供行和列的矩阵,其它工作均由软件完成。由于其经济实用,较多地应用于单片机系统中[8]。在本套设计中由于只需要几个功能键,此时,可采用独立式按键结构。按键的原理图见图3-8。由图中可知键盘电路由S1、S2和S3组成,通过按键可以完成对当前模式的切换。按键为低电平有效。 3.5声音播报模块图3-9声音模块电路图在计步器数据发生重要变化时,需要发出提示音来告诉使用者。本设计中采用蜂鸣器来发出提示音。其原理图见图3-9,蜂鸣器具体接在主控单片机的P1.7口。由图中可知,当端口P1.7口输出低电平时,三极管Q1导通,驱动蜂鸣器将发出响声;当端口P1.7口输出高电平时,三极管Q1断开,驱动蜂鸣器停止。3.6总体原理图图3-10计步器的总体电路图 3.7小结计步传感器,微处理器系统,信号处理模块,显示模块四大模块构成了本设计的硬件部分。计步传感器就是用水银开关,比较实惠。微处理器系统是硬件的核心,是软件部分实现的硬件基础,控制其他硬件模块。在设计阶段,由于AT89C51/52是一般较为通用的MUC,在很多方面,两者在很多方面都类似,所以调试程序需要使用U-EC5通过JTAG口实现调试,实验板上已经预留接口,同样通过该接口载入程序。显示模块接收单片机指令,显示设定内容。信号处理模块连接微处理器系统和计步传感器,实现信号的转换,影响着本设计的精确度。硬件是软件实现的基础,在有了硬件基础之后便可以通过软件实现各种功能。 4软件设计4.1总体程序本设计单片机程序采用C语言编写,开发环境为WAVE。软件编写的好坏直接关系到计步、能耗的准确度以及是否有良好的人机交互功能。软件部分包括单片机对硬件各模块的整合、控制,主要实现计步、能耗计算、液晶显示等功能,其主要由如下几个程序模块构成。整个软件采用C语言编程。开始程序初始化调用各功能模块程序显示程序结束图4-1系统设计程序流程图图4-1是计步器软件的系统设计流程图。首先对所用到的各种部件进行初始化,等待中,然后根据应用的功能,调用各个子程序完成相应的功能。计步器程序设计大致可分为以下五个模块:(1)主程序;(2)距离计算程序;(3)卡路里计算程序;(4)显示程序。(5)功能模式切换程序。 4.2主程序调用按键扫描程序按键功能判断相关数据操作显示数据开始返回图4-2主程序流程图主程序的运行过程可由图4-2主程序流程图具体体现。编写程序,第一步应该是编写单片机基本数据。因为单片机是整个程序的主控核心。在了解芯片AT89C52的各个接口功能后,设计中采用定时器T2中断完成,其余状态循环调用子程序,当P1.1端口或者P1.2端口开关按下时,转入清零或者快/慢跑切换功能程序。下面为此计步器程序所用到的单片机I/O的具体程序定义:sbitsce=P2^4;//片选sbitres=P2^3;//复位,0复位sbitdc=P2^2;//1写数据,0写指令sbitsdin=P2^1;//数据sbitsclk=P2^0;//时钟sbitLED_1=P1^3;//指定工作指示灯引脚sbitKEY_1=P1^0;//指定工作/暂停键引脚sbitKEY_2=P1^1;//指定清零键引脚sbitKEY_3=P1^2;//指定快/慢跑切换键引脚 sbitLeep=P1^7;//指定蜂鸣器控制引脚sbitSwitch=P3^2;//指定水银开关控制引脚芯片AT89C52主控模块控制整个程序运行的流程、协调各个功能模块的工作以及完成各个界面的切换和显示,如图4-2所示。子程序控制着整个程序的运行顺序,完成定义初始值,进入工作状态后,通过扫描按键,判断要即将进行的工作,将采集来的数据进行统计后,显示在LCD上,然后再循环扫描按键,就如此周而复始的循环工作。电路上连接的是11.059MHZ的石英晶体,用11.059MHZ的石英晶体来产生的整个系统所需的时序脉波计时单位:1/(11.0592/12)=1.085us。4.3距离计算程序扫描按键,确定工作状态检测水银开关工作步数记录步数及距离数据计算步数及距离数据显示开始返回图4-3距离计算程序流程图距离计算程序的运行过程可由图4-3距离计算程序流程图具体体现。 在完成扫描按键,确定工作状态后,计步器进入到正常工作状态,通过检测水银开关的工作情况,可判断是否完成一个步行动作。如果确定为一个步行动作,通过程序的对数据的处理,产生距离数据,并将步数和距离一起显示在LCD上。这只是一个过程,计步器功能的实现主要通过循环,在完成上述的一个过程后,会返回扫描按键,检测按键有无动作,如按键没动作,程序将继续检测水银开关,记录步数,一直循环下去。如检测到按键有动作后,将马上退出循环状态。其计算的具体步骤见下。1.检测水银开关,确定步行动作。其主要代码如下:if(Switch==0)//检测水印开关并判断开关是否导通,Switch=0代表开关导通,有跑步动作发生;Switch=1:代表动作发生{Delay(20);//延时if(Switch==0)//再次检测{while(Switch==0)//等待水银动作开关复位,一个跑步动作结束{Check_Key();//在等待过程中检测按键是否被按下break;//退出等待循环}Key_Used=0;//按键状态清零Numer++;//退出等待后,步数+12.取人的正常一步的距离为0.3米为基数,根据第一步的检测布书Numer,即可以计算出距离Distance。其算法如下:Distance=Numer*3;//距离=步数×0.33.距离的显示:由于LCD显示功能有限,所以在显示距离时,当距离小于100米时,会显示小数位;当距离大于100米时,小数位不显示,只显示整数位。 4.4卡路里计算程序扫描按键,确定工作状态检测水银开关工作步数记录步数及卡路里数据计算步数及卡路里数据显示开始返回扫描步行快/慢模式图4-4卡路里计算程序流程图卡路里计算程序的运行过程可由图4-4卡路里计算程序流程图具体体现。在完成扫描按键,确定工作状态后,计步器进入到正常工作状态,通过检测水银开关的工作情况,可判断是否完成一个步行动作。如果确定为一个步行动作,通过程序的对数据的处理,产生卡路里数据,并将步数和卡路里一起显示在LCD上。这只是一个过程,计步器功能的实现主要通过循环,在完成上述的一个过程后,会返回扫描按键,检测按键有无动作,如按键没动作,程序将继续检测水银开关,记录步数,一直循环下去。如检测到按键有动作后,将马上退出循环状态卡路里的计算比距离的计算复杂些。考虑到人步行时会产生不同的速度,而卡路里的值会受速度的影响,所以,在程序中添加了步行快/慢两种模式,分别显示为S/F,并由按键S3控制。 计算卡路里的具体步骤如下:1.按键S3,LCD显示S,则表示系统进入慢跑模式。代码:Numer++;//退出等待后,步数+1if(Fast_Slow)//判断快跑/慢跑状态{Calory=Numer*2;}//Fast_Slow=0:慢跑状态热量=步数×0.022.按键S3,LCD显示F,则表示系统进入快跑模式。代码:Numer++;//退出等待后,步数+1if(Fast_Slow)//判断快跑/慢跑状态{Calory=Numer*4;}//Fast_Slow=1:快跑状态热量=步数×0.44.5显示程序相关数据统计开始返回扫描按键,确定工作状态显示相关数据扫描按键,确定工作状态扫描启动按键?否是显示lcd初始数据图4-5显示程序流程图 显示程序的运行过程可由图4-5显示程序流程图具体体现。显示程序完成单片机与显示器的数据通信,基础程序为LCD显示器的初始化程序和数据写入程序。初始化程序完成对LCD的一系列初始化值的设置,数据写入程序是在完成相关数据统计后,完成传输并显示出数据内容。初始化LCD程序代码如下:voidLCD_init(void){LCD_write_byte(0x21,0);//LCD功能设置:芯片活动,水平寻址,使用扩展指令LCD_write_byte(0xca,0);//设置VOP值,室温下的编程范围为3.00-10.68LCD_write_byte(0x20,0);//LCD功能设置:芯片活动,水平寻址,使用基本指令LCD_write_byte(0x0C,0);//设定显示配置:普通模式}SPI接口写数据到LCD的具体代码如下:voidLCD_write_byte(unsignedchardt,unsignedcharcommand){unsignedchari;sce=0;dc=command;for(i=0;i<8;i++){if(dt&(0x80>>i))sdin=1;elsesdin=0;sclk=0;sclk=1;}dc=1;sce=1; sdin=1;}在以上两个程序的基础上编写显示程序,需要预先写入汉字和字符数据,以备在之后程序运行过程中调用显示汉字或字符。4.6功能模式切换程序开始扫描启动按键?否是工作指示灯led亮返回扫描暂停按键?否计步工作暂停计步工作扫描暂停按键?继续计步工作扫描暂停按键?是是是否否图4-6开始/暂停按键程序流程图 开始扫描按键,确定工作状态快步模式扫描按键,确定工作状态扫描启动按键?否是工作指示灯led亮返回慢步模式快步模式数据统计及显示慢步模式数据统计及显示图4-7快/慢模式切换按键程序流程图 开始数据清零,显示为初始值扫描启动按键?否是工作指示灯led亮返回扫描清零按键?否图4-8清零按键程序流程图功能模式的切换主要通过三个按键来完成。分别为:开始/暂停键,清零键、快/慢模式键。三个按键在单片机芯片上的接口为P0—P2。功能模式切换的实现过程:1、开始/暂停键。流程图如图4-6。过程为:开始键---〉暂停跑步---〉暂停键---〉继续跑步---〉开始键---〉停止跑步---〉暂停键---〉。暂停键只是停止程序运行,数据仍会保留。如果要清楚数据,必须使用清零键。2、快/慢模式键。流程图如图4-7。过程为:快/慢模式键---〉跑步模式为快/慢。快/慢模式对计步距离不影响,它只会影响卡路里的计算,使用者可根据自己的需要设置快/慢模式。3、清零键。流程图如图4-8。过程为:清零键---〉数据清零为初始值。清零键在任何时候都可使用,当按下清零键时,系统处于待机状态,工作指示灯灭,数据清零为初始值,如要继续使用工作,必须按开始键。4.7小结以上模块构成了本设计的软件部分。其中以单片机主程序为主线索,该程序体现了整个程序的运行流程,串联其它各个功能子模块,并与硬件的各个模块紧密连接,通过整个程序,实现获得步行而产生的数据,并对这些数据加以计算, 得到使用者行走的步数,距离,卡路里,并通过显示程序控制显示模块显示。单片机配置程序对单片机内部进行配置,为其它程序运行提供基础。完成了软件部分设计,本设计基本完成,如需扩展功能,可以根据现有硬件基础,编写相应程序实现。 5制作和调试5.1硬件电路的布线和焊接在设计初期,经过大量的翻阅计步器的相关资料后,画出计步器系统的组成方框图。根据系统方框图,完成硬件设备的设计及焊接。由于个人能力有限,在寻求学长的帮忙和自己的努力后,完成了电路图及显示器,振荡器等元器件的选择,也完成了程序的编写。在选择振荡器时,曾经考虑选择ADXL202,但是由于此加速度传感器受很多元素影响,在设计中也许会带来很多困难,最后,选择了水银开关,即使水银开关需小心使用。焊接过程遇到了很多问题,因为计步器是一件小物体,需要将诸多元器件焊接在一块小板上,很容易导致短路,虚焊,还有就是将芯片烧坏。在焊第三块板后,终于完成了。编写程序是最关键的。通过翻阅资料,幸运的,找到与我设计的计步器大体相似的程序。然后开始在它的基础上,根据我要实现的设计目标,仔细修改,并且结合硬件多次调试,最后完成目标的实现。5.2程序编译和调试5.2.1电路调试选择软件Protel99SE对电路进行测试,成功后,将电路网格化,最后生成PCB板。图5-1为所设计计步器的PCB图。 图5-1计步器的PCB图5.2.2程序调试首先对WAVE6000/S仿真头等项目进行设置。图3-1仿真头设置图5-2编译属性选择[ASM命令行]:使用伟福汇编器,和伟福预定义的符号。[编译器选择]:选择伟福汇编器。[缺省显示格式]:指定观察变量显示的方式,一般为混合十/十六进制。除此之外软件模拟器仿真其他设置一般情况下都是以51系列编译器和汇编。如果程序编译通过则在WAVE界面中的Message窗口会示意程序已通过编译,如图5-3所示。 图5-3编译通过编译后的程序就可以进行调试仿真了。调试的手段有全速执行、单步/跟踪执行、设置断点执行、执行至光标处等。在编写C语言时,遇到了很多问题:1.基本语法问题,通过翻阅书籍,都自行解决了。2.计算公式,如步数,距离,卡路里之间的关系式,虽然有资料含有其三者的关系式,但是由于编写程序语言,电子元器件不同,最后显示的结果差别很大,最后通过多次试验,调试,修改,最后终于确定了公式:卡路里=步数×0.4(0.02);距离=步数×0.3;3.液晶显示器的运用是最困难的,编写文字,借用了一些别人编写的资料,然后再结合LCD的说明书,进行修改,边修改,边下载到单片机检验时候正确,多次修改好后,终于成功编写;4.拓展设计,增加将步行分为快,慢两种模式。距离计算不变,因为快/慢的步距都一样。但是消耗的卡路里就不同了,所以最后加入卡路里计算公式为两种:卡路里=步数×0.4;卡路里=步数×0.02。5.2.2硬件下载调试 完成仿真器软件仿真后,就要连接上硬件也即电子计步器成品板进行硬件调试。将仿真器通过串行电缆连接计算机上,将仿真头接到仿真器,检查接线是否有误,确信没有接错后,接上电源,打开仿真器的电源开关。再进行仿真器和通信设置。仿真器和仿真头设置正确,并且硬件连接没有错误,出现“硬件仿真”的对话框,并显示仿真器、仿真头的型号及仿真器的序列号。表明仿真器初始化正确。硬件调试很重要也很麻烦,由于本次设计硬件非PCB制板,而是手工焊板,焊点质量、布线是否合理等对系统的影响比较大,这无疑增加硬件调试的难度。由于此前没有很多的练习,本次设计我所制作的电子计步器在质量工艺上很难达到满意程度,不过在调试中还算稳定,基本功能都能较稳定地实现。5.3计步器成品调试为了检测计步算法的可行性,我们做了以下实验:测试系统主电路板及附属电源组成,在实验中本测试系统由测试对象随身携带,用手拿着,调整角度。按照水银开关的不同方位,分别进行多次实验,得到多组数据。实验背景:调整水银开关的角度;每次试验都为步行100步。目的:测试计步器的准确性。调试情况1:同一个人,用不同的速度,调节水银开关角度,检测显示器上显示的步数。表5-1情况1测试结果数据表步数角度快步慢步大于90°0075°~90°807260°~75°12083小于60°00 调试情况2:同一人,用同一速度,调整每次携带计步器的角度和每步的距离,检测显示器上显示的步数。表5-3情况2测试结果数据表步数角度每步20CM每步30CM每步40CM大于90°00075°~90°119696360°~75°938470小于60°000调试情况3:用同一速度,不同的三个人各调整每次携带计步器的角度,检测显示器上显示的步数。表5-3情况3测试结果数据表步数角度小孩成人老人大于90°00075°~90°82764360°~75°1058654小于60°000调试情况4:用同一速度,正常人和较胖人各调整每次携带计步器的角度,检测显示器上显示的步数。表5-4情况4测试结果数据表 步数角度正常胖人大于90°0075°~90°826360°~75°10578小于60°00根据以上数据,进行相应地分析。1.经过测试后,我们得知计步器的准确性和水银开关调整的角度有很大关系,只有在水银开关和水平面夹角于60°~75°间,才能测得较准确的数据,角度大于90°或小于60°都无法测出数值。2.计步器必定会存在误差,因为电子器件本身就存在误差,如:水银开关传感器的误差,电路系统误差,单片机的定时器误差等。所以在一定的误差范围内,显示的数值可以接受。3.经由实验数据得知,计步器的准确度和不同的步距及走路姿势有密切的联系。4.在一般情况下,小孩步距约20cm,综合以上结果得知小孩测试最为精准。 6结论通过大量阅读和参考各种有关电子计步器的相关书籍、杂志、文章以及互联网上的数字资源,熟悉电子计步器的基本原理之后选定方案,通过实践摸索,有了一个比较全面的理论和实际认识之后,确定系统方案,选定元器件。购买选定的传感器、液晶模块,配合现有的单片机实验板,自制信号处理模块电路,经调试验证硬件电路正确可靠之后,进行软件设计。软件设计首先设计软件的整体框架,再对软件部分分模块编写程序,并加以整合,完成最终作品。步数的准确性是本次设计的最关键所在,计步振荡器的选择也就很关键了,我通过对一些振荡器的性价比比较后,最后决定选用了相对性价比较高的水银开关。人体行走的摆动很复杂,很容易造成振荡传感器的误解,例如当人原地踏步时产生的信号,水银开关虽然对于使用角度要求较高,但是经过多次实验,得到了最适合的使用角度,可将误差降至最低。其实对于这个设计来说,硬件部分与软件部分都很重要,尤其是软硬件结合部分。在软件部分中需要处理软件与硬件的接口,如单片机配置程序、显示程序,都需要对硬件电路非常了解,这些程序都与硬件直接联系,脱离硬件无法运行。软件的程序编写部分,本来是想用之前实验课所学的汇编语言,随之而来遇到了很多问题,但由于找到一份与计步器相关的C语言程序,而且之前也学过C语言,通过阅读大量C语言书籍,最后完成了程序编写。经测试作品能实现预期功能,步数范围0~9999,误差为2步内,又能显示相对的距离和消耗的能量达到任务书要求。但是由于时间问题,原本自己规划的一些功能没有完成,如语音功能及其它功能,希望在今后加以完善。通过本次系统设计,对AT89C52单片机有了更为深入的了解,熟悉了该系列单片机的开发系统,内部结构,能运用该系列单片机丰富的片内自由完成电子设计。同时学会运用PCD8544LCD显示器的运用,水银开关的运用,学会如何调节误差,希望将来能使用准确度更好的感测器,能解决摆放角度的限制,能使计步器更加准确,功能更多,以符合不同使用者的所需的功能。 参考文献[1]戴剑松,李靖等.运用计步器测量步行之研究[N].北京:北京体育大学学报,2008,2.[2]金英.慢跑的能量消耗[J].辽宁体育科技,1981,1:15~17.[3]余永权.ATMEL89系列单片机应用技术[M].北京:北京航空航天大学出版社,2002.[4]丁元杰.单片微机原理及应用[M].北京:机械工业出版社,2006,6.[5]黄永年.一种水银接点浮子开关[N].中华人民共和国国家知识产权局,2003.[6]Philipssemiconductors.PCD854448×84点矩阵LCD控制/驱动产品说明书[M],1999,4.[7]谢自美,罗杰,赵云娣等.电子线路设计、使用、测试(第二版)[M].武汉:华中科技大学出版社,2006,8.[8]康华光.电子技术基础数字部分[M].北京:高等教育出版社,2007,6.[9]PaulHorowitz,WinfieldHill.TheArtofElectronicsSecondEdition[M].北京;电子工业出版社,2007,4.[10]余永权.ATMEL89系列单片机应用技术[M].北京:北京航空航天大学出版社,2002.[11]万光毅,孙九安等.SoC单片机实验、实践与应用设计--基于C8051F系列[M].北京;北京航天航空大学出版社,2006,5.[12]童长飞.C8051F系列单片机开发与C语言编程[M].北京航空航天大学出版社,2005,2.[13]雷鸣.薛学.张琼.CIP51及其在嵌入式单片机系统的应用[J].计算机应用,2003,1:61~64.[14]SiliconLaboratories.Mixed-Signal32KBISPFLASHMCUFamilyRev.1.7[M],2003,11. 附录1系统实物图附1-1整体图附1-2显示 附1-3部分电路附1-4显示结果 附录2原理图附2-1计步器SCH原理图附2-2计步器PCB原理图 附录3毕业设计作品说明书一、作品名称基于C8051F005的计步器二、作品功能计步,测距,能量功能计步范围:0~9999步误差<1步三、运行环境硬件环境:IBMPC机+U-EC5调试器(调试阶段使用)AT89C52单片机+计步传感器(水银开关)+显示器软件环境:开发环境:siliconlaboratoriesIDE编译器:KeilC51编程语言:C语言四、操作步骤1、将自制信号处理模块插到开发板上P1口2、插上PCD8544lcd显示模块3、开发板上接通5V直流电源4、按下电开关5、待系统启动完成稳定之后,使用者行走6、通过液晶显示模块显示步数,距离,消耗能量五、注意事项1、传感器为水银开关,要谨慎使用2、步数最大值为9999步,需要定时清零3、请勿在通电情况下插拔外接模块

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭