5.Código



CÓDIGO MBLOCK
(hecho por María)

Antes de explicar el código vamos a explicar como funcionan los componentes de nuestro circuito.

Sensor ultrasonido: este sensor manda unas ondas por uno de sus pines, rebota con algún objeto que tenga en frente lo que hace que vuelvan por otro pin del ultrasonido. Este sensor calcula el tiempo que tardan en rebotar las ondas lo que le permite saber a que distancia se encuentra un objeto.




Puente h:  controla el giro y la velocidad de lo motores.


Sensor de infrarrojos TCRT5000: es un sensor capaz de detectar blanco y negro, transforma lo que detecta de cada color en valores de 0 y 1 actuando como un sensor digital.



CÓDIGO


Según las normas de robocampeones, lo primero que debe hacer el robot es esperar 5 segundos, retroceder hasta que el robot toque la línea negra y a partir de este momento utilizar la estrategia que se haya elegido por cada participante. Por eso, hemos empezado el código con un bloque para que espere 5 segundos antes de hacer nada.  A continuación el robot empezará a ir hacia atrás hasta que el infrarrojos  situado en la parte de atrás del robot detecte negro (1), este  infrarrojos está conectado al pin 8. En nuestro robot los motores conectados al puente h están conectados a los pines 1,2,3,4. En nuestro código BAJO, ALTO, BAJO, ALTO, significa que nuestro robot vaya hacia atrás.

Todo el resto del código lo hemos metido en un bloque de "por siempre" ya que la acción se repite durante todo el combate. En este bloque hemos metido otro que nos dice que si el infrarrojos conectado al pin 9 es igual a 0, es decir, detecta blanco, que actúe el ultrasonidos conectado al trig y echo en los pines 6 y 5. Si este sensor detecta algún objeto cerca (menor que 7) vaya hacia delante y si no detecta nada cerca que gire un poco y avance cambiando así la dirección del robot y de esta forma intentar buscar al rival. Si este infrarrojos que está situado en la parte de delante del robot no detecta (valor 0), es decir detecta negro, cambia de dirección avanzando hacia atrás durante dos segundos, gira un poco y sigue avanzando hasta que o bien, vuelva a detectar la línea negra y se repita esta última acción, o el ultrasonido se encuentre con el otro robot y vaya a por él avanzando en línea recta ALTO, BAJO, ALTO, BAJO.

Tenemos otro infrarrojos en la parte de atrás por si detecta la línea negra (1) desde la parte trasera del robot, en este caso, el sensor conectado al pin 8, manda una señal a la placa arduino para que mande a los motores conectados al puente h que avancen de manera que se alejan de la línea negra cambiando la dirección de los motores. 

Comentarios