[PYTHON] J'ai essayé de créer un environnement Ubuntu 20.04 LTS + ROS2 avec Raspberry Pi 4

introduction

--raspi4 + ubuntu20.04 + Construisons un environnement pour ROS (foxy).

table des matières

  1. Installez Ubuntu 20.04 LTS sur Raspberry Pi 4
  2. Installez ROS2 sur Ubuntu 20.04 LTS
  3. Essayez d'exécuter le code de test

1. Installez Ubuntu 20.04 LTS sur Raspberry Pi 4

Ce que vous avez préparé

procédure

(1) Installez Raspberry Pi Imager

-Télécharger sur mon PC depuis la Page officielle --Pour mac, vous pouvez facilement l'obtenir avec homebrew - brew cask install raspberry-pi-imager

(2) Ecrire une image sur une carte microSD à l'aide de Raspberry Pi Imager

--Sélectionnez ubuntu 20.04 LTS dans le système d'exploitation ―― Prenons 64 bits pour l'endroit où installer ROS2

スクリーンショット 2020-06-16 22.47.29.png

--Spécifiez la carte SD et appuyez sur WRITE

(3) Démarrez raspi4

-Insérez la carte SD avec l'image écrite en (2) dans raspi et démarrez-la (branchez l'alimentation) ――Cela prend du temps pour la première fois ...?

(4) Nom d'hôte, fuseau horaire, paramètres d'adresse IP

