Motors pas a pas i servomotors

La placa ED1 permet controlar petits motors. Això ofereix moltes possibilitats creatives, ja que, a partir dels nostres programes, serem capaços de controlar el moviment. Moltes instal·lacions d’art interactiu funcionen d’aquesta manera. Al kit ED1+Art trobarem dos tipus de motors: motor pas a pas i el servomotor.

Esquerra: motor pas a pas; dreta: servomotor

Els motors pas a pas (en anglès s’anomenen stepper motors) funcionen tot convertint els impulsos elèctrics en desplaçaments angulars o passos. Per tant, la seva la rotació es divideix en un cert nombre de passos concrets i resultants de l’estructura del motor. Aquesta qualitat ens permet fer moviments molt precisos i controlats, ideals per fer-los servir per moure les rodes d’un robot, per exemple. Aquest tipus de motors, a escala més gran, són els que utilitzen les impressores 3D, ja que tenen molta precisió per determinar coordenades X, Y i Z, que és com funcionen aquestes màquines.

Esquema del funcionament d’un motor pas a pas
Font: Viquipèdia.

En canvi els servomotors tenen més força i van bé per moure components amb més pes, però no son tan precisos. De fet, el que trobem al kit només ens deixa girar un angle de 180 graus, el que ens ajuda a deixar la seva posició sempre al mateix lloc però ens limita per donar una volta sencera.

Pauta de connexió dels motors

 1) Motor pas a pas

La placa ED1 incorpora un parell de connectors dedicats que ens permeten connectar els motors pas a pas o steppers de forma senzilla i mitjançant una connexió Grove.

Connexió motor stepper a ED1 amb cable Grove

2) Servomotors

Pel que fa als servomotors caldrà connectar-los a qualsevol dels pins digitals D1-D4 de la següent manera:

  • Negre o marró: pin negatiu (-)
  • Vermell: pin positiu (+)
  • Blanc o taronja: pin de senyal (S)

Servomotor connectat a l’ED1 a través de un connector Dupont

Ús dels motors amb MicroBlocks

1) Motor pas a pas:

Per fer servir els motors pas a pas cal fer servir la llibreria ED1 Stepper Motor.ubl que hi ha a la carpeta Other.

Començarem per fer un petit codi que simplement mogui el nostre motor. Escriviu el codi següent a MicroBlocks:

El bloc «mou motor» és una funció amb dos paràmetres. Amb el primer paràmetre, podem designar el motor que volem controlar, en aquest cas, el motor 1. El segon paràmetre ens permet establir l’angle de rotació del motor, en aquest cas, -90º. A la placa ED1, podem connectar un total de dos motors. Per saber quin es el número de motor on tenim connectat l’stepper, hem de mirar el número que hi ha al costat de la connexió a la placa: M1 o M2.

Proveu de modificar el valor de l’angle de rotació per veure com reacciona el motor.

Per canviar el sentit, podem utilitzar un altre bloc «mou motor» on, a través d’un desplegable, podem indicar si volem moure el motor clockwise (sentit horari) o counter-clockwise (sentit antihorari):

Ara podem fer un petit exemple que combina el sensor de llum amb el motor. Aquest codi mou el servo quan el sensor detecta poca llum. Per fer-ho, necessitarem afegir la llibreria Basic Sensors.ubl. Podeu tapar el sensor de llum de la placa per fer que es mogui:

2) Servos 180 graus:

En el cas dels servomotors caldrà fer servir la llibreria Servo.ubl.

Primer crearem un petit codi que mourà el nostre motor 90º:

Com indica el bloc, el nostre servo pot rebre valors de graus entre 90 i -90; això farà una rotació de 180º i el 0 és el valor del mig. Proveu de modificar els valors per veure com reacciona el motor. No us passeu dels valors 90 o -90, ja que el motor no funcionarà correctament.

Ara us proposem combinar el moviment del servo amb els sensors de la placa. Aquest exemple de codi fa moure un servo de 180º d’un costat a l’altre mitjançant un parell de botons de direcció de la placa:

This site is registered on wpml.org as a development site.