文档内容
社
版
社
出
版
育
出
教
育
东
教
山
东
山
社
社
版
版
出
出
育
育
教
教
东
东
山
山社
版
社
出
版
育
出
教
育
东
教
山
东
山
社
社
版
版
XINXI JISHU
出
CHUZHONG DI LIU CE
出
信息技术
育
育 初中 第 6 册
* 教
教 山东出版传媒股份有限公司
东
山东教育出版社出版
东
(济南市纬一路 321 号)
山
山东新华书店集团有限公司发行
山
山东省莒县彩印有限公司印装
*
开本:787 毫米×1092 毫米 1/16
印张:6 字数:135 千 定价:10. 88元(上光)
书号:ISBN 978 - 7 - 5701 - 0464 - 2
2019 年 1 月第 1 版 2020 年 1 月第 2 次印刷
著作权所有·请勿擅用本书制作各类出版物·违者必究《信息技术》(初中)编委会
社
版
社
出
版
育
主 编:赵可云
出
教
执行主编:赵 亮
育
东
副 主 编:刘兴强 郑 洁
教
山
编 委 会:(以姓氏笔画为序)
东
万 班 刘 晶 杜 春晓 李爱云 李雪梅
山
畅立强 周 燕 梅传俊 遇铁龄
本册主编:梅传俊 李雪梅
社
编写人员:社梅传俊 李雪梅 张红云 徐伟敬 刘兴强
版
版 李爱云 万 班 夏文强 张洪美 钱翠萍
出
出
育
育
责任编辑:赵鑫莹 王 利
教
教
美术编辑:邢 丽
东
东
插 图:张 奕
山
山
XINXI JISHU前 言
社
FOREWORD
版
社
出
版
育
本套教材以教育部《关于全面深化课程改革 落实立德树人根本任务的
出
意见》和山东省教育厅《中小学信息技术学科德育实施教指导纲要(试行)》
育
为指引,统筹考虑《中小学信息技术课程指导纲东要(试行)》的要求进行编
教
写,以期培养和提升学生的信息素养,全面落实“立德树人”根本任务。
山
东
本套教材在课程架构上从基础性和拓展性两方面进行整体设计,主要具
山有以下特点。
1. 采用项目主题式设计理念。每个单元围绕一个项目主题进行设计,改
变以往单纯以知识或技能的逻辑 性进行编排的方式,兼顾了知识的整体性、
逻辑性和趣味性。
社
2. 重视学生自学能力、探究意识和思维能力的培养。坚持问题导向和
社
版
任务驱动,通过“探究实践”“小试身手”“教你一招”等方式,让学生
版
充分体验学习信息技术的乐趣,培养学生发现问题、分析问出题、解决问题
出
的能力。 育
育
3. 简明实用,内容生动。秉持“学为中心”的设计思路,力求简明准
教
教
确,图文并茂,富有趣味性和启发性,使学生看得懂、学得会、爱探索、愿
东
东实践。
山
山 4. 突出评价的导向作用。使用SOLO分类评价理论指导教材编写,充分
发挥评价的导向作用,以评促思,以评促学,以评促教。
因编者水平和能力有限,难免有不足之处,恳请广大读者提出宝贵意见。
《信息技术》(初中)编委会
XINXI JISHU目 录
社
CONTENTS
版
社
出
版
育
第一单元 无人驾驶新体验 1
出
教
第 1 课 育走进机器人世界 2
东
第 2
教
课 我的小车更灵活 10
山
东
第 3 课 我的小车更智能 15
山
第 4 课 奔跑吧,我的车 22
第 5 课 挑战极限,我的车 27
主题活动 35
社
社
版
第二单元 生活 APP 我开发 38
版
出
第 6 课出 我教弟弟认动物 39
育
第育 7 课 我帮妈妈测健康 48
教
教 第 8 课 我帮爷爷做运动 57
东
东 第 9 课 我帮奶奶拨电话(1) 65
山
山 第 10 课 我帮奶奶拨电话(2) 72
主题活动 79
拓展阅读 智能时代已来临 83
XINXI JISHU社
版
社
出
版
育
出
教
育
东
教
山
东
山
社
社
版
版
出
出
育
育
教
教
东
东
山
山社
第一单元 无人驾驶新体验
版
社
出
版
育
出
教
无人驾育驶汽车是智能汽车的一种,也称为轮式移动机器人,主要依靠车
东
内以计教算机系统为主的智能驾驶仪来实现。
山
本单元我们将通过虚拟现实技术,将机器人设计进行高度的三维仿真,
东
实现任务场景设计、智能机器人搭建、程序设计、运行模拟等功能。
山
让我们带着梦想和创意,以虚拟机 器人平台为开发环境,开启探索机器
人世界的旅程吧!
学完本单元,你将能够:
1. 了解虚拟机器人的运行环境。
社
2. 学会搭建虚拟社机器人并编程控制其运动。
版
3. 能够用不版同搭建和编程方式完成无人驾驶任务。
出
出
育
育
教
教
东
东
山
山
XINXI JISHU 1初 中 第 6 册
社
第 1 课 走进机器人世界
版
社
出
版
育
什么是机器人?什么是虚
出 学完本课 你将能够:
教
拟机器人?虚拟机器人有什么神
育
1. 初步掌握简单机器人的搭建。
秘之处?它是如何进行搭建、 东
教 2. 学会控制机器人的前进和后退。
编程、仿真的?让我们一起走
山
东进虚拟机器人世界,探索机器 3. 体验搭建机器人、编程并仿真运
行的 过程。
山人的奥秘吧!
新 知 园 地
社
社
机器人(Robot)是一种自动机械,由计算机控制,具有一定版的人工智
版
能,能代替人做某些工作。虚拟机器人(BOTs),一般是指基于自然语言
出
处理的智出能会话系统,它是融合了多元人工技术的智能机器人。
育
育本单元所说的虚拟机器人是指在仿真平台下搭建的机器人。虚拟机器人
教
仿真平台主要包括任务管理页面、搭建机器人页面、编写程序页面和仿真页
教
面,如图1-1、图1-2、图1-3、图1-4所示。东
东
山
山
图 1-1 任务管理页面 图 1-2 搭建机器人页面
2 XINXI JISHU第一单元 无人驾驶新体验 第 1 课 走进机器人世界
社
版
社
出
版
育
图 1-3 出编写程序页面 图 1-4 仿真页面
教
一、走育进仿真平台
东
教
双击虚拟机器人仿真平台快捷方式“ 山”,自动进入登录界面,
东
如图1-5所示。输入用户名、密码,选择服 务器然后单击“ ”按钮登
山
录。仿真流程如图1-6所示。
社
社
版
版
出
出
育
育
教
教
图 1-5 登录界面 图东 1-6 仿真流程
东
山
山
探究实践一
仿真环境探秘
第 1 步:登录平台后,打开“鲁教初中信息技术教材专区”,选择“无人驾
驶新体验”任务。
第 2 步:单击右上角“ ”,选择“机器人_12跑道竞速”,单击
XINXI JISHU 3初 中 第 6 册
“确定”按钮,完成机器人选定。
社
第 3 步:单击“ ”,选择“程序_12跑道竞速”,单击“确定”按
钮,完成程序选定。 版
社
第 4 步:选择房间并单击“ ”进入房间开启仿真运行环境,如图 1-7 所示。
出
版
育
出
教
育
东
教
山
东
山
图 1-7 仿真页面
社
其中操作按钮功能如图 1-8 所示。
社
版
版开始
编辑程序 视角切换
停止 出
出
育
育 编辑机器人
暂停 重置 教
教 图 1-8 操作按钮功能
东
东
第 5 步:单击“开始”按钮开始仿真,单击“重置”按钮回到初始状态。
山
山
教你一招
鼠标右键拖拽改变查看视角,滚动滚轮实现缩放,点击仿真页面右上角的关
闭按钮,可以退出当前仿真环境,并回到在线仿真平台页面。
4 XINXI JISHU第一单元 无人驾驶新体验 第 1 课 走进机器人世界
二、搭建机器人
登录进入任务大厅 社
后,选择“我的小车向前 版
社
冲”任务。
出
任务描述:机版器人
育
在 120 秒内从起 出 点出发,
教
前进到正前方的目标区
育
域,如图 1-9 所示。 东
教
要完成“我的小车向 图 1-9山 “我的小车向前冲”任务
东
前冲”任务,首先需要搭建机器人,然后给机器人编程,最后进行机器人仿
山真运行,在这个过程中需要不断调整机器 人结构和程序以达到最佳效果。
探究实践二
搭建 “我的小车向前冲”机器人
社
社
第 1 步:进入搭建机器人页面。进入任务大厅后,单击“ ”按钮,选择
版
“ ”,版单击“ ”进入搭建机器人页面。
出
第 2 步:添加控制器。控制器是机器人的大脑,搭建机器人首先从添加控制
出
器开始。选择“零件库”面板的“控制器”列表,单击第 2育 个控制器图标(带
育
有 4 个直流电机空位),鼠标移到编辑区,在编辑区单击,即将此控制器添加到
教
教
机器人编辑区,如图 1-10 所示。
东
东
山
山
图 1-10 添加控制器
XINXI JISHU 5初 中 第 6 册
第 3 步:安装直流电机。单击“零件库”面板的“驱动”列表,单击第 3 个
直流电机,鼠标移到编辑区,在编辑区单击,将此电机添加到编辑区。参照图社
1-11,完成直流电机的安装。用相同方法依次安装其他三个直流电机。
版
社
a. 调整视角 1. 单击选择 出
看到安装点 版 安装点 b. 调整视角
看到目标安育装点
出
教
育
东
教
山
东
山
3. 安装到目标
2. 单击目标
安装点
安装点
图 1-11 安装直流电机
社
第 4 步:设置社直流电机属性。选中左前方电机,名称修改为“直流电机_左
版
前”;控制器端口选择 1;勾选“反转电机”,如图 1-12 所示(单击电机,可查
版
看它的转动方向,如图 1-13 所示)。
出
出
育
育
直流电机名称
教
在编程时便于识别
教
东
东 选择控制器端口
用于程序驱动 山
山
选择“反转电机”
时实际转向与程序
设置相反
图 1-12 直流电机属性设置 图 1-13 直流电机转动方向
6 XINXI JISHU第一单元 无人驾驶新体验 第 1 课 走进机器人世界
用同样的方法安装其他三个电机并设置属性,参数如图 1-14 所示。
社
名称:直流电机_左前 名称:直流电机_右前
端口:1 端口:3 版
反转电机:选中 社 反转电机:不选
出
名称:直流电机_右后
名称:直流电机版_左后
端口:2 端口:4 育
反转电机:不选
反转电机出:选中
教
图 1-14 “我的小车向前冲”机器人结构
育
东
第教 5 步:安装轮子。单击“零件库”面板的“驱动”列表,单击第 6 行
山
第 1 个轮子,鼠标移到编辑区,在编辑区单击,将此轮子添加到编辑区。参照安
东
装直流电机的方法,分别安装四个轮子。
山第 6 步:保存并退出。将机器人保存为 “我的小车向前冲”,并退出。
三、编写程序
社
虚拟机器人仿真平台 和 Arduino 开发板一样都需要编写程序来控制。它
社
可以使用 IROBOTQ(VPL)语言、ROBO-LOGO 语言编程控制,版还能使用
版
Python 语言来控制。 出
出
我们这里使用 IROBOTQ(VPL)语言来编程,它是一种可视化的编程
育
语言育,结构与流程图类似,非常直观。
教
教
探究实践三 东
东
编写“我的小车向前山冲”程序
山
第 1 步:进入编写程序环境。进入任务大厅后,单击“ ”按钮,选择
“ ”,单击“ ”进入编程环境。
第 2 步:新建程序。单击“新建”按钮,选择“我的小车向前冲”机器人,
单击“确定”按钮。
第 3 步:添加“多直流电机驱动”。单击“指令库”面板中的“驱动”,选择
XINXI JISHU 7初 中 第 6 册
“ ”,鼠标移到编辑区空白处,单击鼠标左键添加到编辑区。
第 4 步:建立连接。拖拽“ ”的出口连接点,连接到“ ”的入口连社
接点,完成程序的连接。
版
第 5 步:设置各端口属性值。选中多直流电机驱动“ ”,在右侧属性面
社
板中勾选端口 1、2、3、4,分别将转速值设为 10,如图 1-15 所示。 出
版
育
选择要驱动的
出直流电机
教
育
东
教 输入转速值
山
东
选择正、反转
山
图 1-15 多直流电机驱动属性
第 6 步:保存并退出。将 程序保存为“我的小车向前冲”,并退出。
社
社
教你一招
版
版
出
如果多直流电机驱动的所有端口的属性都一样,可以先设置其中一个端口的
出
属性,然后单击“应用所有”按钮,即可快速设置电机属性。
育
育
教
教
小试身手 东
东
山
进入任务大厅,打开“鲁教初中信息技术教材专区”,选择“我的小车向前
山
冲”任务,进入房间进行仿真。
巩 固 提 升
1. 仿照“我的小车向前冲”实例,完成“我的小车向后退”任务。
8 XINXI JISHU第一单元 无人驾驶新体验 第 1 课 走进机器人世界
2. 用其他控制器或改变机器人结构完成“我的小车向前冲”任务。
社
成 果 分 享
版
社
1. 评选出搭建最合理、最高效的“我的小车向前冲”机器人,并出说明理由。
版
2. 比一比谁的得分最高,并分享经验。
育
出
教
知 育识 链 接
东
教
机器人探秘山
东
在很多人的认知里,机器人一般都存在 于高科技实验室或科幻影视作品
山
中,它们形如变形金刚、伊娃、瓦力、大白等。而现实生活中,人们根据不
同的用途研制出不同的机器人,它们 有的可能“有手无头”,有的可能“三
头六臂”……那么,什么才是机器人呢?
机器人就是一种自动执 行工作的机器,它既可以接受人类指挥,又可以
社
运行预先编排的程序
社
,它的任务是协助或替代人类的某些工作。
版
1920年,捷克作家卡雷尔·卡佩克在他的科幻小说《罗萨姆的万
版
能机器人》中,根据Robota(捷克文,原意为“劳役、苦工”出)和Robotnik
出
(波兰文,原意为“工人”),创造出“Robot(机器人)育”这个词。
育
设计机器人时要遵循三个原则:机器人不应该伤害人类,应该遵守人类
教
教的命令,并且应该能够保护自己。
东
东
山
山
XINXI JISHU 9初 中 第 6 册
社
第 2 课 我的小车更灵活 版
社
出
版
育
出
学完本课 你将教能够:
机器育人已经迈出了前进的
1. 了解机东器人差速转向的原理。
第一步,但它行动还不够灵活,
教
2. 学山会控制机器人的左转和右转。
如何控制其灵活转向呢?
东
3. 体验创意机器人、飞行机器人的
让我们一起来探究吧!
山 搭建 和控制。
新 知 园 地
社
社
一、差速转向探秘
版
版
车辆除利用前轮转角实现转向外,还可以通过控制左右出两个驱动轮的
出
转速来实现。虚拟机器人一般是通过差速原理来实现转向育的,其原理为:当
育
左右轮子的速度与方向均相同时,小车前进或后退,如图 2-1 和 2-2 所示;
教
教当左右轮子一侧轮子不动,另一侧轮子转动时小车以不动轮为轴,左转或右
东
东转,左转如图 2-3 所示;当左右轮子方向相同但速度不同时,小车的行驶方
山
向会偏向速度慢的一侧,即左转或右转,左转如图2-4 所示;当左右轮子的
山
速度相同而方向相反时,小车原地转圈,左转圈如图2-5 所示。
图 2-1 前进 图 2-2 后退 图 2-3 以左轮为轴左转
10 XINXI JISHU第一单元 无人驾驶新体验 第 2 课 我的小车更灵活
社
版
图 2-4 左转 图 2-5 原地左转圈
社
出
我们利用这个原理,来做向左转
版
育
任务。
出
任务描述:机器人在 120 秒内,由 教
育
起点出发,先前进到拱门再左转到目
东
教
标区域,如图 2-6 所示。
山
东
图 2-6 “我的小车更灵活_左转”任务
山
探究实践一
完成“我 的小车更灵活_左转”任务
第 1 步:选择任务。登 录平台,打开“我的小车更灵活_左转”任务。 社
社
第 2 步:搭建机器人。打开“我的小车向前冲”机器人,另存为“我的小车
版
更灵活_左转”
版
。
第 3 步:编写程序。进入“编写程序”环境,为 出
出
“我的小车更灵活_左转”机器人编写程序。
育
育(1)直行程序编写。选中“ ”,拖拽下方
教
的出口连接点,选择“驱动-多直流电机驱动”,选
教
中多直流电机驱动“ ”,在右侧“属性”面板东中
东勾选端口1、2、3、4,并分别将转速值设置为 8,如
山
图 2-7 所示。
山
(2)延时段程序编写。拖拽“ ”的出口连
图 2-7 直行直流电机参数
接点,选择“驱动-延时”,将“延时”设为 10 000 毫秒。“延时”模块用于控
制程序等待指定的时间后再执行下面的模块,时间单位为毫秒(ms)。延时过程
中,机器人保持原来的运动状态不变。
(3)左转程序编写。继续拖拽出口连接点,选择“驱动-多直流电机驱动”,
XINXI JISHU 11初 中 第 6 册
勾选端口 1、2、3、4,分别将转速值设置为 8,并将1、2端口反转,如图 2-8 所示。
(4)添加延时。添加 330 毫秒延时。 社
(5)继续前进。仿照直行程序块编写程序(选中程序块,用“操作”菜单中
版
的“复制”与“粘贴”可以
社
提高效率)。程序完成后如图 2-9 所示。
第 4 步:保存并退出。将程序保存为“我的小车更灵活_左转”,出并退出。
版
第 5 步:调试。在仿真运行中调试并改进程序。
育
出
教
育
东
教
山
东
山
图 2-8 左转 直流电机参数 图 2-9 左转程序 社
社
版
二、机器版人搭建进阶
出
出
完成某些任务时,有时对机器人的尺寸、重量、部件会有要求,各部件
育
育
性能也各有优越性。所以机器人的搭建很关键,了解各部件的性能,掌握一
教
教定的技巧就显得特别重要。
东
坐标系统:仿真平台采用的坐标系
东
山
统如图 2-10 所示,红、绿、蓝色线条分
山
别表示 X、Y、Z 轴的正方向,XZ 平面
为水平面。前方:模型的前方是指模型在
添加到编辑区时,未经任何旋转时,朝向
+Z 轴(蓝色)的方向。
视角操作:仿真平台中的画面是“摄
图 2-10 仿真坐标系统
12 XINXI JISHU第一单元 无人驾驶新体验 第 2 课 我的小车更灵活
像机”拍摄到的内容。要从不同的 切换视角 缩放
方向观看这些模型,需要调整“摄
社
像机”的位置和朝向,视角的操作
版
是对 3D 空间中的虚拟“摄像机”进
社
出
行操作,如图 2-11 所示。
环绕查看 移动
版
图 2-11 视角育操作面板
出
教
小试身手
育
东
参教照图 2-12、2-13 创
山
意搭建三轮车机器人或四
东
轮飞碟机器人,并完成向
山
右转任务。
图 2- 12 三轮车机器人 图 2-13 四轮飞碟机器人
三、别拦我,让我飞
社
社
放飞梦想,挑战极限。飞行,无疑是提高 版
版
速度的好选择。以图 2-14 中的飞行器为例,它
出
出
的升空是利用螺旋桨升力实现的,当升力超过
育
飞行育器自身重量时它就飞起来了。它的前行是
图 2-14 飞行器
教
利用飞行器倾斜角来控制的,倾斜角是由四个
教
东
螺旋桨的速度差决定的。
东
山
山 探究实践二
用“飞行器”完成向左转任务
第 1 步:机器人搭建。选取“正方形控制器”、第四个“直流电机”、风扇
叶,完成飞行机器人的搭建。分别将左前、左后、右前、右后电机设置为 1、2、
3、4 号端口,并分别设置为“反转电机”。
XINXI JISHU 13初 中 第 6 册
第 2 步:编写程序。分别将 1、2、3、4 号
端口的电机转速值设为 98、100、99、100,延
社
时 3 800 毫秒,再添加“多直流电机驱动”,并将
版
1、2、3、4号端口的电机转速值全部设为50,完
社
成降落,如图 2-15 所示。 出
版
图 2-15 飞行完成向左转任务程序
育
出
教
巩育固 提 升
东
教
1. 用飞行器机器人分别完成“前进”“山后退”“向右转”任务。
东
2. 尝试用直升机控制器完成“前进”任务。
山
成 果 分 享
评选出“前进”“后退” “向左转”“向右转”各项任务得分的前三
名,并分享经验。
社
社
版
知 识 链 接
版
出
出
人工智能和阿尔法围棋
育
育
人工智能(Artifi cial Intelligence,缩写为 AI)是研究、开发用于模拟、延伸
教
教和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。
东
人工智能是计算机科学的一个分支,旨在了解智能的实质,并生产出一
东
种新的能以与人类智能相似的方式做出反山应的智能机器。该领域的研究包括
山
机器人、语言识别、图像识别、自然语言处理和专家系统等。人工智能从诞
生以来,理论和技术日益成熟,应用领域也不断扩大,可以设想,未来人工智
能带来的科技产品,将会是人类智慧的“容器”。人工智能是对人脑思维机理
的模拟。人工智能不是人的智能,但能像人那样思考,也可能超过人的智能。
阿尔法围棋(AlphaGo)是第一个击败人类职业围棋选手、第一个战胜
围棋世界冠军的人工智能机器人,其主要工作原理是“深度学习”。
14 XINXI JISHU第一单元 无人驾驶新体验 第 3 课 我的小车更智能
社
第 3 课 我的小车更智能
版
社
出
版
育
学完本课 你将能够:
机器人已经出可以灵活转弯,
教
但究竟什么时候转弯,什么时候 1. 学会安装和使用灰度传感器。
育
停止?它的智能从哪里来? 2. 学会使 东 用“if 判断”和“while
教
让我们一起给它增加眼睛 永远循环山”模块。
东
与智慧吧! 3. 体验无人驾驶的乐趣。
山
新 知 园 地
一、无人驾驶新体验 社
社
版
任务描述:机器人从起点出发
版
沿跑道行走,最终到达终点。在行 出
出
走过程中机器人不能脱离跑道掉落 育
育
到地上。跑道由直线、转弯、上下
教
教坡、起伏路等组成,底色为白色,
东
东两侧有可供检测的橙色边线,如
山
图 3-1 所示。
山
图 3-1 “无人驾驶新体验”任务
要让机器人不脱离跑道,就要
让它在橙色边线内部行走,即检测到左边沿边线时向右转弯,检测到右边沿
边线时向左转弯,否则就直行。
机器人是如何检测到边线的呢?跑道中左右边沿都设置了橙色边线,用
灰度传感器很容易检测到它。
XINXI JISHU 15初 中 第 6 册
灰度传感器相当于机器人的“眼睛”,常用于检测颜色的差别,它可以
将检测到的各种颜色转换成灰度值,数值介于 0 - 255 之间,纯白色的灰度
社
值为 255,纯黑色的灰度值为 0。如图 3-2 所示。
版
社
出
版
育
出
教
育
东
教
山
东
图 3-2 灰度传感器 图 3-3 取颜色值 图 3-4 橙色位置灰度值
山
在仿真视图下,使用如图 3-3 中的取颜色值,在物体上单击可得到该处
的灰度值,如图 3-4 所示。
小试身手 社
社
版
尝试在仿版真视图下,用取颜色值工具检测橙色边线和跑道底色的灰度值,并把它
出
们记下来。
出
育
育
教
教
东
东 探究实践一
山
山 搭建“无人驾驶新体验”机器人
第 1 步:选择任务。登录平台,打开“无人驾驶新体验”任务。
第 2 步:添加安装块。进入搭建机器人环境,在“我的小车向前冲”机器人
的基础上,前方安装 1×1×3 的安装柱,然后再安装一个 1×1×7 的安装柱和两
个 1×1×5 的安装柱,如图 3-5 所示。
第3步:添加灰度传感器。在安装块的两侧分别安装一个灰度传感器,方向朝
16 XINXI JISHU第一单元 无人驾驶新体验 第 3 课 我的小车更智能
下。左侧传感器重命名为“灰度传感器_左”,设置为31号端口;右侧传感器重命
名为“灰度传感器_右”,设置为32号端口,如图3-6所示。 社
版
社
出
版
育
出
教
育
东
图 3-5 添加安装块 图 3-6 添加灰度传感器
教
山
东
山二、控制模块探秘
控制模块是用来对程序流程的选 择、循环等进行控制的模块。
“while 条件循环”模块 用于在满足一定条件下重复执行一些模块,
如图 3-7 所示,当满足条件 容器中的条件时,循环执行,否则跳出循环。
社
“while 永远循环”社是“while 条件循环”的特例,用于永远重复执行一些模
版
块,如图 3-8 所示。
版
出
出
入口连接点 入口连接点 育
育
循环体结束 循环体结教束
条件容器
教连接点 连接点
东
东 循环体连接点 循环外连接点 循环体连接点 循环外连接点
山
山 图 3-7 条件循环 图 3-8 永远循环
“if 判断”模块用于决策,与“end if”模块成对使用。执行方式为:判
断容器内的条件,如果条件成立(true),则执行“条件成立开始连接点”
上连接的模块;如果条件不成立(false),则执行“条件不成立开始连接
点”上连接的模块,如图 3-9 所示。
XINXI JISHU 17初 中 第 6 册
入口连接点
条件容器
社
条件成立 条件不成立
开始连接点 开始连接点 版
社
出
条件成立 条件不成立
版结束连接点
结束连接点
育
出
教
出口连接点
育
东
图 3-9 if 判断模块
教
山
东VPL编程语言编出的程序,近似于实际流程图,可读性非常高。
山
探究实 践二
编写“ 无人驾驶新体验”程序
编程思路:循环执行判 断左右灰度传感器的值
社
是否小于 170,用到永远 循环模块。如果“灰度传感
社
器_左”小于 170,则说明机器人检测到左侧橙色边 版
版
线,要右转;如果“灰度传感器_右”小于 170,则
出
说明机器人检测到右侧橙色边线,要左转;否则直
出
行。 育
育
第 1 步:添加永远循环模块。从“开始”的出口
教
教连接点下拉,找到“流程-while 永远循环”单击。
东
第 2 步:添加“if 判断”模块。从“while永远
东
循环”循环体连接点下拉,找到“流程-if 判
山
断”单
山 击。如图 3-10 所示。 图 3-10 while 循环和 if 判断
第 3 步:添加“if 判断”条件。在“if 判断”模块的条件容器中右击鼠标,选
择“ ”,然后在“ ”的左容器中右击鼠标选择“ ”并设
置为“灰度传感器_左[端口:31]”,最后在“ ”的右容器中右击鼠标
选择“ ”并设置“常量 int”的数值为 170,如图 3-11 所示。
18 XINXI JISHU第一单元 无人驾驶新体验 第 3 课 我的小车更智能
社
版
社
出
版
育
出
教
育
东
教
图 3-11 添加 if 判断条件 图 3-12 条件成立时右转
山
东
第 4 步:条件成立分支程序编写。下拉“ if 判断”条件成立开始连接点,单击
山
“驱动-多直流电机驱动”,设置“多直 流电机驱动”参数,勾选端口 1、2、3、
4,转速值皆为 8,1、2 正转,3、4 反 转,如图 3-12 所示。
第 5 步:条件不成立分支程序 编写。下拉“if 判断”条件不成立开始连接点,
选择“流程-if 判断”,如图 3 -13 所示。
社
社
版
版
出
出
育
育
教
教
东
东
山
山
图 3-13 条件不成立时还需要判断
第 6 步:“if 判断”程序编写。参照步骤 3、4、5 完成该“if 判断”程序编写。
XINXI JISHU 19初 中 第 6 册
“ ”设置为“灰度传感器_右[端口:32]”,“if 判断”左侧多直流电
机驱动参数勾选端口1、2、3、4,转速值皆为 8,1、2 反转,3、4 正转。右侧勾社
选端口 1、2、3、4,转速值皆为 8、正转。完成全部程序编写,如图 3-14 所示。
版
社
出
版
育
出
教
育
东
教
山
东
山
图 3-1 4 无人驾驶完整程序
社
社
教你一招
版
版
出
单击“操作-自动排列”按钮,各模块可重新调整排序。
出
育
育
教
教
东
巩 固 提 升
东
山
山 1. 尝试更改直流电机转速值,提高得分。
2. 尝试优化机器人结构,体验速度与激情。
成 果 分 享
1. 选出班级无人驾驶设计师 10 人,并请他们说说改进方案。
20 XINXI JISHU第一单元 无人驾驶新体验 第 3 课 我的小车更智能
2. 小组讨论用哪个控制器更适合无人驾驶任务,并说明理由。
社
知 识 链 接
版
社
无人驾驶汽车 出
版
无人驾驶汽车是通过车载传感系统感知道路环境,自动育规划行车路线并
出
控制车辆到达预定目标的智能汽车。
教
它是利育用车载传感器来感知车辆周围环境,并根据感知所获得的道路、
东
车辆位置和障碍物信息,控制车辆的转向和速度,从而能够安全、可靠地在
教
道路上行驶。 山
东
无人驾驶汽车集自动控制、体系结构、 人工智能、视觉计算等众多技术
山
于一体,是计算机科学、模式识别和智能 控制技术高度发展的产物,也是衡
量一个国家科研实力和工业水平的一个重要标志,在国防和国民经济领域具
有广阔的应用前景。
社
社
版
版
出
出
育
育
教
教
东
东
山
山
XINXI JISHU 21初 中 第 6 册
社
第 4 课 奔跑吧,我的车
版
社
出
版
育
学完本课 你将能够:
影视作品中的赛车片段,除
出
教
了带给我们屏住呼吸的紧张感, 1. 了解伺服电机工作原理。
育
还会带给我们新奇与刺激。 2. 学会 东 伺服电机的安装与使用。
教
让我们优化小车搭建,挑战
3山. 体验创意搭建的乐趣。
东
速度极限吧!
山
新 知 园 地
一、速度与激情挑战
社
社
挑战极限不仅给人以快感,还可以激发进取的动力。在机器人版搭建和编
版
程上多思考、多实践是提高速度的关键。 出
出
在“无人驾驶新体验”任务中,转向是影响速度的重要因素。采用如图
育
4-1育 的机器人结构,让机器人“夹”着跑道跑,可以很好地解决这个问题。
教
教
东
东
山
山
图 4-1 奔跑中的机器人示意图
在任务要求中,规定“机器人的直径不得超过 5 米”,出发后则不再限
制。这就需要在搭建机器人时,让力臂处于收拢状态,出发后再放下。用伺
服电机可解决力臂的收放。
22 XINXI JISHU第一单元 无人驾驶新体验 第 4 课 奔跑吧,我的车
伺服电机是一种驱动轴可旋转到指定角度且可保持在
此角度的驱动部件,它不能像直流电机一样连续旋转,其
社
旋转角度为 -180°- +179°。伺服电机常用于控制机械手
版
臂、仿生类机器人(昆虫、动物)、类人机器人或其他完
社
图 4-2 伺服电机
出
成特定动作的机械结构,如图 4-2 所示。
版
伺服电机有两种安装点,方形安装点用 育
出
于固定,圆形安装点为驱动轴。驱动伺服电机
教
育
时,其圆形安装点上安装的部件可以转动。
东
伺服电机 风扇叶 伺服电机
出教发前的机器人如图 4-3 所示。
山图 4-3 出发前机器人
东
山 教你一招
为了增加机器人与地面的摩擦力, 可利用风扇的反向作用力增强压载。
社
探究实践一
社
版
版 搭建“速度与激情”机器人
出
第 1出 步:选择任务。登录平台,打开“无人驾驶新体验”任务。
育
第 2 步:添加控制器和后轮。进入搭建页面,选择“相机形控制器”,后方
育
两侧安装直流电机(很轻),左侧直流电机设置为 2 号端教口,反转电机,右侧直
教流电机设置为 4 号端口,在左右两侧分别安装直径 5 厚度 2,摩擦力很大的轮子。
东
如图 4-4 所示。
东
山
山
图 4-4 控制器和后轮 图 4-5 添加前轮支架
XINXI JISHU 23初 中 第 6 册
第 3 步:添加前轮支架。在控制器前方安装 1 个 1×1×1 和 1 个 1×1×5 的安
装柱,再安装 2 个 1×1×9 的安装柱,如图 4-5 所示。 社
第 4 步:安装左侧伺服电机。选择“驱动”“伺服
版
电机-小”,将伺服电机“圆形安装点”朝后安装,设置
社
为 91 号端口,反转电机,如图 4-6 所示。 图 4-6 出左伺服电机
版
第 5 步:安装左侧滑动轮、压载装置。在伺服电机的圆形安装点上安装
育
出
1×1×9 的安装柱,设置“操作-旋转 X:30”(若
夹角与图中所示不同,则选教中安装柱按空格键调
育
整)。安装 1×1×1 的安装柱,上部安装“轴向随
东
教 动机构”,安装 4 个直径 2、厚度1的轮子。下部安
山
装直流电机(很轻),设置为 7 号端口。安装风扇
东
图 4-7 左压载与导向轮 叶,如图 4-7 所 示。
山 第 6 步:安装左侧驱动轮。首先在伺 服电机的方
形安装点上安装1×1×1的安装柱,然 后安装直流电
机(很轻)和直径 3、厚度 1 的轮子 。直流电机设置为
1 号端口,反转电机,如图 4-8 所示。
第 7 步:安装右侧伺服电机、滑动轮、压载装置
社
和驱动轮。 图 4-8 左驱动轮
社
参照步骤第 4—6 步完成右侧伺版服电机、
版
滑动轮、压载装置和驱动轮的安装。设
出
出 置右侧伺服电机为 92 号端口,右驱动
育
电机为 3 号端口,风扇叶电机为 8 号端
育图 4-9 两侧驱动与压载装置
口,如图 4-9 教所示。
教第 8 步:安装尾部压载装置。尾部安装直流电
东
机(很轻)和风扇叶,直流电机设置为 9 号端口,
东
如图 4-10 所示。 山
山
第 9 步:增加
图 4-10 尾部压载装置
前方驱动。在机器
人前方安装 1×1×3 的安装柱,左右各安装直流电机
(很轻)和直径 3、厚度 1 的轮子。左侧直流电机设
置为 5 号端口,反转电机,右侧直流电机设置为6 号
图 4-11 完整机器人结构 端口。完成后,整个机器人结构如图4-11所示。
24 XINXI JISHU第一单元 无人驾驶新体验 第 4 课 奔跑吧,我的车
二、完美转向显奇功
“速度与激情”机器人没有任何侦测装置,它是利用导向轮随着跑道曲社
度转向的。 版
社
出
版 探究实践二
育
出编写“速度与激情”程序
教
第 1 步育:放下力臂。从“开始”出口连接点下拉,找到“驱动-多伺服总时间
东
驱动”,驱动总时间(毫秒)为 500,勾选“伺服电机-小[端口:91]”和“伺服
教
电机-小[端口:92]”,值均设置为 150。如图山 4-12所示。
东
山
社
图社 4-12 放下力臂 图 4-13 完整程序
版
版
第 2 步:奔跑、增加压感。下拉多伺服总时间驱动的出口连接点,选择“驱
出
动-多直出流电机驱动”,勾选 1-9 号端口,并将 1-9 号端口的值分别设置为 20、
育
20、20、20、20、20、200、200、200。完成后的程序如图 4-13 所示。
育
教
教
东
东 巩 固 提 升
山
山
1. 尝试更改直流电机转速值,提高得分。
2. 尝试优化机器人结构,体验速度与激情。
成 果 分 享
1. 分享你的成绩,共享改进措施。
XINXI JISHU 25初 中 第 6 册
2. 展开小组间的团体赛,评出全班团体总分前两名的小组。
社
知 识 链 接
版
社
机器人分类 出
版
从应用环境出发,将机器人分为两大类,即工业机器人育和特种机器人。
出
工业机器人就是面向工业领域的多关节机械手或多自由度机器人。
教
特种机育器人则是除工业机器人之外的、用于非制造业并服务于人类的
东
各种先教进机器人。包括:服务机器人、水下机器人、娱乐机器人、军用机器
山
人、农业机器人等。
东
一般来说,生活中比较常见的机器人有:
山
扫地机器人,是智能家用电器的 一种,能凭借一定的人工智能,自动在
房间内完成地板清扫、吸尘、擦 地等工作。
早教机器人,是专门服务 于儿童早教、培养孩子学习兴趣的教育类机器
人,能唱歌、跳舞、讲故 事等。
社
水下机器人,社是一种工作于水下的极限作业机器人,用于军工、科考、
版
民用及大众娱版乐等领域。
出
出
育
育
教
教
东
东
山
山
26 XINXI JISHU第一单元 无人驾驶新体验 第 5 课 挑战极限,我的车
社
第 5 课 挑战极限,我的车
版
社
出
版
育
学完本课 你将能够:
“速度与激情”机器人的
出
教
速度很快,但如果限制机器人的 1. 了解障碍传感器、海拔高度计和
育
运行尺寸,它就不能用了。 指南针传感器 东 的使用方法。
教
让我们进一步在搭建和编 2. 学山会全局变量的定义与赋值。
东
程上下功夫,挑战极限吧!
3. 体验子程序调用的便捷。
山
新 知 园 地
社
一、悬挂系统减震及 前轮转向
社
版
在“无人版驾驶”任务中,减震和转向是问题的关键。真正的汽车悬挂系
出
统是依靠弹簧和避震器来实现减震的,我们如何在“无人驾驶”机器人中实
出
育
现减震呢?
育
在如图 5-1 的机器人前轮驱动结构中,利用伺服教电机 1 和悬挂结构解决
教
减震问题,利用伺服电机 2 的旋转来实现前轮转向。
东
东
利用障碍传感器和灰度传感器同时探测跑道,用海拔高度计辅助定位,
山
山 用指南针传感器辅助调整机器人的前进方向。
2
1
图 5-1 减震和转向 图 5-2 障碍传感器 图 5-3 海拔高度计 图 5-4 指南针传感器
XINXI JISHU 27初 中 第 6 册
障碍传感器(图 5-2)用于判断在指定的检测距离内有无障碍物,检测
到障碍时返回 1,没检测到障碍时返回 0。
社
海拔高度计(图 5-3)返回传感器相对海平面的垂直距离,返回值为整
版
型数值,常用于检测机器人在行进过程中的高度变化。
社
出
指南针传感器(图 5-4)用于获取方向,返回其前方(指南针上标有
版
“N”的方向)与场景的正北(+Z 轴)方向的夹角,返回育值为 0-359 度。
出
指南针传感器常用于使机器人转到某个方向,或使机器人沿某个方向行
教
育
进。使用指南针传感器时需要水平安装,且指针面朝上,否则可能无法正
东
常工作教。
山
东
探究实践 一
山
搭建“挑战极限”机器人
第 1 步:安装伺服电机。选用第一个控制器,左前方安装伺服电机_小,电机
圆形安装点朝外。
第 2 步:制作悬挂系 统与转向驱动装置。在伺服电机上安装 1×1×2 的安装柱社,
社
操作—旋转X:-40,安装 1×1×3 的安装柱,操作—旋转X:-50,再安装 1×1×2 的
版
安装柱。安装版伺服电机_小,圆形安装点朝下,设置为 91 号端口。安装直流电机(较
出
重),设置为 1 号端口,反转电机,如图 5-5 所示,然后安装轮子。
出
育
育
教
教
东
东
山
山
图 5-5 悬挂系统 图 5-6 左压载与传感器
第 3 步:安装压载装置与探测传感器。在悬挂系统上方安装 1×1×2 的安装
柱、直流电机(很轻)和风扇叶,直流电机(很轻)设置为 5 号端口。前方安装
1×1×3、1×1×5和1×1×1的安装柱,其中1×1×1的安装柱“操作—旋转X:
-60”。安装灰度传感器(端口 31, 操作—旋转X:30)和障碍传感器(端口
33,操作—旋转X:-145),如图 5-6 所示。
28 XINXI JISHU第一单元 无人驾驶新体验 第 5 课 挑战极限,我的车
第 4 步:安装其他驱动、海拔高度计和指南针传感器。参照第 2 步、第 3 步安
装其他三个悬挂驱动以及压载装置。 社
右前方悬挂系统设置如下:转向伺服电机,端口 92;直流电机(很轻),端
版
口 6;直流电机(较重),端口 3;灰度传感器,端口 32;障碍传感器,端口 34。
社
左后方悬挂系统设置如下:转向伺服电机,端口 93;直流电机(很出轻),端
版
口 7;直流电机(较重),端口 2,反转电机。
育
右后方悬挂出系统设置如下:转
教
向伺服电机,端口 94;直流电机
育
(很轻),端口 8;直流电机(较 东
前
重),教端口 4。
山
在机器人上方安装海拔高度计
东
(端口 35)和指南针传感器(端
图 5-7 完整的机器人结构
山
口 36)。完毕后如图 5-7 所示。
教你一招
构建机器人时,对于 重复性的结构(如直流电机和轮子组合),使用模板可社大
社
大提高搭建效率。
版
版
出
二、出优化算法提效率
育
育
1. 跑道分段:如图 5-8 所示的跑道中,机器人根据不同路况应采用不同
教
教的转向策略是提高速度的关键。
东
东 整个跑道可分为 6 段:
山
(1)起点- 1:上坡直行
山
(2)1 - 2:270 度上坡右转
(3)2 - 3:桥上直行
(4)3 - 4:540 度下坡右转
(5)4 - 5:侧向直行
(6)5 - 6:转弯至终点
图 5-8 跑道分段
XINXI JISHU 29初 中 第 6 册
2. 子程序:编程时,当某一部分程序有相同或经常重复的程序段时,为
了简化编程,将这部分功能单独编写成程序,在其他位置多次调用。其中调
社
用其他程序的程序称为主程序,被调用的程序称为子程序。
版
采用结构化、模块化的程序结构可让程序简洁、明了,大大提高效率。
社
出
版
探究实践二
育
出
编写“挑战极限”程序
教
育
第 1 步:定义变量。找到“变量- ”,选中东并在编辑区单击,找到“变
量-教”,放置两个变量,并分别将变量名改为“角度”和“时间”,如
山
图 5-9 所示。
东
山
图 5-9 定义变量 图 5-10 停止子程序
第 2 步:定义“_停 止”子程序。找到“控 社
制-子程序”,修社改名称为“_停止”,下拉出口
版
连接点,找到“驱动-停止直流电机”,勾选端
版
口 1、2、3、4,如图 5-10 所示。 出
出
第 3 步:定义“_直行”子程序。跑道分段
育
有育多种策略,我们首先用计时完成第一段直行任
教
务。新建子程序,修改名称为“_直行”,下拉出
教
口连接点,选择“驱动-开始计时”,添加“条件 东图 5-11 直行子程序
东循环”,条件为“计时<常量 3000”,添加多直流电机驱动(勾选 1-8;1-4 转
山
速值为 20,5-8 转速值为 100),如图 5-11 所示。
山
第 4 步:编写主程序。下拉“开始”的出口连接点,找
到“流程-调用子程序”,勾选将要调用的子程序名“_直
行”,如图 5-12 所示。
(建议:边调试边编写,临时在主程序最后添加调用
“_停止”子程序,调试后删除。)
图 5-12 主程序
30 XINXI JISHU第一单元 无人驾驶新体验 第 5 课 挑战极限,我的车
第 5 步:定义“_上坡右转”子程序。利用海拔高度值来分割 270 度上坡
转弯程序。循环直行直到海拔高度为 545。如果左灰度传感器值小于 170 或左社
障碍传感器值为0,则说明机器人偏左,需要右转向,设置“驱动总时间(毫
版
社 秒)”为 1,91、92 端口伺服电机目
出
标角度为 -35。 如果右灰度传感器
版
值小于 170 或右障碍育传感器值为 0,
出
则说明机器人偏右, 需要左转向,
教
育 设置“驱动总时间(毫秒)”为 1,
东
91、92 端口伺服电机目标角度为 15,
教
否则山设置“驱动总时间(毫秒)”
东
为 1,91、92 端口伺服电机目标角
山 度 为 -20。添加多直流电机驱动,勾
图 5-13 上坡右转子程序
选 1-8; 1、2 转速值为 18,3、4 转速
值为 14,5 - 8 转速值为100,如图 5-13 所示。
第 6 步:定义“_按角度 直行”子程序。
社
该子程序需多次运行, 并且运行时角度需
社
要指定,时间也要指定。首先调用“开始计 版
版
时”用来重新计时,如果计时小于规定时间
出
则永远循环,如果指南针值大于指定角度则
出
育
右转(设置“驱动总时间”为 1,91、92 端
育
口伺服电机目标角度为-5),如果指南针值
教
教小于指定角度则左转(设置“驱动总时间”
东
东
为1,91、92 端口伺服电机目标角度为 5),
山
否则直行(设置“驱动总时间”为 1,91、
山
92端口伺服电机目标角度为 0)。添加多直
流电机驱动(勾选 1-8;1-4 转速值为 18,
5-8 转速值为 100)。为避免频繁判断,添
加延时 300 毫秒,如图 5-14 所示。 图 5-14 按角度直行子程序
第 7 步:主程序调用。主程序调用“_直行”和“_上坡右转”后,将常量 90
XINXI JISHU 31初 中 第 6 册
赋值给变量“角度”,常量 2000 赋值给变量“时间”,调用子程序“_按角度直
行”,系统会用这两个变量值替换子程序中的变量值,如图 5-15 所示。 社
版
社
出
版
育
出
教
育
东
教
山
东
山
图 5-15 主程序 图 5-16 下坡右转子程序
第 8 步:定义“_下 坡右转”子程序。复制“_上坡右转”子程序,改名社为
社
“_下坡右转”,修改循环条件为“海拔>81”,将 1、2 转速值改为 16,3、4 转
版
速值改为10,最后调用“_停止”并添加延时 200 毫秒,如图 5-16 所示。
版
第 9 步:侧向直行段程序。将常量 240 赋值给变量“角度”,出常量 1300 赋值
出
给变量“时间”,调用子程序“_按角度直行”,让角度偏大一些,可让机器人避
育
免育下滑。
教
第 10 步:定义“_调整直行”子程序。最后一段跑道高度起伏严重,不能使
教
用障碍传感器,行走速度也要降低。复制“_按角东度直行”子程序,改名为“_调
东整直行”,用灰度传感器作为转向条件,如果左灰度传感器值小于 170,则右转
山
(设置“驱动总时间”为 1,91、92 端口伺服电机目标角度为 -50),如果右灰
山
度传感器值小于 170,则左转(设置“驱动总时间”为 1,91、92 端口伺服电机目
标角度为 10),否则直行(设置“驱动总时间”为 1,91、92 端口伺服电机目标
角度为0)。电机 1-4 转速值为 18,5-8 转速值为 100,如图 5-17 所示。完整主
程序如图 5-18 所示。
32 XINXI JISHU第一单元 无人驾驶新体验 第 5 课 挑战极限,我的车
社
版
社
出
版
育
出
教
育
东
教
山
东
山
图 5-17 调整直行子程序 图 5-18 完整主程序
教你一招
社
选中需要复制社的子程序或模块,单击“操作—复制”,再单击“操作—粘
版
贴”,将鼠标放到程序编辑区空白处单击,根据需要修改子程序名称和参数,以
版
提高编程效率。 出
出
育
育
教
教巩 固 提 升
东
东
1. 尝试更改直流电机参数值,提高得分 山 。
山
2. 尝试优化机器人的程序,看能否跑出更高的成绩。
成 果 分 享
1. 小组讨论,推选出一名组员作为本班级的参赛代表,参加班级比赛。
2. 经过比赛,推选出一名学生作为年级的参赛代表,参加年级比赛。
XINXI JISHU 33初 中 第 6 册
知 识 链 接
社
机器人的技术指标 版
社
机器人的技术指标反映了机器人所能胜任的工作和具有的出最高操作性
版
能,是选择和设计机器人都必须考虑的关键问题。机器人的技术指标一般包
育
括以下几个方面出:
教
1. 结构育形式:机器人的结构形式是指机器人运动链的形式,如关节式、
东
球坐标式、直角坐标式、圆柱坐标式等。
教
山
2. 自由度和类型:自由度是表示机器人动作灵活程度的参数,是指机器
东
人所具有的独立运动关节的数目,一般以沿 轴线的移动和绕轴转动的独立运
山
动数来表示(末端执行器的动作不包括在内)。自由度越多越灵活,但同时
结构越复杂,控制也越复杂。通常 情况下机器人的自由度在 3 - 6 个之间,
而自由度的类型包括转动关节 和直线关节。
3. 运动范围:是指机器 人关节的运动范围。机器人一般由于结构设计的
社
限制和控制系统电社缆的走线,都会对关节的运动范围产生影响,大多数机器
版
人的关节不可能在同一个方向持续转动。
版
出
4. 重复精度:机器人经过多次循环运动后,到达空间同一位置和姿态的
出
最大误差范围。 育
育
5. 控制方式:机器人运动控制的方式,如示教再现、点位控制或轨迹
教
教
控制。
东
东 6. 驱动方式:采用液压、气动、交流电机或异步电机控制机器人。
山
山
34 XINXI JISHU主题活动
社
版
单社元知识梳理与评价
出
版
本单元我们学习了这些知识,请你给自己对各知识点育的掌握程度评评
出
级吧! 教
育
东
掌握程度
教
知识点 山单点 多点 关联 抽象拓
前结构
东
结构 结构 结构 展结构
山 搭建机器人
走进机器人世界 前进后退编程
仿真运行
差速转向原 理
社
左转右 转编程
我的小车更灵活 社
创意机器人 版
版
飞行机器人 出
出
灰度传感器
育
育
我的小车更智能 if 判断模块
教
教 while永远循环模块
东
伺服电机
东
奔跑吧,我的车
山
速度与激情机器人
山
障碍传感器
海拔高度计
挑战极限,我的车 指南针传感器
全局变量
子程序调用
XINXI JISHU 35作品评价
社
在这几个任务中,你和小组是怎样评价你的表现的?
版
社
个人评价 小组评价出
版
优秀 良好 不满意 优秀 良好 育待改进 改进否
出
我的小车向前冲 □ □ □ □ 教□ □ □
育
东
我的小车更灵活 □ □ □ □ □ □ □
教
山
无人驾驶新体验 □ □ □ □ □ □ □
东
速度与激情 □ □ □ □ □ □ □
山
挑战极限 □ □ □ □ □ □ □
拓展与挑战 社
社
版
我们已经版体验到了虚拟机器人的神奇魅力,并体会到了机器人搭建与
出
编程的乐出趣。在机器人结构搭建优化中,在编程参数调整中,我们取得了进
育
步,享受到了成功的喜悦。敢于挑战自我的人更容易获得成功,让我们一起
育
挑战更多的项目、挑战更多的创意,向更高、更快、教更强出发吧!
教
※ 活动目标 东
东
(1)感受虚拟机器人的魅力。 山
山
(2)在合作与探究中培养对机器人进行学习和研究的兴趣。
(3)提高解决问题的能力,培养创新精神,提高实践能力。
(4)体验做中学、玩中学的乐趣,提高“STEM”素养,促进全面而个
性的发展。
36 XINXI JISHU※ 活动建议
(1) 活动方式:
社
A. 自由组建探究小组,组员间分工合作,发挥个人的特长。
版
B. 搜集相关资料,汲取社优秀方案的长处,并分析原理。
出
C. 小组间多比赛,多交流。
版
育
(2) 活动任务:
出
从下列任务中任选一项任务或自主确立一项任务。教
育
任务一 无人驾驶挑战:在机器人搭建上做大的调整,在编程中创新,
东
教
力争能够跑出 100 分以上的成绩。
山
东任务二 体验“城市竞速”项目:搭建“城市竞速”机器人,并编写程
序完成“城市竞速”项目。
山
任务三 挑战新创意:机器人前 进项目有许多种玩法,如摩托车、三轮
车、两足步行、飞行等。请尝试搭 建并用其完成“向前冲”任务。
※ 作品分享
社
展示你的任务效果 或完成任务的视频录像。作品资源包包括:机器
社
人 .iqprobot、程序 .iqpvpl 文件、视频录像。 版
版
出
出
育
育
教
教
东
东
山
山
XINXI JISHU 37社
第二单元 生活 APP 我开发
版
社
出
版
育
出
教
育
智能手机已经成为生活中不可或缺的重要工具,你知道手机 APP 是如何
东
制作的教吗?你想过拥有自己专属的 APP 吗?想过要自己亲手制作 APP 吗?
山
只要你有创意,App Inventor 就能迅速将你的想法变为现实,轻松帮你
东
创作一款安卓 APP。
山
为家人送上关爱,给生活带来方便 ,让未来充满无限可能,让我们一起
开启自己专属的生活 APP 开发之 旅吧!
学完本单元,你将能够:
1. 了解手机 APP 开发流 程。
社
2. 掌握 App Inve社ntor 组件设计和逻辑设计的方法。
版
3. 学会使版用 App Inventor 开发认动物、测健康、做运动、拨电话 APP。
出
出
育
育
教
教
东
东
山
山
38 XINXI JISHU第二单元 生活 APP 我开发 第 6 课 我教弟弟认动物
社
第 6 课 我教弟弟认动物
版
社
出
版
学完本课 你育将能够:
认识动物不仅可以让儿童了解动物的生
出
存状态和生活习性,增长动物科普知识,还 1. 熟 教 悉 App Inventor 开
育
能教会他们如何与动物友好相处,增强动物 发环东境。
教
保护意识。
山2. 学会使用按钮和图像
东我们根据弟弟的实际认知情况制作一款
组件。
认动物 APP。
山 3. 学会调试 APP。
新 知 园 地
社
APP(Applica社tion 的缩写),即应用程序,一般是指专为智能手机和平
版
板电脑等移动版设备编写的程序。
出
App Inventor 是一款手机编程软件,用于开发基于安卓(Android)
出
育
的 APP。App Inventor 通过基于浏览器的编辑工具进行开发,首先设计程序
育
的外观,然后设定程序的行为,最后用手机或模拟器教运行调试。它无需书写
教
复杂的代码,就像玩积木一样简单有趣。
东
东
只要你有想法、有创意,就可以用 App Inventor 开发自己专属的 APP;
山
山 只要你顺利完成了第一个实例,你就可以自豪地宣称:“我是一个 App
Inventor!”
一、我为开发做准备
App Inventor 是一个基于网页的安卓程序开发环境。该平台采用积
木式搭建程序,即使没有编程基础的人也能通过它轻松创建安卓应用程
XINXI JISHU 39初 中 第 6 册
序。使用App Inventor有在线和离线两种方式,用火狐等浏览器进行开
发,用装有安卓系统的手机、平板电脑或模拟器进行调试。
社
版
探究实践一
社
出
版 登录开发环境
育
打开浏览器出,在地址栏中输入网址 127.0.0.1:8888或者localhost:8888,首次
教
进入开发环境会弹出如图 6-1 所示的欢迎界面。创建项目后,再次进入环境则
育
自动打开最后一次编辑的项目。单击顶部“项目—我东的项目”,可随时进入项目
教
管理页面。
山
东
山
图 6-1 欢迎界面
社
单击“项目—新建项目”,输入项目
社
名称,单击“确定”,创建一个新的项目。 版
版
项目名称必须以字母开头,且只允许出现
出
字母、出数字和下划线,如图 6-2 所示。
育
创建项目后,自动进入“组件设计”
育
页面。页面可分为“组件面板”“工作 教
图 6-2 新建项目
教面板”“组件列表”“组件属性”4 个区
东
域,如图 6-3 所示。
东
山
山
图 6-3 组件设计页面
40 XINXI JISHU第二单元 生活 APP 我开发 第 6 课 我教弟弟认动物
小试身手
社
查找可用的在线开发平台,并尝试注册账号或用QQ账号登录。
版
社
出
版
二、组件设计定外观 育
出
教
在 App Inventor 的开发过程中,所有 APP 的
育
开发都包含相同的三个步骤:组件设计、逻辑设 东
教
计和调试运行。可以根据调试情况对组件设计、
山
东
逻辑设计做进一步完善。
山登录 App Inventor 后,自动进入“组件 设计”
页面,单击屏幕右上角的“ ”,可
以在组件设计和逻辑设计页面之 间进行切换。
APP 功能:启动应用后 ,屏幕背景调用草
社
原图片,屏幕下方显示 三个动物按钮,点击任
社
意一个按钮,屏幕中间图像位置会显示相应 版
版 图 6-4 认动物APP效果图
的动物图片,并播放相应的音频,最终效果如
出
出
图 6-4 所示。
育
育所需素材:a1.png,a2.png,a3.png,a1.mp3,a2.mp3,a3.mp3,
教
bg.png,tu.png,gou.png,mao.png。
教
东
东
山
山 探究实践二
“认动物”APP 组件设计
需要的组件有:一个图像、三个按钮和一个音效。为了让三个按钮水平排
列,还需要一个水平布局组件。各组件属性设置如表 6-1 所示。
XINXI JISHU 41初 中 第 6 册
表 6-1 “认动物”APP组件属性
社
水平对齐:居中:3;垂直对齐:居中:2
Screen1属性 应用名称:认动物;标题:认动物
版
背景图片:bg.png
社
出
组件 面板组 名称 作用 属性
版
高度:3育00 像素
图像 用户界面 图 放置动物图片
出 宽度:210 像素
教
水平布局育界面布局 水平布局 1 放置三个按钮 默认
东
显示兔图片 图片:tu.png
教按钮 用户界面 兔
播放兔音频 文本:空(清空文本)
山
东
显示狗图片 图片:gou.png
按钮 用户界面 狗
播 放狗音频 文本:空
山
显示猫图片 图片:mao.png
按钮 用户界面 猫
播放猫音频 文本:空
音效 多媒体 音 效 1 播放声音 默认
第 1 步:上传素材 。在“ ”下 社
社
方,单击“ ”按钮,然后单击
版
“选择文件版”,在弹出的对话框中选择
出
需要上传的文件 a1.png,单击“确定”按
出
钮完成 a1.png 的上传,如图 6-5 所示。用 图 6-5 育上传 a1.png 文件
同育样的方法,上传 a2.png,a3.png,a1.mp3,a2.mp3,a3.mp3,bg.png,tu.png,gou.
教
png,mao.png等文件。
教
第 2 步:设置 Screen1 属性。单击 Screen1,在东“组件属性”面板中将“水平
东
对齐”设置为“居中:3”,“垂直对齐”设置为“居中:2”。“背景图片”选
山
择 bg.png。“标题”设置为“认动物”。“应用名称”设置为“认动物”。
山
第 3 步:添加图像。单击“ ”
中的“ ”,将“ ”拖放
到“工作面板”。选中该组件,在“组件列
表”将其重命名为“图”,如图 6-6所示。在
“组件属性”面板中,将“图”的高度和宽
图 6-6 重命名组件
度分别设置为 300 像素和 210 像素。
42 XINXI JISHU第二单元 生活 APP 我开发 第 6 课 我教弟弟认动物
第 4 步:添加水平布局。单击“ ”,将“ ”拖放到“工
作面板”。 社
第 5 步:添加三个按钮。单击“ ”,依次将三个按钮拖放到“工作
版
面板”水平布局 1 中。
社
第 6 步:修改按钮属性。将左边的按钮重命名为“兔”,“图像出”设置为
版
“tu.png”,“文本”内容删除;将中间的按钮重命名为“狗”,“图像”设置为
育
“gou.png”,“出文本”内容删除;将右边的按钮重命名为“猫”,“图像”设置
教
为“mao.png”,“文本”内容删除。
育
第 7 步:添加音效。单击“ ”,将“ 东”拖放到“工作面
板”。教音效组件为非可视组件,拖放后自动出现在“工作面板”下方,设置完成
山
的组件如图 6-7 所示。
东
山
社
社
版
版
出
出
育
育 图 6-7 “认动物” APP 组件设计
教
教
东
三、逻辑设计添智能
东
山
山 让 APP 显示不同的图片、发出不同的声音等行为都是通过“逻辑设
计”来实现的。App Inventor 编程使用“块语言”,通过拖拽与插接一个个
的“积木”块完成程序编写,这与我们学过的 Scraino 编程方式类似。
通常 APP 在用户发出“指令”前什么也不会做,这个“指令”我们称
为“事件”。事件的表示通常是“事件源.事件”的形式,比如“按钮 1.被
点击”“Screen1.初始化”等。
XINXI JISHU 43初 中 第 6 册
探究实践三
社
“认动物”APP 逻辑设计
版
社
单击“逻辑设计”,切换到逻辑设计页面。
出
第 1 步:给“兔版”按钮编程。单击“兔”按钮,选择“ ”。单
育
击“图”,选择出“ ”。单击“文本”,选择“ ”,
教
单击“ ”,将文字改为“a1.png”,并将其插接在一起后,再插接进
育
“当兔.被点击”抽屉。单击“音效 1”,选择“
东
”,插
接文教本“a1.mp3”并插接进“当兔.被点击”抽屉。再次单击“音效 1”,选择
山
“ ”并插接进“当兔.被点击”抽屉,完成后如图 6-8 所示。
东
山
图 6-8 “兔”按钮代码
第 2 步:给“狗”按钮 、“猫”按钮编程。参照第1步完成“狗”按钮、
社
“猫”按钮的程序,如图 6-9、图 6-10 所示。
社
版
版
出
出
育
育图 6-9 “狗”按钮代码 图 6-10 “猫”按钮代码
教
教
东
东
教你一招 山
山
在逻辑设计中,右击某个代码块,选择“复制代码块”可完成这个代码块的
复制。将不需要的代码块拖入工作面板右下角的“ ”可将其删除。在工作面板
左下角“ ”显示警告或错误信息。
44 XINXI JISHU第二单元 生活 APP 我开发 第 6 课 我教弟弟认动物
四、调试运行看效果
App Inventor 开发过程中可以随时用安卓设备或模拟器对 APP 进行实社时
调试。 版
社
出
知识卡 版
育
出
使用安卓设备调试时,安卓设备端需要安装“AI 伴侣”APP,并且安卓设备
教
必须和电脑育处于同一 WiFi 环境下。
东
使用模拟器调试时,电脑端需要安装 App Inventor 模拟器或其他模拟器。使用
教
模拟器时不支持传感器相关功能。 山
东
山
探究实 践四
“认动 物”APP 运行调试
这里我们使用安卓设备进 行调试。首先在移动端安装“AI 伴侣”,然后确认
社
移动设备与电脑处于同一 WiFi 下。
社
第 1 步:电脑端连接“AI伴侣”。单击菜单栏中的“连接”,选择版“AI伴
版
侣”,弹出如图 6-11 的连接对话框。
出
出
育
育
教
教
东
东
山
山
图 6-11 连接到“AI 伴侣” 图 6-12 “AI 伴侣”启动成功
第 2 步:移动端启动“AI 伴侣”,如图 6-12 所示。单击“scan QR code”按
钮,扫描图 6-11 中的二维码,则“AI 伴侣”自动下载 APP 并显示效果。
至此,一个完整的 APP 开发完成。
XINXI JISHU 45初 中 第 6 册
知识卡
社
App Inventor 是一种云计算工具,这意味着应用存储在服务器上。当关版闭 App
Inventor,再重新返回时,应社用还在,不必在个人电脑上保存任何东西。如果想将应
出
用保存到个人电脑上,可通过“项目—导出项目(.aia)”来实现。
版
育
出
教
育
巩 固 提 升
东
教
山
1. 尝试使用模拟器调试程序。
东
2. 尝试“打包 apk”功能,并说出“打 包 apk 并显示二维码”和“打包
山
apk 并下载到电脑”的不同。
成 果 分 享
社
1. 在小组内展示你 的 APP,并提出改进意见。
社
2. 将你的第一个 APP 送给家人或朋友。 版
版
出
出
知 识 链 接
育
育
教
安卓系统和 App Inventor 简介
教
东
安卓(Android)是移动设备上的操作系统。台式机和笔记本电脑主
东
要使用Windows、Mac OS 和 Linux 等操作山系统,移动设备主要使用安卓、
山
iOS 和 Windows Phone 等操作系统。App Inventor 制作的 APP 可以运行于几
乎所有的安卓设备,但不能在 iphone 等手机上运行。
App Inventor 最初是由 Google 公司开发的一款在线开放的安卓编程工具
软件,用户可以抛弃复杂的传统软件开发的代码编写方法,通过图形化积木
式的拖放组件来完成安卓软件开发。
46 XINXI JISHU第二单元 生活 APP 我开发 第 6 课 我教弟弟认动物
App Inventor 具有生动有趣、环境搭建简单、开发过程简单、组件
丰富、易于多台机器协作、支持实时调试等特点,是初学者 APP 开发的
社
好工具。用 App Inventor 可以开发各种不同类型的 APP,比如游戏 APP,
版
教育APP,位置感知 APP,扫码、交谈等高科技 APP,社交 APP,基
社
出
于 web 的APP 等复杂应用,它还能和 LEGO 机器人、开源硬件结合呢。
版
育
出
教
育
东
教
山
东
山
社
社
版
版
出
出
育
育
教
教
东
东
山
山
XINXI JISHU 47初 中 第 6 册
社
第 7 课 我帮妈妈测健康
版
社
出
版
育
学完本课 你将能够:
出
教
体重是衡量一个人健康状况的重要 1. 了解UI设计。
育
标准之一,过胖或过瘦都不利于健康。 东
2. 学会使用分支结构编写
教
妈妈一直想要拥有完美的身材,我
程山序。
东们能不能为她定做一个测量身体健康指
3. 能够使用标签、文本
山数的APP呢?
输入框等组件设计APP,并打
包、安装、运行。
新 知 园 地 社
社
版
健康是人的第一财富,拥有健康体魄,远
版
出
离疾病侵袭,是每个人最大的愿望。随着现代
出
生活节奏的加快,人们更加关注身体健康。 育
育
身体质量指数(Body Mass Index,简
教
教
称 BMI),是目前国际上常用的衡量人体
东
东胖瘦程度以及是否健康的一个标准。计算公
山
式:身体质量指数(BMI)= 体重(kg)/身
山
高 2(m2)。
APP 功能:输入体重和身高,计算并显
示 BMI,根据性别显示“正常”或“肥胖”
等示意图,运行效果如图 7-1 所示。
所需素材:bg.png,BMI.png,feipang1. 图 7-1 BMI计算器运行效果
48 XINXI JISHU第二单元 生活 APP 我开发 第 7 课 我帮妈妈测健康
png,feipang2.png,nan.png,nv.png,pianshou1.png,pianshou2.png,
standard.png,zhengchang1.png,zhengchang2.png,icon.png。
社
一、UI 设计显魅力 版
社
出
UI 即 User Interface(用户界面),一般是指对 APP 的人机交互、操作
版
逻辑、界面美观程度的整体设计。好的 UI 设计让 APP 变育得有个性、有品
出
位,充分体现 APP 的定位和特点。UI 设计要关注 APP 视觉设计(组件布
教
局、字体、育颜色)、告诉 APP 要做什么、返回信息(通过屏幕、扬声器或
东
触觉)教等。
山
东 探究实践一
山
“BMI计算器”APP组件设计
从效果图 7-1 可知,本案例所 需组件较多,从上至下依次为:性别按钮、
BMI 显示标签、图像、标准图像 、水平布局 1(体重标签、体重输入框)、水平
布局 2(身高标签、身高输入 框)、水平布局 3(重新按钮、计算按钮)。各组件
社
属性设置如表 7-1 所示。
社
第 1 步:上传素材。将所需素材全部上传,或在设置图像属性时完成版上传。
第 2 步:版添加组件并设置属性。参照表 7-1 和图 7-2 中组件列表添加相关组
出
件并设置其属性。
出
育
育
教
教
东
东
山
山
图 7-2 BMI 计算器APP组件及属性
XINXI JISHU 49初 中 第 6 册
表 7-1 “BMI 计算器” APP 组件及属性
社
水平对齐:居中:3;应用名称:BMI计算
Screen1属性 背景图片:bg.png;图标:icon.png
版
允许滚动:√;标题:BMI健康指数计算
社
组件 面板组 名称 作用 属出性
版
高度:育50 像素
出 宽度:100 像素
按钮 用户界面 性别按钮 选择性别
教图像:nv.png
育 文本:空
东
BMI 显示 文本:在此显示您的
教标签 用户界面 显示 BMI 值
标签 山 BMI 数值
东
高度:200 像素
放 置 BMI 介
图像 用户界面 图像 宽度:200 像素
山 绍图片
图片:BMI.png
放置 BMI 标
图像 用户界面 标准 图像 图片:standard.png
准图片
放置体重标签
水平布局 界面布局 水平布局 1 背景颜色:白色
和输入框
社
社
标签 用户界面 体重标签 提示 文本:体重(kg):
版
版 背景颜色:透明
文本输入框 用户界面 体重输入框 输入体重 提示:点出击此处输入
出 体重,仅限数字:√
育
育 放置身高标签
水平布局 界面布局 水平布局 2 背景颜色:白色
和输入框 教
教
标签 用户界面 身高标签 提示 文本:身高(cm):
东
东
背景颜色:透明
山
文本输入框 用户界面 身高输入框 输入身高 提示:点击此处输入
山
身高,仅限数字:√
水平布局 界面布局 水平布局 3 放置两个按钮 默认
宽度:125像素
按钮 用户界面 重新按钮 清空输入值
文本:重新
宽度:125像素
按钮 用户界面 计算按钮 计算
文本:计算
50 XINXI JISHU第二单元 生活 APP 我开发 第 7 课 我帮妈妈测健康
二、逻辑设计定流程
无论是 Python 编程,还是 Scraino 编程或虚拟机器人编程,程序都是社由
三种基本结构组成的,即顺序结构、分支结构和循环结构。App Inve版ntor 自
社
然也不例外。
出
完成本例逻辑设计版的关键是分支结构的设计。根据性别的不同选择显示
育
图片是男性还是女
出
性,流程图如图 7-3 所示;根据计算的结果显示是正常、
教
超重还是偏瘦。因为要显示“超重”“正常”“偏瘦”三种状态,所以要用
育
到分支结构的嵌套,流程图如图 7-4 所示。 东
教
山
性别按钮
东
结果>=24 显示超重图片
是
山
性别
为“女” 否 否
是
结果>=18.5 显示正常图片
改性别变 改性别变 是
量为“男” 量为“女”
否
显示男性图片 显示女 性 图片 显示偏瘦图片
社
社
图 7-3 性别按钮逻辑流程图 图 7-4 显示健康图片流程图 版
版
出
引入“变量”可以大大简化编程的过程。变量是一个存储单元,可以把
出
它想象成一个容器,里面存储着可变的数据。 育
育
教
教
探究实践二
东
东
“BMI计算器”APP逻辑设计
山
山
第 1 步:定义变量。定义两个变量,一个用于保存计算结果,初始值为0;
另一个用于保存性别,初始值为 1,(1 代表女性,2 代表男性)。变量定义如
图7-5 所示。
图 7-5 定义变量
XINXI JISHU 51初 中 第 6 册
第 2 步:给“性别按钮”编程。单击“性别
社
按钮”,选择“ ”。单击“ ”,
选择“ ”,单击左上角的“ ”,将 版
社
“ ”拖入抽屉,如图 7-6 所示。 出
版
单击“逻辑”,选择“ ”,将 育
图 7-6 给“如果”添加“否则”
出
“ ”和“ ”嵌入。要实现的逻辑关系教是“如果性别为 1,则
育
更改性别为 2,显示男性图片;否则更改性别为 1,显示女性图片”,完成后程序
东
如图
教
7-7 所示。
山
东
山
图 7-7 性别按钮程序
社
第 3 步:计算 社 BMI 值。根据 BMI 计算公式: BMI = 体重(kg)/身高2
版
(m2),将版身高值除以100转换为“米”,即“ ”。
出
计算时先计算“ ”,再计算
出
育
““育 ”,这个积
教
木组合相当于公式“体重输入框.文本÷(身高输入框.文本/100×身高输入框.文本
教
/100)”。这个积木组合太长,可读性变差,在积东木组合上单击右键,然后选择
东“外接输入项”,可以将它改为外接形式,如图 7-8 所示。
山
山
图 7-8 外接输入项模式
计算 BMI 结果以及更改显示标签的程序如图 7-9 所示。
52 XINXI JISHU第二单元 生活 APP 我开发 第 7 课 我帮妈妈测健康
社
版
社
出
版图 7-9 计算BMI并显示程序
育
第 4 步:计 出 算按钮程序。首先,确定程序结构。根据流程图 7-4,本例需
要用到“如果……则……否则……,如果……则……”结教构,所以要单击“如
育
果……”结构左上角的“ ”,先将“ 东”拖进去,再拖进去一个
“ 教”,如图 7-10 所示。
山
东
山
图 7-10 如果结构嵌套
然后,关注如何显示 健康情况图片。如果当前性别变量的值为 1,当
社
前 BMI 值大于等于社 18.5 且小于 24,就显示图片“zhengchang1.png”,可以通过
版
“合并字符串”得到。完整的计算按钮程序如图 7-11 所示。
版
出
出
育
育
教
教
东
东
山
山
图 7-11 计算按钮程序
XINXI JISHU 53初 中 第 6 册
第 5 步:重新按钮程序。将体重输入框和身高输入框中的文本清空,程序如
图 7-12 所示。 社
版
社
出
版图 7-12 重新按钮程序
育
出
教
育
教你一招 东
教
山
东编写程序时,将程序块拖入“ ”,可以在本项目各页面或者其他项目中
重复使用本段程序。
山
在工作面板空白处单击右键,通过“折叠所有块”“展开所有块”“横向排
列所有块”“纵向排列所有块”可以更好地管理程序块。
三、调试运行并打包
社
社
归纳起来,App Inventor 运行调试主要有三种方式。 版
版
1. 使用 WiFi 和安卓设备进行实时调试:安卓设备端需要安装“AI 伴
出
出
侣”APP,并且安卓设备和电脑必须处于同一 WiFi 环境下。这是最直接、
育
最便育捷的调试模式。
教
2. 使用 USB 线和安卓设备进行实时调试:安卓设备端同样需要安装
教
东
“AI 伴侣”APP,并且通过“设置—开发者选项—开启 USB 调试”开启
东
USB模式,将安卓设备通过 USB 线与电脑山连接。
山
3. 使用模拟器进行实时调试:电脑端需要安装 App Inventor 模拟器,调
试时需要启动模拟器。使用模拟器调试时,与“传感器”相关的功能会受到
限制。
经过调试运行后,APP 可以打包成 apk 文件。apk 文件可以安装到安卓设备
上运行。
54 XINXI JISHU第二单元 生活 APP 我开发 第 7 课 我帮妈妈测健康
知识卡
社
APK 是 AndroidPackage 的缩写,将 apk 文件直接传到安卓模拟器或安卓手机
版
中执行即可安装。
社
App Inventor 可以通过“项目-导出项目(.aia)”来导出 aia 文件,出aia 文件是
可以再编辑的源文件,版通过“项目-导入项目(.aia)”可以将已存在的 aia 源文件
育
导入再编辑。
出
教
育
东
探究实践三
教
山
东 打包“BMI 计算器”
山
第 1 步:更改 APP 图标。上传 icon.png 图片,将 Screen1 的图标属性设为 icon.
png。
第 2 步:打包apk。单击“打包 apk”,选择“打包 apk 并显示二维码”可以
将制作好的 APP 打包成 apk 文件并显示二维码。用安卓设备扫描该二维码,就可
以下载并安装该 APP,它就 可以像其他 APP 一样运行了。
社
选择“打包 apk社 并下载到电脑”可以将制作好的 APP 打包成 apk 文件下载到本
版
地,再通过 USB 线或其他方式传输到安卓设备,并安装运行。
版
出
出
育
育
巩 固 提 升
教
教
1. 尝试完善 APP,使其细化为能够实现计算东“极度偏瘦、偏瘦、正常、
东
超重、肥胖”五个等级功能。 山
山
2. 尝试给 APP 添加计算体脂指数功能。
成 果 分 享
1. 将你的 APP 送给妈妈、老师或身边的阿姨。
2. 比较组内同学设计的 APP,并提出改进意见。
XINXI JISHU 55初 中 第 6 册
知 识 链 接
社
App Inventor 组件 版
社
App Inventor 组件是进行 ai 开发的基础,组件可分为可视组出件和非可视
版
组件。可视组件是指当 APP 运行后能够被看见的组件,如按钮、标签和文
育
本输入框等,可出视组件常用于设计 APP 的界面。非可视组件在应用中发挥
教
特定作用,育不会直接显示在用户界面中,而是显示在屏幕下的“非可视组
东
件”栏中,如音效、加速度传感器、文本语音转换器等。组件一般都有属性
教
山
和行为(方法),通过设置每个组件的属性值和对事件响应的行为,组合形
东
成独特的 APP 应用。属性是组件自身所具 有的性质,如按钮的宽度、高度
山
和颜色等。行为是组件自身所拥有的能力,如一个具体的人,他可以做出
走、说话等动作。
APP 可以被看作是一系列 事件处理的集合,通过对事件的响应反映 APP
的“行为事件——用户触发 ”的事件,如滑屏、按下按钮等,以及其他系统
社
定义的事件,如 A社PP 被启动、时钟、动画精灵碰撞、来电、位置改变等。
版
APP Inventor 的组件包括用户界面、界面布局、多媒体、绘图动画、传
版
感器、社交应用、数据存储、通讯连接和乐高机器人九大类。出
出
育
育
教
教
东
东
山
山
56 XINXI JISHU第二单元 生活 APP 我开发 第 8 课 我帮爷爷做运动
社
第 8 课 我帮爷爷做运动
版
社
出
版
育
学完本课 你将能够:
生命在于运动,科学运动有益健康。
出
教
跑步是非常有效的运动之一,每日适当跑 1. 了解加速度传感器和
育
一跑,可以有效改善呼吸系统、循环系统 计时器 东 。
教
和免疫系统。
山2. 学会使用传感器组件
东
爷爷爱运动,我们能不能开发一款计
设计APP。
山步器,自动记录运动量,来帮助他确定运
3. 能够开发计步器APP。
动强度呢?
社
新 知 园 地
社
版
计步器是版通过统计步数、距离、时间等数据,测算卡路里用以掌控运动
出
量的一种出工具。我们的目标是开发一款记录并显示步数的 APP,同时显示已
育
燃烧的卡路里、行走距离、行走时间等。它必须使用方便,一旦启动 APP,
育
教
随身携带的手机就能自动记录每日的运动量。
教
APP 功能:显示当前步数、时间、距离,可东以根据输入的体重计算并显
东
示消耗的热量。能够预定活动步数,达到预定步数后显示胜利画面并播放声
山
山
音,运行效果如图 8-1 所示。
所需素材:b5000.png,b10000.png,b20000.png,bg.png,icon.png,
sl.wav,sl1.png—sl9.png,walk.png。
XINXI JISHU 57初 中 第 6 册
社
版
社
出
版
育
出
教
育
东
教
山
东
山
图 8- 1 计步器运行效果及胜利后效果
社
社
一、巧用传感器 版
版
出
本例的关键是使用加速度传感器。加速度传感器是一个灵敏的传感器,
出
为非可视组件,用于侦测安卓设备的晃动。 育
育
精确计算消耗的热量比较复杂,这里忽视年龄教、性别、体质等因素,利
教
用公式:跑步热量(大卡)= 体重(kg)×距离(km)×1.036 可以得到消
东
东耗热量参考值。
山
山 胜利后的动画如何实现呢?App Inventor 没有动画组件,屏幕上的动画
实际上是一连串快速切换的图片,它利用的是人类的视觉暂留原理。那么又
怎样来更换图像呢?这就需要用到计时器组件。计时器是用于创建计时的非
可视组件,单位为毫秒,它以固定的时间间隔发出信号来触发事件,如切换
图片等。
58 XINXI JISHU第二单元 生活 APP 我开发 第 8 课 我帮爷爷做运动
探究实践一
“计步器”APP组件设计 社
本案例所需组件较多,要注意使用 版
社
各种布局来规划各组件,以便更好地
出
调整各组件的位置。版各组件属性设置如
育
表 8-1 所示。
出
第 1 步:上传素材。将所需素材全部 教
上传,也可育以在设置图像属性时完成上
东
传。
教
第 2 步:添加组件并设置属性。参照 山
东
表 8-1 和图 8-2 中组件的包含关系添加相
山关组件,并设置其属性。
图 8-2 计步器组件设计
表 8-1 “计步器” APP 组件及属性
社
社水平对齐:居中:3;应用名称:计步器
版
Screen1属性 背景图片:bg.png;图标:icon.png
版
标题:计步器;允许滚动:√
出
组件出面板组 名称 作用 属性
育
育 列数:3
表格布局 界面布局 表格布局1 灵活放置标签
教行数:2
教
东宽度:100像素
标签 用户界面 消耗标签 显示消耗提示
东 文本:消耗(大卡)
山
山 宽度:100像素
标签 用户界面 时间标签 显示时间提示
文本:时间(分钟)
宽度:100像素
标签 用户界面 千米标签 显示距离提示
文本:千米
字号:20
标签 用户界面 消耗数 显示消耗 文本:0
文本颜色:红色
XINXI JISHU 59初 中 第 6 册
(续表)
组件 面板组 名称 作用 属性 社
字号:20
版
标签 用户界面
社
分钟数 显示时间 文本:0
文本颜色:出绿色
版
字号:20
育
标签
出
用户界面 距离数 显示距离 文本:0
教文本颜色:蓝色
育
水平对齐:居中:3
东
放置体重标签
水平布局 界面布局 水平布局1 垂直对齐:居中:2
教
和输入框
山 高度:25像素
东
标签 用户界面 体重标签 提示输入体重 文本:体重(kg):
山
提示:
文本输入框 用户界面 体重输入框 输入体重 仅限数字:√
文本:70
水平对齐:居中:3
垂直布局 界面布局 垂直布局1 放置步数等
垂直对齐:居中:2
社
本次步数标
社
标签 用户界面 显示步数提示 文本:本次步数
签 版
版
字号:50
出
标签 用户界面 步数显示 显示步数 文本:0
出
文育本颜色:蓝色
育
标签 用户界面 目标 显示目标 文本:目标:5000
教
教
图像 用户界面 图像1 放置图片 图片:walk.png
东
东 水平布局 界面布局 水平布局2 放置按钮 默认
山
山 文本:空
按钮 用户界面 五千步 设定预定步数
图片:b5000.png
文本:空
按钮 用户界面 一万步 设定预定步数
图片:b10000.png
文本:空
按钮 用户界面 两万步 设定预定步数
图片:b20000.png
60 XINXI JISHU第二单元 生活 APP 我开发 第 8 课 我帮爷爷做运动
(续表)
(续表)
组件 面板组 名称 作用 属性 社
加速度传感 加速度传感 版
传感器 感受晃动 默认
器 社器1
出
版 启动计时:否
计时器 传感器 动画计时器 启动动画
时间间育隔:200
出
音效 多媒体 音效1 播放声音 源教文件:sl.wav
育
东
计时器 传感器 时间计时器 启动时间 时间间隔:60000
教
山
东
山
教你一招
在进行组件设计时,为了能 够显示所有组件,可以将 Screen1 的“允许滚动”
属性暂时勾选,最后根据实际 情况决定是否保留。
社
在调试时,每次更改 组件的属性,模拟器或安卓设备都会自动重新启动调试
社
过程。
版
版
出
出
二、轻松编程做计步 育
育
教
教
探究实践二
东
东
“计步器”APP逻辑设计
山
山
第 1 步:定义变量。定义五个变量,分别是
“分钟”,用于保存时间;“动画图片”用于保
存当前显示的图片索引;“晃动次数”用于保存
当前已晃动的次数;“目标步数”用于保存预定
的步数,初始值为 5 000;“步数”用于保存当前
步数。变量定义如图 8-3 所示。 图 8-3 定义变量
XINXI JISHU 61初 中 第 6 册
第 2 步:设定预设步数。单击“五千步”按钮会触发两个事件:一是设置变
量“目标步数”的值为 5 000;二是更改目标标签的文本。程序如图 8-4 所示。 社
版
社
出
版
图 8-4 “五千步”按钮程序 育
出
第 3 步:编写时间计时器程 教
育
序。在组件设计时我们已经设置
东
时间教计时器的时间间隔为 60 000 毫 图 8-5 时间计时器程序
山
秒,也就是 1 分钟。现在让它每次计时“分钟”变量值增加 1。程序如图 8-5 所示。
东
第 4 步:编写加速度传感器 1 程序。这 是程序的关键部分,每次晃动要完
山
成 4 件事情:一是“晃动次数”变量加 1; 二是每晃动 4 次“步数”变量加 1 并更
改步数显示;三是更新分钟数、距离数、消耗数;四是判断如果完成目标步数则
播放胜利动画及声音。
每晃动一次“晃动次数 ”
加 1 程序如图 8-6 所示。 图 8-6 “晃动次数”加 1 程序 社
社
经试验,每行走一步,加
版
速度传感器会版晃动 4 次,即每晃
出
动 4 次“步数”变量加 1。实现
出
的方法是:如果“晃动次数” 育
图 8-7 “步数”加 1 程序
育
除以 4 余数为 0,则“步数”变
教
教量值加1并更新步数显示。程序
东
如图 8-7 所示。
东
更新分钟数、距离数、消 山
山
耗数的程序如图 8-8 所示。 图 8-8 更新显示程序
实现“完成目标步数则播放胜利动画及声音”部分也不难,我们把播放动画
的任务交给动画计时器。因为动画计时器的初始值为“假”,只要满足“当步数=
目标步数”时,设置动画计时器为“真”,时间计时器为“假”,并播放声音。
程序如图 8-9 所示。
将这 4 部分插接在 抽屉,完成加速度传感器 1 程序编写。
62 XINXI JISHU第二单元 生活 APP 我开发 第 8 课 我帮爷爷做运动
社
版
图 社8-9 胜利时启动动画计时器程序
出
版
第 5 步:播放动画程序。设置“ ”后,
育
它就开始工作了。“动画计时器”每完成一次计时,“动画图片”变量加 1,设
出
置图像1的图片为sl1.png—sl9.png。程序如图 8-10 所示。 教
育
东
教
山
东
山
图 8-1 0 动画计时器程序
至此完成整个程序的编写。
社
社
版
版
巩 固 提 升 出
出
育
1. 请参照“五千步”按钮的逻辑设计完成“一万步”“两万步”程序段
育
教
的编写。
教
2. 下载并安装几个计步器 APP,看看它们东有哪些优点并尝试改进你的
东
APP。
山
山
成 果 分 享
1. 将你的 APP 在班里展示并评选出最佳计步器。
2. 把你的计步器 APP 送给爷爷、奶奶并根据他们的反馈意见改进该
APP。
XINXI JISHU 63初 中 第 6 册
知 识 链 接
社
屏幕、布局与画布 版
社
一、屏幕 出
版
用 App Inventor 创建一个项目后,在组件设计器的工作 育 面板中默认会创
出
建一个 Screen1,它相当于安卓设备的屏幕,是进行用户界面设计的地方,
教
它是一个容育器,可以放置组件面板中的组件。App Inventor 最多支持 10 个屏
东
幕。
教
山
二、布局
东
在设计应用程序时,往往需要仔细考虑 不同组件在界面上的布局和构图
山
效果,而不只是简单地把组件堆积在屏 幕上。为了能够设计出相对美观的布
局结构,App Inventor 提供了界面 布局组件,支持水平布局、水平滚动条布
局、表格布局、垂直布局、垂 直滚动条布局。
三、画布
社
画布是一种可社在其上绘制图像的组件,初始的画布像一张空白的纸,
版
没有任何内容,我们可以在画布上绘制各种图形,如线条、点、矩形、圆形
版
出
等;也可以在画布上加载图片作为画布的背景或在画布上显示文字。
出
育
育
教
教
东
东
山
山
64 XINXI JISHU第二单元 生活 APP 我开发 第 9 课 我帮奶奶拨电话(1)
社
第 9 课 我帮奶奶拨电话(1)
版
社
出
版
育
出 学完本课 你将能够:
家人的电话无论何时都给
教
育
人以温暖,可患上“老花眼”的 1. 了解语音识别器和文本语音转
东
奶奶教很难看清电话号码,难以 换器。
山
东 与家人通话联系。我们能不能 2. 学会使用电话拨号器。
开发一款 APP,来帮助她轻松
3 . 能够使用多媒体组件和社交应
山
拨号呢?
用 组件设计 APP。
社
新 知 园 地
社
版
版
开发一款语音拨号 APP,只需对着手机说话,它就会自动识别联系人,
出
自动查找出号码并完成拨号。
育
APP 功能:APP 启动后显示“单击说话”按钮和“输入号码”按钮,如
育
教
图 9-1 所示。点击“单击说话”按钮后,显示如图 9-2 所示页面,对着话筒
教
说出联系人姓名,APP 自动识别,发出“你要东给 ××× 打电话吗?”的询
东
问,如图 9-3 所示。如果是则点击“开始拨山号”按钮,APP会自动给联系人
山
拨号,否则再次点击“单击说话”按钮进行语音输入。点击“输入号码”按
钮,进入联系人输入页面,如图 9-4 所示。
所需素材:bg.png,dial_input.png,icon.png,make_call.png。
XINXI JISHU 65初 中 第 6 册
社
版
社
出
版
育
出
教
育
东
图教 9-1 启动 图 9-2 语音输入 图 9-3 开始拨号 图 9-4 输入号码
山
东
完成语音拨号 APP 设计需用两课,本课仅完成给固定的两个联系人拨
山电话并且切换到输入页面。
一、语音识别真奇妙
语音识别技术是把语音 信号转变为相应的文本或命令的技术。在语音输
入、语音控制、智能家 电、智能查询等方面得到广泛应用。 社
社
App Inventor 自带语音识别器组件,它能自动调用安卓设备的版语音识别
版
功能并可将收听到的用户讲话转化为文字。它还带有文本语音转换器组件,
出
可以让设出备将文字用语音读出来。
育
育
探究实践一 教
教
“语音拨号”APP组件设计 东
东
第 1 步:上传素材。 山
山
第 2 步:为 Screen1 添加组件并设置属性。请参
照图9-5 中组件的包含关系以及表 9-1 所示属性设置
添加相关组件。
图 9-5 Screen1组件设计
66 XINXI JISHU第二单元 生活 APP 我开发 第 9 课 我帮奶奶拨电话(1)
表 9-1 Screen1 组件属性设置
社
水平对齐:居中:3;垂直对齐:居下:3
Screen1属性 应用名称:语音拨号;背景图片:bg.png 版
社图标:icon.png;标题:语音拨号
出
组件 面板版组 名称 作用 属性
育
出
背景颜色:粉红
进入输入 教
按钮 用户界面 输入号码 形状:椭圆
育 页面
东文本:输入号码
教
让组山件布局 高度:200像素
标签 用户界面 占位标签
东 更灵活 文本:空
山 图像:make_call.png
调用拨号
按钮 用户界面 开始拨号 文本:空
组件
可见性:否
字号:34
高度:60像素
单击说话 调用语音 社
按钮 用户界面 宽度:充满
社 按钮 识别
图像:dial_inpu版t.png
版 文本:单击说话
出
出
语音识别器 多媒体 语音识别器1 语音识别 默认
育
育
文本语音转 文本语音转
多媒体 念读文本 教默认
换器 换器1
教
东
东电话拨号器 社交应用 电话拨号器1 拨号 默认
山
山
第 3 步:添加 Screen2。本 APP 需要两个屏幕,分别显示拨号窗口和号码输入
窗口。单击“ ”按钮,添加屏幕“Screen2”。
第 4 步:为 Screen2 添加组件并设置属性。首先设置基础组件,其余组件将在
第 10 课再进行设置。请参照图 9-6 中组件的包含关系以及表 9-2 所示属性设置添
加相关组件。
XINXI JISHU 67初 中 第 6 册
社
版
社
出
版
育
出
教
育
东
教
山
东
图 9-6 Screen2组件设计
山
表 9-2 Screen2 组件属性设置
水平对 齐:居中:3;垂直对齐:居中:2
Screen2 属性
背景图片:bg.png;标题:输入号码
组件 面板组 名称 作用 属性
社
社
放置标签和输
水平布局 界面布局 水平布局1 背景颜色:版白色
入框
版
出
标签 用户界面 姓名标签 放置姓名提示 文本:姓名:
出
育
育文本输入框 用户界面 姓名输入框 输入姓名 默认
教
放置标签和输
教
水平布局 界面布局 水平布局2 背景颜色:白色
入东框
东
标签 用户界面 电话标签 山放置电话提示 文本:电话:
山
文本输入框 用户界面 电话输入框 输入电话号码 仅限数字:√
水平布局 界面布局 水平布局3 放置按钮 背景颜色:白色
按钮 用户界面 保存按钮 保存姓名号码 文本:保存
按钮 用户界面 返回按钮 返回到Screen1 文本:返回
68 XINXI JISHU第二单元 生活 APP 我开发 第 9 课 我帮奶奶拨电话(1)
二、自动拨号显神威
App Inventor 拥有电话拨号器组件,只要设置它的电话号码,启动社
“ ”就可以拨打电话了。 版
社
语音拨号 APP 需要语音识别器、文本语音转换器以及电话出拨号器等组
版
件的密切配合来完成自动拨号。
育
出
教
探究实践二
育
东
“语音拨号”APP逻辑设计
教
山
第 1 步:定义变量。需要号码和姓名两个变量。变量定义如图 9-7 所示。
东
山
图 9-7 定义变量
第 2 步:单击“单击说话 按钮”。当单击“单击说话按钮”时要启动语音识
社
别器组件,也就是调用它 的语音识别功能。程序如图 9-8 所示。
社
版
版
出
出
图 9-8 启动语音识别器 育
育
第 3 步:当“语音识别器”识别完成。当识别完成时教,首先设置姓名变量值
教
为识别结果,然后念读文本“你要给×××打电话吗?”并设置开始拨号按钮为
东
东
可见。程序如图 9-9 所示。
山
山
图 9-9 语音识别器程序
XINXI JISHU 69初 中 第 6 册
如果 APP 念读的结果在我们预设的联系人名单中,则手动单击“开始拨号”
按钮,否则重新单击“单击说话”按钮,再次进行语音输入。 社
第 4 步:当单击“开始拨号”时。假如已有联系人王林,号码为1111111111,
版
刘玲号码为2222222222。当社单击“开始拨号”时,首先要根据语音识别的结果判断
出
是否含有联系人“王林”,如果是则设置变量“号码”值为“1111111111”,否
版
则,如果含有联系人“刘玲”,则设置变量“号码”值为“222育2222222”,否则
仍为空。如果变出量“号码”值为空,则念读文本“没找到号码”,否则设“电话
教
拨号器.电话号码”为变量“号码”值,调用“电话拨号器.拨打电话”。程序如
育
图 9-10 所示。 东
教
山
东
山
社
社
版
版
出
出
图 9-10 开始拨号程序
育
育
第 5 步:当单击“输入号码”按钮打开另一屏幕。选中“输入按钮”,选
教
教择“ ”,单击“ ”,单击“ ”,插接文本
东
东
“Screen2”,则会打开屏幕 2。程序如图 9-11 所示。
山
山
图 9-11 打开另一屏幕程序
调试运行、打包完成整个 APP 的初步制作。但它还不能给任意已保存
的联系人拨打电话,不能输入与存储号码等,需要进一步完善。
70 XINXI JISHU第二单元 生活 APP 我开发 第 9 课 我帮奶奶拨电话(1)
巩 固 提 升
社
1. 尝试使用两个按钮实现与两个联系人拨打电话功能。
版
2. 尝试做一个“心情笔社记”APP,使用语音输入方式记录生活中的喜怒
出
哀乐。
版
育
出
教
成 果 分 享
育
东
1. 教将你的 APP 在班里展示,比一比谁的界面最友好,功能最强大。
山
2. 完善本 APP 功能还需要做什么,怎么做?说一说你的想法和猜想并
东
尝试。
山
知 识 链 接
多媒体与传感器
社
大多数的智能社设备都具备多媒体功能。App Inventor 提供了将不同媒
版
体引入 APP 的版方法。无论是音频、视频还是图片,无论是照相机还是录音
出
机,它都能轻松调用。
出
育
在“组件面板-多媒体”中,提供了照相机、摄像机、图像选择框、音
育
频播放器、音效、录音机、语音识别器、文本语音教转换器、视频播放器、
教
Yandex语言翻译器等多媒体组件。
东
东
移动设备与传统桌面计算机相比,最大的优势之一就是拥有丰富的传感
山
山 器,这就使得移动设备能够访问用户周围的环境信息,如加速度传感器、计
时器、陀螺仪传感器、位置传感器、方向传感器等。
XINXI JISHU 71初 中 第 6 册
社
第 10 课 我帮奶奶拨电话(2)
版
社
出
版
育
出 学完本课 你将能够:
教
灵活编辑联系人是使用拨
育 1. 了解对话框。
电话APP的前提,我们如何将需 东
教 2. 学会使用列表和微数据库。
要的号码输入并保存起来呢?
山
3. 能够使用微数据库组件设计APP。
东
山
新 知 园 地
APP 功能:启动 AP P 后,自动检查数据库中是否存在联系人名单,如
社
社
果没有则弹出对话框提示“还没有联系人,您是否添加?”,点击“添加”
版
按钮则跳转到版 Screen2,要求输入联系人名单。点击“开始拨号”按钮时,
出
要打开数据库,比对已有联系人名单,如果有则拨打其号码,否则念读“没
出
育
找到号码”。进入输入号码屏幕后,能够显示“现有× 人”,并列举名单。
育
点击“保存按钮”保存联系人数据,点击“返回按钮教”回到启动屏幕。
教
东
一、数据存储显奇能
东
山
山 大多数 APP 和程序都需要数据存储,保证 APP 退出后这些数据还在。
你能想到我们每天都在和数据库打交道吗?如MP3 播放列表、QQ 好友、电
视节目表、联系人列表等都和数据库有关。
数据库是为了能够快速检索而组织在一起的相关数据的集合。微数据库
是 App Inventor 中的一个非可视组件,用来保存应用中的数据。微数据库组
件的存储方式是将数据存储在手机中,当用户关闭 APP 时,此组件可以保
72 XINXI JISHU第二单元 生活 APP 我开发 第 10 课 我帮奶奶拨电话(2)
存数据,当下次启动 APP 时,可将存储的数据读取出来。
在微数据库中存储的是数对,即标签和值;如标签“姓名”,值为“王
社
林”;标签“电话”,值为“139××××××××”等。
版
社
探究实践一
出
版
育
“语音拨号”APP 组件设计
出
教
第 1 步:为 Screen1 添加微数据库和对话框组件。参照表10-1设置属性。
育
表 10-1 “语音拨号”APP 添加组东件及属性 1
教
山
组件 面板组 名称 作用 属性
东
微数据库 数据存储 联系人数据库 保存联系人信息 默认
山
弹出对话框,显
对话框 用户界面 对话框 1 默认
示提示
第 2 步:为 Screen2 添加微数据库、对话框和两个标签。参照表 10-2 设置属性。
社
表社 10-2 “语音拨号”APP 添加组件及属性 2
版
组件 版面板组 名称 作用 属性
出
出
标签 用户界面 人数标签 显示现有人数 文本:空
育
育
标签 用户界面 名单标签 显示姓名列表 文本:空
教
教
微数据库 数据存储 联系人数据库 保存东联系人信息 默认
东
山弹出对话框,显
对话框 用户界面 对话框1 默认
山 示提示
二、事件驱动真灵活
App Inventor 采用事件驱动机制,指用某个事件来触发某项代码,就是
当某事件发生时,程序要做这件事。使用事件驱动可以大大节约系统资源,
XINXI JISHU 73初 中 第 6 册
因为代码处于待命状态,APP 始终不知疲倦地监控事件,每当触发某项事
件,相关代码才马上执行,完毕后继续待命。
社
版
探究实践二
社
出
版“语音拨号”APP 逻辑设计
育
第 1 步:为出 Screen1 添加新变量。添加“联系
教
人”和“个数”两个变量,用于存放联系人列表
育
图 10-1 添加两个变量
和联系人的个数,变量定义如图 10-1 所示。 东
教第 2 步:Screen1初始化。初始化事件在启动该屏幕时启动。启动时首先让变
山
量“联系人”的值等于联
东
系人数据库中的获取标签数
山
据。如果变量“联系人”值
为空,则弹出对话框,弹出
的对话框显示“添加”和
“取消”两个按钮。程序如
图 10-2 Scree n1 初始化
图 10-2 所示。
社
社
第 3 步:对话框选择完成程序。当对
版
话框选择完版成时,如果选择了“添加”
出
则跳转到Screen2屏幕。程序如图10-3
出
所示。 图 10-3 对
育
话框选择完成程序
育第 4 步:为 Screen2 定义变量。定义“名单”“个数”“联系人 2”3 个变量。程
教
序如图 10-4 所示。
教
东
东
山
山
图 10-4 Screen2 定义变量 图 10-5 返回按钮
第 5 步:Screen2 返回按钮程序。当单击“返回按钮”时跳转到 Screen1。程序
如图 10-5 所示。
第 6 步:Screen2 初始化。当 Screen2 启动时首先让变量“联系人”的值等于
联系人数据库中的获取标签数据,如果值为空,则设置变量“个数”值为 0,否
则值设为数据库中标签为“ge”的值,然后根据个数值设置“人数标签”的文本
74 XINXI JISHU第二单元 生活 APP 我开发 第 10 课 我帮奶奶拨电话(2)
值为合并字符串“共有”“取 global 个数”和“人”。
获取联系人名单列表 社
需要用到循环,如现在个数
版
为 3 人,则需要循环3次。 社
出
联系人列表值为原有联系
版
人,依次合并字符串标签
育
“xm1”“xm2”“出xm3”和
教
“,”,即首先将变量“名
育
单”的值为合并字符串的 东
教
值,然后将“名单标签”
山
的文本设置为变量名单的 图 10-6 Screen2 初始化
东
值。程序如图 10-6 所示。
山
第 7 步:当“保存按钮”被点击。首先检查姓名输入框或电话输入框文本是
否为空,如果是,则显示对话框“输入不完整”,否则保存数据。设置变量“个
数”加 1,保存标签“ge”的值为 个数。保存标签“xmX”(其中X 值是当前个
数值)为姓名输入框的文本, 标签“dhX”为电话输入框的文本。调用对话框显
示保存成功。清空姓名输入
社
社 框和电话输入框的文本,刷
版
新现有人数显示。“姓名输
版
入框”获得焦点出等待下次输
出
入。程序如图 10-7 所示。
育
育 第 8 步:为 Screen1 重
写“教开始拨号”程序。现在
教
要从数据库中提取联系人列
东
东 表,从而判断语音识别的联
山
系人是否在联系人列表中。
山
首先将变量“个数”值设
为数据库读取标签“ge”的
值,然后利用循环依次检查
变量“姓名”是否含有标签
“xmX”(其中X代表循环
图 10-7 保存按钮程序 变量名)的联系人,如果
XINXI JISHU 75初 中 第 6 册
是,则设置变量“号码”为该联系人的号码。如果循环完毕后,仍然号码为空,
则念读“没找到号码”,否则 ,社
。程序如图 10-8 所示。
版
社
出
版
育
出
教
育
东
教
山
东
山
图 10-8 重写“开始拨号”程序
社
调试运行、打包完成 整个 APP 的制作。
社
版
版
出
出
知识卡 育
育
教
微数据库支持如下 5 种方法。
教
清除所有数据:清空整个微数据库中的数据存东储。
东 清除标签数据:清除指定标签下的数据。
山
获取标签数据:返回该数据存储区内全部标签列表。
山
获取数值:通过给定的标签检索存储的数据,如果不存在此标签,则返回指
定的字符串。
保存数值:在指定的标签下保存给定的值,每当应用被重新启动时,数据依
然被存储在手机中。
76 XINXI JISHU第二单元 生活 APP 我开发 第 10 课 我帮奶奶拨电话(2)
巩 固 提 升
社
1. 尝试使用联系人选择框或电话选择框完成联系人信息的输入。
版
社
2. 尝试制作一个利用相片拨号的 APP,实现常用联系人的相片选择和姓
出
名以及电话输入,单击版相片实现拨号。
育
出
教
成 育果 分 享
东
教
1. 将你的 APP 送给爷爷、奶奶,并根据他山们的反馈意见改进该 APP。
东
2. 以小组为单位讨论该 APP 还需要进行哪些改进,说说自己的创意,
山力争合作完成一个完美的语音拨号 APP。
知 识 链 接
循环结构探秘 社
社
在不少实际问题中都需要规律性的重复操作,在程序设计中也版就需要重
版
复执行某些语句。循环结构就是在程序中需要反复执行某些语句而设置的一
出
出
种程序结构,它的流程图如图 10-9 所示。
育
育
教
教
条件 东
假
东
真
山
山
语句组
图 10-9 循环结构流程图
XINXI JISHU 77初 中 第 6 册
App Inventor 拥有三种循环结构,它们分别是:
社
版
社
出
版
育
出
教
①为固定次数的循环,表示从起始值(如 1)到终止值(如 5)且增量
育
东
为指定值(如 1)的每一个变量名,都重复执行同样一组操作,每重复一次
教
变量名的值在现有基础上增加一个指定值。山
东
②为列表项目个数循环,表示针对列 表中的每一项都重复执行相同的
山
操作。
③条件测试循环,表示当测试 结果为真时,执行一组操作,然后再次进
行条件测试,如果为真,执行同样一组操作;如果为假,不再执行这一组操
作,跳出循环。 使用该循 环时要注意更改条件,以避免出现死循环。
社
社
版
版
出
出
育
育
教
教
东
东
山
山
78 XINXI JISHU主题活动 社
版
社
出
单元知识梳理与评价
版
育
出
本单元我们学习了这些知识,请你给自己对各知识点的掌握程度评评
教
级吧! 育
东
教
山掌握程度
东 知识点
单点 多点 关联 抽象拓
前结构
结构 结构 结构 展结构
山
APP 的开发步骤
按钮
我教弟弟认动物
图像
社
水平布 局
社
标签 版
版
我帮妈妈测健康 文本输入框 出
出
APP 打包 育
育
加速度传感器
教
我帮爷爷做运动
教
计时器
东
东 语音识别器
山
我帮奶奶拨电话
山 文本语音转换器
(1)
电话拨号器
列表
我帮奶奶拨电话
微数据库
(2)
对话框
XINXI JISHU 79作品评价
社
你的这几件作品,你和小组是怎样评价的?
版
社
个人评价 小组评价出
版
优秀 良好 不满意 优秀 良好 育待改进 改进否
出
教
认动物 □ □ □ □ □ □ □
育
东
测健康 □ □ □ □ □ □ □
教
山
东计步器 □ □ □ □ □ □ □
山拨电话(1) □ □ □ □ □ □ □
拨电话(2) □ □ □ □ □ □ □
自主开发APP 社
社
版
版
我们已经体验到了 App Inventor 的强大,但要开发一个好的 APP 还需要
出
不断努力出。一般来说,APP 开发的一般流程包括:需求分析(需求讨论、需
育
求评育估、项目技术开发与视觉规划)、研发(程序开发、程序测试)、发布
教
等几个阶段。
教
东
东 一、需求分析
山
山
用户需求分析占据整个 APP 开发流程中最重要的环节,一款 APP 开发
的成功与否很大程度决定于此。
1. 需求讨论:明确功能,确定方案。APP 开发针对的主题是用户,在
需求分析中要以用户为中心,经过多次需求交流、讨论,梳理 APP 功能框
架。包括:开发类型、开发平台、具体功能、具体设计需求、期望完成时间
80 XINXI JISHU等,通过反复调研、讨论,拿出方案。
2. 需求评估:讨论需求方案是否可行,需求技术难度、需求可行性与体
社
验评估。
版
3. 项目技术开发与视觉规划:设计 UI(产品界面)和 UE(用户体
社
出
验),针对产品开展创意设计,依据所表现的内容进行版面结构设计,风格
版
与配色设计,菜单图标和页面元素设计,形成初步效果图,育在此期间与用户
出
不断地沟通修改,最终确认视觉图。
教
育
二、研发 东
教
山
1. 程序开发:前端开发—程序开发—接口对接—第三方接入等。
东
2. 程序测试:内容测试、性能测试、功能测试、视觉测试,对 BUG 调
山
试修复,与用户沟通,测试、修改。
三、发布
交用户使用或上线发布。
社
社
※ 活动目标
版
(1)通过合版作,理解一个完整 APP 开发的实际流程。
出
(2)出在掌握有关 App Inventor 开发知识和技能的基础上,获得丰富的学
育
习体验,培养在生活中发现问题,在实践中解决问题,在过程中提高创新实
育
教
践的能力。
教
(3)感受 App Inventor 的神奇魅力,培养对东移动应用开发的兴趣,提高
东
问题意识以及“STEM”素养,促进全面而个性地发展。
山
山
※ 活动建议
(1)活动方式:
A. 成立项目开发项目部,分工、协作完成需求分析、评估、规划、程
序开发、程序测试与发布。
B. 查找相近案例的制作教程,参考其使用的组件、逻辑设计完成设计。
XINXI JISHU 81C. 建议在一个月内完成任务,中期可多次进行开发研讨。
(2)活动任务:
社
从下列任务中任选一项任务或自主确立一项任务。
版
任务一 开车接打电话是一种非常危险的行为,但是开车过程中难免会
社
出
有电话打进来。请帮爸爸制作一款“开车不接电话”的APP。APP功能:当
版
有电话打进来时,APP自动回复短信“我在开车,稍后跟您育联系!”。
出
任务二 爸爸在大型停车场,停车再回来后
教
很难找到车停到哪里
育
了。请帮爸爸制作一款“我的车在哪儿”的APP。APP功能:启动APP,
东
实时显教示当前位置并记住停车位置。找车时,可调用地图并显示导航。
山
任务三 你一定听说过“图灵机器人”吧?请用App Inventor开发一
东
款“图灵机器人”。APP功能:向APP任 意提问,APP做出智能回答。
山
※ 作品分享
召开 APP 项目发布会,展示 APP 运行效果并上线。作品资源包包括:
设计说明文档、源文件(aia格式)、演示视频、所用素材等。
社
社
版
版
出
出
育
育
教
教
东
东
山
山
82 XINXI JISHU拓展阅读 智能时代已来临
社
拓展阅读 智能时代已来临
版
社
出
版
育
出
教
随着计算机网络的高速发展,人类已经进入“云”时代。云计算、大数
育
据、互联网+、物联网等先进技术已经走进我们的东生活。这是一个值得期待
教
的智能化时代,也是值得我们为之付出努力的山时代。
东
一、云计算
山
云计算是以应用为目的,通过互 联网将必需的软硬件按照一定的形式
连接起来,并且随着需求的变化 而灵活调整的一种低消耗、高效率的虚拟
资源。
社
社
版
版
出
出
育
育
教
教
东
东
山
山
图 1 云计算
云,是网络、互联网的一种比喻说法,即互联网与建立互联网所需要的
底层基础设施的抽象体。“计算”当然不是指一般的数值计算,而是由足够
强大的计算机提供的计算服务(功能、资源和存储等)。“云计算”可以理
XINXI JISHU 83初 中 第 6 册
解为:网络上足够强大的计算机为你提供的服务,只是这种服务是按你的使
用量进行付费的。
社
二、大数据 版
社
出
大数据(big data,mega data),或称巨量资料,是一种规模大到在获
版
取、存储、管理、分析方面大大超出了传统数据库软件工具育能力范围的数据
出
集合,具有海量的数据规模、快速的数据流转、多样的数据类型和价值密度
教
低四大特征育。
东
大教数据无处不在,我们每一次看似不经意的决定,背后都有大数据的支
山
撑,比如网上购物时,平台会通过对用户行为的分析产生基于用户数据的个性
东
化推送服务。
山
社
社
版
版
出
出
育
育
教
教
图 2 大数据
东
东
山
三、互联网+
山
“互联网+”是创新 2.0 下的互联网发展新形态、新业态,是知识社会
创新 2.0 推动下的互联网形态演进及其催生的经济社会发展新形态。“互联
网+”是互联网思维的进一步实践成果,它代表一种先进的生产力,推动经
济形态不断的发生演变,从而带动社会经济实体的发展,为改革、创新、发
展提供广阔的网络平台。
84 XINXI JISHU拓展阅读 智能时代已来临
通俗来说:“互联网+”就是“互联网+各个传统行业”,即利用互联
网平台、信息通信技术把互联网和传统各行各业结合起来,从而在新领域
社
创造一种新生态。例如,互联网+传统集市,淘宝出现了;互联网+传统银
版
行,支付宝出现了;互联网+传统交通,滴滴打车出现了……
社
出
版
育
出
教
育
东
教
山
东
山
社
社
版
版
出
图 3 互联网+
出
育
育
四、虚拟现实 教
教
东
虚拟现实技术 (VR) 是一
东
种可以创建和体验虚拟世界的计 山
山
算机仿真系统。它利用计算机生
成一种模拟环境,是一种多源信
息融合的、交互式的三维动态视
景和实体行为的系统仿真,能够
使用户沉浸到该环境中。
图 4 虚拟现实
XINXI JISHU 85初 中 第 6 册
虚拟现实技术是仿真技术的一个重要方向,是仿真技术与计算机图形学
人机接口技术、多媒体技术、传感技术、网络技术等多种技术的集合,是一
社
门富有挑战性的交叉技术前沿学科和研究领域。虚拟现实技术主要包括模拟
版
环境、感知、自然技能和传感设备等方面,主要应用于医学、娱乐、军事航
社
出
天、室内设计、房产开发、工业仿真、应急推演、教育、汽车仿真等领域。
版
育
出
教
育
东
教
山
东
山
图 5 虚拟现实技术
社
社
五、体感技术 版
版
出
体感技术是直接使用肢体动作来操纵多媒体设备,使人以身临其境地
出
与周边的装置或环境进行互动的技术。体感技术是人机交育互历史上的一次革
育
命。目前,体感技术主要应用于教育、体育、游戏等教方面。
教
东
东
山
山
图 6 体感技术
86 XINXI JISHU拓展阅读 智能时代已来临
六、物联网技术
社
物联网是新一代信息技术的重要组成部分,也是信息化时代的重要发
展阶段。物联网就是物体与物体相连的互联网。这有两层意思:其版一,物
社
联网的核心和基础仍然是互联网,是在互联网基础上延伸和扩出展的网络;
版
其二,其用户端延伸和扩展到了任何物品与物品之间,进行信息交换和通
育
信,也就是物物相出连。物联网通过智能感知、识别技术与普适计算等通信感
教
知技术,广泛应用于网络的融合中,也因此被称为继计算机、互联网之后第
育
东
三次世界信息产业发展浪潮。物联网是互联网的应用拓展,与其说物联网是
教
网络,不如说物联网是业务和应用。因此,应山用创新是物联网发展的核心,
东
以用户体验为核心的创新 2.0 是物联网发展 的灵魂。生活中常见的可穿戴设
山
备、智能家居、共享单车等都使用了物联网技术。
社
社
版
版
出
出
育
育
教
教
东
东
图 7 物联山网
山
可穿戴设备
可穿戴设备即直接穿在身上,或是整合到用户的衣服或配件的一种便携
式设备。可穿戴设备不仅仅是一种硬件设备,而且能够通过软件支持以及数
据交互、云端交互来实现强大的功能,可穿戴设备将会对我们的生活、感知
带来很大的转变。
XINXI JISHU 87初 中 第 6 册
社
版
社
出
版
育
出
教
育
东
教
山
东
山 图 8 可穿 戴设备
可穿戴设备多以具备部分计算功能、可连接手机及各类终端的便携式配
件的形式存在。主流的产品形 态包括以手腕为支撑的手表和腕带等产品;以脚
为支撑的鞋、袜子或将来的其他腿上佩戴产品;以头部为支撑的眼镜、头盔、
社
头带等产品;以及社智能服装、书包、拐杖、配饰等各类非主流产品形态。
版
版
智能家居
出
出
智能家居又称智能住宅,是以住宅为平台,集系统、育结构、服务、管理
育
为一体,兼备建筑设备、网络通信、信息家电和设教备自动化的高效、舒适、
教
安全、便利、环保的居住环境。智能家居已经成为未来家居发展的一个方
东
东向,它正以迅雷不及掩耳之势进入我们的生活。
山
山 中国的智能家居行业兴起于20世纪 90 年代末期。就现在的智能家居市
场而言,中国的制造市场已在逐渐发展,例如中国智能马桶。智能家居产业
有望接棒安防产业,成为物联网生态下一个繁荣的技术群落和应用产业。
智能产业的发展随着全球范围内信息技术创新不断加快,信息领域新产
品、新服务、新业态大量涌现,不断激发新的消费需求,成为日益活跃的
消费热点。
88 XINXI JISHU拓展阅读 智能时代已来临
社
版
社
出
版
育
出
教
育
东
教
山
图 9 智能家居
东
山
共享单车
共享单车是共享经济下的产物,是指企业在校园、地铁站点、公交站
点、居民区、商业区、公共服 务区等提供自行车单车共享服务,是一种分时
租赁模式。 社
社
版
版
出
出
育
育
教
教
东
东
山
山
图 10 共享单车
XINXI JISHU 89初 中 第 6 册
用户通过手机扫描单车上二维码,而后共享单车向云端发起解锁请求,
云端完成对用户和单车的信息核查,并将解锁指令发送给单车智能锁,智能
社
锁开启后向云端回复解锁成功,云端通知用户手机,并开始计费。在用户骑
版
行过程中,单车和手机 APP 会将各自的 GPS 定位信息上报云端应用。
社
出
近年来,云计算、大数据、人工智能等新技术呈爆发式增长,数字经济
版
已成为引领世界、潜力巨大的新兴产业,更是全球经济发展育的新动能。
出
作为祖国未来的我们,一定要增强使命感,在学习中增强创新意识、发
教
育
展创新思维,用无穷的创新力迎接新的挑战,为实现伟大的中国梦而奋斗!
东
教
山
东
山
社
社
版
版
出
出
育
育
教
教
东
东
山
山
90 XINXI JISHU