Exemplo de endereço do armazém de código
https://gitee.com/HUAWEI-ASCEND/quadruped-robot
ambiente de laboratório
SO: Ubuntu 20.04
CPU: Intel® Xeon® Gold 6278C CPU @ 2,60 GHz
Memória: 16 GB
preparar o ambiente
Instale o Intel OneAPI Base Kit (não necessário)
O que é Intel OneAPI
O Intel oneAPI é um modelo de programação unificado aberto e baseado em padrões para vários setores que fornece uma experiência unificada para desenvolvedores em CPUs, GPUs, FPGAs e aceleradores dedicados. Ele consiste em dois componentes: um plano de setor e um produto Intel beta.
A especificação aberta oneAPI é baseada em padrões do setor e modelos de programação de desenvolvedor existentes e é amplamente aplicável a diferentes arquiteturas e hardware de diferentes fornecedores. O plano da indústria oneAPI incentiva a cooperação dentro do ecossistema com base na especificação oneAPI e nas práticas compatíveis com oneAPI.
O produto oneAPI da Intel é a implementação baseada em oneAPI da Intel, que inclui componentes padrão oneAPI, como ferramentas de programação direta (Data Parallel C++), ferramentas de programação baseadas em API com uma série de bibliotecas de desempenho e ferramentas avançadas de análise e depuração. Os desenvolvedores agora podem usar o Intel DevCloud for oneAPI para código e aplicativo para teste.
Em geral, o Intel oneAPI é apenas um modelo de programação e uma especificação do setor, e os produtos relacionados ao Intel oneAPI, como o Intel oneAPI Base Toolkit, o Intel oneAPI HPC Toolkit e o Intel AI Analytics Toolkit são produtos desenvolvidos com base no modelo de programação do Intel oneAPI.
oneAPI é uma especificação aberta que inclui uma linguagem de programação de arquitetura cruzada Data Parallel C++ (DPC++), um conjunto de bibliotecas de funções para programação de API e a interface de hardware subjacente (oneAPI nível zero). Com esses componentes, a Intel e outras empresas podem criar sua própria implementação de oneAPI para oferecer suporte a seus próprios produtos ou desenvolver novos produtos com base em oneAPI.
Referências
Se você estiver interessado no OneAPI, consulte este artigo:
https://www.zhihu.com/tardis/zm/art/103299140
Nota: Se você deseja apenas concluir o experimento de acompanhamento, não precisa instalar este kit. Afinal, o kit ainda é relativamente grande. Se você quiser mexer, pode tentar instalá-lo
Instalar
wget https://registrationcenter-download.intel.com/akdlm/IRC_NAS/7deeaac4-f605-4bcf-a81b-ea7531577c61/l_BaseKit_p_2023.1.0.46401_offline.sh
sudo sh ./l_BaseKit_p_2023.1.0.46401_offline.sh
Adicione variáveis de ambiente ao ~/.bashrc
final do arquivo
source /opt/intel/oneapi/setvars.sh
Instalar ROS
Xiaoyu instalação com um clique (recomendado)
URL: https://fishros.org.cn/forum/topic/20/Série de instalação com um clique de Xiaoyu?lang=zh-CN
wget http://fishros.com/install -O fishros && . fishros
Durante o processo de instalação, você pode escolher de acordo com os prompts de texto combinados com as necessidades reais (na maioria dos casos, escolha 1 e escolha aquele para substituir a imagem espelhada de acordo com suas próprias necessidades)
Observação: eu pessoalmente recomendo usar o ambiente ROS1.0 para experimentos
Instale o emulador
O ambiente de instalação depende
sudo apt install libyaml-cpp-dev
sudo apt install libeigen3-dev
sudo apt install liblcm-dev
sudo apt install libglm-dev
inicialização catkin_ws
mkdir catkin_ws
cd catkin_ws
mkdir src
cd src
git clone https://gitee.com/HUAWEI-ASCEND/quadruped-robot
cd ..
catkin_make
Nota: Se o Intel OneAPI não estiver instalado, haverá um aviso de que a API BLAS não pode ser encontrada ou a LIB BLAS não pode ser encontrada. Solução:
você
pode quadruped-robot/model-control/quadruped/CMakeLists.txt
comentar o código relacionado ao BLAS no arquivo ou USE_BLAS
defini-lo como DESLIGADO o arquivo de configuração
variável de ambiente de origem
source devel/setup.bash
Nota: Você precisa executar este comando toda vez que abrir um novo terminal, então se houver apenas um no ambiente catkin_ws
, você pode realmente adicionar o caminho absoluto do arquivo ao ~/.bashrc
final do arquivo, para que a variável de ambiente seja carregado automaticamente toda vez que você inicializa
correr
Execute o emulador Gazebo
roslaunch qr_gazebo gazebo_startup.launch wname:=earth
Iniciar o primeiro modelo de robô
roslaunch qr_gazebo model_spawn.launch rname:=a1 use_xacro:=true use_camera:=false
execute um exemplo
rosrun examples example_a1_sim
executar um painel de controle
rosrun examples example_keyboard