Hexa 是一款由公司 Ohbot 设计的六足蜘蛛机器人,它以其可爱的外形和易于上手的编程方式而闻名,非常适合教育、娱乐和机器人初学者。
Hexa 的编程主要分为两种方式:图形化编程 和 Python 编程,下面我将为你详细介绍这两种方法,并提供入门示例。
图形化编程 (最简单、推荐初学者使用)
这是 Hexa 最核心、最独特的编程方式,你不需要编写任何代码,而是通过拖拽图形化的“指令块”来组合成一个程序,然后通过蓝牙发送给 Hexa。
准备工作
- 硬件: 一台 Hexa 机器人。
- 软件: 下载 Ohbot App,这个 App 通常可以在智能手机或平板电脑的应用商店中找到(支持 iOS 和 Android)。
编程步骤
- 连接: 打开 Hexa 的电源,确保它处于可配对状态,在手机或平板上打开 Ohbot App,通过蓝牙搜索并连接你的 Hexa。
- 进入编程界面: 在 App 中找到编程模式(通常叫 "Program" 或 "Code")。
- 拖拽指令块: App 会提供一个指令块库,里面有各种动作,
- 前进、后退、左转、右转: 控制 Hexa 的整体移动。
- 单腿控制: 让任意一条腿进行抬、放、前后摆动等动作。
- 动作组合: 如“跳舞”、“挥手”等预设好的连贯动作。
- 循环: 让某个动作重复执行。
- 等待: 让程序暂停一段时间。
- 音乐/声音: 让 Hexa 播放声音。
- 组合程序: 将这些指令块像搭积木一样拖拽到工作区,并按照你想要的顺序排列,你可以创建一个“向前走三步 -> 等待一秒 -> 挥挥左前腿”的程序。
- 运行程序: 编程完成后,点击“运行”按钮,程序会通过蓝牙发送给 Hexa,它就会开始执行你设计的动作。
优点
- 零门槛: 无需任何编程基础,适合儿童和完全的初学者。
- 直观: 所见即所得,逻辑清晰。
- 快速上手: 几分钟就能让 Hexa 动起来。
Python 编程 (更强大、适合进阶用户)
如果你对编程有一定了解,或者想让 Hexa 实现更复杂、更自定义的功能,那么使用 Python 是更好的选择,Hexa 的开发者提供了基于 Python 的 SDK(软件开发工具包)。
准备工作
- 硬件: 一台 Hexa 机器人。
- 软件:
- Python 环境: 你的电脑上需要安装 Python (建议 3.6 或更高版本)。
- Hexa Python SDK: 从 Hexa 的官方 GitHub 仓库下载。
- 蓝牙连接工具: 可以使用 Python 的
pybluez库,或者使用简单的串口蓝牙工具(如screen或PuTTY)。
编程步骤
- 安装 SDK: 将下载的 SDK 解压,并按照其说明文档进行安装,通常需要运行
pip install -r requirements.txt来安装所需的依赖库。 - 连接 Hexa: 通过蓝牙将你的电脑和 Hexa 配对,你需要知道 Hexa 的串口设备名(例如在 Linux/macOS 上可能是
/dev/tty.Hexa-SPP,在 Windows 上可能是COMx)。 - 编写 Python 代码: 使用任何你喜欢的代码编辑器(如 VS Code, PyCharm)来编写控制代码。
Python 编程核心概念
Hexa 的 Python SDK 主要围绕 “舵机控制” 展开,Hexa 的每条腿都由几个舵机控制,通过精确控制每个舵机的角度,来实现复杂的动作。
- 基本结构: 一个典型的 Python 程序会包含以下步骤:
- 导入库:
from hexapod import Hexapod - 创建对象:
hexa = Hexapod(port='/dev/tty.Hexa-SPP')(替换成你的实际端口) - 连接:
hexa.connect() - 发送指令:
hexa.do_a_specific_action(...) - 断开连接:
hexa.disconnect()
- 导入库:
Python 编程示例
示例 1: 让 Hexa 走一步
from hexapod import Hexapod
import time
# --- 1. 初始化连接 ---
# 请将 'COM3' 替换为你自己的蓝牙串口
hexa = Hexapod(port='COM3')
try:
hexa.connect()
print("连接成功!")
# --- 2. 定义一个简单的步态 ---
# 这是一个非常简化的三角步态
# 让左前腿和右后腿抬起
hexa.set_leg_position(0, 30, -30) # 左前腿抬起
hexa.set_leg_position(5, -30, 30) # 右后腿抬起
time.sleep(0.5)
# 身体向前移动
hexa.set_leg_position(0, -30, 30) # 左前腿放下,身体前移
hexa.set_leg_position(5, 30, -30) # 右后腿放下,身体前移
time.sleep(0.5)
# 让右前腿和左后腿抬起
hexa.set_leg_position(1, 30, -30) # 右前腿抬起
hexa.set_leg_position(4, -30, 30) # 左后腿抬起
time.sleep(0.5)
# 身体再次向前移动
hexa.set_leg_position(1, -30, 30) # 右前腿放下
hexa.set_leg_position(4, 30, -30) # 左后腿放下
time.sleep(0.5)
print("走了一步!")
except Exception as e:
print(f"发生错误: {e}")
finally:
# --- 3. 断开连接 ---
hexa.disconnect()
print("已断开连接。")
示例 2: 让 Hexa 挥手
from hexapod import Hexapod
import time
hexa = Hexapod(port='COM3')
try:
hexa.connect()
print("连接成功!")
# 让左前腿的第二个关节(通常是腿的中部)前后摆动,模拟挥手
# 假设关节1是根关节,关节2是中部关节,关节3是末端关节
# 我们控制关节2
for i in range(5):
hexa.set_leg_position(0, 0, 40) # 抬起左前腿的中部
time.sleep(0.3)
hexa.set_leg_position(0, 0, -40) # 放下左前腿的中部
time.sleep(0.3)
print("挥手完毕!")
except Exception as e:
print(f"发生错误: {e}")
finally:
hexa.disconnect()
print("已断开连接。")
Python 编程的优点
- 高度自定义: 可以实现任何你能想象到的动作和逻辑。
- 功能强大: 可以结合其他 Python 库,例如计算机视觉库(OpenCV)来实现 Hexa 跟随物体,或结合语音识别库来实现语音控制。
- 学习价值: 是学习机器人学、步态算法和 Python 编程的绝佳实践。
资源与学习路径
-
官方资源:
- Ohbot 官网: 查找最新的 App 下载和文档。
- Hexa GitHub 仓库: 这是 Python SDK 的源头,包含了最详细的 API 文档、示例代码和安装说明,搜索 "Hexa Robot GitHub" 即可找到。
-
学习路径建议:
- 第一步: 熟悉 Ohbot App 的图形化编程,先让 Hexa 完成一些简单的任务,如前进、转弯,然后尝试组合成“舞蹈”。
- 第二步: 学习 Python 基础,如果你是编程新手,可以先学习 Python 的基本语法(变量、循环、函数)。
- 第三步: 阅读 Python SDK 的文档,了解如何创建对象、连接、以及各个函数的作用。
- 第四步: 从模仿开始,运行 GitHub 仓库里的示例代码,观察 Hexa 的动作,然后尝试修改参数,看看会发生什么变化。
- 第五步: 尝试自己编写简单的程序,让 Hexa 画一个正方形,或者实现一个更流畅的步态。
- 第六步: 挑战高级项目,使用树莓派 + 摄像头让 Hexa 实现视觉巡线,或者用语音助手控制 Hexa。
| 特性 | 图形化编程 | Python 编程 |
|---|---|---|
| 难度 | 非常低 | 中等 |
| 用户 | 儿童、初学者、快速原型 | 爱好者、学生、开发者 |
| 灵活性 | 较低,受限于预设指令 | 极高,可完全自定义 |
| 功能 | 基础动作、简单交互 | 复杂步态、AI集成、自动化任务 |
| 入门方式 | 下载 Ohbot App | 下载 Python SDK,学习编程 |
Hexa 是一个从入门到进阶都非常棒的机器人平台,你可以从轻松有趣的图形化编程开始,逐步深入到强大的 Python 世界,创造出属于你自己的智能小蜘蛛,祝你编程愉快!
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。