zoukankan      html  css  js  c++  java
  • 【实习笔记】智能广场健身设备总结

    实习阶段的经历是大学阶段最美好的一段经历。

    设备内容:设计一个走步机将用户的运动步数和心跳数采集出来,让后发送给主机,主机将数据上传至服务器端,服务器将用户数据下发至用户手机的APP上

    用户可以和将数据和好友分享并且可以以后和超市建立合作,当达到指定数的步数时候,换取例如洗衣液等产品。

    实习主要负责运动步数和心跳的采集,和数据上传,包括从机显示界面设计。

    主控芯片:STM32F103VET6

    运动步数的采集:

    运动步数传感器采用霍尔传感器,安装时在走步机的摇臂上安装一块磁铁,然后在走步机固定杆上前后各安装两个霍尔传感器,计数办法是用户运动一个来回算作一步。

    霍尔传感器模块的设计:

    霍尔传感器选择:SS495A1

    SS495A1 是高精度线性输出霍尔元件。该元件特点是:内部有温度补偿电路并由激光对电阻 进行修正, 使零点温漂为±0. 04%/℃, 灵敏度漂移为+0. 02.

    SS495A1的输出直接接到74HC14的施密特触发器上,输出变成二值化,这样数据检测起来就很简单了。

    程序上采用外部中断进行数据捕获,霍尔传感器输出线上拉,输出线触发中断模式选择下降沿触发,共分为前后两个传感器,所以每个传感器对应一个中断,

    进中断将采集成功标志位置1,当前后的两个中断的标志位都为1时,将计数的变量加1,以此往复技术下去,变量类型32位整形数据,足够用。

    心跳采集:

    由于对于心跳采集的办法不是很熟悉,心跳采集模块买的现成的模块,大体的原理是这样,通过手柄上的金属电极获取人体手掌上的心电信号,再经过放大滤波等信号调理后,提取R波并整形输出,最终使心率信号转化为单片机可以直接测量的方波信号。

    心跳采集的一个主要的问题是,怎么通过软件滤除干扰信号,最后通过跟模块买家交流得知,干扰主要是尖峰信号,为了更好的滤除干扰,两个波峰信号的之间的时间间隔小于250ms既可以判断称为是干扰信号,滤除即可。然后将正确的采集信号取倒数乘以60就是所得的心率数据。

    以上是工作中最核心的两个工作,这两个功能的实现基本功能就完成了,精简程序后就是解决怎么跟主机通讯的问题了。

    与主机间通讯,为保证数据的正确无误通讯协议是必须的,这也是自己第一次正规的跟其他人一起共用一个既定的协议,之前做的东西协议都是自己定义的,反正自己看得懂就是了。这次是很正规的协议,包含必须的两字节帧头,心跳包,功能码,数据位数加数据码,CRC校验。

    首先是初次开机上电,应答主机的群发呼叫信号,确认在线,并将自身设备唯一标识码发送给主机,方便主机备注设备,这里的自身设备唯一标识码利用的是STM32出厂标识码12字节,将标识码读出来以后,就可以作为设备的唯一标识码,无需自己编码。

    然后主机下发一张二维码,和网络时间,从机负责将二维码显示出来,将网络时间与自身时间进行比对,一切以网络时间为准,重新设置下DS1302时钟芯片。从机接收到数据后应答主机收到。

    用户扫描完二维码以后,主机会下发开始工作指令,从机接到工作指令,将界面切换至计数显示界面,同时开始步数统计和心跳统计,同时开启定时器,当用户的两项数据不再更新时,在30S以外时,认为用户离线,同时关闭统计,将数据上传至主机,将界面切换至最终计数结果界面,主机接收到数据以后,下发应答指令,并且附带一张全新的二维码,收到主机的应答指令后,将各项参数清零并将新的二维码显示出来,至此完成了全部工作流程,之后就是反复的重复上述功能。

    心跳机制:

    在通信期间一直周期进行的就是心跳机制,心跳机制是双方确认彼此在线的唯一方式。

    重应答机制:

    例如:主机下发某项工作指令,从机没有及时应答,主机会反复发几次,如果还没收到应答,但是心跳存在,就默认系统出现故障。

  • 相关阅读:
    docker(六):Dockerfile详解
    docker(五):存储卷管理
    安装VCenter 6.7
    VMware Workstation 不可恢复错误:(vmui) VERIFY bora
    HP DL360 G7安装esxi 6.0
    zabbix 4.0故障归纳
    docker(四):容器虚拟化网络概述
    安装VCenter 6.7时报错“系统未安装通用C”
    zookeeper查看日志
    zabbix(一):zabbix 4.0安装
  • 原文地址:https://www.cnblogs.com/achao123456/p/5294888.html
Copyright © 2011-2022 走看看