Recinto con liña
Imos facer unhas prácticas nas que necesitarás unha superficie branca e cinta illante negra de 2cm para debuxar liñas sobre ela. Tamén podes facelo ao revés: liña branca sobre superficie negra.
Detectar liña
Grazas ao sensor de liña podemos distinguir entre branco e negro. Realmente son dous sensores, un á esquerda e outro á dereita. Cando un dos sensores se sitúa sobre negro apágase o LED e envía un 0 á placa, e se está sobre branco acéndese o LED e envía un 1. Segundo isto temos catro posibilidades para o segue-liñas, que se corresponden coa seguinte táboa:
Sensor esquerdo | Sensor dereito | Segue-liñas |
0 – Negro | 0 – Negro | 0 |
0 – Negro | 1 – Branco | 1 |
1 – Branco | 0 – Negro | 2 |
1 – Branco | 1 – Branco | 3 |
Para programar o comportamento do robot en función dos valores do segue-liñas utilizaremos os seguintes bloques.
Por exemplo. O robot avanzará sobre unha superficie branca (segue-liñas=3) e cando detecte unha liña negra no chan (segueliñas<3, xa que nos vale calquera valor 0, 1 ou 2) parará e emitirá un son. Hai dúas maneiras de facelo, co bloque “repetir ata que” ou co bloque “agardar a que”:
Moverse dentro dun recinto
Se queremos que o robot se mova dentro dun recinto necesitamos un condicional: se está sobre branco o robot avanza e se atopa negro o robot xira. Debemos introducir as instrucións dentro dun bucle para que se executen constantemente.
Prácticas
- Carga o programa anterior no que un robot avance dentro dunha área branca limitada por unha liña negra. Cando atope dita liña o robot debe xirar describindo un percorrido polo interior do recinto. Axusta as velocidades e tempos.
- Mellora 1: Cando o robot atope a liña negra co sensor esquerdo debe xirar cara á dereita, e cando a atope co sensor dereito debe xirar cara á esquerda. Cando o robot atope a liña de fronte (cos dous sensores simultaneamente) debe retroceder e xirar.
- Mellora 2: Utiliza unha variable e o operador do número ao chou para que o robot realice un percorrido aleatorio polo recinto. Segundo sexa o valor da variable o robot xirará máis ou menos, realizando xiros de distintos ángulos.
Retos
Sumo
Sitúanse tres mClons dentro dun recinto circular dun metro de diámetro. Cada mClon debe tentar sacar aos seus opoñentes do campo de xogo e evitar que o saquen a el. O formato desta proba será por eliminatorias, sendo o gañador o que quede no recinto na final. (De momento non usaremos o ultrasónico para detectar os contrincantes)
Podes tunear o mClon como queiras para atacar e poder defenderte :-)