AP8/Pràctica1.-El servo. Primers posicionaments
Introducció: en aquesta pràctica es donaran a conèixer els conceptes relacionats amb el funcionament i control d'un servomotor.
Un servomotor és un motoreductor que va acompanyat d'una petita placa electrònica que permet controlar el posicionament del seu eix de rotació.
Els servos disposen d'un connector femella amb tres cables:
-el marró (o negre) es connecta a massa GND.
-el vermell a alimentació positiva +VCC (4,5-6V)
-i el taronja (o blanc) és el senyal de CONTROL.
Aquests colors poden variar segons el fabricant del servo.
Un servomotor és un motoreductor que va acompanyat d'una petita placa electrònica que permet controlar el posicionament del seu eix de rotació.
Els servos disposen d'un connector femella amb tres cables:
-el marró (o negre) es connecta a massa GND.
-el vermell a alimentació positiva +VCC (4,5-6V)
-i el taronja (o blanc) és el senyal de CONTROL.
Aquests colors poden variar segons el fabricant del servo.
La placa Imagina disposa de 8 connexions per connectar servomotors. Vigileu a l'hora de connectar-los ja que estan disposats en grups de 4 i els grups tenen la connexió invertida. Observeu la imatge.
Cal tenir present que si s'utilitza el PICAXE-20M a la pràctica no s'aconsella utilitzar més de 4 o 6 servos alhora, sobretot quan s'utilitza simultàniament la recepció d'infraroigs.
Cal tenir present que si s'utilitza el PICAXE-20M a la pràctica no s'aconsella utilitzar més de 4 o 6 servos alhora, sobretot quan s'utilitza simultàniament la recepció d'infraroigs.
El control intern del motoreductor del servo és del tipus llaç tancat.
La placa electrònica que incorpora el servo continuament està comparant la consigna (valor desitjat) amb la posició real de l'eix que li dóna el potenciòmetre. Si aquesta comparació és diferent, es produeix un senyal d'error que s'envia al bloc d'activació del motor perquè corregeixi l'error de posició de l'eix.
La placa electrònica que incorpora el servo continuament està comparant la consigna (valor desitjat) amb la posició real de l'eix que li dóna el potenciòmetre. Si aquesta comparació és diferent, es produeix un senyal d'error que s'envia al bloc d'activació del motor perquè corregeixi l'error de posició de l'eix.
El senyal de control que li ha de donar el microcontrolador al servomotor consiteix en polsos de 4,5 a 6volts, de 0,75ms a 2,25ms de durada, que es repeteixen cada 20ms. Aquests petits polsos defineixen la posició de l'eix, que va de 0º a 180º.
Per calcular el pols que se li ha d'enviar al servo per obtenir un determinat angle de posicionament del seu eix, s'utilitza la fórmula següent:
t=1+(angle/180)
On t representa l'amplada del pols en ms i l'angle s'especifica en graus.
Per tal de facilitar el control dels servos, els PICAXE disposen d'una instrucció anomenada servo. La sintaxis és la següent: servo pin, pulse
On pin pot ser qualsevol de les sortides de la placa Imagina (0-7) i pulse l'amplada dels polsos (75-225).
Exemple: si voleu que el servo connectat a la sortida 5 giri a la posició 60º, llavors t=1+(60/180)=1,33ms i la instrucció per posicionar el servo seria: servo 5, 133
Per calcular el pols que se li ha d'enviar al servo per obtenir un determinat angle de posicionament del seu eix, s'utilitza la fórmula següent:
t=1+(angle/180)
On t representa l'amplada del pols en ms i l'angle s'especifica en graus.
Per tal de facilitar el control dels servos, els PICAXE disposen d'una instrucció anomenada servo. La sintaxis és la següent: servo pin, pulse
On pin pot ser qualsevol de les sortides de la placa Imagina (0-7) i pulse l'amplada dels polsos (75-225).
Exemple: si voleu que el servo connectat a la sortida 5 giri a la posició 60º, llavors t=1+(60/180)=1,33ms i la instrucció per posicionar el servo seria: servo 5, 133
Enunciat: es tracta de fer un programa en DdF que posicioni el servomotor connectat a la sortida 4 a 0º, 90º i 180º en intervals de 2,5s i ho vagi repetint ciclicament. Copieu el programa i intenteu entendre el funcionament.
Millora: modifiqueu el programa perquè el posicionament sigui de 0º, 90º, 180º, 90º i es torni a repetir el cicle. Així el servo anirà en un sentit i en l'altre passant cada vegada per la posició intermitja.
Simulació: el posicionament del servomotor no es pot simular per ordinador, però sí el recorregut del programa.
Transferir al picaxe: transferiu el programa al PICAXE-20M i comproveu el funcionament.
Desar: Deseu el vostre programa amb el nom de AP8pràctica1.
Lliurament: Entregueu l'arxiu AP8pràctica1.cad al curs Moodle ROBOT HUMANOIDE IMAGINA, a l'apartat corresponent d'Activitats de Programació8.
Millora: modifiqueu el programa perquè el posicionament sigui de 0º, 90º, 180º, 90º i es torni a repetir el cicle. Així el servo anirà en un sentit i en l'altre passant cada vegada per la posició intermitja.
Simulació: el posicionament del servomotor no es pot simular per ordinador, però sí el recorregut del programa.
Transferir al picaxe: transferiu el programa al PICAXE-20M i comproveu el funcionament.
Desar: Deseu el vostre programa amb el nom de AP8pràctica1.
Lliurament: Entregueu l'arxiu AP8pràctica1.cad al curs Moodle ROBOT HUMANOIDE IMAGINA, a l'apartat corresponent d'Activitats de Programació8.