所有分类
主题 主题
平台 平台
我的工作台
userHead
注册时间 [[userInfo.create_time]]
创造力 [[userInfo.creativity]]
[[userInfo.remark]]
[[d.project_title]]
articleThumb
[[d.material_name]]
timelineThumb
进入工作台
折叠
所有分类 我的工作台
展开
做个投篮计数器
珠韵 珠韵 2021-01-15 21:19:45
1
0
简单

        投篮计数器,大家都不陌生吧,网上一搜,估计能搜出好多。这次我想做一个具有很多实用功能的投篮计数器。

        我的投篮计数器主要是为篮球教学而设计,所以这个计数器不但能够计数,还能够记录,把学生的投篮成绩记录在老师的手机里。

        下面我先列一下本项目所具有的功能:

        1.投篮计数(最基本的功能,没有这个功能,在强大的装置都是摆设)。

         2.投篮计数显示。

        3.身份认证,就是能够分辨出谁投了几个。

        4.投篮成绩云端存储。

        5.教师端定制APP,可以显示学生成绩。     

      

材料清单 材料清单
1x
掌控板
1x
掌控板扩展板
1x
红外避障模块
1x
点阵屏(Max7219)
1x
二哈识图(HuskyLens)AI 视觉传感器
5x
泡沫篮球6cm直径
步骤1 步骤1
激光切割做造型

我用大腿科技的设计软件设计了一个篮球架,结构很简单。然后做了一个长方形的无顶盖盒子,装上四个轮子,当做篮球车。可以放5个球。

projectImage
projectImage
projectImage
projectImage
projectImage

简单地制作一个用于固定二哈的支架和用于放点阵屏的框。

projectImage
步骤2 步骤2
安装模块

由于红外避障传感器是需要5V工作电压,所以我这次选用的扩展板是robotbit,掌控板反插就可以使用了。传感器接线如下:
红外避障传感器----P1
点阵屏DIN----P13
点阵屏CS-----P14
点阵屏CLK----P15
二哈------IIC

由于点阵屏装在篮筐上方,距离扩展板比较远,我就自己做了5根长一点的杜邦线。

步骤3 步骤3
掌控板程序编写

1.总体思路:

用二哈确认投篮者身份,红外避障模块判断是否进球,并且掌控板对进球只数进行累加记录,同时通过tinywebdb发送到网络数据库中。教师端手机APP读取网络数据库。

2.二哈调到人像识别,并且录制几个人像信息,我是从网上下载了几张电视剧人物头像到手机里,模拟用。

projectImage

3.掌控端编写程序,首先是初始化设置,主要是设置wifi,变量初始化。本案例用到了两个变量。

“xuehao”存储的是学生的学号,开机默认为0,就是没有对应的同学。

“zhishu”存储的是学生投篮投进的只数,每次人像识别成功后,xuehao会变成当前识别人像的ID号,zhishu变0。

没投进一个,zhishu就会增加一,直到那个学生都投完。在增加的同时会想数据库发送数据,实现实时更新。

projectImage

然后编写计数判断程序,
两个判断:
1.当红外避障传感器有障碍的时候,计数。
2.当二哈识别到信息了,就获取相应ID,并赋值给“xuehao”,改学号从零计分。

projectImage

由于点阵屏显示需要自己画,因此我专门制作一个函数调用,简化程序。

projectImage
步骤4 步骤4
APP端设计

APP一共用到了21个标签,1个是软件标题,20个标签标示这次投篮训练有20个学员。

20个标签我分成两行,同一行,每五个一个颜色,第一排第1个是1号学生成绩,第2个是2号成绩,第一排红色第1个就是整排的第6个,方便分辨。

一个文本输入框,用于老师做标记,例如今天是六1班投篮,那么老师在此处做好标记,等比赛结束,老师读取成绩后截频就能保存数据。

两个按键,一个按键按一下就读取网络数据库,把学生投篮的成绩送tinywebdb中下载到手机APP里显示。另一个按键清零,长按可以实现所有学生成绩归零,这样方便下一班训练。

projectImage

然后给按钮1(读取)编程,当按钮1按下的时候,手机循环读取相应标签的值。这里创建了一个延时变量,方便大家根据实际情况进行更改。读取是一个顺序读取的过程,每次读取后,程序判断目前读取的是哪个标签,然后给出相应的出局,显示在文本标签里。

projectImage
projectImage

清零按钮我采用长按响应设计,主要是为了防止误按。长按后,顺序修改相应标签的值。

projectImage
projectImage
步骤5 步骤5
调试

到了这步,基本完工了,接下来就是调试了。

最后一起来看一下项目照片和视频吧,由于找不到助手,所以是一只手操作一只手拍摄,画面不稳。

projectImage

本项目的程序部分源码已经上传到码云。

https://gitee.com/zslqg/ck2021

Makelog作者原创文章,未经授权禁止转载。
1
0
评论
[[c.user_name]] [[c.create_time]]
[[c.parent_comment.count]]
[[c.comment_content]]