Dash 机器人编程全攻略
Dash 机器人是学习编程和机器人学的绝佳入门工具,它通过传感器、执行器和可爱的外形,让抽象的编程概念变得生动有趣,本攻略将带你一步步探索 Dash 的世界。

第一部分:入门准备
硬件与配件清单
- 核心设备: Dash 机器人本体
- 必需配件: 充电底座(非常重要!Dash 消耗电量快)
- 可选但强烈推荐:
- Building Blocks 搭建套件: 可以用乐高积木与 Dash 结合,创造出各种形态的机器人。
- Accessories 套件: 包含发射球、牵引车、手臂等,扩展 Dash 的功能。
- Xylophone 编码打击垫: 让 Dash 成为一位音乐家。
软件与环境
Dash 的编程主要通过图形化 App 实现,非常适合初学者。
-
核心 App (必装):
- Blockly by Wonder (官方首选):
- 平台: iOS, Android
- 特点: 基于 Google Blockly,是 Dash 的“母语”App,功能最全,项目库最丰富,社区支持最好。强烈建议从此 App 开始。
- Wonder (旧版名称):
- 平台: iOS, Android
- 特点: 与 Blockly by Wonder 基本相同,只是名称更新了,如果你的设备上还有这个 App,它依然可用。
- Blockly by Wonder (官方首选):
-
辅助/进阶 App: 3. Path (路径规划):
- 平台: iOS, Android
- 特点: 在屏幕上画出 Dash 的行走路径,Dash 会自动识别并执行,非常适合理解“序列”和“空间”概念。
- Go (远程控制):
- 平台: iOS, Android
- 特点: 类似游戏手柄,可以实时控制 Dash 的前进、后退、转弯、发声等,用于快速测试和互动。
- Xylo (音乐):
- 平台: iOS, Android
- 特点: 专门配合 Dash 的 Xylophone 打击垫使用,可以编程 Dash 演奏乐曲。
-
桌面端 (教师/家长/高级用户): 6. Blockly by Wonder (Web 版):
(图片来源网络,侵删)- 平台: 任何现代浏览器 (Chrome, Firefox, Edge 等)
- 网址: https://code.makewonder.com/
- 特点: 与移动端功能一致,但可以在电脑上编程,屏幕更大,操作更方便。教师和家长首选。
第二部分:核心编程概念 (以 Blockly 为例)
Blockly 通过拖拽积木块来编程,这些积木块完美地封装了核心编程思想。
事件: 程序的“点火器”
程序从哪里开始执行?这就是“事件”积木的作用。
当 [绿旗] 被点击时: 最常用的事件,点击 App 上的绿旗,程序开始运行。当 [Dash] 碰到墙壁时: 利用 Dash 的碰撞传感器,触发程序。当 [声音传感器] > [50] 时: 当 Dash 听到的声音超过一定分贝时触发。
运动: 让 Dash 动起来
这是 Dash 最基础的功能。
向前移动 [1] 秒: 控制前进时间和速度。左转 [90] 度/右转 [90] 度: 控制转向角度。开始旋转 [左]: 持续旋转,直到被另一个积木停止。抬起/放下笔: 如果安装了画笔附件,可以控制 Dash 画画。
声音: 让 Dash 会“说话”和“唱歌”
播放声音 [Meow]: 播放内置的音效。说 "你好" [2] 秒: 让 Dash 的眼睛显示文字,并伴随语音。清空屏幕: 清除 Dash 眼睛上的文字。
灯光: 控制 Dash 的表情
将眼睛设置为 [笑脸]: 切换 Dash 眼睛的表情(笑脸、悲伤、爱心、惊讶等)。将眼睛设置为颜色 [红色]: 将眼睛变成指定颜色。将眼睛设置为彩虹效果: 让眼睛呈现彩虹渐变动画。
传感器: Dash 的“五官”
Dash 通过传感器感知世界,这是编程实现智能交互的关键。

