OBS! Er det din første øvelse med ultra:bit Smart Home Kit?
Du skal bruge makecode editor og tilføje en udvidelse,
der hedder SmartHome, til menuen
Opgave 8
Spis chokolade i smug
Hvordan ved køleskabet, at det skal tænde lyset, når du åbner lågen?
Og kan man programmere det til at lukke døren automatisk, hvis man glemmer det? I denne opgave bruger du crash sensoren og servomotoren fra dit ultra:bit Smart Home Kit til at lave automatiske lys- og lukkefunktioner i en æske pålægschokolade. Så kan du smug-spise i mørke, når resten af familien er gået i seng. Du kan også tømme chokoladeæsken og putte noget andet hemmeligt i den.
Der er faktisk masser af muligheder for at gøre alle mulige slags skabe i et hus intelligente. Det kan både spare strøm – og gøre det nemmere at holde orden, når man kan se, hvad der er bagest på hylderne. I opgavehæftet til dit Smart Home Kit bruger vi et eksempel med et klædeskab til denne øvelse. Du kan sikkert selv finde på mange flere ting at bruge det til.
Til denne opgave skal du bruge følgende komponenter:
Trin 1
Sådan kobler du
komponenterne sammen
Sensor:bit
P1: Regnbue LED
P2: Crash Sensor
P7: Servomotor
Øvrige tilslutninger:
Batteriholder
Trin 2
Opstart
Indsæt “ved start”
fra Grundlæggende menuen.
Indsæt “servo skriv pin”
fra Pins menuen. Sæt P7 (kun skrivning) til 180.
Indsæt ”sæt pull pin til” under mere fra Pins menuen. Sæt P2 til op.
Opret en variabel kaldet “Dør” under variabler menuen. Vælg herefter “sæt dør til” fra variabler menuen og sæt til -1.
Trin 3
Indstil komponenterne
Indsæt “for altid”
fra Grundlæggende menuen.
Indsæt “0=0“ under comparisons fra Logik menuen i stedet for <sand>.
Indsæt “sæt dør til” fra Pins menuen og erstat “0” med ”0x0” fra matematik menuen.
Indsæt en ny “hvis <sand> så / Ellers” fra Logik menuen INDE i den eksisterende.
Erstat første “0” med “dør” fra variablemenuen og sæt andet “0” til “1”.
Træk ”sæt range til strip range from 0 with 4 leds” fra Neopixel menuen ind ved siden af din kode. Du skal KUN bruge den blå del. Den skal du trække ud og sætte ind i stedet for ”strip” – før ”show color red” (slet resten af “sæt range til”)
Træk ”sæt strip2 til Neopixel at pin P0 with 24 leds as PGB (GRP format)” fra Neopixel menuen ind ved siden af din kode. Du skal igen KUN bruge den blå del.
Indsæt ”servo skriv pin” fra Pins menuen, og vælg ”P7 (kun skrivning)” og ”0”.
Kopiér “Neopixel at pin”, ”servo skriv pin” og ”pause” kommandoerne fra før, og sæt dem ind som vist på billedet. De kopierede kommandoer skal placeres under “ellers” og “show color” ændres til “black”
Indsæt “hvis <sand> så / Ellers”
fra Logik menuen.
Erstat første “0” i “0=0” med “digital læs pin” fra Pins menuen og sæt til P2.
Erstat første “0” i det indsatte matematik komponent, med “dør” fra variabel menuen. Sæt andet nul til “-1”
Indsæt “0=0“ under comparisons fra Logik menuen I stedet for <sand>.
Nu skulle strengen foreløbig se sådan her ud.
Markér KUN den blå del, og træk den ind i din kode i stedet for ”strip”. Sæt til “P1” with “1” leds, og “range from 0 with 1 leds”. (slet resten af “sæt strip2 til”).
Indsæt ”pause” fra Grundlæggende menuen, og indstil til 2000 ms.
Nu er du klar til at teste din kode
Er der noget, der driller?
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
Kan du komme i tanker om andre ting i dit mini-hus eller på dit værelse, hvor du kan bruge lys- og lukkefunktionerne?
Kan du få den til at afspille en lyd, når lyset tændes eller døren lukkes?