Fenrir Project - Universal Robotic Platform
Authors
- Ing. Adam Ligocki, Ph.D.
- ...
Chapter 1
Lorem Ipsum
Robot Assembly
Lorem Ipsum
Chapter 2
Lorem Ipsum
RPi Installation
Required HW
- Respberry Pi 4B (8GB RAM recommended)
- Micro SD Card (minimal 16GB, 64GB recommended)
- SD Card to USB Adapter
Installation
Install RPi-Imager on your Linux PC
sudo apt install rpi-imager
Run RPi-Imager
rpi-imager
Select Device (Raspberry Pi 4)
Select OS (Others General Purpose OS -> Ubuntu -> Ubuntu Server 24.04.1 LTS (64b))
Select target device (SD Card)
Click Next -> Edit Settings
Setup user, password, WiFi and SSH
Confirm and wait until writing is finished.
Now put the SD card into the RPi and power on.
In case of problems, please visit Official Documentation
OS Configuration
Connect to the raspberry pi
ssh <user>@<ip_address>
Install basics
sudo apt update
sudo apt install -y git vim raspi-config htop locales software-properties-common curl libopencv-dev build-essential wiringpi v4l-utils i2c-tools
sudo apt install -y gstreamer1.0-tools gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly
Optional: Add swap space if RAM is too small (4GB and less)
sudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
# check system
htop
Install ROS2
locale
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
locale # verify settings
#ros
sudo apt install -y software-properties-common
sudo add-apt-repository universe
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
sudo apt update
sudo apt install -y ros-jazzy-ros-base ros-jazzy-cv-bridge ros-jazzy-image-transport
# Colcon
curl -s https://packagecloud.io/install/repositories/dirk-thomas/colcon/script.deb.sh | sudo bash
sudo apt install -y python3-colcon-common-extensions
Install Python tools and dependences
# Python-pip
sudo apt install -y python3-pip
# Dependences
pip3 install board rpi_ws281x adafruit-circuitpython-neopixel adafruit-circuitpython-bme280 adafruit-circuitpython-ads1x15 adafruit-circuitpython-mpu6050 adafruit-circuitpython-ds3231 RPLCD smbus2 pynmea2 --break-system-packages
Now the system is installed.
Try to run some ROS2 command.
source /opt/ros/jazzy/setup.bash # loads ros environment
ros2 topic list
Setting Up Robot SW
TODO ...
Arduino Programming
HW Required
- Host PC with Arduino Studio IDE installed see here.
- Arduino Nano "Every" (Original or clone, Every need for more external interrupts)
- USB cable to connect Arduino with PC
- Arduino PCB for Fenrir Project
Programming
Open the software/arduino_nano/main/main.ino
file in the Arduino IDE.
Connect the Arduino Every to the
Try to build the firmware using the "Verify" button in left top.
If build goes ok, try to upload the firmware using the "Upload" button in left top.
Using the ctrl+shift+M
open terminal and check if microcontroller communicates.
Program Description
... TODO ...