在2021年1月份的时候,我搞了投篮计数器,就叫V1.0版本吧。项目完成后,发现还有一些地方可以升级,因此打算给装置升级,升级后的版本就是V2.0了!这次升级,有哪些更新呢?
1.新增这是第几个球的功能。
2.新增花球功能,花球3倍计分。(第5球为花球)
3.新增投篮数据一键下载功能。发送给Easyiot,这样可以课后下载数据。方面进行教学分析。
4.增加音效功能!使得训练更有趣味性。
上一个版本V1.0版的网址链接是https://makelog.dfrobot.com.cn/article-309679.html。建议阅读下面内容之前,先阅读V1.0版本的文章。由于V2版本是在前一个版本的基础上进行更新,所以大部分的内容是相同的,本文就重点介绍改进部分的设计。
下面是新增的器材
步骤1 安装球数检测装置
在原来的球车前端,打孔,安装了巡线模块,当模块前方没有球贴近的时候,计数1次,这样用于检测当前拿走的球是第几个球。当拿走的球是第5个球时,这个球的分值是3分,也就是第5个球投进是3倍计分。
步骤2 录制语音
由于手头没有文字转语音模块,我就用mind+,设计了一语音播报程序,在电脑上运行,把声音录下来,剪辑成了若干个MP3,还从网上下载了一个欢呼的音乐,当进球的时候播放。
再把mp3音乐文件名编号,从01~10,并且复制到MP3模块中。
步骤3 接新增的模块
把MP3模块接到P0和P8口,用软串口功能。这里会提示和wifi有干扰可能会出错,不过我测试中没有发生干扰。
把巡线模块接在P2。
步骤4 程序设计
1.新增变量,程序新增了几个变量:
qiushu:记录当前是第几个篮球
fenzhi:记录当前这个球投进得几分
3fenzhi:用于记录当前球是不是3分的球
2.新增了一个函数,用于播放相应的语音。
3.程序的开始,是初始化设置,如下图。
4.设计两个函数,“显示”函数用于点阵屏显示(安装在篮板顶端),“播放”函数用于播放相应的Mp3。
5.当二哈模块人脸识别成功后,将ID号赋值给学号,从而确定了当前投篮选手的学号。并对一系列变量进行初始化,语音提示“请开始投篮”。
6.设计P1引脚(红外避障传感器)的程序,P1用于检测球是否从篮筐落下。每进一个球,更新一系列的数据,并语音播报。
每次进球,把学号和成绩的数据发送到tinywebdb数据库中。老师可以用手机端读取,关于手机端程序,可以阅读V1.0的文章。
7.设计球车上的巡线传感器的程序。
每当巡线传感器检测不到障碍的时候,变量qiushu增加1.
当qiushu为5的时候,fenzhi为3,并且语音提示。
8.设计一键发送数据到EASYIOT的程序。
9.投篮训练结束后,老师可以登录easyiot,下载数据(XLS格式),并进行整理。(数据整理请观看视频的末尾部分。)
项目基本完工了,最后来看一下视频吧,由于是一个手拿手机拍摄,一个手投篮操作,所以画面不是很稳定。
本项目源码已经上传到码云
https://gitee.com/zslqg/ck2021
calidus2021.04.11
你的联系方式可以留一个吗?我对这个很感兴趣。