Nesta lição vamos evitar terríveis acidentes. Vamos fazer um programa para evitar que o PrintBot Renacuajo (Girino) caia da mesa. Para isso, vamos utilizar os sensores IR da parte dianteira do robot. Na lição anterior, esplicámos que o sensor infravermelho distingue a cor preto do branco mas, na realidade, quando não existe nada por baixo do sensor (ou seja, quando está quase a cair), é como se visse preto. Portanto, para programar o nosso robot não-caias basta que seja detectada a cor “preto”. Mãos à obra!
Em primeiro lugar declaramos as variáveis para os sensores IR e para os servos.
Uma vez declaradas as variáveis, vamos fazer com que o nosso robot se mova em linha recta quando “existir chão”, e que gire durante 2 segundos quando estiver quase a cair. Conseguimos saber que está quase a cair, porque um dos dois sensores IR detectará PRETO.
Ufa, que complicado! Não te preocupes, porque vamos explicar por partes:
- Queremos detectar quando o Renacuajo (Girino) está quase a cair, ou seja, quando o IR direito ou o IR esquerdo “virem” a cor preto. Isso faz-se assim:
Quando um dos dois sensores “vê o abismo”, devemos girar. Para isso paramos o servo direito e fazemos girar para trás o servo esquerdo. Vamos também pausá-lo durante 2000 milissegundos, ou seja, 2 segundos.
Se ambos os IR não virem nenhum abismo, isso significa que está em terreno seguro e o robot avança. Para isso, o servo esquerdo gira no sentido dos ponteiros do relógio, enquanto que o servo direito gira no sentido contrário.
Viste? É fácil! Programa-o tu mesmo no bitbloq e envia-nos um vídeo para que possamos ver todos. Até à próxima, robonautas!