İçindekiler:
- Adım 1: Raspbian'ı Kurun ve Raspberry Pi 4b'yi Yapılandırın
- 2. Adım: ROS Kinetik Kaynaklarını İndirin
- 3. Adım: ROS Derleme Hatalarını Manuel Olarak Düzeltin
- 4. Adım: ROS Kinetiği Oluşturun
- Adım 5: TurtleBot3 ve Raspicam Paketlerini Oluşturun
Video: Raspberry Pi 4b'ye ROS Kinetic, TurtleBot3, Raspicam yükleyin: 5 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:17
TurtleBot3 Burger, Raspberry Pi 3 B/B+ ile birlikte gelir ve yeni (9/2019 itibariyle) Raspberry Pi 4b'yi desteklemez. TurtleBot3'ün Raspberry Pi 4b üzerinde çalışmasını sağlamak için aşağıdaki adımları izleyin:
- Raspberry Pi 4b Raspbian Buster'daki kaynaklardan ROS Kinetic oluşturma
- TurtleBot3'e özel paketler ekleme
- raspicam düğümü ekleme
Adım 1: Raspbian'ı Kurun ve Raspberry Pi 4b'yi Yapılandırın
Bir Raspbian resmi indirin. 2019–07–10 tarihli Raspbian Buster kullandım.
İndirilen Raspbian görüntüsünü bir SD karta yazın (en az 8Gb boyutunda). Raspberry Pi 4b'nize bir ekran, klavye ve fare bağlayın, önyükleyin ve WiFi'ye bağlanın. Dosya sistemini SD kartınızın tamamını kaplayacak şekilde genişletin ve isteğe bağlı olarak çalıştırarak SSH ve VNC'yi etkinleştirin
sudo raspi yapılandırması
2. Adım: ROS Kinetik Kaynaklarını İndirin
Aşağıdaki talimatlar, resmi ROS öğreticisinin yanı sıra DmitryM8 talimatını da takip eder.
Raspberry Pi 4b'nizde oturum açın ve ROS paketi deposu eklemek, araçlar oluşturmak ve ROS bağımlılık aracını başlatmak için bu komutları yürütün.
sudo sh -c 'echo "deb https://packages.ros.org/ros/ubuntu $(lsb_release -sc) ana" > /etc/apt/sources.list.d/ros-latest.list'
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654 sudo apt-get güncellemesi python-rosinstall inşa-temel cmake sudo rosdep init rosdep güncellemesi
Kaynaktan ROS Kinetic oluşturmak için bir çalışma alanı oluşturun.
mkdir ~/ros_catkin_ws
cd ~/ros_catkin_ws
Robotun yerleşik bilgisayarında çalışması amaçlanan temel modülleri içeren "ros_comm" paketinin kaynak kodunu indirin. Burada rosinstall_generator, indirilecek kaynak kod depolarının bir listesini oluşturur. wstool daha sonra kaynak kodunu indirmeye devam eder.
rosinstall_generator ros_comm --rosdistro kinetic --deps --wet-only --tar > kinetic-ros_comm-wet.rosinstall
wstool init -j8 kaynağı kinetic-ros_comm-wet.rosinstall rosdep kurulumu --from-paths src --ignore-src --rosdistro kinetik -y
TurtleBot3 ve raspicam'ı çalıştırmak için ros_comm'a ek olarak şu ROS paketlerine ihtiyacınız olacak: common_msgs, rosserial, image_common, image_transport_plugins ve tanılama. Bu paketleri eklemek için bu komutları çalıştırın.
rosinstall_generator common_msgs common_msgs rosserial image_common image_transport_plugins tanılama nodelet_core --rosdistro kinetic --deps --wet-only --tar > kinetic-extra-wet.rosinstall
wstool birleştirme -t kaynağı kinetic-extra-wet.rosinstall wstool güncellemesi -j8 -t kaynağı rosdep kurulumu --from-paths src --ignore-src --rosdistro kinetik -y
Bağımlılık sürümleri zamanla değiştikçe, "python-rosdistro-modules_0.7.5-1_all.deb (--unpack): '/usr/lib/python2.7/dist-packages/rosdistro/_init_ üzerine yazmaya çalışmak gibi hatalar olabilir..py', ayrıca python-rosdistro 0.7.2-1" paketindedir. Bu "üzerine yazmaya çalışmak" hatalarını çözün:
sudo dpkg --remove --force-all python-catkin-pkg python-catkin-pkg-modülleri python-rosdistro python-rosdistro-modülleri python-rospkg python-rospkg-modülleri
// veya sudo apt kaldır sudo apt --fix-bozuk kurulum
3. Adım: ROS Derleme Hatalarını Manuel Olarak Düzeltin
Bu noktada ROS oluşturmak çeşitli hatalarla başarısız olacaktır. ROS kaynak kodunu manuel olarak düzenleyerek bu hataları düzeltelim.
Düzenlemek
/home/pi/ros_catkin_ws/src/opencv3/modules/python/src2/cv2.cpp satır 885
Yer değiştirmek
char* str = PyString_AsString(obj);
ile birlikte
const char* str = PyString_AsString(obj);
Aşağıdaki dosyaları düzenleyin.
/home/pi/ros_catkin_ws/src/rospack/include/rospack/rospack.h /home/pi/ros_catkin_ws/src/rospack/src/rospack.cpp /home/pi/ros_catkin_ws/src/rospack/src/utils.cpp
Tüm oluşumlarını kaldır
/tr1
ve tüm oluşumlarını değiştirin
standart::tr1
ile birlikte
artırmak
Aşağıdaki dosyaları düzenleyin.
/home/pi/ros_catkin_ws/src/actionlib/include/actionlib/client/simple_action_client.h /home/pi/ros_catkin_ws/src/actionlib/include/actionlib/destruction_guard.h /home/pi/ros_catkin_ws/src/actionlib/include /actionlib/server/simple_action_server_imp.h /home/pi/ros_catkin_ws/src/actionlib/src/connection_monitor.cpp /home/pi/ros_catkin_ws/src/actionlib/test/destruction_guard_test.cpp /home/pi/ros_catkin_ws/src/bond /bondcpp/src/bond.cpp /home/pi/ros_catkin_ws/src/ros_comm/roscpp/include/ros/timer_manager.h /home/pi/ros_catkin_ws/src/ros/roslib/test/utest.cpp
Tüm oluşumlarını değiştir
boost::posix_time::milisaniye(…)
ile birlikte
boost::posix_time::milisaniye(int(…))
Aşağıdaki dosyayı düzenleyin.
/home/pi/ros_catkin_ws/src/geometry2/tf2/src/buffer_core.cpp
Hepsini değiştir
logUyarı
ile birlikte
CONSOLE_BRIDGE_logUyarı
ve
logError
ile birlikte
CONSOLE_BRIDGE_logHatası
4. Adım: ROS Kinetiği Oluşturun
Bu noktada yapı başarılı olmalıdır.
cd ~/ros_catkin_ws
sudo./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release --install-space /opt/ros/kinetic
~/.bashrc'ye ekleyin ve ayrıca kabuğunuzda çalıştırın:
kaynak /opt/ros/kinetic/setup.bash
Adım 5: TurtleBot3 ve Raspicam Paketlerini Oluşturun
Bu talimatlar, ROBOTIS eğitimini takip eder.
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/ catkin_make kaynak devel/setup.bash
~/.bashrc'yi düzenleyin ve ekleyin
kaynak /home/pi/catkin_ws/devel/setup.bash
Şimdi, yürüt
cd ~/catkin_ws/src
git klon https://github.com/ROBOTIS-GIT/hls_lfcd_lds_driver.git git klon https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git klon https://github.com/ROBOTIS-GIT/turtlebot3. git git klon https://github.com/UbiquityRobotics/raspicam_node.git cd ~/catkin_ws/src/turtlebot3 rm -r kaplumbağabot3_description/ kaplumbağabot3_teleop/ kaplumbağabot3_navigation/ kaplumbağabot3_slam/ kaplumbağabot3_example/ cd ~&catkin_ws &
Yapı başarılı olmalıdır.
Raspberry Pi 4b'yi TurtleBot3 USB çevre birimlerini tanıyacak şekilde yapılandırın.
rosrun kaplumbağa botu3_bringup create_udev_rules
ifconfig'i çalıştırın ve Raspbery Pi'nin IP'sini yazın.
ifconfig
~/.bashrc'yi düzenleyin. Aşağıdaki satırları ekleyin ve ayrıca kabuğunuzda çalıştırın.
dışa aktar ROS_MASTER_URI=https://YOUR. ROS. MASTER. IP:11311
dışa aktar ROS_HOSTNAME=YOUR. RASPBERRY. PI. IP
Raspberry Pi ve PC saatini senkronize edin:
sudo apt-get install ntpdate
sudo ntpdate ntp.ubuntu.com
Bu noktada kurulumunuz tamamlanmış olmalıdır. Artık TurtleBot3'ünüzde Raspberry Pi 3/3+ yerine Raspberry Pi 4b'nizi kullanabilirsiniz.
Önerilen:
Elektrik ve Gaz Sayacını Okuyun (Belçika/Hollandaca) ve Thingspeak'e Yükleyin: 5 Adım
Elektrik ve Gaz Sayacını Okuyun (Belçika/Hollandaca) ve Thingspeak'e Yükleyin: Enerji tüketiminiz konusunda endişeleriniz varsa veya biraz inek varsa, muhtemelen akıllı telefonunuzdaki yeni dijital sayacınızdaki verileri görmek istersiniz. projesinde mevcut verileri bir Belçikalı veya Hollandalı dijital elektrikten alacağız
NET Framework 1.0'ı 64-bit Windows'a yükleyin: 8 Adım
64 bit Windows'ta Install.NET Framework 1.0: .NET Framework sürüm 1.0'ı Windows'un 64 bit sürümüne yüklemeyi deneyen herkes, muhtemelen 64 bit Windows'ta çalışmayacağını söyleyen bir hatayla karşılaşmıştır. . Ancak, bir geçici çözüm vardır. DİKKAT: Microsoft şunları desteklemez
Django'yu ASUS Tinker Board'a yükleyin: 3 Adım
ASUS Tinker Board'a Django yükleyin: Bu talimatta python3.5 ve Django 1.11.5 kullanacağım
NODEMcu Usb Portu Çalışmıyor mu? Kodu USB Kullanarak TTL(FTDI) Modülüne 2 Adımda Yükleyin: 3 Adım
NODEMcu Usb Portu Çalışmıyor mu? Kodu USB Kullanarak TTL(FTDI) Modülüne Sadece 2 Adımda Yükleyin: USB'den TTL modülüne birçok kabloyu NODEMcu'ya bağlamaktan bıktınız, kodu sadece 2 adımda yüklemek için bu talimatı izleyin. NODEMcu çalışmıyor, panik yapmayın. Sadece USB sürücü çipi veya USB konektörü,
Vim'i Windows'a yükleyin: 8 Adım
Vim'i Windows'a yükleyin: Vim, Vi IMproved anlamına gelir. Vim, GNU Genel Kamu Lisansı altında açık kaynak kodlu bir programdır, yani özgürce dağıtılabilir, değiştirilebilir ve kullanılabilir. Esasen Vim, tıpkı Windows'ta Notepad veya Ma'da TextEdit gibi bir metin düzenleyicisidir