Chapter 4: Controlling Motion
Indice di presentazione Uso e Copyright Movimenti del microcontrollore Attivita #1: Connessione e Testaggio del Servo Il servo sul “Board of Education” Revisione C Il servo sul “Board of Education” Revisione B Il servo sul “Board of Education” Reviosione A Programmare il controllo del Servo Attivita #2: Controllo della posizione con il tuo Computer Attivita #3: Conversione da posizione a movimento Activity #4: Controllo del servo con il pulsante Rotazione standard e continua del servo Capitolo #4 Riassunto Collegamenti
Movimenti microcontrollore Il microcontrollore , controlla i movimenti di molte cose nella nosta vita quotidiana: Il movimento della testina della stampante Meccanismi DVD e VCR Le porte automatiche dei negozi Movimenti dei robot Invece di essere semplicemente di tipo ON-OFF, molti di questi dispositivi richiedono segnali impulsivi molto veloci per il controllo di posizione e di movimento.
Esempi di motori e dispositivi di movimento: Motori DC Motori AC Motori Passo-Passo Servo Tutti questi possono essere controllati dal BASIC Stamp, sebbene molti necessitino di un circuito elettronico addizionale o componenti meccanici addizionali. Il BASIC Stamp non può controllare direttamente un motore da 25A, ma son necessari alcuni componenti addizionali.
I servo utilizzati in campo hobbistico (modellismo) sono, tra tutti i motori in DC, i più semplici e più direttamente controllabili dal Basic Stamp. Saranno l’ argomento principale di questo capitolo. I servo in campo hobbistico sono facili da controllare e da connettere, ed hanno una uscita meccanica di facile utilizzo.
Attivita #1: Connessione e testaggio del servo Parti di cui è composto un Servo: Connettori Servo: Nero: Vss Rosso: Vdd o Vin Bianco: Segnale
Circuito da montare: La connesione tra il servo e la scheda, dipende dalla scheda di cui si dispone. Il servo può essere danneggiato da una tensione superiore a 9V. Un trasformatore da parete, con tensione nominale di 9V, può avere una tensione di uscita di 12V. Se si usa una qualsiasi alimentazione che non sia una batteria, bisogna verificare che il valore non superi 9V.
Il servo sul “Board of education” revisione C 1 2 3 4
Il servo sul “board of education” revisione B Rimuovi l’alimentazione dalla scheda
Il servo sul “Board of education” rev.A e lavoro sulla scheda Il condensatore è necessario come “riserva di energia” in caso di picchi di assorbimento. Esso supporta il regolatore di tensione quando il servo chiede potenza. Il condensatore elettrolitico può esplodere se montato al contrario. Fate attenzione nel collegare l’alimentazione!
Il servo sul “board of education” rev.A o HWB (cont) Rimuovi l’alimentazione Connetti il circuito
Servo on Board of Ed. Rev A or HWB (cont) Connetti il Servo
Programming Servo Control I servo sono controllati da “bursts ” di impulsi spaziati di 20mS. Un impulso di livello ALTO può variare da 1mS a 2mS. Per inviare i segnali di controllo dei servo si utilizza l’istruzione PULSOUT. PULSOUT pin, duration pin : stabilisce quale pin di I/O utilizzare. duration : stabilisce la durata dell’impulso, ma NON in mS.
La durata dell’impulso alto generato dal comando PULSOUT è variabile in incrementi di 2 microsecondi (µS) 1 S = .000 001 secondi 1 mS = 1 000S Ad esempio, il comando PULSOUT 14, 750 invierà un impulso di durata pari a: 750 x 2 S = 1500 S o 1.5mS sul pin 14.
Il programma di esempio che segue, genera un treno di 150 impulsi, ciascuno di durata di 2 mS (1000 x 2 S ): Esempio di codice: Quando viene eseguito, vengono generati, sul pin 14, 150 impulsi di durata pari a 2ms spaziati di 20mS.
Con l’esecuzione del programma, la punta del servo gira dalle 10 alle 2 poi alle 12, seguendo le posizioni delle lancette dell’orologio. La larghezza degli impulsi definisce la posizione assoluta cui il servo deve portarsi nell’ambito di 90 gradi. La varietà del servo, e la gamma di corsa possono variare.
Attivita #2: Controllo della posizione con il tuo computer. Il controllo del servo con il programma di debug, utilizza la finestra di debug per permettere all’utente di fornire il numero di impulsi e la loro durata. Quando gli viene richiesto, l’utente digita i dati:
Il comando DEBUGIN è usato per accettare dati inviati AL Basi Stamp DAL PC, quando inseriti nel text box. DEBUGIN DEC Pulses Si facciano delle prove con valori diversi, facendo però attenzione ad utilizzare valori di durata compresa tra 500 e 1 000, per prevenire danni al servo.
Of course, users make mistakes, so it would be a good idea to ensure the user enters durations only within the legal range! If you make a mistake entering a number, press the reset button on the board. The backspace key sends data which the BASIC Stamp uses the same as the Enter key.
Activity #3: Converting Position to Motion La rotazione dell’alberino del servo può essere ottenuta mediante un piccolo cambiamento di posizione ad ogni passo di un ciclo. La parte STEP di un’istruzione FOR…NEXT definisce l’entità del passo ad ogni ripetizione. La velocità del servo può essere controllata modificando il valore di STEP.
Activity #4: Servo Control with Pushbuttons Aggiungiamo ora due pusanti al circuito, per controllare la posizione del servo.
Standard and Continuous Rotation Servos Un servo standard ha un meccanismo di feedback connesso all’alberino. Quando riceve un impulso la posizione attuale è comparata con quella predisposta, e l’alberino ruoterà fino a quando le due posizioni saranno coincidenti. Il servo ha una coppia elevata quando viene posizionato.
I servo a rotazione continua o “servo modificati” hanno il feedback e lo stop meccanico rimossi. Il meccanismo di feedback è tale che un impulso centrale di durata 750 (o 1.5mS) ferma il servo. Impulsi al di sopra o al di sotto di quello centrale fanno ruotare il servo libramente a velocità variabile ed in entrambe le direzioni. Ciò rende i servo dei sistemi molto diffusi per pilotare le ruote, come nel Boe-Bot.
Chapter #4 Review Motors, stepper motors and ______ perform mechanical motion that can be controlled by the BASIC Stamp. The ______ is easiest to control with no additional hardware or electronics. The Servo's position is controlled by high pulses lasting from _____ – _____. Pulses are required to have a _____ low time between them. The _______ command is used to send pulses. The duration is in ______ increments. How can you control a servo's velocity?
Links BASIC Stamp Home Stamps In Class Home BASIC Stamp Software BASIC Stamp Robots BASIC Stamp Yahoo Group Stamps In Class Yahoo Group SIUC EST Degree