眼睛传感器:距离到 [最近的物体]: 测量前方物体的距离(单位:厘米),这是避障和循线的核心。看到 [颜色]: 检测前方物体的颜色,可以玩“寻宝”游戏。
耳朵传感器:听到 [声音]: 检测周围是否有声音,可以玩“听令行事”。
碰撞传感器:被按下: 检测是否被碰撞(前、后、左、右),可以玩“拍手 Dash 跳舞”。
机器人按钮:被按下: 检测 Dash 顶部的物理按钮是否被按下。
控制流: 程序的“大脑逻辑”
... ... 否则 ...(条件判断):- 经典案例:避障
[距离到物体 < 10] [播放声音 Ouch] [向后移动 1 秒] 否则 [向前移动 1 秒]
- 经典案例:避障
重复执行 ... 次(循环):- 经典案例:绕正方形
重复执行 4 次 [向前移动 2 秒] [右转 90 度]
- 经典案例:绕正方形
重复执行 ... 直到 ...(条件循环):- 经典案例:一直走直到撞墙
重复执行 直到 [距离到物体 < 5] [向前移动 1 秒]
- 经典案例:一直走直到撞墙
等待 ... 秒(延时):让 Dash 做一个动作后,暂停几秒再执行下一个动作。
变量与函数: 复用与抽象
变量: 存储数据,比如存储一个随机数、一个颜色或一个距离值。- 案例:随机舞蹈
- 创建一个变量
随机数。 - 将
随机数设置为在 1 到 4 间随机选取一个数。 - 使用
... ...判断随机数的值,来决定 Dash 是跳舞、唱歌还是变色。
- 创建一个变量
- 案例:随机舞蹈
函数(在 Blockly 中叫“自定义块”): 将一组积木打包成一个可重复使用的“新积木”。- 案例:创建一个“跳舞”函数
- 点击“我的积木”,点击“制作一个积木”。
- 命名为“跳舞”。
- 将跳舞相关的积木(如旋转、播放音乐、变色)拖拽进去。
- 你可以在任何地方调用这个“跳舞”积木,而无需重复编写代码,这是代码复用的核心思想。
- 案例:创建一个“跳舞”函数
第三部分:实战项目演练
项目1:Dash 的第一支舞蹈 (入门)
- 目标: 让 Dash 按照固定顺序跳舞。
- 步骤:
- 打开
Blockly by WonderApp,连接 Dash。 - 从“事件”区拖出
当 [绿旗] 被点击时积木。 - 从“声音”区拖出
播放声音 [Chord]。 - 从“运动”区拖出
向前移动 1 秒。 - 从“控制”区拖出
等待 1 秒。 - 再拖出
左转 90 度。 - 将这些积木像火车车厢一样连接起来。
- 点击绿旗,观看 Dash 跳舞!
- 打开
项目2:智能避障车 (进阶)
- 目标: 让 Dash 在房间里自由行走,并能自动避开障碍物。
- 步骤:
- 从“事件”区拖出
当 [绿旗] 被点击时。 - 从“控制”区拖出
重复执行。 - 在
重复执行内部,放入... ... 否则 ...。 - 在“的六边形插槽中,放入“传感器”区的
距离到物体 < 10。 - 在“分支中,放入
向后移动 1 秒和右转 90 度。 - 在“否则”分支中,放入
向前移动 0.5 秒。 - 点击绿旗,释放 Dash,看它如何探索世界并躲避障碍物!
- 从“事件”区拖出
项目3:颜色寻宝游戏 (高级)
- 目标: Dash 在房间里寻找特定颜色的物体(如一个红色的球),找到后就播放胜利音乐。
- 步骤:
- 从“事件”区拖出
当 [绿旗] 被点击时。 - 从“控制”区拖出
重复执行 直到 ...。 - 在“直到”的六边形插槽中,放入“传感器”区的
看到 [红色]。 - 在
重复执行内部,放入向前移动 0.5 秒和等待 0.2 秒(让它走慢一点,更容易发现目标)。 - 在
重复执行的外面(即循环结束后),放入播放声音 [Ta-da]和说 "找到啦!" [3] 秒。 - 点击绿旗,让 Dash 开始寻宝吧!
- 从“事件”区拖出
第四部分:从图形化到代码的桥梁
当孩子熟练掌握图形化编程后,可以尝试过渡到真正的文本代码,这能为未来的编程学习打下坚实基础。
- 工具:
Blockly by Wonder(Web版) - 方法:
- 在 Web 版 Blockly 编辑器的右上角,有一个齿轮图标
Settings。 - 在
Code标签页下,选择JavaScript(或 Python)。 - 你会神奇地发现,左侧的图形积木块变成了右侧的 JavaScript/Python 代码!
- 学习方式:
- 对照学习: 让孩子先拖动积木块,然后观察生成的代码,理解每个积木块对应的代码是什么。
- 修改代码: 尝试直接修改右侧的代码,然后点击“上传到机器人”按钮,看 Dash 的行为是否改变,这是理解代码语法和逻辑的绝佳方式。
- 项目迁移: 将之前用积木块完成的“避障车”项目,尝试用几行 JavaScript 代码来实现。
- 在 Web 版 Blockly 编辑器的右上角,有一个齿轮图标
第五部分:高级技巧与资源
激发创造力的技巧
- 故事创作: 编写一个故事,让 Dash 扮演主角,根据情节移动、说话和变脸。
- 科学实验: 用 Dash 测量房间长度,记录不同材质地面的摩擦力(通过观察 Dash 打滑程度),或用声音传感器测量不同分贝下的反应。
- 结合艺术: 安装画笔,用 Dash 画出几何图形、迷宫或抽象画。
- 跨学科学习: 结合数学(角度、距离)、物理(速度、摩擦力)、音乐(节奏、音调)进行项目式学习。
官方与社区资源
- 官方资源库: https://www.makewonder.com/resources
这里有大量的课程计划、项目想法、视频教程和打印活动卡,是宝藏网站。
- Wonder Workshop 论坛: https://forum.makewonder.com/
可以在这里提问、分享自己的项目、向其他用户和官方工程师学习。
常见问题与解决
- Dash 无法连接:
- 确保Dash电量充足(放在充电底座上)。
- 确保手机/平板和 Dash 在同一个 Wi-Fi 网络下。
- 尝试重启 App 和 Dash(长按电源键几秒)。
- 检查 App 是否为最新版本。
- Dash 行为异常:
- 尝试“重置”机器人(在 App 的设置里通常可以找到)。
- 这可能是固件问题,App 通常会在连接时自动更新固件。
Dash 机器人不仅仅是一个玩具,更是一个强大的学习平台,它的编程之旅可以分为三个阶段:
- 探索阶段: 使用
Go和PathApp,熟悉 Dash 的基本功能,激发兴趣。 - 创造阶段: 深入使用
Blockly by Wonder,掌握核心编程概念,完成各种有趣的项目。 - 进阶阶段: 利用 Web 版的代码视图,从图形化平滑过渡到文本编程,为未来学习 Python、JavaScript 等语言铺平道路。
最重要的是,鼓励孩子大胆尝试,不怕犯错,编程就是一个不断试错、调试和优化的过程,让 Dash 成为他们探索数字世界的第一个伙伴吧!
标签: Dash机器人编程入门教程 Dash机器人编程零基础学习 Dash机器人编程技巧分享