内容简介
1 乐高和机器人:一个伟大的组合
乐高MINDSTORMS EV3
乐高MINDSTORMS EV3套装
乐高MINDSTORMS EV3软件
软件、固件和硬件
艺术与工程
好程序的品质
你从本书中能学到什么
乐高MINDSTORMS在线社区
接下来做什么
2 EV3编程环境
MINDSTORMS软件各部分功能
A:程序画布
B:内容编辑器
C:编程面板
D:硬件页面
E:下载和运行按钮
编写一个EV3程序
编程模块的一般布局
你的第一个程序
保存程序
运行程序
程序属性
第二个程序
注释
增加注释
使用注释的一些技巧
上下文帮助
结束语
3 TriBot:测试机器人
Tribot组件
搭建电机和车轮
搭建万向轮
用家庭版套装搭建万向轮
用教育版套装搭建万向轮
安装EV3程序块
安装红外传感器或超声波传感器
安装颜色传感器
安装陀螺仪传感器(只适用于教育版)
搭建触动传感器保险杠
连接线缆
连接触动传感器
连接红外或者超声波传感器
连接颜色传感器
连接陀螺仪传感器(只适用于教育版)
连接电机
颜色传感器的备选位置
超声波或者红外传感器的备选位置
搭建抬升臂
结束语
4 运动
EV3电机
移动转向模块
模式
转向
功率
持续时间
结束时制动
端口
端口查看
EV3程序块上的查看菜单
程序ThereAndBack(往返)
向前移动
调转方向
测试单独的模块
返回起点
程序AroundTheBlock(沿正方形路径行走)
第一条边和转角
其他三条边和转角
测试程序
移动槽模块
大型电机模块和中型电机模块
抬升臂
反转电机模块
惯性滑行的问题
进一步探索
结束语
5 传感器
使用传感器
触动传感器
程序BumperBot(碰撞车)
向前移动
检测障碍物
后退并转向
测试
颜色传感器
颜色模式
反射光强度模式
环境光强度模式
端口查看
程序IsItBlue(谁是蓝色的)
切换模块
改进程序
程序LineFinder(找线)
使用端口查看找到阈值
红外传感器和遥控器
近程模式
信标和信标近程模式
远程模式
程序BumperBot-WithButtons(按钮启动的碰撞车)
超声波传感器
距离-英寸和距离-厘米模式
当前/监听模式
程序DoorChime(门铃)
检测来人
播放门铃声
停止门铃声
陀螺仪传感器
速率模式
角度模式
重置角度
程序GyroTurn(用陀螺仪控制转弯)
电机旋转传感器
程序BumperBot2(第2版碰撞车)
进一步探索
结束语
6 程序流程
切换模块
设置条件
程序LineFollower(巡线)
基本程序
选择颜色传感器的阈值
配置移动模块
测试程序
更多的选择
测试这个程序
使用选项卡视图
程序RedOrBlue(红色还是蓝色)
识别红色物体
添加一个新的“情况分支”
默认情况
循环模块
循环中断模块
程序BumperBot3(第3版碰撞车)
进一步探索
结束语
7 程序WallFollower(贴墙行走):走迷宫
伪代码
解决迷宫问题
程序需求
假设
初始条件
沿着直墙行走
编写代码
测试
转弯
编写代码
测试
通过墙壁开口
编写代码
测试
最终测试
进一步探索
结束语
8 数据线
数据线是什么?
程序GentIeStop(缓慢停车)
创建程序
数据线使用技巧
程序SoundMachine(声音发生器)
控制音量
使用数学模块
添加音调控制
理解数据类型
显示频率和音量值
使用文本模块
为显示的数值添加名称
显示音量
进一步探索
结束语
9 数据线和切换模块
切换模块的数据模式
重新编写程序GentIeStop
将数据传递到切换模块内
使用传感器模块的优点
向切换模块外部传递数据
简化程序LineFollower
进一步探索
结束语
10 数据线和循环模块
逻辑模式
循环索引
程序LooplndexTest(循环索引测试)
再次启动循环
循环索引的最终数值
程序SpiralLineFinder(螺旋路径)
沿着螺旋路径行走
沿着螺旋路径前进时检测黑线
用陀螺仪传感器完成转向
进一步探索
结束语
11 变量
变量模块
程序RedOrBIueCount(计数红色和蓝色物体)
创建和初始化变量
显示初始值
计数红色物体
计数蓝色物体
在项目属性页面管理变量
比较模块
程序LightPointer(寻找光源)
定义变量
找到光源
创建程序LightPointer
常量模块
进一步探索
结束语
12 我的模块
创建我的模块
我的模块面板
编辑我的模块
我的模块LogicToText
添加,删除和移动参数
参数设置选项卡
我的模块DisplayNumber
更改我的模块参数
变量和我的模块
进一步探索
结束语
13 数学和逻辑
数学模块的高级模式
可使用的运算符和函数
取模运算
数学模块的错误
比例巡线
EV3计时器
程序DisplayTimer(显示时间)
将计时器的读数变为分钟和秒
创建显示文本
舍入模块
随机模块
为程序BumperBot添加随机转向
逻辑运算模块
为程序BumperBot添加逻辑运算
范围模块
程序TagAlong(紧紧跟随)
程序GyroPointer(陀螺仪指南针)
进一步探索
结束语
14 EV3状态灯、按钮和屏幕
EV3按钮
程序PowerSetting(设置功率)
初始化和循环
显示当前值
调整功率值
测试程序
快速改变数值
程序砖状态灯
程序ColorCopy(复制颜色)
显示模块
显示图像
程序Eyes(眼睛)
在EV3屏幕上画图
程序EV3Sketch(EV3素描)
进一步探索
结束语
15 阵列
概述和术语
创建一个阵列
阵列运算模块
长度模式
读取索引模式
写入索引模式
附加模式
程序ArrayTest(阵列测试)
程序ButtonCommand(按钮命令)
创建命令阵列
显示命令
执行命令
程序ColorCount(颜色计数)
我的模块ColorToText(将颜色转变为文本)
我的模块AddColorCount(增加颜色计数)
用数据线选择声音模块
初始化
颜色计数
程序MemoryGame(记忆游戏)
循环的开始
创建颜色灯光序列
我的模块WaitForButtons
检查玩家的响应结果
进一步探索
结束语
16 文件
文件读写模块
设置文件名称
写入文件
读取数据
保存程序MemoryGame(记忆游戏)的得分
程序FileReader(查看文件内容)
为程序ColorCount(颜色计数)添加菜单
我的模块CreateMenu_CC
我的模块SelectOption
新程序ColorCount的结构
计数物体
保存和载入计数值
测试程序
管理内存
进一步探索
结束语
17 数据记录
数据收集与EV3
研究当前功率读数
程序CurrentPowerTest(当前功率测试)
我的模块LogData(记录数据)
程序CurrentPowerTest2(当前功率测试,第2版)
用移动转向模块测试当前功率
程序SteeringTest(转向测试)
程序VerifyLightPointer(验证光源)
控制数据的数量
进一步探索
结束语
18 多任务处理
多个启动模块
停止程序模块
避免忙等待
程序DoorChime(门铃)添加灯光
理解程序流程规则
开始模块和数据线
使用来自循环和切换模块的数据值
使用我的模块
同步两个序列
远离麻烦
进一步探索
结束语
19 使用PID控制器的巡线程序
PID控制器
比例控制
原始数据
良好区域与不良区域
选择目标值
采集传感器读数的最小值和最大值
标准化传感器读数和目标值
增强程序LineFollower的比例控制
实现PID控制
添加微分项
添加积分项
调整控制器
进一步探索
结束语
附录A NXT和EV3的兼容性
电机
传感器
软件
附录B EV3在线资源