In questo esempio mostreremo come utilizzare un Arduino per leggere il segnale dall'attuatore per aste di feedback di Firgelli e convertirlo in una misurazione della distanza di quanto l'asta è stata estesa. Questo tutorial si basa sui principi discussi nel tutorial "Controllo della velocità del driver del motore con un Arduino", Consigliamo di rivedere il tutorial prima di continuare.
Nota: questo tutorial presuppone una conoscenza preliminare dei principi elettronici di base, dell'hardware e del software Arduino. Se è la prima volta che utilizzi Arduino, ti suggeriamo di apprendere le basi da uno dei tanti fantastici tutorial per principianti disponibili tramite le ricerche su Google e YouTube. Tieni presente che non abbiamo le risorse per fornire supporto tecnico per applicazioni personalizzate e non eseguiremo il debug, la modifica, la fornitura di codice o schemi elettrici al di fuori di questi tutorial disponibili pubblicamente.
Componenti
- Attuatore lineare con asta di feedback
- Alimentazione 12V
- Arduino
- Driver del motore
- Potenziometro esterno (per la seconda parte di questo tutorial)
- Cavi elettrici per effettuare collegamenti e pinza o saldatore
Cablaggio
Panoramica hardware e software per la posizione di lettura
Assembla il circuito come sopra e carica il codice qui sotto. Sarà necessario modificare la riga 16 del codice in base alla lunghezza della corsa specifica, attualmente è impostata per un attuatore con asta di feedback da 6 pollici.
Questo programma inizialmente estenderà e ritrarrà completamente l'attuatore per trovare la lettura del sensore analogico minima e massima dal potenziometro (riga 27 e 28 del codice). Ciò è necessario perché nonostante l'intervallo delle letture del potenziometro sia [0, 1023], in pratica questo intervallo può essere ridotto a causa del rapporto di trasmissione all'interno dell'attuatore che impedisce al potenziometro di ruotare completamente fino al suo limite.
Seguendo questa sequenza di calibrazione iniziale, l'attuatore si estenderà e si ritirerà continuamente emettendo un flusso di dati che visualizzano la lunghezza estesa corrente dell'attuatore lineare (in unità di pollici).
Codice
https://gist.github.com/Will-Firgelli/8c78092ca850aa8a50ae36842b97150fUtilizzando un potenziometro esterno per controllare la posizione
L'esempio sopra ha dimostrato come le letture possono essere prese dall'attuatore con asta di feedback, ma supponiamo di voler spostare l'attuatore in una posizione specifica, come si fa? La sezione seguente esamina tale situazione utilizzando un potenziometro esterno come input dell'utente per la posizione del setpoint desiderata dell'attuatore. In pratica puoi modificare questo esempio per prendere l'input dell'utente da qualsiasi forma tu voglia.
Cablaggio
Panoramica hardware e software per il controllo della posizione
Il cablaggio è quasi identico alla prima parte di questo tutorial, solo ora un potenziometro esterno è stato collegato al pin analogico A1.
Il programma, di seguito, si sposta nella posizione impostata da un utente tramite il potenziometro esterno. Nella riga 18 del codice è impostata una variabile buffer, questa viene utilizzata successivamente nelle righe 36 e 39. La variabile buffer fornisce un intervallo intorno alla posizione di setpoint desiderata in cui l'attuatore si fermerà, questo è richiesto poiché i due potenziometri hanno un tendenza a fluare di +/- 2 unità. Pertanto, se il buffer non fosse incluso, gli attuatori vibrerebbero violentemente intorno alla posizione del setpoint. Per vederlo in azione, impostare a zero l'ammortizzatore nella linea 18 (non permettere agli attuatori di vibrare a lungo in quanto può causare danni).