Descripció de l’activitat
En aquesta activitat es dissenya un sistema per jugar partides de tenis de taula simulades. En la simulació, en comptes de pilota es fan servir senyals infrarojos (IR) i, en comptes de pales, plaques programables equipades amb emissor/receptor IR, leds i un botó. Cada punt comença amb un jugador que serveix enviant un senyal IR a l’altre jugador. El receptor ha de “retornar” el senyal prement el botó de la seva placa un nombre determinat de vegades en funció del senyal rebut, dins d’un interval de temps predefinit. El primer jugador que no aconsegueixi respondre correctament concedeix el punt a l’oponent. Es tracta, doncs, de posar a prova els mateixos reflexos.
Material necessari
- Placa Keyestudio UNO
- Sensor i emissor d’IR
- Polsador
- Led groc, verd i vermell
- Brunzidor
Orientacions pedagògiques
Formeu grups en funció del nombre de plaques Keyestudio UNO i conjunts de sensors/actuadors disponibles (2 per a cada grup).
L’alumnat pot fer el programa en l’entorn ArduinoBlocks segons les instruccions de l’apartat “Pas a Pas” individualment, per després posar-lo en pràctica amb la placa, de manera que quan dos alumnes d’un mateix grup acaben el programa, el transfereixen a les plaques del grup i comproven en parella que funciona correctament. Els 2 jugadors han d’estar separats una certa distància, amb els emissors/receptors IR enfrontats, evitant que el receptor d’una placa rebi senyals de l’emissor de la mateixa placa.
Reptes per a l’alumnat:
– Al final de cada punt, reduïu el valor de la variable “interval” per augmentar, progressivament, la dificultat del joc.
– Utilitzeu el brunzidor per emetre sons (punt guanyat, punt perdut i final de partida). Feu servir sons adients en el context de la partida.
– Segons les regles del tenis de taula, programeu que s’alterni qui serveix el cop cada 2 punts jugats (excepte si els jugadors superen els 10 punts, que hi ha alternança a cada punt).
Elements de programació
Eix | Àrea | Matèria
SEC – Tecnologia
Competències específiques
CE04 – Desenvolupar solucions sostenibles a problemes plantejats que incorporin l’automatització i les tecnologies emergents, per dissenyar i construir sistemes de control programables i robòtics
Sabers
Integració de les telecomunicacions en els sistemes de control digital; Internet de les coses amb els diferents elements, comunicacions i control, mitjançant l’aplicació pràctica per donar resposta a les necessitats personals o col·lectives.
1. En cada partida, els jugadors acorden qui serveix el primer punt. El jugador que serveix prem el botó de la seva “pala”, generant un “cop” aleatori que encén un dels leds de la pala de l’altre jugador. El jugador que rep el cop ha de prémer el botó de la seva pala tantes vegades com indiqui el led dins d’un interval de temps predefinit:
– Verd: 1
– Groc: 2
– Vermell: 3
Si reacciona correctament, retorna el cop a l’altre jugador i així es continua fins que un dels jugadors falla i concedeix un punt. El jugador que ha guanyat el punt serveix el punt següent. Qui primer arriba als 11 punts amb un avantatge de 2 guanya la partida. Si no es té el marge de 2 punts, la partida continua fins que s’assoleix aquest avantatge.
2. En l’entorn ArduinoBlocks, creeu un nou projecte de tipus UNO.
3. En el bloc d’inicialització, inicieu la consola d’ArduinoBlocks, on es mostraran les puntuacions del joc (alternativament, podeu utilitzar una pantalla OLED connectada als pins I2C). Definiu les variables dels punts acumulats per cada jugador i l’interval de temps de resposta quan es rep un cop. Definiu també la variable d’estat “escoltant”, que determina si el jugador està esperant que li arribi una “pilota” o bé intentant retornar un cop. La variable “iniciat” informa que la partida està iniciada, perquè el jugador que serveix ha premut el botó de la seva “pala”.
4. Quan un dels jugadors falla i no pot retornar un cop, acaba el punt. Definiu un procediment per actualitzar la informació, mostrar-la, comprovar si ha acabat la partida i, si no, continuar amb el punt següent:
5. En el bucle principal poseu un condicional segons l’estat del joc. En el cas que s’estigui esperant un cop, es comprova si el senyal IR rebut és vàlid (1,2,3 o 4). El senyal “4” significa que s’ha guanyat el punt (ha fallat l’altre jugador), la resta encenen un dels leds, canvien l’estat del joc mitjançant la variable “escoltant” i posen en marxa el cronòmetre:
6. Si el jugador està intentant retornar un cop, ha de prémer el botó de la seva pala tantes vegades com indiqui el color del led encès. Té un temps màxim per respondre, controlat pel cronòmetre. Si reacciona correctament, retorna el cop enviant un nombre aleatori (1, 2 o 3) per IR a l’altre jugador. En cas contrari, el jugador perd el punt en joc:
7. Connecteu els sensors/actuadors a la placa:
– Botó: pin 2
– Emissor IR: pin 3
– Receptor IR: pin 11
– Led verd: pin 4
– Led groc: pin 5
– Led vermell: pin 6
– Brunzidor (només si voleu afegir efectes sonors): pin A0
8. Transferiu el programa a la placa.
9. Comproveu, per parelles, que el programa funciona correctament.

