Page Title

第15课 制作网络应用软件——网络投票器


2019-08-06 16:01:23

图片.png 

因为Scratch能与好搭BOX实现网络通讯借助好搭BOX可以让Scratch具有网络数据交换能力。本课我们将制作一个基于Scratch好搭BOX的网络投票器所有的用户可以打开同一个Scratch作品,投票并将数据存储在网络中,且可以随时查看投票结果。

图片.png 

要制作本课的范例作品,可以按以下步骤先连接硬件、运行插件程序,然后进入“好好搭搭”网站编写、调试、编译、下载程序。

准备工作:搭建硬件、进入网站                        

图片.png 

第一步:搭建硬件、连接网络。将数码管模块放置在主控板上的任意六边形区域,磁铁吸合(如下图15-1所示);打开主控板的电源开关,等待主控板连接网络成功。


图片.png

15-1 “网络投票器 ”范例作品硬件连接图

第二步:进入网站。打开浏览器,登录“好好搭搭”网站;单击网站上方的“创作”按钮,在“无线编程”网页中选择“好搭BOX智能实验箱”模板,进入程序设计页。

 

案例一:编写Scratch端的投票程序

图片.png 

首先,添加HaodaIot”扩展生成物联网相关指令,需要调用物联网发送指令。

Scratch中,先创建3个投票对象角色:“小熊”、“小猴”、“企鹅”,再创建一个“更新”按钮角色用于更新得票数据。

3个投票角色上方的变量分别为:“小熊得票”、“小猴得票”、“企鹅得票”。

具体的Scratch作品如15-2所示:


图片.png

15-2 Scratch端的“网络投票器”范例代码

具体的程序代码如15-315-4所示:


图片.png 

15-3 背景初始化程序

当点击绿旗时,三个变量更新为三个角色已获得的投票数。

 

图片.png

15-4 Scratch端各角色范例程序代码

当点击投票对象角色时,发送一条消息给好搭BOX,三个角色被点击时发出的消息各不相同;发出消息后,说“数据上传中”持续1秒,之后去获取物联网中更新后的变量值;最后说一句“谢谢支持”。

当点击更新按钮角色时,获取三个角色的得票数,赋值给对应的变量,更新得票显示。

 

 

图片.png 

如果每个用户打开Scratch作品后只允许投一次票,程序应该如何修改?

 

 

 

案例二:编写好搭BOX端的得票统计程序                     

图片.png 

1. 声明一个字符串型的变量MSG用于存放从物联网上接收到的消息

2. 声明三个整数型变量,分别为BearMonkeyPenguin用于存放和计算3个对象的得票数;

3. 初始化时上传三个变量值更新物联网中的变量值上传之前延时1秒;

4. 判断变量MSG中的文本如果为S_Bear”,则让变量Bear的值增加1并上传变量值;如果为S_Monkey”,则让变量Monkey的值增加1并上传变量值;如果为S_Penguin”,则让变量Monkey的值增加1并上传变量值。具体程序代码如下图15-515-6所示:


图片.png

15-5 WULink-NOVA“网络投票器”初始化部分范例代码

图片.png

15-6 好搭BOX“网络投票器”重复执行部分范例代码

图片.png 

完成以上程序后,大家都打开Scratch,一起来进行一次投票,一起来验证这个作品程序。

 

 

图片.png 

生活中的网络应用软件,都需要登录用户名和密码,这是为什么?如果要在本次的课程项目中添加用户名和密码登录的程序,应该怎么做?

我打算这么做:_______________________________________________________

______________________________________________________________________

做的时候需要注意:____________________________________________________

______________________________________________________________________