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

2024-06-19 21:28

本文主要是介绍西木科技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

这里的文件名 70-ft232h.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位置

这篇关于西木科技Westwood-Robotics人型机器人Bruce配置和真机配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1076193

相关文章

Jenkins分布式集群配置方式

《Jenkins分布式集群配置方式》:本文主要介绍Jenkins分布式集群配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装jenkins2.配置集群总结Jenkins是一个开源项目,它提供了一个容易使用的持续集成系统,并且提供了大量的plugin满

SpringBoot线程池配置使用示例详解

《SpringBoot线程池配置使用示例详解》SpringBoot集成@Async注解,支持线程池参数配置(核心数、队列容量、拒绝策略等)及生命周期管理,结合监控与任务装饰器,提升异步处理效率与系统... 目录一、核心特性二、添加依赖三、参数详解四、配置线程池五、应用实践代码说明拒绝策略(Rejected

SQL Server配置管理器无法打开的四种解决方法

《SQLServer配置管理器无法打开的四种解决方法》本文总结了SQLServer配置管理器无法打开的四种解决方法,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录方法一:桌面图标进入方法二:运行窗口进入检查版本号对照表php方法三:查找文件路径方法四:检查 S

Linux中SSH服务配置的全面指南

《Linux中SSH服务配置的全面指南》作为网络安全工程师,SSH(SecureShell)服务的安全配置是我们日常工作中不可忽视的重要环节,本文将从基础配置到高级安全加固,全面解析SSH服务的各项参... 目录概述基础配置详解端口与监听设置主机密钥配置认证机制强化禁用密码认证禁止root直接登录实现双因素

嵌入式数据库SQLite 3配置使用讲解

《嵌入式数据库SQLite3配置使用讲解》本文强调嵌入式项目中SQLite3数据库的重要性,因其零配置、轻量级、跨平台及事务处理特性,可保障数据溯源与责任明确,详细讲解安装配置、基础语法及SQLit... 目录0、惨痛教训1、SQLite3环境配置(1)、下载安装SQLite库(2)、解压下载的文件(3)、

Linux如何快速检查服务器的硬件配置和性能指标

《Linux如何快速检查服务器的硬件配置和性能指标》在运维和开发工作中,我们经常需要快速检查Linux服务器的硬件配置和性能指标,本文将以CentOS为例,介绍如何通过命令行快速获取这些关键信息,... 目录引言一、查询CPU核心数编程(几C?)1. 使用 nproc(最简单)2. 使用 lscpu(详细信

Nginx 重写与重定向配置方法

《Nginx重写与重定向配置方法》Nginx重写与重定向区别:重写修改路径(客户端无感知),重定向跳转新URL(客户端感知),try_files检查文件/目录存在性,return301直接返回永久重... 目录一.try_files指令二.return指令三.rewrite指令区分重写与重定向重写: 请求

Nginx 配置跨域的实现及常见问题解决

《Nginx配置跨域的实现及常见问题解决》本文主要介绍了Nginx配置跨域的实现及常见问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来... 目录1. 跨域1.1 同源策略1.2 跨域资源共享(CORS)2. Nginx 配置跨域的场景2.1

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

MySQL MCP 服务器安装配置最佳实践

《MySQLMCP服务器安装配置最佳实践》本文介绍MySQLMCP服务器的安装配置方法,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录mysql MCP 服务器安装配置指南简介功能特点安装方法数据库配置使用MCP Inspector进行调试开发指