Firgelli arduino control

Firgelli arduino control è il primo progetto realizzato per il controllo degli attuatori lineari prodotti da firgelli un’azienda canadese.

firgelli arduino control

Faccio un passo indietro per comprendere meglio come sono arrivato a questa azienda e come  mai ho deciso di acquistare i suoi attuatori lineari:

Se leggi il mio blog da qualche tempo sai della collaborazione con Federico Ciccarese che ha dato vita a tanti progetti interessanti e innovativi come:

quando le idee sono così innovative è necessario ricercare e testare strade nuove per realizzarle.

Ecco che un giorno Federico mi ha contattato parlandomi del progetto youbionic.com, ho intuito che stava iniziando una nuova avventura e che sarebbe stato necessaria una ricerca di elementi di uso comune da impiegare e controllare in modo differente per realizzare il nostro progetto.

Federico aveva già individuato in Firgelli il produttore degli attuatori lineari utili al progetto ed abbiamo provveduto ad acquistarne uno da testare.

Il firgelli arduino control è il test che ci permette di comprendere sia il funzionamento di questi attuatori sia la possibilità di controllarli mediante arduino.

Perché firgelli arduino control

Il produttore degli attuatori vende un proprio controller, che abbiamo acquistato per eseguire dei test, ma che non si è rivelato adatto allo scopo.

In particolare il controlle ( LAC ) fornito ha una risposta alquanto elevata riducendo l’efficenza dell’attuatore stesso.

Inoltre il controllo mediante cavo RC ( simile al funzionamento di un servo ) è molto discordante dalla linearità attesa.

Ho deciso quindi di realizzare il mio personale firgelli arduino control usando:

  • n. 1 arduino uno
  • n. 1 arduino motor shield
  • n. 1 batteria LiPo 11,1v
  • n. 1 attuatore lineare
  • n. 1 adattatore per cavo da 3$
  • n.  7 cavetti per breadboard

Collegamenti

Procurati i componenti necessari per la realizzazione del primo test del firgelli arduino control puoi collegarle la motor shield arduino su arduino ed i cavi per breadboard in questo modo:

firgelli arduino control motor shield

collega il cavo verde è collegato all’A0 e sarà connesso al terminale P da cui leggere il valore del potenziometro presente nell’attuatore del firgelli arduino control.

Gli altri collegamenti sono quelli soliti della motor shield.

Lato attuatore puoi usare l’adattatore venduto dal produttore:

firgelli arduino control connector

i contatti targati “P” si riferiscono al potenziometro e devono essere collegati come segue:

  • P+ al +5v di arduino
  • P- al Gnd arduino
  • P al pin A0 arduino
  • M+ al polo + del Ch A della motor shield
  • M- al polo – del Ch A della motor shield

In questo modo controllerai il motore attraverso i pin M+ ed M- e userai P per leggere il valore proveniente dal potenziometro del attuatore ( feedback ).

Lo sketch del progetto

#define motorApwm 3  // ChA
#define motorAdir 12 // ChA
#define pinCallBack A0

int limiteInf = 34;
int limiteSup = 1010;
int direzione = HIGH;

int lettura = 0;

void setup() {
  Serial.begin(9600);
  pinMode(motorApwm, OUTPUT);
  pinMode(motorAdir, OUTPUT);
  
  analogWrite( motorApwm,0 );
}

void loop() {
  
  lettura = analogRead( pinCallBack );
  Serial.print  ("lettura: ");
  Serial.println(lettura);
  
  if ( lettura >= limiteSup )  { direzione = LOW;  } // limite superiore
  if ( lettura <= limiteInf )  { direzione = HIGH; } // limite inferiore

  analogWrite(  motorApwm,255 );
  digitalWrite( motorAdir,direzione );
 
  delay( 10 );
}

linee 01-03: definisci i pin di controllo della motor shield, canale A, ed il pin da cui leggerai il feedback.

linee 05-06: imposta due variabili di tipo integer relative al limite superiore ed inferiore restituito dal potenziometro ( feedback ) del firgelli arduino control

linea 07: imposta la direzione di default, HIGH inidica di procedere estendendo il perno dell’attuatore lineare;

linea 09: imposta una variabile di tipo integer in cui memorizzerai il valore letto dal potenziometro ad ogni loop();

linea 12: imposta la comunicazione con il monitor seriale per poter leggere i valori provenienti dal pin A0 e visualizzarli sul monitor seriale;

linee 13-14: imposta a OUTPUT la modalità di funzionamento dei pin relativi a direzione e Pwm di arduino;

linea 16: imposta a 0 la velocità di movimento dell’attuatore in fase di setup();

linea 21: leggi il valore presente sul pin A0;

linee 22-23: scrivi sul monitor seriale il valore letto;

linea 25: confronta il valore raggiunto dal feedback e riportato nella variabile lettura e se supera il limite superiore impostato inverte la direzione;

linea 26: si comporta allo stesso modo della linea 25 ma confrontando il valore letto con il limite inferiore ed invertendo nuovamente la direzione;

linee 28-29: esegue i comandi sul firgelli arduino control impostando la velocità di movimento al massimo e la direzione definita dalle linee 25 e 26;

linea 31: in questo primo test ho voluto impostare a 10 millisecondi il tempo di attesa tra un ciclo loop() ed il successivo per verificare solo che il firgelli arduino control eseguisse il controllo dell’attuatore dall’inizio della sua corsa fino alla fine del movimento possibile.

Il video del firgelli arduino control

Ecco l’effetto dello sketch firgelli arduino control nel video:

Prima di inserire un commento, per favore, leggi il regolamento

Permanent link to this article: https://www.mauroalfieri.it/elettronica/firgelli-arduino-control.html

14 pings

Skip to comment form

  1. […] qualche giorno fa hai letto il test dell’attuatore lineare della firgelli scelto per questo […]

Lascia un commento

Your email address will not be published.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.