同学,请听题!
基于开源软硬件制作的党史知识答题系统01 前 言
图1
今年是中国共产党成立100周年,开展党史学习教育活动作为庆祝活动中的一项贯穿全年的重要活动,正在全国广大党员和群众中火热地进行着。教育活动形式多样,有参观教育基地、社区宣讲等。作为创客,我们有没有创新的方式进行学习呢?于是,我想到了制作一个简易的党史知识答题系统。
该系统具有随机出题、自动评价的功能,带有语音播报,只要有Wi-Fi网络的地方都可以使用。这个项目使用的都是开源软硬件资源,便于广大创客朋友们学习制作。而且,由于可自行编程,题库可按需更换,功能也可以进行不断地升级。
https://v.qq.com/x/page/a3249l03oj6.html
演示视频
注:本项目的演示中的,题目只选择了单选题,下面的教程也以回答单选题为例。判断题可以当成只有两个选项的单选题,而多选题则需要对程序进行进一步完善才能实现。
02 实 现 原 理
图2
使用一台安装了Mind+编程软件的计算机作为服务器,执行出题和评价任务。使用两块掌控板组成答题端,执行发送答题请求、提交答案、显示题目和反馈信息等任务,其中一块掌控板只用于接收并显示题目的备选选项。电脑及两块掌控板之间通过MQTT协议进行通讯,使用了Easy IoT平台提供的服务。
当按下答题端的“出题”按钮后,会向服务器发送一个“请出题”的信息;服务器收到后,从题库中随机抽题,再分别将题目的题干和备选选项发送到答题端的两块掌控板上。当按下答题端的某个选项按钮(A、B、C、D)后,会向服务器发送相应的信息;服务器收到后,将提交的答案与正确答案进行比对,如回答正确时发送“回答正确”信息,如回答错误则发送“回答错误”信息 ,并发送正确的答案。答题端还使用了语音合成模块对评价进行播报。实际上,也可以实现对题目的播报,根据需要进行小小的程序修改即可。
03 准 备 工 作
1. 计算机及编程软件
图3
图4
(1)一台连接到互联网的计算机(图3)
(2)编程软件:Mind+ V1.7.0(图4)
下载网址:http://mindplus.cc/
2.Easy IoT平台注册及配置
图5
(1)进入Easy IoT主页进行注册、登录(图5)
网址:https://iot.dfrobot.com.cn
图6
(2)进入工作间,添加两个新设备并进行命名、设置信息上限等设置(图6)
3.开源电子模块
图7
(1)掌控板 2块
(2)扩展板 1块
(3)语音合成模块 1个
(4)数字按钮模块 5个
4. 其他材料
(1)3mm椴木板
(2)3mm亚克力板(红色、黄色)
(3)M3螺丝螺母
(4)丙烯颜料(黄色)
(5)亚克力胶水或者玻璃胶
04制 作 步 骤
1. 硬件搭建
图8
(1)将掌控板和扩展板组装在一起
(2)将各个电子模块连接到扩展板的引脚,具体连接方式如上图(图8)所示。
语音合成模块(串口)——P0、P1
数字按钮模块——P2、P13、P14、P15、P16
连接好的实物连接图如下图(图9)所示。
图9
2. 编写程序
(1)出题端程序
图10
1)将题目分解为题干、备选选项和答案,存为三个独立的txt格式文档(图10)。
图11
图12
2)打开Mind+软件,切换到实时模式(图11),加载“MQTT”扩展包(图12)。
图13
3)建立3个列表(题干、选项、答案),分别将3个txt格式文档中的内容导入到列表中(图13)。
图14
4)设置MQTT初始化参数(图14)。
5)根据预先设计的功能进行程序编写,完整程序如下图(图15)所示。
图15
(2)答题端(掌控板01)程序
图16
1) 以上传模式运行Mind+软件(图16)。
图17
图18
图19
2) 加载“掌控板”、“Wi-Fi”、“MQTT”和“语音合成模块”扩展包(图17、图18、图19)。
图20
3) 对语音合成模块、Wi-Fi、MQTT(图20)进行初始设置。
图21
4) 准备一张分辨率为128*64的黑白图片,内容为“1921”(图21)。
5)根据预先设计的功能进行程序编写,完整程序如下图(图22)所示。
图22
(3)显示选项端(掌控板02)程序
图23
图24
显示选项端程序较简单,只需要将接收到的选项信息显示在屏幕上即可。需要注意的地方:①MQTT初始参数中的Topic_0需要填写“掌控板02”的topic(图23)。②按下A按钮显示的图片内容为“2021”(图24)。
完整程序见下图(图25)所示。
图25
3. 造型与结构设计
图26
使用LaserMaker软件进行建模(图26),为了兼顾功能与美观,同时使用了椴木板和亚克力材料。
4. 切割加工
图27
使用激光切割机进行板材切割加工(图27)。
5. 组装成型
图28
(1)组装木盒的五个面(图28)。
图29
(2)将语音识别模块和数字按钮模块安装到顶板上,需要使用螺丝螺母紧固(图29)。
图30
(3)装上顶板,重新接好数据线(图30)。
图31
(4)使用胶水将红色亚克力板粘合起来(图31)。
图32
(5)将亚克力外壳套在木盒上,可打点热熔胶固定(图32)。
图33
(6)装上“100”字样的亚克力板,将两块掌控板固定在预定位置(图33)
图34
(7)将黄色亚克力制件粘贴到预定位置(图34)。
图35
(8)使用丙烯颜料在雕刻处进行涂抹,以使标识更加清晰(图35)。
图36
(9)通电调试各项功能是否能正常运行(图36)。
05 后 记
本项目有很多种可行性方案,比如最简单的只用一块掌控板就可以实现离线答题;而选择使用两块掌控板主要是为了让外观更具对称性、让题目信息更加完整便于阅读;采用服务器进行出题,是为了便于处理题库,直接导入文本文档即可。
这个只能算是一个1.0版本吧,后期可以进行迭代改进,比如增加多项选择题答题;还可以将多个答题终端连入一个服务器,进行抢答;增加计分、错题汇总等功能。 优秀的刘老师。 今年是中国共产党成立100周年,开展党史学习教育活动作为庆祝活动中的一项贯穿全年的重要活动,正在全国广大党员和群众中火热地进行着。教育活动形式多样,有参观教育基地、社区宣讲等。
页:
[1]