版本: 2.1
作者: Jerry Peng
日期: July 2025
更新: 支持串口和WebSocket双协议通信
本文件夹包含了7Bot机械臂的完整Python编程案例,涵盖了从基础控制到高级功能的各个方面。所有案例都支持串口(USB)和WebSocket(WiFi)两种通信协议,方便用户根据实际需求选择合适的连接方式。
Exp1_angleCtrl.py - 关节角度控制
- 功能描述: 演示如何控制单个关节角度和设置整体姿态
- 主要特性:
- 单关节角度控制
- 多关节姿态设置
- 支持串口和WebSocket通信
- 适用场景: 学习基础关节控制,理解机械臂运动原理
Exp2_speedCtrl.py - 运动速度控制
- 功能描述: 展示如何设置和控制机械臂的运动速度
- 主要特性:
- 低速度运动控制
- 高速度运动控制
- 速度与姿态结合控制
- 适用场景: 需要精确控制运动速度的应用场景
Exp3_timeCtrl.py - 运动时间控制
- 功能描述: 演示如何通过时间参数控制机械臂运动
- 主要特性:
- 基于时间的运动控制
- 精确的时间参数设置
- 适用场景: 需要精确时间控制的自动化任务
Exp4_statusCtrl.py - 系统状态控制
- 功能描述: 展示如何监控和控制机械臂的系统状态
- 主要特性:
- 系统状态监控
- 状态切换控制
- 实时状态反馈
- 适用场景: 系统调试和状态管理
Exp5_readAngle.py - 角度读取
- 功能描述: 演示如何读取机械臂各关节的实时角度
- 主要特性:
- 单关节角度读取
- 多关节角度读取
- 实时角度监控
- 适用场景: 位置反馈、角度监控、调试分析
Exp6_setAngleAutoFb.py - 带反馈的角度设置
- 功能描述: 展示如何设置角度并获取自动反馈
- 主要特性:
- 角度设置与反馈
- 自动位置确认
- 闭环控制演示
- 适用场景: 需要精确位置控制的场景
Exp7_vacuumCtrl.py - 真空吸盘控制
- 功能描述: 演示如何控制末端执行器的真空吸盘
- 主要特性:
- 真空吸盘开关控制
- 吸盘状态管理
- 末端执行器控制
- 适用场景: 抓取、搬运、装配等需要末端工具控制的应用
Exp8_IKctrl.py - 逆运动学控制
- 功能描述: 展示如何使用逆运动学进行笛卡尔空间控制
- 主要特性:
- 5DOF逆运动学控制
- 6DOF逆运动学控制
- 笛卡尔坐标控制
- 向量方向控制
- 适用场景: 精确位置控制、路径规划、复杂运动任务
Exp9_Info.py - 系统信息获取
- 功能描述: 演示如何获取机械臂的系统信息
- 主要特性:
- 设备代码获取
- 版本信息读取
- MAC地址获取
- 系统配置信息
- 适用场景: 系统诊断、版本管理、设备识别
Exp10_SetID.py - 设备ID设置
- 功能描述: 展示如何设置和修改机械臂的设备ID
- 主要特性:
- 设备ID读取
- 设备ID设置
- ID冲突检测
- 适用场景: 多设备管理、设备配置、网络设置
- 串口通信: 通过USB连接,稳定可靠
- WebSocket通信: 通过WiFi连接,支持远程控制
- 协议切换: 运行时动态切换通信协议
- 异步支持: WebSocket模式支持异步操作
- 错误处理: 完善的异常处理和重试机制
- 调试模式: 内置调试输出功能
- 跨平台: 支持Windows、macOS、Linux
- pyserial: 串口通信支持
- websockets: WebSocket客户端支持
- asyncio: 异步编程支持(Python内置)
- 安装Python 3.7+
- 安装依赖库:
pip install -r requirements.txt - 确保7Bot机械臂已连接并供电
- 串口模式: 修改
SERIAL_PORT为对应端口 - WebSocket模式: 修改
ROBOT_IP为机械臂IP地址
# 运行角度控制案例
python Exp1_angleCtrl.py
# 运行逆运动学案例
python Exp8_IKctrl.py- Python API 技术文档 - 详细的API使用说明
- 依赖库列表 - 所需的Python包
- 7Bot机械臂使用说明书
- 从基础开始: 建议先运行Exp1-Exp3,熟悉基本控制
- 理解原理: 每个案例都包含详细注释,建议仔细阅读
- 参数调整: 根据实际机械臂调整角度、速度等参数
- 错误处理: 注意观察错误信息,理解异常处理机制
- 协议选择: 根据实际需求选择合适的通信协议
- 串口连接失败: 检查端口号是否正确,设备是否已连接
- WebSocket连接失败: 检查IP地址和网络连接
- 运动异常: 检查角度范围是否在机械臂限制内
- 速度过快: 降低速度参数,确保安全运动
- 启用
DEBUG_MODE = True查看详细通信信息 - 使用串口模式进行初始测试,确保基本功能正常
- 逐步切换到WebSocket模式进行高级功能测试
注意: 运行案例前请确保机械臂处于安全状态,避免碰撞和意外伤害。