martes, 28 de junio de 2016

Siguelíneas - ArduBlock, Bitbloq y mBlock

(Artículo en construcción)

Referencia de programa: 05A, 05B
  
Arduino IDE 1.0.6 y ArduBlock 20130607 en MAX 6.5 (MAdrid_linuX)

Aviso. Mostramos algún ejemplo con los sensores infrarrojos en los pines analógicos, aunque lo más recomendable es usar los pines digitales, ya que el objetivo es detectar negro.

Usaremos dos sensores infrarrojos con receptor y emisor o, en el caso de mBot, un módulo siguelíneas (que en realidad incluye dos sensores infrarrojos ligeramente separados).

Este tipo de sensores, se utilizan para detectar blanco y negro o claro y oscuro.
  • Infrarrojos en pines digitales:

  • Infrarrojos en pines analógicos:

Prepara el montaje:
  • Placa Arduino.
  • Siguelíneas con infrarrojos IR (emisor y receptor):
     Pin "digital" 4 o pin analógico 4 (según ejemplo elegido) - Infrarrojo derecho.
     Pin "digital" 5 o pin analógico 5 (según ejemplo elegido) - Infrarrojo izquierdo.
     Pin digital 9 - Servomotor derecho (parte plana hacia delante).
     Pin digital 10 - Servomotor izquierdo (parte plana hacia adelante).
  • Tablero: superficie blanca con línea negra (no pegada al borde para así facilitar giros).
Ten en cuenta:
  • Para obtener los mejores resultados, es mejor que la línea a seguir sea negra sobre fondo blanco.
  • En este caso, orienta ambos servomotores de tal forma que los cables que salen miren hacia la parte delantera del robot.
  • En las placas con hileras de tres pines conecta los cables empezando normalmente por "ground". Cuidado. En algunas placas los pines están invertidos.
  • Comprueba si tus servomotores están bien calibrados.  
  • Comprueba que los módulos infrarrojos se encuentran a una altura adecuada.
  • Datos de sensores infrarrojos:
    Situados a una altura de unos  2, 3 ó 4 cm y rectos, pero puede ser otra en función de las características técnicas del módulo IR.
    Con líneas negras estrechas, deben estar muy pegados unos a otros. Prueba con anchos de línea y distancias entre infrarrojos mayores o menores para comprobar estos efectos.
  • No todos los sensores utilizan el mismo rango de valores, incluso algunos aparecen invertidos:
    Con medidas analógicas y según sensores y condiciones de iluminación, valor aproximado de negro: 150 o, si es al contrario, 800.
    Con medidas analógicas y según sensores y condiciones de iluminación, valor aproximado de blanco: 800 o, si es al contrario, 150.
  • Cuidado. La escasa iluminación y, según como esté diseñado, las sombras que pueda proyectar el propio siguelíneas  podrían influir en el funcionamiento.
  • También influye la inclinación de los sensores infrarrojos en el montaje o que las líneas tengan un reborde discontinuo o no.
  • En algunos casos por defecto o fallo, el robot podría salirse completamente de la línea; la programación del final haría que volviera a la línea. Se puede cambiar para que gire en uno sentido diferente intercambiando el servo que se mueve y el que se para, ya que ello afectará a que siga en la misma dirección o cambie de dirección.
Programa:
  • Crea el programa que se muestra en la imagen.
Prueba:
  1. Pulsa en "Cargar a Arduino".
  2. Observa los cambios y describe lo que ha ocurrido.
  3. ¿Qué función tienen las variables "IRderecho" e "IRizquierdo"?
  4. Localiza el resto de variables e indica su función.
  5. ¿Influye la posición del servo?
  6. Cambia el nombre de las variables. 
  7. Cambia los valores y los operadores. 
  8. Cambia los pines. 
  9. Describe lo que ha ocurrido tras los cambios.
  10. Describe lo que crees que hace cada bloque paso a paso.
  11. 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 1:

Similar al anterior de Ardublock pero con infrarrojos en pines digitales 4 y 5. El valor 0 corresponde a negro y el valor 1 a blanco.

Pin digital 9: servomotor continuo derecho (saliendo los cables hacia delante).
Pin digital 10: servomotor continuo izquierdo (saliendo los cables hacia delante).
Pin digital 4: sensor infrarrojos derecho.
Pin digital 5: sensor infrarrojos izquierdo.

