KnapSpil

Et spædt forsøg med interaktionsdesign, som bl.a. bekræftede at det er en udfordring, at få et projekt, som jeg kan udføre overført til elever OG gav en erkendelse af at interaktionsdesign er svært.

Projektet består af en 1x2m mdf plade med lysende arkadeknapper fordelt. Til højre er et joystick:

Spillet handler om at en spiller skal styre lyset i en arkadeknap vha. joysticket. Det er kun en knap der lyser ad gangen, og joysticket kan flytte rundt på hvilken knap der lyser.

Imens skal den anden spiller nå at trykke på den knap der lyser, inden lyser skifter til en anden knap på pladen. Når spiller et at styre lyser helt til højre, har spilleren vundet.

Det bliver en konkurrence i reaktionsevne, den ene med joysticket, den anden ved at trykke på knapper. Af en eller anden grund er det ret kompliceret at forklare, hvilket måske er en del af problemet med interaktionsdesignet.

Eleverne har placeret knapperne, boret hullerne, monteret ledningerne (det blev verdens største spaghetti med over 30 ledninger), forbundet ledningerne til en Arduino mega, justeret koden, herunder forsinkelsen på joysticket.

Koden indeholder i essensen en matrix på 3×4, idet der er 9 knapper arrangeret i et 3×3 Grid. Hver celle angiver nummeret på knappen, som samtidig viser Arduino-pin for LED’en (forbundet til pin 0-9) og Arduino-pin for knappen (forbundet til pin 10-19):

9

6

3

0

10

7

4

1

11

8

5

2

Numrene tildeles ud fra søjle nr. 0 til 2 (fra højre mod venstre) og række 0 til 2. Dvs. nr = søjle*3 + række. For nr 5 er søjle = 1 og række = 2 => 1*3+2 = 5.

Matricen er født med nuller og holder styr på hvilken knapper der er aktiv, dvs. lyser, repræsenteret med et 1-tal i matricen. En funktion løber Matricen igennem (ovenfor), og tænder den knap, som svarer til et 1-tal i matricen. Vha. joysticket kan 1-tallet flyttes rundt i matricen, hvilket flytter lyset rundt på lyset på pladen.

Der ligger nogle hårdkodede begrænsninger i koden, f.eks. hvis lyset når den fjerde række i matricen (til venstre på pladen), er spillet slut, og begynder forfra i øverste højre hjørne.
Koden indeholder også en række funktioner, som hhv. får knapperne til at blinke i takt, i rækkefølge, slukker m.m. Kode.

Spillet var ikke forsynet med nogen forklaringer, hvorfor de fleste forbipasserende var noget usikre på anvendelsen. Desuden har der ikke været den store lyst eller vilje til at prøve spillet af. Derfor: Det kunne fungere som et eksperiment ud i interaktionsdesign, hvordan hintes eller forklares spillets formål og regler?

kode.

Dette indlæg blev udgivet i Arduino, Maker og DIY, Programmering. Bogmærk permalinket.