Înainte de misiune
— Vrăjitori ai Circuitelor?
Fă semnul Ordinului: degetul-baghetă desenează două cercuri mici în aer, apoi apasă butonul nevăzut din mijlocul palmei. Și răspunde:
Perfect! Hai la poveste. 👇
Povestea misiuniiBila de lumină
În atelierul de tâmplărie al Cetății, Bitulică a scos o nivelă veche, cu o bulă verde în ea.
Cu asta vezi dacă o masă este dreaptă, a explicat el. Dacă bula stă în mijloc, masa este perfectă.
Pixi a luat plăcuța în palme.
Și stelele mele pot face asta? Să fie o bilă care alunecă?
Pot, a spus Tehnomir. Dar trebuie să rezolvăm o problemă. Senzorul plăcuței vorbește în numere mari: o mie, minus o mie. Iar stelele tale știu doar cinci poziții: 0, 1, 2, 3, 4.
Atunci traducem, a spus Bitulică repede. Din limba senzorului în limba stelelor.
Exact, a zâmbit vrăjitorul. Avem un bloc care face asta. Se numește map, adică „hartă”. Așază numerele mari pe o hartă mică.
Ce vom face
Avem nevoie de două blocuri noi:
- acceleration (mg) x, din sertarul Input (sub more). Spune cât de tare este trasă plăcuța într-o parte de gravitație. Când este dreaptă, valoarea este aproape 0. Înclinată mult, ajunge la aproape 1000 sau −1000. Din listă poți alege x (stânga-dreapta) sau y (înainte-înapoi).
- map, care transformă un număr dintr-un interval în altul. Dacă nu-l găsești, scrie map în căsuța de căutare de deasupra sertarelor.
Cum funcționează map?
Blocul map are cinci căsuțe: valoarea, de la mic, de la mare, la mic, la mare.
map(acceleration x, −1000, 1000, 0, 4) înseamnă: „ia valoarea senzorului, care este între −1000 și 1000, și spune-mi unde ar fi dacă intervalul ar fi de la 0 la 4”.
- −1000 devine 0 (marginea din stânga);
- 0 devine 2 (mijlocul);
- 1000 devine 4 (marginea din dreapta).
Este ca o hartă: un oraș mare desenat pe o foaie mică.
Pas cu pas
Atinge un pas ca să-l bifezi când l-ai făcut.
-
Deschide makecode.microbit.org și apasă New Project. Dă-i un nume, de exemplu Misiunea23.
-
Fă două variabile: x și y.
-
În forever, pune:
set x to map(acceleration (mg) x, -1000, 1000, 0, 4);
set y to map(acceleration (mg) y, -1000, 1000, 0, 4);
clear screen;
plot x y, cu variabilele x și y în căsuțe;
pause (ms) cu 50.
-
Testează în Geamăn, mișcând mouse-ul peste plăcuță.
-
Trimite programul pe plăcuță. Ține-o în palmă, cu ecranul în sus, și înclin-o încet în toate direcțiile.
-
Dacă punctul alunecă după înclinare, ai finalizat cu succes Misiunea 23.
Așa trebuie să arate blocurile tale
Ține telefonul sau tableta lângă calculator, cu această imagine deschisă. Când lucrezi în MakeCode, compară blocurile tale cu imaginea de mai jos, bloc după bloc: „Uite, am uitat asta!”
Scurtături utile pe Masa de lucru
Rotița mouse-ului
Mută Masa de lucru în sus și în jos, ca să vezi toate blocurile.
Ctrl + rotița
Ții apăsată tasta Ctrl și învârți rotița: blocurile se măresc sau se micșorează. Poți folosi și butoanele + și − din colțul de jos al Mesei de lucru.
Muți toată masa
Ții apăsat click pe un loc gol al Mesei de lucru și tragi, ca să muți toate blocurile deodată.
Ctrl + Z
Ai mutat sau ai șters ceva din greșeală? Ctrl + Z anulează ultimul pas.
Încearcă în MakeCode
Programul acestei misiuni folosește blocuri pe care Geamănul din pagină nu le cunoaște încă. Încearcă-l în MakeCode: Geamănul de acolo, din stânga ecranului, știe toate blocurile, are butoane și senzori și poate arăta chiar mai multe plăcuțe deodată.
Vezi cum se face
Urmărește filmulețul, apoi încearcă singur pe plăcuța ta.
De ce clear screen?
Fără clear screen, fiecare poziție a punctului ar rămâne aprinsă, iar ecranul s-ar umple repede de urme. Așa, la fiecare tură prin forever, plăcuța șterge tot și desenează punctul doar acolo unde este acum. Ai făcut la fel la radar, dar acolo ai șters doar un punct.
Dacă nu merge
Nu te supăra. Se întâmplă și adulților. Atinge problema care seamănă cu a ta:
Punctul se mișcă invers.
Schimbă ultimele două numere din map între ele: 4, 0 în loc de 0, 4.
Punctul stă lipit de margini.
Încearcă intervalul -500, 500 în loc de -1000, 1000. Plăcuța va fi mai sensibilă.
Punctul dispare uneori.
Valoarea poate ieși puțin din interval și map dă 5 sau −1. Plăcuța nu poate desena acolo. Încearcă un interval mai larg sau rezolvă la Provocarea 3.
Ecranul pâlpâie.
Pauza este prea mică sau lipsește. Pune 50.
Provocări
Atinge o provocare după ce ai rezolvat-o, ca să o bifezi.
Pune plăcuța pe masă. Ajunge punctul în mijloc? Atunci masa este dreaptă!
Încearcă diferite intervale în map: −300 și 300, −700 și 700. Care este mai ușor de controlat?
Folosește blocul constrain, dacă îl găsești la căutare, ca să ții valoarea între 0 și 4.
Ce ai învățat
- acceleration (mg) măsoară cât de înclinată este plăcuța, pe x și pe y.
- Blocul map transformă un interval mare într-unul mic.
- Pentru un punct care se mișcă liber: ștergi ecranul, apoi desenezi punctul în noua poziție.
Vrajă?
Dacă plăcuța ta a făcut ce trebuia, fă semnul și răspunde Reușită! Dacă nu încă, răspunde Încă o încercare! și uită-te la „Dacă nu merge”.
Misiune bifată pe harta capitolului. Bravo, explorator!
Misiunea 24: Oul de aur
Tic. Tic. Tic.
Toată Cetatea și-a verificat mesele. Masa din bucătărie era strâmbă. Masa Rotundă era perfectă.
Tehnomir a scos din mantie un ou de aur.
Cavalerii de demult, a spus el, treceau Podul Îngust cu un ou de aur în palmă. Dacă oul atingea marginea, se spărgea. Acum aveți bila de lumină. Ea poate fi oul.
Pixi a înghițit în sec.
Și dacă se sparge?
Atunci o luăm de la capăt. Greșelile sunt descoperiri.
Misiunea 24! au strigat toți.
Pentru părinți și profesori
- Timp estimat: 25 de minute.
- Concepte noi: citirea accelerației pe două axe și transformarea liniară a unui interval cu map. Este o idee matematică importantă (proporționalitatea), prezentată intuitiv.
- Unde este map? În funcție de versiunea editorului, blocul poate fi în Math sau în Pins. Căutarea după nume rezolvă problema.
- Ce învață copilul: cum se traduce o măsurătoare în poziție pe ecran și cum se redesenează un obiect în mișcare.
