2018.9-江苏电赛省赛-基于STM32F103RCT6和FDC2214的手势识别装置

2018年江苏省电子设计竞赛一等奖
合作者:万宇,陈晴晴
指导老师:孙斌,陈小惠

摘要

该作品是基于STM32F103RCT6单片机制作的一款手势识别装置,该装置的核心器件为TI公司生产的一款非接触式传感芯片FDC2214,STM32单片机通过IIC通信控制FDC2214模块实现对靠近物体进行电容测量,并通过单片机通信,使TM4单片机对接收到的数据利用一阶互补滤波算法进行处理;同时利用一定的硬件设计尽可能得减小该模块受到的外界干扰,实现对猜拳、划拳游戏的准确判决,同时串口屏可用来显示判决结果,并进行模式切换。
该装置包括训练和判决两种工作模式,在判决模式下能进行猜拳和划拳的准确判决;在训练模式下,利用KNN机器学习算法和Visual Scope曲线进行数据采集和处理,进而在规定时间内完成对任意测试者猜拳或划拳的手势训练,当切换工作模式到判决模式时,可实现对被训练的人员猜拳和划拳的准确判决。另外系统通过12V锂电池和LM2596降压模块供电。
关键词:STM32F103RCT6单片机;IIC通信;FDC2214模块;一阶互补滤波算法;串口屏;KNN机器学习算法;Visual Scope;LM2596降压模块

1、设计方案工作原理

1.1、预期实现目标定位

硬件方面:通过搭建合适的硬件结构及在FDC2214各通道之间选择合适的的线间距,尽可能减少该模块受到的外界干扰;软件方面通过TM4单片机和STM32F103RCT6单片机进行IIC通信控制FDC2214模块的2个通道实现对靠近物体的电容测量,完成猜拳游戏和划拳游戏的准确判决。在训练模式下利用KNN机器学习算法和Visual Scope虚拟示波器仿真实现对任意测试者进行数据采集完成猜拳或划拳的手势训练,进而实现准确判决,同时串口屏可用来显示判决结果及进行模式切换。

1.2、技术方案分析比较

(1) 主控制器选用
方案一:采用传统的STC89C51系列单片机。
方案二:采用TI公司的TM4单片机
方案三:采用STM32F103RCT6单片机
结合不同单片机解决问题的能力,通过比较,我们选择同时采用方案二和方案三。
(2) 极板放置位置分析
方案一:放置一整块极板,利用FDC2214的一个通道进行电容检测;
方案二:将一块极板分割成两份,利用FDC2214的两个通道进行电容检测;
经检验,将极板分割成两份时,检测到的电容数值相较于一整块极板稳定性有很大的提高,同时也便于将手掌分成两部分进行分别检测,故选择方案二。
(3) 极板材质选择
方案一:选择铝制材料作为极板;
方案二:采用覆铜板作为极板;
方案三:采用纯铜板作为极板。
经分析,我们发现,当极板的材质不同时,对于相同的物体所检测到的电容数值不同,且稳定性不同,经多次检验不同材料的极板,我们最终选择纯铜板作为极板。
(4) 系统抗干扰分析
由于该传感器精度较高,且当传感平面的面积越大、手势与传感平面的距离越小,感应的频率变化越大,系统会越灵敏,但同时也可能引入越多的噪声。为减少一些不必要因素对检测结果的干扰,我们在设计该装置时决定采取规整的布线、使两块极板平行以及在极板上放置玻璃板来尽可能减小干扰。
(5) 系统数据采集及算法使用分析
系统采用Visual Scope进行数据的采集分析,Visual Scope是一款简单好用的串口数据示波器,可以检测电脑串口的信号,用直观的波形显示出来,还可以任意扩大缩小图形,直观的通过波形来判断串口信号工作状态,加以调试。
采用一阶互补滤波算法对采集到的数据进行滤波处理,由于采集到的原始数据准确度不够高,但其趋势是对的,因此将这些数据将其进行滤波运算,给两部分一个权重得到一个相对准确的值,或者得到一个很好的近似的过程,进而实现对数据更好的利用。
采用KNN机器学习算法在训练模式下进行训练,即K-近邻算法,KNN是通过测量不同特征值之间的距离进行分类。它的思路是:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。在KNN中,通过计算对象间距离来作为各个对象之间的非相似性指标,避免了对象之间的匹配问题,在这里距离一般使用欧氏距离或曼哈顿距离:
在这里插入图片描述
同时,KNN通过依据k个对象中占优的类别进行决策,而不是单一的对象类别决策。这两点就是KNN算法的优势。
具体的算法步骤如下:
①、根据特征项集合重新描述训练文本向量
②、在新文本到达后,根据特征词分词新文本,确定新文本的向量表示
③、在训练文本集中选出与新文本最相似的 K 个文本,计算公式为:
在这里插入图片描述
④、在新文本的 K 个邻居中,依次计算每类的权重,计算公式如下:
在这里插入图片描述
⑤、比较类的权重,将文本分到权重最大的那个类别中。
经分析算法对该系统的适应性以及其他优势,采用此算法对数据进行处理。

1.3、系统结构工作原理

该系统由TM4单片机、STM32F103RCT6单片机、FDC2214模块、极板、串口屏、LM7805稳压电源模块等构成。
其中TM4单片机、STM32F103RCT6单片机用于整个系统的数据处理、模块控制及通信和显示,采用IIC通信控制FDC2214,通过串口屏实现对手势的显示;
FDC2214模块用于对接近极板的物体进行电容检测,可实现手势接近和识别的功能,其传感平面为导体材质,当人手接近该导体传感平面时,传感端的电容发生了变化,这就会导致LC电路振荡频率的变化,从而反映出手势接近,以及手势的判定。
串口屏通过与单片机进行串口通信实现对各个手势的显示,另外可进行该系统对判决模式和训练模式的切换;
LM7805稳压电源模块用于给单片机供电,该模块集成整流、滤波原件和稳压芯片,输入8-24V的直流或交流电压,能稳压输出直流电压,且具备过热和过流保护功能。

1.4、功能指标实现方法

对于指标(1)(2),在打开装置后,通过串口屏进行模式选择操作,可选择猜拳判决及划拳判决,同时通过程序设计要求使每一次判决的时间不大于1秒。
对于指标(3)(4),通过串口屏选择训练模式,然后采集几次随机用户的数据,并进行阈值设置,进而实现切换为判决模式时,准确判决。
1.5、测量控制分析处理与计算
通过FDC2214模块可以自动计算出被测电容值,然后通过单片机对其进行一定的处理,进而准确判断出正确的手势。
当前被测电容值为此次模块计算出的容值减去初始值,即“res0-temp0”,其中res0为采集到的数据,temp0为初始值。

2、核心部件电路设计

2.1、关键器件性能分析

  • 12
    点赞
  • 87
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

淮杨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值