[原创] 基于SenSorTile的智能骑行助手

yang_alex   2017-4-30 07:53 楼主
系统框图 系统框图.PNG 电路图 1.png 2.png 3.PNG GPS电路 GPS电路.PNG 尾灯模块电路示意图 尾灯模块电路示意图.PNG 转速检测模块 转速检测模块.PNG 实物图----手机端APP 248345499.jpg 硬件实物(GPS+尾灯模块+转速检测模块+SensorTile) 769554305.jpg 串口测试代码(基于datalog_application修改,屏蔽了USB转虚拟串口,采用真实串口) 本帖最后由 yang_alex 于 2017-4-30 19:17 编辑
  • 1.png
  • 系统框图.PNG

回复评论 (6)

1 来自 6楼 yang_alex 

针对项目中的几个部分再详细说明一下吧。

       首先是速度及里程检测单元
       速度及里程检测单元模块用两个GPIO配置成上升沿触发的外部中断,接干簧管磁控开关模块。在旋转的车轮上固定强磁铁,车轮旋转时,先后吸合、释放干簧管磁控开关1、2,分别形成两个脉冲触发上升沿中断。由此再用正交解码器的方法确定车轮旋转方向及圈数,算出骑行里程。通过定时器,可以计算出骑行速度。
      转速检测模块.PNG

      其次是尾灯模块
      尾灯模块原来的设想是通过GPIO驱动三极管来驱动行列LED点阵,其中3个GPIO做为行控(实际有7行,但是中间那一行始终通过一个限流电阻接VCC),对称行用一个GPIO控制,其余12个GPIO做为列控。。通过行列扫描的方式实现动态LED转向指示和夜晚直行、停车警示。在这次的实现中,由于没有想再增加MCU来控制尾灯,而SensorTile本身的GPIO引出极少,所以就做了化简,仅仅通过一个GPIO控制多组LED(分别串并,最后用一个GPIO控制开关),实现闪烁、常亮和关闭状态。而这个GPIO的控制又是有手机端APP中一个按钮控制实现,通过蓝牙通讯传递按钮状态给SensorTile,从而控制LED阵列的状态。
    尾灯模块电路示意图.PNG

  在接下来就是GPS模块
  GPS模块是通过UART接入SensorTile,
SensorTile的支架板(STLCR01V1)体积很小,接口引出少,所以有许多接口复用(接在一起)。在这里,UART接口就和板上USB口复用,通过USB口引出,具体可以参见我以前的帖子--如何在SensorTile 支架板扩展出一个串口?
     GPS模块主要是用来提供自行车运动轨迹,目前只是打上时间戳记录到SD卡内,同时通过蓝牙通讯间隔上传手机APP端显示坐标和海拔,后续有时间可以考虑在手机APP中结合Google地图显示。

     其他的电路就是充分利用SensorTile上已有的电路了。具体的有SD卡电路,用来存储骑行数据(骑行路径(GPS数据)、骑行数据(骑行速度、骑行里程等)、环境参数(温度、湿度、大气压)、自行车状态(倾斜度)),软件也充分学习了ST的Demo示例。环境参数(温度、湿度、大气压)的采集主要是利用了SensorTile上已有的温湿度传感器、大气压传感器电路,自行车状态(倾斜度)主要利用了SensorTile上已有的重力加速度传感器电路。自行车的倾斜度主要是用来判断骑行过程中,自行车是在上坡还是下坡,或者是平地,结合骑行时间和骑行速度估算运动量。


点赞  2017-5-9 19:15
智能骑行系统实现的样子还犹抱琵琶半遮面
点赞  2017-4-30 10:07
引用: alberthink 发表于 2017-4-30 10:07
智能骑行系统实现的样子还犹抱琵琶半遮面

还没弄完,赶工中!



先提交一下,避免错过最后日期。
点赞  2017-4-30 11:22
加油加油
点赞  2017-4-30 15:16
这个很好,不过GPS??
点赞  2017-5-19 15:42
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复