设为首页收藏labplus社区产品资料库
0
积分值+2
0
掌控币+1
0  关注
19  粉丝
18  帖子
今天也要加油鸭
2019年06月04日

#物联网应用#用mpython x玩转掌控板——Appinventor遇上掌控板

【情境导入】

如今有很多物联网的实例,如:智能家居,智能交通等。通过互联网将物与物进行连接。这节内容一起来学习如何利用互联网将手机与掌控板连接。

【任务描述】

在理解前面课程内容的基础上,运用App Inventor通过网络数据库(tinyWebDB)与掌控板相联,制作一个简单的小项目。

【材料清单】

硬件 —— 掌控板、USB数据线、手机

软件 —— mPythonX图形化编辑器

(1、一个装有App Inventor的且能运用网络数据库(tinyWebDB)的手机。2、一个wifi功能正常的掌控板。)

【准备工作】

关键语句:

Wi-Fi——连接Wi-Fi


物联网——TinyWebIO——启动TinyWebIO  


【学习目标】

1、理解App Inventor与掌控板的协作原理;(重点)

2、掌握掌控板与安卓应用之间的协作机制;(重点)

3、能开发出简单的安卓软件控制掌控板。(难点)

【App Inventor与掌控板的协作原理分析】

手机与掌控板的协作过程中,掌控板充当了服务器的角色,而手机上的App则是客户端,客户端通过ip地址访问服务器,从而实现两者之间的信息往来。


【项目示例】

实例一:

App Inventor向掌控板请求数据: 手机获取掌控板光线值和声音值


【操作步骤】

一、硬件准备与连接:

启动掌控板: 编写程序,启动后屏幕上显示掌控板在局域网中的ip地址。



二、设计用户界面:

在App Inventor中创建一个新项目,命名为“light_sound”,向屏幕中添加组件:按钮*2、标签*2、网络数据库*1。在组件属性调整好文字,如左图所示。设网络服务器组件的服务器地址为掌控板的ip地址,端口号为8888。



三、程序思路剖析:

本程序是向掌控板请求数据,故需要用到以下模块:

当客户端发出读取数据请求时,会携带一个“标签”参数,服务器会将参数解释为掌控板上的某个资源,并将该资源的状态返回给客户端,例如,当标签为“buttona”时,掌控板将返回按键A的状态(1为断开,0为连通)。


我们需要用到的标签是:“light”和“sound”



四、编写程序:


五、连接与测试:

1、点击连接→AI伴侣


2、手机打开AI伴侣扫描二维码即可进行测试


3、测试成功


六、打包apk与安装:

1、点击打包apk→打包apk并显示二维码


2、手机打开AI伴侣扫描二维码即可进行安装


【项目示例】

实例二:

App Inventor向掌控板发出保存数据请求: 手机控制掌控板开灯和关灯

【操作步骤】

一、硬件准备与连接:

启动掌控板: 编写程序,启动后屏幕上显示掌控板在局域网中的ip地址。



二、设计用户界面:

在App Inventor中创建一个新项目,命名为“light_sound”,向屏幕中添加组件:按钮*2、标签*2、网络数据库*1。在组件属性调整好文字,如左图所示。设网络服务器组件的服务器地址为掌控板的ip地址,端口号为8888。



三、程序思路剖析:

本程序是向掌控板发出保存数据请求,故需要用到以下模块:


当客户端发出保存数据请求时,请求信息中会携带两个参数:  标记和数据,服务器会将“标记”解释为掌控板上的输出资源,例如,当标记为buzz时,输出资源为蜂鸣器,并将“数值”解释为具体的输出值,如蜂鸣器的   鸣响频率。

本次我们需要用到的标签是:“rgb<n>”


(注:表中出现的`<n>`为相应资源编号,编写时需替换为具体数值,如0、1、2等, 注意不要带入`<`和`>`符号,如rgb0, pind1)


四、编写程序:


五、连接与测试:

1、点击连接→AI伴侣


2、手机打开AI伴侣扫描二维码即可进行测试


3、测试成功


六、打包apk与安装:

1、点击打包apk→打包apk并显示二维码


2、手机打开AI伴侣扫描二维码即可进行安装


【拓展思考】

1、能否用手机控制掌控板充当闹钟在特定的时间发出声音?

2、一个手机是否能控制两个掌控板或多个掌控板?

2

点赞

1744 次阅读4 条评论2 人赞2 人订阅
4条评论