网站大量收购独家精品文档,联系QQ:2885784924

物联网工程综合实训 课件 项目7 任务4 会议室控制终端APP的开发.pptx

物联网工程综合实训 课件 项目7 任务4 会议室控制终端APP的开发.pptx

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

项目7智慧会议室系统的安装与调试授课人:黄永杰时间:2020年9月11日《物联网工程综合实训》

目录/CONTENT会议室控制终端APP的开发会议室室内环境传感器的安装与调试会议室空调、投影仪的安装与调试会议室窗帘、照明灯、排气扇的安装与调试1.4云平台和”万物互联“APP的配置1.2

会议室控制终端APP的开发任务4

1【任务描述】根据项目中的任务3,能够实现数据的获取后,任务4需要学习使用Appinventor开发一个能够获取传感器数据并且能够实现远程控制灯光的APP。

1【任务描述】--任务要求完成会议室控制终端的App的界面设计;完成App逻辑代码的编写;完成获取传感器数据,实现远程控制功能;完成App程序与传感器的关联操作,通过传感器数据变化实现自动开灯、开排气扇;

1【任务描述】--任务目标了解Appinventor的开发环境;能使用Appinventor组件实现界面的设计;能使用Appinventor实现数据的获取;能通过获取回来的数据,对开关设备进行自动控制。

2知识链接--APPInventor简介AppInventor是一款谷歌公司开发的一款采用拖拽操作的可视化编程工具,主要用于构建运行在安卓平台上移动应用。首先,AppInventor提供了基于Web的图形化的用户界面设计工具,可以设计应用的外观,然后,再像玩拼图游戏一样,将“块”语言拼在一起,来定义应用的行为。APPInventor的优点:?无需记忆和输入指令?你要做的只是选择?限定代码块之间的匹配?事件的即时处理若对此感兴趣可打开网址/login/进行注册与学习。

3任务实施1--任务分析在本项目中,我们将利用AppInventor开发一个可以实时把温湿度、光照度、PM2.5的数据显示出来,还有能够根据窗帘、灯光、排气扇、空调、投影仪现在的开关状态来对其进行控制的一个“智慧会议室”系统,该系统做完效果如左图所示,整个开发流程图如右图所示。

3任务实施2--项目实施步骤1:组件设计该系统需要用到的具体组件和该组件的属性如下表所示,在工作面板设计成如图7-4-4所示的界面。组件命名属性名属性值ScreenScreen1标题智慧会议室水平布局水平布局1高度充满宽度充满水平布局水平布局2高度30%宽度充满垂直布局垂直布局1高度充满宽度充满水平对齐居中垂直对齐居中垂直布局垂直布局2高度充满宽度充满水平对齐居中垂直对齐居中组件命名属性名属性值标签温度字号20标签湿度字号20标签光照度字号20标签PM2_5字号20按钮窗帘字号18宽度15%按钮灯光字号18宽度15%按钮排气扇字号18宽度15%按钮空调字号18宽度15%按钮投影仪字号18宽度15%web客户端网关地址网关IP计时器计时器1

3任务实施2--项目实施

3任务实施2--项目实施步骤2:逻辑设计(获取数据)a)定义全局变量首先定义两个全局变量,其中“数据暂存”用于暂时储存还未处理完的数据,初始值为空的文本,“数据”用于储存已经处理完的数据,初始值为空的列表,设置结果左图所示。b)添加计时器事件和网关接收到文本时事件。c)获取网关的云变量和其对应的值:当计时器每次到达计时点时,计时器就向网关进行Get请求,把网关的数据获取回来,具体逻辑如右图所示。

3任务实施2--项目实施d)把网关返回的数据转成JSON格式: 网关返回回来数据格式不能直接使用,所以我们可以用下图的过程把网关的数据转成JSON格式并储存到“数据暂存”里。

3任务实施2--项目实施e)把JSON格式的文本转成列表 为了后面方便取单个数据,把转成JSON的文本通过web客户端解析然后保存到“数据”里,具体逻辑如图所示。

3任务实施2--项目实施f)把数据从列表中取出来 通过列表查找的代码块来把单个数据截取出来了,具体逻辑如下所示。g)获取数据显示效果 现在可以将数据任意取出并显示出来,逻辑设计如下。

3任务实施2--项目实施3.逻辑设计(开关控制)a)向网关POST 控制控件的状态就得改变网关上对应变量的值,这个可以通过POST请求做到,逻辑如下。b)根据控件现在的状态对其进行控制,那就需要知道该控件当前的状态,可以通过上面获取数据的办法来实现,具体逻辑设计如图

3任务实施2--项目实施c)因为向网关POST数据会返回一个“OK”,所以我们要把网关返回时的代码改成如下所示。

3任务扩展--自主学习问答:AppInventor能不能做到自动控制呢?自动控制是在“网关”做处理好还是“AppInventor”好呢?手动控制和自动控制那个的优先级高?通过刚制作的App,点击空调、窗帘按钮,能够跳转到各自的学习\控制页面,进行学习新的红外码与RF433无线码

文档评论(0)

xiaobao + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档