[Site de référence](https://denor.jp/ubuntu-20-04-focal-fossa%E3%81%AE%E5%88%9D%E6%9C%9F%E8%A8%AD%E5%AE % 9A-ip% E3% 82% A2% E3% 83% 89% E3% 83% AC% E3% 82% B9% E3% 80% 81% E3% 83% 9B% E3% 82% B9% E3% 83 % 88% E5% 90% 8D% E7% AD% 89)

Réglage du nom d'hôte

sudo hostnamectl set-hostname ooo

Réglage du fuseau horaire

sudo timedatectl set-timezone Asia/Tokyo

Réglage de l'adresse IP

sudo vim /etc/netplan/50-cloud-init.yaml

--Fichier de référence --192.168.xxx.1 est l'adresse IP du routeur --192.168.xxx.yyy est l'IP de raspi

python


network:
    ethernets:
        eth0:
            dhcp4: false
            addresses: [192.168.xxx.yyy/24]
            gateway4: 192.168.xxx.1
            nameservers:
                addresses: [192.168.xxx.1]
    version: 2
sudo netplan apply
sudo reboot

2. Installez ROS2 sur Ubuntu 20.04 LTS

--Il existe différentes versions

procédure

(1) Configuration de la localisation

--Définissez le code de caractère du système d'exploitation sur UTF8

sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8

(2) Setup Sources --Ajouter le référentiel apt ROS2

sudo apt update && sudo apt install curl gnupg2 lsb-release
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
sudo sh -c 'echo "deb http://packages.ros.org/ros2/ubuntu `lsb_release -cs` main" > /etc/apt/sources.list.d/ros2-latest.list'

(3) Installer les packages ROS2

--Il existe deux types, de base et de bureau, mais cette fois, la base d'installation

sudo apt update
sudo apt install ros-foxy-ros-base

(4) Paramètres d'environnement

source /opt/ros/foxy/setup.bash
echo "source /opt/ros/foxy/setup.bash" >> ~/.bashrc

(5) Installez argcomplete

sudo apt install python3-argcomplete

3. Essayez d'exécuter le code de test

--Cette fois, exécutez le code pour python

procédure

(1) Créez un espace de travail et récupérez le code de test,

mkdir -p ~/ros2/src
cd ~/ros2
git clone https://github.com/ros2/examples src/examples
cd ~/ros2/src/examples/
git checkout $ROS_DISTRO
rm -rf rclcpp 

(2) Installer colcon (outil de construction)

sudo apt install python3-colcon-common-extensions

(3) Construisez le package

cd ~/ros2
colcon build --symlink-install

(4) Paramètres d'environnement

source ~/ros2/install/setup.bash
echo "source ~/ros2/install/setup.bash" >> ~/.bashrc

(5) Contrôle de fonctionnement

--Editeur sur terminal (1)

ros2 run examples_rclpy_minimal_publisher publisher_member_function

--Abonné sur le terminal (2)

ros2 run examples_rclpy_minimal_subscriber subscriber_member_function

Au fait, fantastique! !! !!

--Terminal (1) Éditeur スクリーンショット 2020-06-16 22.34.15.png

--Abonné au terminal (2) スクリーンショット 2020-06-16 22.34.36.png

--Cliquez ici pour le code de test exécuté cette fois

Page de référence

Recommended Posts

J'ai essayé de créer un environnement Ubuntu 20.04 LTS + ROS2 avec Raspberry Pi 4
J'ai essayé de créer un environnement avec WSL + Ubuntu + VS Code dans un environnement Windows
J'ai essayé d'automatiser l'arrosage du pot avec Raspberry Pi
J'ai essayé de créer un environnement d'apprentissage automatique avec Python (Mac OS X)
J'ai essayé de créer un environnement de MkDocs sur Amazon Linux
Créer un environnement Tensorflow avec Raspberry Pi [2020]
Quand j'ai essayé de créer un environnement Rails sur WSL2 (Ubuntu 20.04LTS), j'ai trébuché et suis tombé.
J'ai essayé de construire un modèle d'estimation des titres d'articles susceptibles de faire le buzz avec Qiita
J'ai essayé de faire un signal avec Raspeye 4 (édition Python)
J'ai essayé de créer un environnement de développement Mac Python avec pythonz + direnv
J'ai essayé de trouver le rapport de circonférence par 100 millions de chiffres
J'ai essayé L-Chika avec Razpai 4 (édition Python)
J'ai essayé de détecter un objet avec M2Det!
Créer un environnement Arch Linux sur Raspai
J'ai fait un package npm pour obtenir l'ID de la carte IC avec Raspberry Pi et PaSoRi
Ubuntu 16.04 LTS, mémorandum de construction d'environnement pour débutant pour changer la version d'Anaconda avec pyenv
J'ai essayé de créer un bouton pour Slack avec Raspeye + Tact Switch
Essayez de détecter un objet avec RaspberryPi ~ Partie 1: Comparaison de la vitesse de détection ~
J'ai essayé de créer un environnement à vérifier régulièrement en utilisant Selenium avec AWS Fargate
Créer un environnement OpenCV4 sur Raspberry Pi à l'aide de Poetry
J'ai essayé d'extraire des fonctionnalités avec SIFT d'OpenCV
[Linux] WSL2 Créer un environnement pour laravel7 avec Ubuntu 20.04
J'ai essayé d'implémenter le perceptron artificiel avec python
J'ai essayé de créer un pipeline ML avec Cloud Composer
[Go + Gin] J'ai essayé de créer un environnement Docker
J'ai essayé de créer une application OCR avec PySimpleGUI
J'ai essayé de trouver la classe alternative avec tensorflow
J'ai parlé à Raspberry Pi
Créer un environnement python3 avec ubuntu 16.04
[Cloud 9] Essayez de créer un environnement avec django 1.11 de Python 3.4 sans même comprendre 1 mm
Mémo Un débutant a essayé de créer un environnement Java et de le traduire en japonais sur Ubuntu 18.04.2 LTS.
Je souhaite être informé de l'environnement de connexion lorsque RaspberryPi se connecte au réseau
J'ai essayé de trouver l'entropie de l'image avec python
J'ai essayé de trouver la moyenne de plusieurs colonnes avec TensorFlow
J'ai essayé de connecter Raspeye et conect + avec l'API Web
J'ai essayé d'implémenter ListNet d'apprentissage de rang avec Chainer
J'ai essayé d'automatiser [une certaine tâche] à l'aide d'une tarte à la râpe
J'ai envoyé les données de Raspberry Pi à GCP (gratuit)
J'ai essayé de créer un article dans Wiki.js avec SQL Alchemy
J'ai essayé de créer une caméra de surveillance à détection de mouvement avec OpenCV en utilisant une caméra WEB avec Raspberry Pi
Construisez wxPython sur Ubuntu 20.04 sur Raspberry Pi 4
J'ai créé un serveur Web avec Razpai pour regarder des anime
J'ai essayé de créer l'image de démarrage SD de LicheePi Nano
J'ai essayé de créer une liste de nombres premiers avec python
Comment créer un environnement Python à l'aide de Virtualenv sur Ubuntu 18.04 LTS
J'ai essayé de corriger "J'ai essayé la simulation probabiliste du jeu de bingo avec Python"
J'ai essayé de faire 5 modèles de base d'analyse en 3 ans
J'ai essayé d'agrandir la taille du volume logique avec LVM
J'ai essayé d'améliorer l'efficacité du travail quotidien avec Python
J'ai essayé de collecter automatiquement des images de Kanna Hashimoto avec Python! !!
Consigner périodiquement les valeurs des capteurs d'environnement Omron avec Raspberry Pi
J'ai essayé de créer une fonction de similitude d'image avec Python + OpenCV
J'ai essayé de créer un mécanisme de contrôle exclusif avec Go
J'ai essayé de créer un environnement où vous pouvez avoir une réunion Zoom amusante avec Linux (Ubuntu) + Zoom + OBS Studio + effets sonores
J'ai essayé d'envoyer un SMS avec Twilio
J'ai essayé d'implémenter Autoencoder avec TensorFlow
J'ai essayé de visualiser AutoEncoder avec TensorFlow
J'ai essayé de commencer avec Hy
Comment utiliser OpenVPN avec Ubuntu 18.04.3 LTS