Para comprobar el sentido de giro horario o antihorario de un servo, suele hacerse observándolo desde  abajo del mismo.

Programa:




Montaje 2:

Pin digital 9: servomotor continuo izquierdo (saliendo los cables hacia delante).
Pin digital 10: servomotor continuo derecho (saliendo los cables hacia delante).
Pin digital 4: sensor infrarrojos izquierdo.
Pin digital 5: sensor infrarrojos derecho.

 Programa:
 
mBlock con mBot (mCore) en MAX 9.0 (MAdrid_linuX) 64 bits ("solo" autónomo)
   
En este ejemplo simple, ofrecemos dos posibilidades:
 

Joystick para control de un vehículo con servos de rotación continua - ArduBlock, Bitbloq y mBlock

(Artículo en construcción)

Referencia de programas: 04B, 04C, 04D, 04E (varias pruebas en direcciones diferentes)
 
Arduino IDE 1.0.6 y ArduBlock 20130607 en MAX 6.5 (MAdrid_linuX)



Prepara el montaje:
  • Placa Arduino.
  • JoyStick de 5 cables.
    Tres primeros cables a pin "analógico" 4 (cuidado, en algunas placas están invertidos).
    Cuarto cable a pin analógico 5 señal - Eje y.
    Quinto cable a pin "digital" 7 señal - Apagar leds o parar motores.
  • Pin digital 8 - Servomotor de rotación continua izquierdo.
  • Pin digital 9 - Servomotor de rotación continua derecho.
Ten en cuenta:
  • En las placas con hileras de tres pines conecta los cables empezando normalmente por "ground". Cuidado. En algunas placas los pines están invertidos.
  • No todos los "joystick" tienen el mismo diseño ni reconocen el mismo rango valores; prueba a modificar los valores en el programa si es necesario.
  • Comprueba si tus servomotores están bien calibrados. 
Programa:
  • Crea el programa que se muestra en la imagen.
Prueba:
  1. Pulsa en "Cargar a Arduino".
  2. Acciona el mando en varias direcciones y prueba también a pulsarlo. A veces es necesario pulsar en la posición exacta.
  3. Observa los cambios y describe lo que ha ocurrido.
  4. ¿Qué función tienen las variables "xeje" e "yeje"?
  5. Cambia el nombre de las variables. 
  6. Cambia los valores y los operadores. 
  7. Cambia los pines.
  8. Describe lo que ha ocurrido tras los cambios.
  9. Describe lo que crees que hace cada bloque paso a paso.
  10. 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:

Aviso.En este caso, se ha utilizado el joystick que comercializa bq. La  configuración por defecto, rango de valores y orientación de ejes con respecto a los cables de conexión pueden ser diferentes al de otros joysticks del mercado.

De hecho, se ha probado esta misma programación con un joystick diferente y el comportamiento de los servos cambia. Se comentan los motivos al final del programa.
 

Programas:

Hay una diferencia importante con respecto al proyecto anterior. Vamos a hacer que se puedan realizar curvas más cerradas. Para ello, al girar a la derecha e izquierda, en vez de parar uno de los servos, haremos que gire en dirección contraria al otro.
  • Con joystick comercializado por bq (3 x 3 cables):
  • Con joystick diferente procedente del mercado (5 cables): 
Como se hizo en el ejemplo de Ardublock, ha sido necesario inicializar a 1 el valor del pulsador del joystick (pin digital 7), pues no viene configurado así por defecto.
 

Además, los ejes X e Y tienen otra orientación respecto a los cables; el joystick debe colocarse con los cables hacia un lado en vez de hacia adelante para que interprete bien las órdenes. Habría que cambiar la programación si queremos manejar el joystick con los cables mirando hacia adelante, que como se hizo en el caso de Ardublock.

mBlock con mBot (mCore) en MAX 9.0 (MAdrid_linuX) 64 bits (conectado y autónomo)
 
En este caso usamos los dos motores DC del kit mBot en los conectores M1 y M2.

Como en el ejemplo del artículo anterior, debemos utilizar el módulo externo joystick conectado en el puerto 4, aunque por lo que se ha probado sólo funciona usando el bloque de ejecución mediante bandera verde.
 
Se ofrecen las alternativas para programarlo de forma autónoma utilizando el mando IR de control a distancia o el módulo de botonera de 4 bototones conectado en el puerto 4).

Aviso:

En este caso, se ha observado que es conveniente tener las pilas conectadas durante la carga del programa para minimizar el número de fallos durante la carga. A veces ha ocurrido también con otros programas, por lo que se recomienda probarlo en caso de observar fallos.

  • Joystick externo:

  • Mando de control a distancia:

  • Botonera (módulo externo de 4 botones):

 

Joystick para control de 4 leds - ArduBlock, Bitblock y mBlock

(Artículo en construcción)

Referencia de programas: 04A, 04B
 
Arduino IDE 1.0.6 y ArduBlock 20130607 en MAX 6.5 (MAdrid_linuX)

El objetivo es encender uno de los cuatro leds y que permanezca encendido aunque se suelte el joystick y vuelva al centro. El led activado se apagará cuando se pulse el botón del joystick.

En caso de desear otro tipo de funcionamiento, como por ejemplo que el led sólo quede encendido cuando el joystick esté dirigido en esa posición y se apague automáticamente al volver al centro, debemos variar la programación con bloques al contrario del tipo "si no entonces".



Prepara el montaje:
  • Placa Arduino.
  • JoyStick de 5 cables.
    Tres primeros cables a pin "analógico" 4 (cuidado, en algunas placas están invertidos).
    Cuarto cable a pin analógico 5 externo - Eje y.
    Quinto cable a pin "digital" 9 externo- Apagar leds o parar motores.
  • Pin digital 10 - Led izquierda.
  • Pin digital 11 - Led arriba.
  • Pin digital 12 - Led derecha.
  • Pin digital 13 - Led abajo.
Ten en cuenta:
  • En las placas con hileras de tres pines conecta los cables empezando normalmente por "ground". Cuidado. En algunas placas los pines están invertidos.
  • No todos los "joystick" tienen el mismo diseño en la orientación de los ejes con respecto a los cables de conexión ni reconocen el mismo rango valores; prueba a modificar los valores en el programa si es necesario.
Programa:
  • Crea el programa que se muestra en la imagen.
Prueba:
  1. Pulsa en "Cargar a Arduino".
  2. Acciona el mando en varias direcciones y prueba también a pulsarlo. A veces es necesario pulsar en la posición exacta.
  3. Observa los cambios y describe lo que ha ocurrido.
  4. ¿Qué función tienen las variables "xeje" e "yeje"?
  5. Cambia el nombre de las variables. 
  6. Cambia los valores y los operadores. 
  7. Cambia los pines.
  8. Describe lo que ha ocurrido tras los cambios.
  9. Describe lo que crees que hace cada bloque paso a paso.
  10. 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:

Aviso.En este caso, se ha utilizado el joystick que comercializa bq. La  configuración por defecto, rango de valores y orientación de ejes con respecto a los cables de conexión pueden ser diferentes al de otros joysticks del mercado.

De hecho, se ha probado esta misma programación con un joystick diferente y el comportamiento de los leds cambia. Se comenta el motivo al final del programa.
 
Programas:

  • Con joystick comercializado por bq (3x3 cables).
  • Con joystick diferente procedente del mercado (5 cables): 
Como se hizo en el ejemplo de Ardublock, ha sido necesario inicializar a 1 el valor del pulsador del joystick (pin digital 9), pues no viene configurado así por defecto.



Además, los ejes X e Y tienen otra orientación respecto a los cables; el joystick debe colocarse con los cables hacia un lado en vez de hacia adelante para que interprete bien las órdenes. Habría que cambiar la programación si queremos manejar el joystick con los cables mirando hacia adelante, que como se hizo en el caso de Ardublock.

mBlock con mBot (mCore) en MAX 9.0 (MAdrid_linuX) 64 bits
    
En este ejemplo, debemos utilizar el módulo externo joystick conectado en el puerto 4, aunque por lo que se ha probado sólo funciona usando el bloque de ejecución mediante bandera verde.
 
Se ofrecen las alternativas para programarlo de forma autónoma utilizando el mando IR de control a distancia o el módulo de botonera de 4 bototones conectado en el puerto 4).

