Opgave 9

Døråbner for dovendyr

I denne opgave lærer du, hvordan du laver en fjernstyret døråbner.

Lydsensoren programmerer du til at opfange lyde som f.eks. en person, der snakker i nærheden af døren, og til at sende en tekstbesked til din OLED-skærm. Så kan du se, når der er gæster på vej. Samtidig sørger servomotoren for at åbne og lukke døren, når der trykkes på Crashsensoren.

Trin 1

Sådan kobler du
komponenterne sammen

Sensor:bit
P1: Regnbue LED
P2: Crash Sensor
P8: Servomotor

Øvrige tilslutninger:
Batteriholder
IIC: OLED skærm

Trin 2

Forbind døråbneren med OLED skærmen

2.1

Indsæt en “ved start” kommando
fra Grundlæggende menuen.

2.3

Indsæt ”sæt pull pin til” fra Pins menuen – her skal du klikke på ”more” (med de tre prikker) for at finde strengen. Vælg ”P2” og ”op”,

2.5

Indsæt ”servo skriv pin” fra Pins menuen.
Vælg ”P8 (kun skrivning)” og 180 som værdi.

2.2

Indsæt ”aktiver led falsk” fra LED menuen – her skal du klikke på ”more” (med de tre prikker) for at finde strengen.

2.4

Indsæt ”initialize OLED with height width”, og bare behold tallene, som de er.

2.6

Indsæt ”sæt til” fra Variabler menuen, opret en ny variabel, du kalder ”open”, og indsæt ”falsk” som værdi fra Logik menuen.

Trin 3

Indstil lydniveau på lydsensoren og besked på din OLED skærm

3.1

Indsæt en “sæt til” kommando fra Variabler menuen, og opret en ny variabel, du kalder ”noise”.

3.3

Indsæt en “hvis-så” kommando
fra Logik menuen.

3.5

Indsæt din ”noise”-variabel, vælg ”større-end” (<) og indstil lydniveauet til f.eks. 70 dB.

3.7

Indsæt ”Show (without newline) string”, og skriv, hvad OLED-skærmen skal vise dig, når der er nogen ved døren – f.eks. ”Der er nogen udenfor”

3.2

Indsæt ”value of noise(dB) at pin P1”
fra Smarthome menuen.

3.4

Indsæt en ”større eller mindre end” kommando fra Logik menuen.

3.6

Indsæt ”Clear OLED display”.

3.8

Indsæt ”pause” fra Grundlæggende menuen, og indstil til 1 sekund (= 1000 milisekunder)

Trin 4

Indstil crash sensoren til at åbne og lukke døren

4.1

Efter den forrige “hvis-så” blok, indsætter du en “hvis-sand-så-ellers” kommando fra Logik menuen.

4.3

Indsæt ”sæt til” kommando fra Variabler menuen, og vælg din ”open” variabel.

4.5

Indsæt endnu en ”hvis-sand-så” kommando fra Logik menuen.

4.7

Indsæt din ”open” variabel fra Variabler menuen, og ”sand” fra Logik menuen.

4.9

Indsæt ”pause” fra Grundlæggende menuen, og indstil til 3 sekunder (3000 milisekunder).

4.2

Indsæt en ”0 = 0” sammenligning fra Logik menuen, og udskift første ”0” med ”digital læs pin” fra Pins menuen, og vælg ”P2”.

4.4

Indsæt en ”ikke” streng fra Logik menuen, og indsæt ”falsk” – også fra Logik menuen.

4.6

Udskift ”sand” med en ”0 = 0” kommando fra Logik menuen.

4.8

Indsæt ”servo skriv pin” fra Pins menuen. Vælg ”P8 (kun skrivning), og ”0” som værdi.

Trin 5

Indstil besked der vises, når sensoren ikke registrerer nogen aktivitet

5.1

Under ”ellers”-strengen, indsætter du ”servo skriv pin” fra Pins menuen, og indstiller værdien til 180.

5.1

Indsæt “show (without new line) string” fra OLED menuen, og skriv den tekst, du vil have vist på OLED-skærmen, når der IKKE er nogen ved døren.

5.2

Indsæt ”Clear OLED display”
fra OLED menuen.

5.2

Indsæt ”pause” fra Grundlæggende menuen, og indstil til 1 sekund (= 1000 milisekunder).

Du er nu klar til at teste din kode

Download den til din micro:bit, og invitér dine minigæster, så du kan teste døråbneren.

Er der noget, der driller?

Tjek, om du har husket det hele, og prøv igen. Eller download den færdige kode her.

Flere forsøg med lys-, åbne- og lukkefunktion

Hvordan får du døren til at være åben i længere tid?
Kan man afspille en melodi, når nogen ”banker på døren” til dit mini-hus?
Kan du finde på andre ting, du kan bruge døråbneren til?