基于单片机的重力加速度测量
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于单片机的重力加速度测量
王磊
摘要:重力加速度通常使用重力加速度测量仪进行测量,其测量过程是通过两个光电门检测物体的下降时刻,由数字毫秒计显示物体所经历的时间,最后通过繁琐的手工计算求得,主要缺点是效率较低且不可避免粗大误差的影响。为了提高实验效率以及实验结果的准确度,我们对传统重力加速度测量仪进行了改进,主要是利用单片机对原实验的光电信号进行检测,通过VC编程完成较精确的计算、存储、显示以及数据处理等一系列工作,极大的改善了实验环境、丰富了实验内容以及提高了实验效率。
关键词:重力加速度;单片机;VC++
0 引言
在力学实验中,通常测量重力加速度所用的重力加速度测量仪[1],是通过光电门得到物体的下降时间,并由数字毫秒计显示,通过设定不同的距离进行多次测量,然后按最小二乘法进行手工计算求得重力加速度值。其主要缺点是手工计算不方便,会引入计算误差,实验效率较低。
为了精确、有效地测量出重力加速度,设计了以上位PC机VC++程序作为主控制机,以AT89C51单片机作为辅助的重力加速度测量装置,所测时间以10μs 计,误差小,精度高,功耗低,比较适合物理实验用。
1 基本测量原理
物理上测量重力加速度的方法有很多,比如落体法、摆球法、液体测量法等等[2]。本文采用落体法测量重力加速度。基本原理如下:
(1)根据自由落体运动,测下落的高度和时间.高度可由米尺测出。测量时间可用手表、秒表、打点计时、闪光照片、滴水法(自来水、滴定管)、光电门、单片机等。
(2)利用小球在保证初速度不变的情况下下落两个不同的高度,则有
,
。
是小球经过上光电门时的初速度。由上两式得:
(3)针对上个方案。采用多种数据处理,实验方案也不同,如多次测量、逐差法、作图法、最小二乘法等。
其结构简图如图1所示。开始时小刚球7被电磁铁6吸住,测量时断开电磁铁,使钢球以初速度为零下落,钢球依次通过二只光电管4和5,落到球座2中的球窝内,测量过程结束。
1—底座 2—球座 3—立柱及标尺 4—移动光
电管 5—固定光电管 6—电磁铁 7—小钢球
图1 测量装置简图
2 系统硬件电路及程序
2.1 硬件电路
本系统采用AT89C51芯片,完成从光电门接收数据,并把接收到的数据发送到PC机,而其他外围设备或芯片都起到辅助作用。AT89C51的最小系统电路图如图2中间部分所示,它由三部分组成:复位电路、时钟电路、中断指示电路[3]。复位电路和时钟电路都是使单片机正常工作所必须的电路,而对于指示灯电路是为了说明有外部中断信号。
AT89C51外部中断电路的作用是实现外部中断信号,也就是在遮光杆通过光电门时要单片机产生外部中断。
AT89C51串口通信电路的功能:实现AT89C51单片机的串口和计算机的串口之间基于RS232的串口通信。这就需要在它们之间接一个RS232串口标准的接口芯片—MAX232。MAX232是连接AT89C51单片机和计算机DB9插头的中转站,即实现把TTL/CMOS数据转换成RA232数据,从而以实现AT89C51与计算机的串行通信。MAX232外围电路如图2右边部分所示。
图2 单片机及外围电路图
2.2 单片机程序
单片机主要实现的是光电计时功能:就是要在金属小球通过第一个光电门时
产生一个外部中断,然后进入中断子程序执行开始计时的任务并使中断指示灯点亮;当金属小球通过第二个光电门时,单片机产生一个外部中断,然后进入中断子程序,执行停止计时的任务,并将时间以串口通信的方式发送至PC。整个程序由二个外部中断子程序、计时子程序(T0来计时)以及串行口数据发送子程序(T1用于波特率的设置)。而主程序是一个空操作,用于等待中断。
2.3 PC机VC++程序设计
系统的前面板包括:实验参数输入、测量步骤选择和显示三部分[4]。通过实验参数输入部分可以对小球的质量和两个光电门的位置进行自由设置,例如S1取30cm,S2取130cm。测量步骤选择下拉列表中包括本实验的二个实验步骤,即测量t1,t2和数据处理,依次选择这二个步骤,可以对t1,t2重复测量5次,计算重力加速度以及误差,并表示出测量结果。显示部分用于显示测量次数,测得的时间量值及二个光电门的位置、实验结果和相对误差。
图3 程序流程
3 结论
本文讨论的方法主要是利用单片机对原实验装置的光电信号进行检测,省去原实验中用的数字毫秒计,利用PC机进行较精确的计时并完成繁琐的最小二乘法计算过程,进一步显示计算出实验结果,在此基础上还可有效的对实验数据进行存储、打印以及与上位计算机联网以进一步扩充实验功能等,对于促进实验改革具有一定的现实意义。
用单片机取代数字毫秒计测量重力加速度,使得测量结果精确度高,可靠性好[5]。测量时间的精度比数字毫秒计提高了两个数量级;而且单片机价格便宜、结构简单,一套单片机测量系统的价格仅为原来用数字毫秒计价格的一半,且单片机是集成块插件结构,坏了容易修复。
将计算机技术与测量技术有机结合,测量时只要在开始测量之前一次输入必要的参数,启动测量后仪器即可一次测出多个数据,由程序自动完成各种数据处理和误差计算,可极大地减少人为因素而导致的各种较大误差,提高测量准确度。而且测量基于VC++编程,只要在软件上稍加改动,就可将其应用到其他相关的测量实验中去。
参考文献:
[1]王云才. 大学物理实验教程[M]. 北京:科学出版社,2008:160—161
[2]胡巍. 测量重力加速度原理[J]. 牡丹江师范学院学报,2006,1(1):20-21
[3]张俊藻. 单片机中级教程[M]. 北京:北京航空航天出版社,2006:25—37
[4]孙鑫. VC++深入详解[M]. 北京:电子工业出版社,2006:200—245
[5]肖运虹,操长茂. 用8031单片机测量重力加速度[J]. 江汉大学学报,1996,13(3):17-18