domingo, 26 de junio de 2016

Controlar simultáneamente dos servomotores de 360º de rotación continua - ArduBlock, Bitbloq y mBlock

(Artículo en construcción) 

Arduino IDE 1.0.6 y ArduBlock 20130607 en MAX 6.5 (MAdrid_linuX)


Prepara el montaje:
  • Placa Arduino.
  • Pin digital 3 - Servomotor 1 de 360º de rotación continua.
  • Pin digital 5 - Servomotor 2 de 360º de rotación continua.
Ten en cuenta:
  • Para una adecuada gestión de las señales PWM (modulación por ancho de pulsos) de los actuadores analógicos conectados en pines digitales, utiliza los pines 3, 5, 6, 9, 10 y 11 con los servomotores. 
  • En las placas con hileras de tres pines conecta los cables empezando normalmente por "ground".
  • Para girar en un sentido, usa el valor 1000 como ángulo.
  • Para girar en sentido inverso, utiliza el valor 2000 como ángulo.
  • Para parar el servo, utiliza el valor 1500 como ángulo.
  • Estos valores pueden cambiar en función de las características técnicas de los servos.
  • Los cambios bruscos en la dirección de un servo pueden dañarlo por la inercia de seguir en la misma dirección, de ahí que sea necesario poner una pausa antes que ralentice el giro.
  • Para conectar dos servomotores, usa mejor el bloque Servo.
  • Los servomotores deben estar bien calibrados. Si fuera el caso, prepara y carga un programa con sólo una instrucción para parar el servo y gira con un destornillador el tornillo de calibración lateral hasta que este se detenga. 
Programa:
  • Crea el programa que se muestra en la imagen.
Prueba:
  1. Pulsa en "Cargar a Arduino" y observa.
  2. Cambia el valor de los ángulos entre 1000 y 2000.
  3. Intenta utilizar ángulos menores de 1000 y mayores de 2000.
  4. Repite el mismo proceso cambiando los números y valores de pin digital.
  5. Describe lo que ha ocurrido tras los cambios.
  6. Describe lo que crees que hace cada bloque paso a paso.
  7. Describe 3 posibles usos de este montaje en la vida real.
Investiga:
  • Investiga nuevas posibilidades cambiando valores y bloques.

Bitbloq Offline v1.0.3 en MAX 8.0 (MAdrid_linuX)

Montaje:
Programa:

mBlock con mBot (mCore) en MAX 9.0 (MAdrid_linuX) 64 bits (conectado y autónomo)
 
Programa con dos motores DC del kit mBot en los conectores M1 y M2:


También se puede conseguir el mismo efecto seleccionando siempre avanzar e indicando que la velocidad sea negativa cuando sea necesario retroceder.
  
 
Ten en cuenta:
  • El propio kit mBot dispone de motores DC y normalmente es preferible usarlos en vez de servomotores.
El programa se ha duplicado para comprobar su funcionamiento en modo conectado al ordenador y desconectado.
Ejecución en modo "conectado" con la placa conectada y el Programa Predeterminado cargado desde el menú Conectar:
  • Presiona la bandera verde y espera.
Carga para que funcione en modo "autónomo desconectado":
  • Con la placa conectada al ordenador, pulsa sobre el bloque mBot Program, cliquea en Upload to Arduino, espera a que termine la carga, desconecta la placa del ordenador y utiliza la placa sólo con las pilas.


No hay comentarios: