[项目]同学,请听题! 精华

1206浏览
查看: 1206|回复: 2

[项目] 同学,请听题!

[复制链接]
基于开源软硬件制作的党史知识答题系统

01 前 言

1.png
图1

      今年是中国共产党成立100周年,开展党史学习教育活动作为庆祝活动中的一项贯穿全年的重要活动,正在全国广大党员和群众中火热地进行着。教育活动形式多样,有参观教育基地、社区宣讲等。作为创客,我们有没有创新的方式进行学习呢?于是,我想到了制作一个简易的党史知识答题系统。

      该系统具有随机出题、自动评价的功能,带有语音播报,只要有Wi-Fi网络的地方都可以使用。这个项目使用的都是开源软硬件资源,便于广大创客朋友们学习制作。而且,由于可自行编程,题库可按需更换,功能也可以进行不断地升级。

   

演示视频

注:本项目的演示中的,题目只选择了单选题,下面的教程也以回答单选题为例。判断题可以当成只有两个选项的单选题,而多选题则需要对程序进行进一步完善才能实现。

02 实 现 原 理


2.jpg

图2


      使用一台安装了Mind+编程软件的计算机作为服务器,执行出题和评价任务。使用两块掌控板组成答题端,执行发送答题请求、提交答案、显示题目和反馈信息等任务,其中一块掌控板只用于接收并显示题目的备选选项。电脑及两块掌控板之间通过MQTT协议进行通讯,使用了Easy IoT平台提供的服务。

      当按下答题端的“出题”按钮后,会向服务器发送一个“请出题”的信息;服务器收到后,从题库中随机抽题,再分别将题目的题干和备选选项发送到答题端的两块掌控板上。当按下答题端的某个选项按钮(A、B、C、D)后,会向服务器发送相应的信息;服务器收到后,将提交的答案与正确答案进行比对,如回答正确时发送“回答正确”信息,如回答错误则发送“回答错误”信息 ,并发送正确的答案。答题端还使用了语音合成模块对评价进行播报。实际上,也可以实现对题目的播报,根据需要进行小小的程序修改即可。


03 准 备 工 作


1. 计算机及编程软件

3.jpg
图3


4.JPG

图4


(1)一台连接到互联网的计算机(图3)

(2)编程软件:Mind+ V1.7.0(图4)

         下载网址:http://mindplus.cc/

2.Easy IoT平台注册及配置

5.JPG

图5


(1)进入Easy IoT主页进行注册、登录(图5)

          网址:https://iot.dfrobot.com.cn

6.JPG

图6


(2)进入工作间,添加两个新设备并进行命名、设置信息上限等设置(图6)

3.开源电子模块

7.jpg


图7


    (1)掌控板 2块

    (2)扩展板 1块

    (3)语音合成模块 1个

    (4)数字按钮模块 5个


4. 其他材料

    (1)3mm椴木板

    (2)3mm亚克力板(红色、黄色)

    (3)M3螺丝螺母

    (4)丙烯颜料(黄色)

    (5)亚克力胶水或者玻璃胶


04  制 作 步 骤


1. 硬件搭建
8.jpg
图8


(1)将掌控板和扩展板组装在一起

(2)将各个电子模块连接到扩展板的引脚,具体连接方式如上图(图8)所示。

语音合成模块(串口)——P0、P1


数字按钮模块——P2、P13、P14、P15、P16


    连接好的实物连接图如下图(图9)所示。

9.jpg


图9


2. 编写程序

(1)出题端程序

10-1.JPG 10-2.JPG

图10

1)将题目分解为题干、备选选项和答案,存为三个独立的txt格式文档(图10)。

11.JPG

图11



12.JPG


图12


2)打开Mind+软件,切换到实时模式(图11),加载“MQTT”扩展包(图12)。

13.JPG


图13


3)建立3个列表(题干、选项、答案),分别将3个txt格式文档中的内容导入到列表中(图13)。

14.jpg


图14


4)设置MQTT初始化参数(图14)。

5)根据预先设计的功能进行程序编写,完整程序如下图(图15)所示。

15-2.jpg


图15


(2)答题端(掌控板01)程序

16.JPG

图16


1) 以上传模式运行Mind+软件(图16)。

17.JPG

图17


18.JPG

图18


19.JPG

图19


2) 加载“掌控板”、“Wi-Fi”、“MQTT”和“语音合成模块”扩展包(图17、图18、图19)。

20.JPG

图20


3) 对语音合成模块、Wi-Fi、MQTT(图20)进行初始设置。

21.JPG
图21


4) 准备一张分辨率为128*64的黑白图片,内容为“1921”(图21)。

5)根据预先设计的功能进行程序编写,完整程序如下图(图22)所示。

22.jpg

图22


(3)显示选项端(掌控板02)程序

23.JPG

图23


24.JPG

图24


       显示选项端程序较简单,只需要将接收到的选项信息显示在屏幕上即可。需要注意的地方:①MQTT初始参数中的Topic_0需要填写“掌控板02”的topic(图23)。②按下A按钮显示的图片内容为“2021”(图24)。

       完整程序见下图(图25)所示。

25.jpg


图25


3. 造型与结构设计

26.JPG

图26


       使用LaserMaker软件进行建模(图26),为了兼顾功能与美观,同时使用了椴木板和亚克力材料。

4. 切割加工

27-1.jpg 27-2.jpg


图27


       使用激光切割机进行板材切割加工(图27)。

5. 组装成型

28.jpg

图28


(1)组装木盒的五个面(图28)。

29.jpg

图29


(2)将语音识别模块和数字按钮模块安装到顶板上,需要使用螺丝螺母紧固(图29)。

30.jpg

图30


(3)装上顶板,重新接好数据线(图30)。

31.jpg
图31


(4)使用胶水将红色亚克力板粘合起来(图31)。

32.jpg
图32


(5)将亚克力外壳套在木盒上,可打点热熔胶固定(图32)。

33.jpg
图33


(6)装上“100”字样的亚克力板,将两块掌控板固定在预定位置(图33)

34.jpg
图34


(7)将黄色亚克力制件粘贴到预定位置(图34)。

35.jpg
图35


(8)使用丙烯颜料在雕刻处进行涂抹,以使标识更加清晰(图35)。

36.jpg
图36


(9)通电调试各项功能是否能正常运行(图36)。


05 后 记


       本项目有很多种可行性方案,比如最简单的只用一块掌控板就可以实现离线答题;而选择使用两块掌控板主要是为了让外观更具对称性、让题目信息更加完整便于阅读;采用服务器进行出题,是为了便于处理题库,直接导入文本文档即可。

       这个只能算是一个1.0版本吧,后期可以进行迭代改进,比如增加多项选择题答题;还可以将多个答题终端连入一个服务器,进行抢答;增加计分、错题汇总等功能。

rzyzzxw  版主

发表于 2021-6-22 08:10:28

优秀的刘老师。
回复

使用道具 举报

李兴宇  见习技师

发表于 2021-6-30 10:51:57

今年是中国共产党成立100周年,开展党史学习教育活动作为庆祝活动中的一项贯穿全年的重要活动,正在全国广大党员和群众中火热地进行着。教育活动形式多样,有参观教育基地、社区宣讲等。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2021 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail