Robobot B: Difference between revisions

From Rsewiki
Line 26: Line 26:


  /home/local/
  /home/local/
  +- git        - Directory for libratyes available from a GIT repository (mostly Teensy/arduino libraries).
  +-git        - Directory for libratyes available from a GIT repository (mostly Teensy/arduino libraries).
  +- svn        - Directory for software from the subversion repository (Robobot specific software).
  +-svn        - Directory for software from the subversion repository (Robobot specific software).
  |  +- regbot  - Directory for the Teesny software (firmware) this part is called Regbot.
  |  +-regbot  - Directory for the Teesny software (firmware) this part is called Regbot.
  |  |  +-regbot_gui Debug app for Regbot.
  |  |  +-regbot_gui Debug app for Regbot.
  |  |  +-regbot    The firmware source code.
  |  |  +-regbot    The firmware source code.
  |  +- robobot - Directory for the Robobot specific code.
  |  +-robobot - Directory for the Robobot specific code.
  |  |  +-setup      Directory with some default configuration files.
  |  |  +-setup      Directory with some default configuration files.
  |  |  +-raubase    The basic Raspberry Pi software for Robobot.
  |  |  +-raubase    The basic Raspberry Pi software for Robobot.
Line 37: Line 37:
  |  |  |  +-build  Build directory with Makefile
  |  |  |  +-build  Build directory with Makefile
  |  |  |  |  +-log  Directory for data-monitoring logfiles
  |  |  |  |  +-log  Directory for data-monitoring logfiles
  |  |  |  CMakeList.txt  Directives to generate a Makefile for the C++ compiler
  |  |  |  CMakeList.txt  Directives to generate a Makefile using cmake
  |  |  |  robot.ini      Configuration and calibration file
  |  |  |  robot.ini      Configuration and calibration file
  |  |  +- ip_disp  Small app to update the IP address of the Raspberry.
  |  |  +- ip_disp  Small app to update the IP address of the Raspberry.
  |  |    log_ip_dist.txt Logfile for IP and temperature monotoring
  |  |    log_ip_dist.txt Logfile for IP and temperature monotoring
  on_reboot.bash  - Script to start applications that should start after a reboot
|  +-log    - Directory with logfiles from ip_disp (IP, users and CPU temperature)
rebootinfo.txt  - Logfile for system reboot
  on_reboot.bash  - Script to start applications that should start after a reboot (ip_disp)
 


===Robot software===
===Robot software===

Revision as of 08:03, 6 August 2023

This page is is for development nodes and user description of the simplified version of Robobot

Robobot B description

This section is intended for users.

Overview

Robobot architecture

Hardware

Plastic

Electronics

PCB

Software on Raspberry

Software repository

Directory structure

On the Raspberry the main directory and files are:

/home/local/
+-git        - Directory for libratyes available from a GIT repository (mostly Teensy/arduino libraries).
+-svn        - Directory for software from the subversion repository (Robobot specific software).
|  +-regbot  - Directory for the Teesny software (firmware) this part is called Regbot.
|  |  +-regbot_gui Debug app for Regbot.
|  |  +-regbot     The firmware source code.
|  +-robobot - Directory for the Robobot specific code.
|  |  +-setup      Directory with some default configuration files.
|  |  +-raubase    The basic Raspberry Pi software for Robobot.
|  |  |  +-src     Source code 
|  |  |  +-build   Build directory with Makefile
|  |  |  |  +-log  Directory for data-monitoring logfiles
|  |  |  CMakeList.txt   Directives to generate a Makefile using cmake
|  |  |  robot.ini       Configuration and calibration file
|  |  +- ip_disp   Small app to update the IP address of the Raspberry.
|  |     log_ip_dist.txt Logfile for IP and temperature monotoring
|  +-log     - Directory with logfiles from ip_disp (IP, users and CPU temperature)
on_reboot.bash  - Script to start applications that should start after a reboot (ip_disp)

Robot software

Firmware on Teensy

Description

Compile tools

Upload to Teensy

Development notes

This section is for development notes.

Software installation Raspberry Pi

Install on SD

Barebone installation (Raspbian GNU/Linux 11 (bullseye) as of July 2023)

Raspberry base install

Raspberry wifi

  • make a bootable SD card
  • Make a new user called local and set the group permissions
sudo adduser local gpio
  • Install general-purpose development packages

User and network (WiFi)

Connect to DTU Wifi

  • connect to DTU network without with secret password
  • use NTP (network time protocol) with DTU network

Additional packages

Install the following packages:

libreadline-dev
libopencv-dev
libgpiod-dev
gpiod
cmake
subversion
aptitude
telnet
nmap
lsof
sudo apt install libreadline-dev libopencv-dev libgpiod-dev gpiod cmake subversion aptitude telnet nmap lsof

and, if available

sudo apt install libcli11-dev

Install command line interface library (if not found by 'apt install libcli11-dev')

cd
cd git
git clone https://github.com/CLIUtils/CLI11.git

Install the GPIO library to access pins on the Raspberry PI.

sudo apt install libpigpiod-if-dev

Robobot base software

To make the initial copy from the repository

cd
cd svn
svn checkout svn://repos.gbar.dtu.dk/jcan/robobot

To update with a new version

cd
cd svn/robobot
svn update

Teensy

Software tool chain installation

Old Robobot pages

robobot an extension to Regbot with a raspberry pi for more extended missions, but uses mission code in Teensy, like Regbot.