本帖最后由 gool 于 2013-9-27 17:17 编辑
当你去户外穿越或骑山地车,或哪怕仅仅是周边长距离徒步,你也一定想知道自己通过的距离,或者走路的速度。为此而购置一台专用设备的想法太过奢侈。如今,带GPS功能的智能手机正在市场上普及,因此可以将一只手机用于记录或发送当前传感器读数到一台服务器上,供察看和处理。
本设计实例描述了一个简单的方案,它采用Python脚本语言记录GPS的读数值。Python的优点是,电子工程师无需深入钻研对Symbian/Android架构的复杂C/C++调用,就能完成这一简单的工作。只需要在一台手机上安装Python解释器,以及一个包含脚本的文本文件。
Python脚本会初始化手机的GPS,定期地将位置与速度数据记录在一个文件中。它可以通过GPRS(通用分组射频服务)或短信方式,将信息上传给其它手机。在连接有一只收短信手机的PC上运行一个.NET应用,就可以在Google Maps提供的地图上,实时跟踪一个用户的位置。如果觉得PC和接收手机多余,也可以输入智能手机上记录的文件,做手动数据计算。
这种方法的新颖之处在于使用了内置加速度计,当用户步行或慢跑时计算出步数,并根据该数据,采用现有的很多公式(参考文献1和2),计算出消耗掉的卡路里数量。因此,你的智能手机装上简单的软件,就可以变成一个全能的计步器和跟踪系统,而无需增加任何硬件。
图1和图2显示了接收PC上.NET应用的两幅截屏图。该应用的工作只是接收短信(按预定的格式)、分析短信,在地图上显示位置/数据,并将信息记录成一个CSV文件。
通过短信向目标手机号码发送一条包含位置数据的信息。目标手机可以连接到一台PC上,用于记录并回放实时数据。代码会将所有信息写入手机自身的一个文件,如果不能发短信,则所有数据都留在手机上,供以后做分析。流程图显示了代码的功能情况(图3)。
最终设计中的几个部分可以作为可选择部分,因为有些用户可能只想要跟踪应用,而另一些人则希望把内容存为本地文件,而不是用短信发送出去。
|