Aviso:

En este caso, se ha observado que es conveniente tener las pilas conectadas durante la carga del programa para minimizar el número de fallos durante la carga. A veces ha ocurrido también con otros programas, por lo que se recomienda probarlo en caso de observar fallos.
  • Joystick:
  •  Mando de control a distancia:
  • Botonera (modulo externo de 4 botones): 

Led RGB con cambio progresivo a múltiples colores - Ardublock, Bitbloq y mBlock

(Artículo en construcción)

Referencia de programas: 03K, 03L
 
Arduino IDE 1.0.6 y ArduBlock 20130607 en MAX 6.5 (MAdrid_linuX)
  •  Cambio con corte.  
  •  Cambio sin corte.
 

Prepara el montaje:
  • Placa Arduino.
  • Un led RGB de 4 patillas (cables):
    Pin "ground" o "Voltaje" (según tipo de led): Primer cable.
    Pin digital 9: Segundo cable.
    Pin digital 10: Tercer cable.
    Pin Digital 11: Cuarto cable.
Ten en cuenta:
  • En las placas con hileras de tres pines conecta los cables empezando normalmente por "ground".
Programa:
  • Crea el programa que se muestra en la imagen.
Prueba:
  1. Pulsa en "Cargar a Arduino".
  2. Observa los cambios y describe lo que ha ocurrido.
  3. ¿Qué función tiene la variable "x"?
  4. ¿Qué diferencias observas entre el primer y segundo ejemplo?
  5. Cambia el nombre de la variable. 
  6. Cambia los valores y los operadores. 
  7. Cambia los pines.
  8. Describe lo que ha ocurrido tras los cambios.
  9. Describe lo que crees que hace cada bloque paso a paso.
  10. Describe 3 posibles usos de este montaje en la vida real.
Investiga:
  • Investiga nuevas posibilidades cambiando valores y bloques.
Bitbloq 2 online


Aviso. En el momento de esta prueba, la versión offline de Bitbloq no disponía del bloque que permite escribir un valor analógico en un pin digital. Se ha utilizado la versión en línea.

  • Cambio con corte.
Montaje:
Programa:
 

  •  Cambio sin corte.  

mBlock con mBot (mCore) en MAX 9.0 (MAdrid_linuX) 64 bits ("solo" autónomo)
  
Utilizando Programa de mBot es necesario indicar una pausa de 0.01 segundos antes del cambio, o no se precia. En el caso de utilizar bandera verde, no es imprescindible indicar esa pausa, pues el propio Scratch ya la realiza por defecto una pequeña espera antes de ejecutar una nueva instrucción.
  •  Cambio con corte (dos posibilidades):
  •  Cambio sin corte, incluyendo luz azul. Se ofrecen dos posibilidades:

  • Cambio sin corte, con colores similares a los de un semáforo. Se ofrecen dos posibilidades:


Mostrar en texto los valores medidos por sensores analógicos (medida del volumen de un sensor de sonido) - ArduBlock, Bitbloq y mBlock

(Artículo en construcción)

Referencia de programas: 03I, 03J

Arduino IDE 1.0.6 y ArduBlock 20130607 en MAX 6.5 (MAdrid_linuX)
  •  Sensor analógico.
  • Ejemplo de medida de volumen con sensor de sonido.

Prepara el montaje:
  • Placa Arduino.
  • Pin analógico 0 - Sensor analógico: sensor de sonido, LDR, temperatura...
Ten en cuenta:
  • En las placas con hileras de tres pines conecta los cables empezando normalmente por "ground".
  • Algunos módulos de marcas diferentes responden a valores diferentes.
  • Prueba a cambiar las condiciones para obtener valores diferentes según sea el caso: cambiar el volumen de voz, girar el potenciómetro, crear sombras, acercar al cuerpo, aplicar presión...
Programa:
  • Crea el programa que se muestra en la imagen.
