当前位置: 首页 > news >正文

西木科技Westwood-Robotics人型机器人Bruce配置和真机配置

西木科技Westwood-Robotics人型机器人Bruce配置和真机配置

  • 本文内容
  • 机器人介绍
  • Bruce机器人Gazebo中仿真代码部署
  • Bruce真机代码部署

本文内容

  • 人形机器人Brcue相关介绍
  • docker中安装Gazebo并使用
  • Bruce机器人控制器更换环境配置

机器人介绍

公司:西木科技Westwood-Robotics官网
Westwood Robotics(西木科技)是一家创立于2018年的美国公司,总部位于洛杉矶。该公司的创始团队成员主要源自加州大学洛杉矶分校的Robotics & Mechanisms Laboratory(RoMeLa)实验室。RoMeLa实验室在机器人学术界具有极高的声望,它由著名机器人学教授Dennis Hong创立并领导。
机器人:Bcuce机器人介绍

  • 单腿5个自由度、单臂3个自由度、全身共16个自由度
  • 仅重4.8kg、身高70cm、3000mAh电池
  • 独立的无线急停装置
  • 经由无线局域网通过SSH控制或蓝牙控制
  • 腿部驱动器每个仅重250g、爆发力矩达8Nm
    在这里插入图片描述
    官方的github地址https://github.com/Westwood-Robotics

Bruce机器人Gazebo中仿真代码部署

docker中安装gazebo,并部署Bruce机器人仿真和代码

# docker中获取ubuntu系统,用jammy。
docker pull ubuntu:jammy-20240227
docker run -it \--env="DISPLAY=$DISPLAY" \--gpus all \--workdir="/home/zeven/bruce" \--volume="/home/zeven/bruce/BRUCE-OP:/home/zeven/bruce/BRUCE-OP" \--volume="/etc/apt/hosts" \--env="QT_X11_NO_MITSHM=1" \--volume="/tmp/.X11-unix:/tmp/.X11-unix:rw" \ubuntu:jammy-20240227rqt
export containerId=$(docker ps -l -q)

安装必要的包

apt clean# 2. 更新 apt 的缓存
apt-get update -y# 3. 安装 ca-certificates
apt-get install -y ca-certificatesBVC # 4. (可选) 安装任意一款 文本编辑器,以方便接下来修改配置文件
# Linux 常用文本编辑器:wim、nano、emacs
apt-get install <上述任意一个文本编辑器名>
# 如安装 vim
apt-get install vim
apt-get install curl
apt-get install pip

安装gazebo、docker显示相关和必要环境包

# 在宿主机执行
sudo apt-get install x11-xserver-utils
xhost +
#docker中执行
# 安装gazebo
echo "185.199.108.133 raw.githubusercontent.com" >> /etc/hosts
curl -sSL http://get.gazebosim.org | sh
# 测试安装是否正常
gezebo
# 安装环境依赖
pip install numpy pyserial termcolor matplotlib scipy osqp numba dynamixel-sdk posix_ipc pygame

然后依据

Bruce真机代码部署

电机驱动pyBear sdk安装

#获取代码
git clone git@github.com:Westwood-Robotics/PyBEAR.git
sudo cp 00-WestwoodRobotics.rules /etc/udev/rules.d
sudo udevadm control --reload

运行完后还是会出现权限不足问题,通过写udev规则解决。
下面是如何为这个设备编写udev规则的步骤:
打开终端: 在你的Linux系统中打开终端。
创建udev规则文件: 使用文本编辑器创建一个新的udev规则文件。例如,使用nano编辑器:

sudo nano /etc/udev/rules.d/99-usb2bear.rules

这里的文件名99-usb2bear.rules是你创建的udev规则文件,文件名前的数字 70 表示加载顺序,你可以根据需要选择不同的数字。
编写udev规则: 在打开的编辑器中,输入以下udev规则:

# bear
SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6014", MODE="0666", GROUP="dialout"
# Dynamixel
SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", MODE="0666", GROUP="dialout"
# imu
SUBSYSTEM=="tty", ATTRS{idVendor}=="2e8a", ATTRS{idProduct}=="000a", MODE="0666", GROUP="dialout"

这条规则表示,当udev检测到一个属于tty子系统,且具有特定供应商ID和产品ID的设备时,将该设备的文件模式设置为 0666(允许所有用户读写),并将该设备归属于 dialout 用户组。
保存并关闭文件: 如果你使用的是 nano,可以通过按 Ctrl+O 保存文件,然后按 Ctrl+X 退出编辑器。
重新加载udev规则: 保存规则文件后,需要重新加载udev规则,以使新规则生效:

sudo udevadm control --reload-rules
sudo udevadm trigger

将你的计算机权限修改为允许PyBEAR访问串行端口。

sudo chown -R your_username /usr/local
sudo usermod -a -G dialout your_username

CD到 PyBEAR/ 目录 安装相关包

pip3 install .

然后根据RM步骤进行
先编译包

cd BRUCE/BRUCE-OP
python3 -m Library.ROBOT_MODEL.BRUCE_DYNAMICS_AOT
python3 -m Library.ROBOT_MODEL.BRUCE_KINEMATICS_AOT
python3 -m Library.STATE_ESTIMATION.BRUCE_ORIENTATION_AOT
python3 -m Library.STATE_ESTIMATION.BRUCE_ESTIMATION_CF_AOT
python3 -m Library.STATE_ESTIMATION.BRUCE_ESTIMATION_KF_AOT

机器人控制中文件BRUCE_SERIAL_PORT 是相关通讯接口号需要更改Settings/BRUCE_macros.py (line 272-283)代码匹配BRUCE_SERIAL_PORT位置

http://www.lryc.cn/news/384293.html

相关文章:

  • 【招聘贴】JAVA后端·唯品会·BASE新加坡
  • CVPR2024|vivo提出使用对抗微调获得泛化性更强的SAM,分割性能直接登顶 SOTA!
  • 程序员必备的ChatGPT技巧:从代码调试到项目管理
  • JAVA开发的一套医院绩效考核系统源码:KPI关键绩效指标的清晰归纳
  • 面向对象编程——python
  • 【LeetCode】每日一题:合并K个升序链表
  • 从零开始学docker(四)-安装mysql及主从配置(一)
  • 【目标检测】Yolov8 完整教程 | 检测 | 计算机视觉
  • 新能源汽车 LabCar 测试系统方案(-)
  • 机器学习辅助的乙醇浓度检测(毕设节选)
  • YOLO系列改进
  • cuda与cudnn下载(tensorflow-gpu)
  • git 多分支实现上传文件但避免冲突检测
  • 聊聊 golang 中 channel
  • SK Hynix 3D DRAM良率突破56.1%,开启存储新时代
  • 如何封装自动化测试框架?
  • 基于Java的在线编程考试系统【附源码】
  • Beautiful Soup的使用
  • 633. 平方数之和(中等)
  • GIT回滚
  • BEVM基于OP-Stack发布首个以WBTC为GAS连接以太坊和比特币生态的中继链
  • 【vuejs】 $on、$once、$off、$emit 事件监听方法详解以及项目实战
  • 如何下载植物大战僵尸杂交版,最全攻略来了
  • 小公司全栈是归宿吗?
  • 对https://registry.npm.taobao.org/tyarn的请求失败,原因:证书过期
  • Redisson-Lock-加锁原理
  • deepspeed win11 安装
  • Python列表函数append()和extend()的区别
  • Spring AI 实现调用openAi 多模态大模型
  • 《妃梦千年》第十二章:层层迷雾