Skip to content

AlessandroBonomo28/emiglio-controller

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

emiglio-controller

Robot controller code on Raspberry pi 1 B

Gemini_Generated_Image_3xnbl3xnbl3xnbl3

Setup

usa piImager per flashare il Raspberry pi 1 B, scegli il modello, poi versione lite OS senza gui. SCEGLI "pi" come nome utente, il raspberry pi 1 B non ha scheda wifi quindi devi pluggare ethernet e fare una prima configurazione con cavo HDMI per sbloccare ssh. Inoltre, ci mette molto ad avviarsi e quindi per capire cosa sta succedendo all'inizio serve HDMI.

Nota importante: mai spegnere il raspberry staccando la spina altrimenti si corrompe la SD card. Prima premere il pulsante di spegnimento configurato, attendere spegnimento (si capisce dai led del raspberry vicino l'usb e poi staccare la spina.

sudo raspi-config
  • abilita autologin
  • abilita ssh se non lo hai già attivato

ora installiamo dipendenze python

sudo apt install pigpio python3-pigpio

avviamo servizio gpio

sudo pigpiod

abilitiamo il servizio per l'avvio automatico

sudo systemctl enable pigpiod
  • cloniamo questo repo e testiamo gli script con python
git clone https://github.com/AlessandroBonomo28/emiglio-controller

Ecco un primo programma di test che riceve il segnale dal radiocomando e attiva 4 led di debug in base alla direzione di movimento

python control.py
R-Pi-1-GPIO-Pinout-768x726-2453249405 - Copia

Tank movement

per muovere Emiglio uso lo script smooth-tank.py. Il driver tb6612fng pilota il carico di un battery pack sui 4 motori in base a 4 input gpio digitali e 2 gpio PWM che controllano la velocità del motore A e B. Più info qui:

R-Pi-1-GPIO-Pinout-768x726-2453249405 - Copia - Copia

Servizi automatici

sudo nano /etc/systemd/system/control.service
[Unit]
Description=Foo

[Service]
ExecStart=/usr/bin/python /home/pi/smooth-tank.py

[Install]
WantedBy=multi-user.target
sudo systemctl enable control.service
sudo nano /etc/systemd/system/button.service
[Unit]
Description=Foo

[Service]
ExecStart=/usr/bin/python /home/pi/btn.py

[Install]
WantedBy=multi-user.target
sudo systemctl enable button.service

About

Robot controller code on Raspberry pi 1 B

Topics

Resources

Stars

Watchers

Forks

Contributors

Languages