Prueba:
  1. Pulsa en "Cargar a Arduino".
  2. Pulsa en el menú en "Monitor Puerto Serie". Aparece una ventana.
  3. Espera unos 5 segundos.
  4. ¿Qué valores se muestran en la ventana del Monitor Puerto Serie?
  5. Mientras se muestra el monitor, prueba a cambiar las condiciones (hablar más alto, girar el potenciómetro, crear sombras, acercar al cuerpo, aplicar presión...) para obtener valores diferentes.
  6. ¿Qué función tiene la variable "valor" o similar?
  7. Cambia el nombre de la variable.
  8. Describe lo que ha ocurrido tras los cambios.
  9. Describe lo que crees que hace cada bloque paso a paso.
  10. 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)

Aviso. Después de cargar el programa en la placa, debemos pulsar en Ver y luego en Mostrar Serial Monitor

Montaje con sensor de luz:


Programa:
 
mBlock con mBot (mCore) en MAX 9.0 (MAdrid_linuX) 64 bits
   


IR (infrarrojos siguelíneas con emisor y receptor) para detectar negro - ArduBlock, Bitbloq y mBlock

(Artículo en construcción)

Referencia de programa: 03G

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

Aviso. En este caso, mostramos un ejemplo con el sensor infrarrojos emisor-receptor en los pines analógicos, aunque lo más recomendable es usar los pines digitales, ya que el objetivo es detectar negro.



Prepara el montaje:
  • Placa Arduino.
  • Pin "analógico" 3 - Sensor de infrarrojos con emisor-receptor.
    Pin digital 3 - Led de un color. No detecta negro.
    Pin digital 5 - Led de otro color. Detecta negro.
    Opciones: Más leds y zumbadores en otros pines digitales.
Ten en cuenta:
  • En las placas con hileras de tres pines conecta los cables empezando normalmente por "ground".
  • Cambia los valores o los operadores en función de las características del potenciómetro y los leds o módulos conectados. Algunos módulos responden a valores diferentes.
Programa:
  • Crea el programa que se muestra en la imagen.
Prueba:
  1. Observa los bloques y pines, tanto digitales como analógicos.
  2. Pulsa en "Cargar a Arduino".
  3. Prueba a colocar un objeto opaco en varias posiciones encima y por los lados del sensor de IR.
  4. Describe los pasos y lo que ha ocurrido.
  5. Cambia el pin digital para que suene un zumbido o sonido.
  6. Cambia el pin digital para que se encienda un led de otro color.
  7. Piensa para qué crees que sirve la variable "sensorIR".
  8. Cambia la variable a valores mucho "menores" y prueba el sensor IR.
  9. Cambia la variable a valores "mayores" y prueba el sensor IR.
  10. Describe lo que ha ocurrido tras los cambios.
  11. Describe lo que crees que hace cada bloque paso a paso.
  12. Describe 3 posibles usos de este montaje en la vida real.
  13. Prueba a pulsar sobre "<", cambiarlo a ">" y modificar los valores.
  14. Describe lo que ha ocurrido tras los cambios.
  15. Describe lo que crees que hace cada bloque paso a paso.
  16. 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)


En este caso, colocamos el sensor siguelíneas infrarrojo emisor-receptor en el pin digital 11 y los leds en los pines digitales 3 y 5.




Montaje:

Programa:


mBlock con mBot (mCore) en MAX 9.0 (MAdrid_linuX) 64 bits ("solo" autónomo)
   

lunes, 27 de junio de 2016

Ultrasonido con un led, un servo o dos servos (para vehículo simple)

(Artículo en construcción)

Arduino IDE 1.0.6 y Ardublock 20130607 en MAX 6.5 (MAdrid_linuX)
  • Ultrasonido con 1 led.
  • Utrasonido con 1 servo de 360º de rotación continua.
  • Ultrasonido con dos servos de 360º de rotación continua (se pueden utilizar para ruedas de un vehículo).

Prepara el montaje:
  • Placa Arduino.
  • Ultrasonido de 4 cables (no siempre es igual con todas las placas y shields):
    Pin digital 4 - Tres primeros cables
    Pin digital 5 - Cuarto cable (a señal, no a ground).
  • Pin digital 13 - Led.
  • Pin digital 9 - Servo de rotación continua.
  • Pin digital 10 - Servo de rotación continua.
Ten en cuenta:
  • En las placas con hileras de tres pines conecta los cables empezando normalmente por "ground".
  • Cuidado. Si conectas mal los cables, podría calentarse el ultrasonido.
Programa:
  • Crea el programa correspondiente a la tarea a realizar.
Prueba:
  1. Pulsa en "Cargar a Arduino".
  2. Acerca la mano u otro objeto al ultrasonido y luego aléjalo.
  3. Describe los pasos y lo que ha ocurrido.
  4. Cambia el pin digital para que suene un zumbido o sonido.
  5. Cambia el pin digital para que se encienda un led de otro color.
  6. Cambia la dirección de los servos.
  7. Cambia a valores mayores.
  8. Cambia los valores de alto y bajo.
  9. Describe lo que ha ocurrido tras los cambios.
  10. Describe lo que crees que hace cada bloque paso a paso.
  11. Describe 3 posibles usos de este montaje en la vida real.
Investiga:
  • Investiga nuevas posibilidades cambiando valores y bloques.

Ultrasonido con un led, un servo o dos servos - ArduBlock, Bitbloq y mBlock

(Artículo en construcción)

Referencia de programas: 03D, 03E, 03F

Arduino IDE 1.0.6 y ArduBlock 20130607 en MAX 6.5 (MAdrid_linuX)
  • Ultrasonido con 1 led.
  • Utrasonido con 1 servo de 360º de rotación continua.
  • Ultrasonido con dos servos de 360º de rotación continua. Se detiene al detectar un obstáculo (se pueden utilizar para ruedas de un vehículo).

Prepara el montaje:
  • Placa Arduino.
  • Ultrasonido de 4 cables (no siempre es igual con todas las placas y shields):
    Pin digital 4 - Tres primeros cables
    Pin digital 5 - Cuarto cable (a señal, no a ground).
  • Pin digital 13 - Led.
  • Pin digital 9 - Servo de rotación continua.
  • Pin digital 10 - Servo de rotación continua.
Ten en cuenta:
  • En las placas con hileras de tres pines conecta los cables empezando normalmente por "ground".
  • Cuidado. Si conectas mal los cables, podría calentarse el ultrasonido. 
  • Importante. En algunos de los ejemplos, los servos se detienen al encontrar un obstáculo, pero en otros su comportamiento es diferente. Según desees que los servos se detengan o giren al detectar el obstáculo, puedes intercambiar los bloques internos de los bucles o cambiar los valores asignados.
  • Distancia. En función del diseño del objeto y necesidades, será conveniente aumentar o disminuir la distancia que condiciona girar o no girar.
Programa:
  • Crea el programa correspondiente a la tarea a realizar.
Prueba:
  1. Pulsa en "Cargar a Arduino".
  2. Acerca la mano u otro objeto al ultrasonido y luego aléjalo.
  3. Describe los pasos y lo que ha ocurrido.
  4. Cambia el pin digital para que suene un zumbido o sonido.
  5. Cambia el pin digital para que se encienda un led de otro color.
  6. Cambia la dirección de los servos.
  7. Cambia a valores mayores.
  8. Cambia los valores de alto y bajo.
  9. Describe lo que ha ocurrido tras los cambios.
  10. Describe lo que crees que hace cada bloque paso a paso.
  11. 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)
  • Ultrasonido con 1 led.
 Montaje:
 Programa:

  • Utrasonido con 1 servo de 360º de rotación continua. 
Aviso. A diferencia del ejemplo siguiente, el efecto que se produce es girar en un sentido u otro en función de que haya o no obstáculo en vez de detenerse.
 
Montaje:
Programa: 
 
  •  Ultrasonido con dos servos de 360º de rotación continua Se detiene al detectar un obstáculo (se pueden utilizar para ruedas de un vehículo). Se muestran dos posibilidades. 
Montaje:

Programa:
mBlock con mBot (mCore) en MAX 9.0 (MAdrid_linuX) 64 bits ("solo" autónomo)
  
Además del led integrado en placa, se necesita un módulo ultrasonido conectado en el puerto 3.
  • Ultrasonido con 1 led.

  •  Utrasonido con 1 servo de 360º de rotación continua.
  •  Ultrasonido con dos servos de 360º de rotación continua Se detiene al detectar un obstáculo (se pueden utilizar para ruedas de un vehículo). Se muestran dos posibilidades.

    Aviso: En este caso hemos diseñado un mBot sigueobjetos en línea recta, pues se para si no está cerca del obstáculo y avance al estar cerca el objeto.