În acest tutorial, vă vom arăta cum să instalați pachetul de expansiune ScratchGPIO, cum să asamblați un panou cu LED-uri și butoane și să rulați un simplu joc Scratch care folosește butoanele LED-urilor și butoanelor pentru a juca.
Cu accentul pus de Raspberry Pi asupra educației, este perfect de înțeles faptul că Scratch este pre-instalat pe platforma implicită Raspbian și disponibilă ca o pictogramă pe desktop.
Simon Walters, @cymplecy on Twitter, a creat o expansiune pentru Scratch, care permite programului dvs. să citească și să scrie starea Pixel Pi Pin GPIO. Simon bloguri despre crearea lui, ScratchGPIO la Cymplecy și continuă să-l mențină în depozitul său github.
Pâlpâirea va găzdui LED-urile și butoanele cu care ScratchGPIO va interacționa. LED-urile au nevoie de o rezistență de limitare curentă de 220 OHM și butoanele au nevoie de rezistoare 1K OHM pentru a se asigura că pinii nu trec prea mult curent.
Folosind imaginea de mai jos, configurați panourile și jumperii pe pinii GPIO prezentați în diagramă. Numerele PIN care utilizează modulul GPIO și codul Scratch sunt numerele fizice de PIN, nu GPIO sau numere logice. Consultați imaginile de pe pagina periferică RPi Low pentru a identifica numerele de pin.
Există mai multe ghiduri pentru achiziționarea și instalarea unui sistem de operare pe zmeura Pi. Instalați ultimul sistem de operare Raspbian. Odată ce dvs. Raspberry Pi este configurat și încărcat până la desktop-ul grafic, treceți la pasul următor.
Software-ul ScratchGPIO nu schimbă sau înlocuiește zgârieturile, adaugă un set de script-uri python care se integrează cu Scratch și adaugă capacitatea de a controla și de a citi pinii GPIO la nivel hardware. Scratch-ul va continua să funcționeze în mod normal după instalare.
Totuși, va exista o nouă pictogramă pe desktop-ul grafic al Raspberry Pi care va lansa scripturile de suport GPIO și Scratch împreună. Programul de instalare este simplu și ușor de utilizat. Urmați instrucțiunile de mai jos pentru a descărca și instala pachetul ScratchGPIO.
wget https://raw.github.com/cymplecy/scratch_gpio/master/install_scratchgpio4.sh -O isgh.sh sudo sh isgh.sh
Subiectul scrierii programelor Scratch este profund și larg. Acest tutorial nu acoperă detaliile programării Scratch, dar site-ul Scratch face o treabă excelentă cu introducerea și predarea Scratch dacă doriți să aflați mai multe.
În pașii de mai jos, descărcați și rulați un joc de zgârieturi care profită de extensiile GPIO și de configurația pe care ați construit-o. Jocul stabilește pinii de ieșire 11, 12 și 13 de înaltă pentru a aprinde LED-urile și pentru a arăta starea de sănătate a eroului jocului, Cat.
Pe măsură ce pisica pierde sănătate, LED-urile sunt oprite unul câte unul până când toate sunt întunecate și jocul se termină. În timpul jocului, programul verifică starea pinilor de intrare 3 și 5 și atunci când pinii sunt scăzuți sau împământați, Cat se deplasează în sus și în jos pentru a încerca să evite adversarul de încărcare, Rex.
Pe măsură ce jucați jocul, veți vedea cum cele trei LED-uri de pe panoul de bord reflectă nivelul de sănătate al Cat și că butoanele într-adevăr se deplasează Cat în sus și în jos. Voi arăta biții de cod care interacționează cu pinii Pi GPIO, de mai jos. Pentru referință puteți găsi documentația completă despre pachetul ScratchGPIO pe blogul autorilor.
LED-urile sunt alimentate atunci când pinii la care sunt conectați sunt întoarse în sus sau în sus. LED-ul va străluci și rezistorul va împiedica trecerea prea mare a curentului. Faceți clic pe Etapă pictograma din panoul din partea stângă jos a ferestrei Scratch. Acest lucru va aduce scriptul pentru obiectul de scenă în editorul din centrul ferestrei.
Fragmentul de cod de mai jos este LED-ul și rutina de tratare a sănătății. Atunci când blocul de cod primește UpdateHealth mesaj de evaluare, ea evaluează variabila de sănătate și stabilește pinii scăzut atunci când pierderea sănătății.
Butoanele instantanee conectează pinii 3 și 5 la masă prin rezistența de limitare curentă când este apăsată. Raspberry Pi recunoaste apoi pinul ca fiind scazut sau 0 in Scratch. Faceți clic pe pisică pictograma din panoul din dreapta jos al ferestrei pentru a aduce codul în panoul din mijloc.
În blocul de cod de vârf, după unele setări de mentenanță, codurile bifează verificarea stării pinilor 3 și 5. Când fie este detectată o valoare scăzută sau 0, mesajul sus sau jos este trimis. Coborâți în pisică script sunt blocuri de cod care primesc mesajele direcționale și mișcă sprite în sine.
Scorul meu ridicat a fost 34. Vezi dacă poți să bați asta!
Scratch-ul este un cadru de programare foarte accesibil și ușor de învățat atât pentru copii mici cât și pentru adulți. Asocierea sa strânsă cu Raspberry Pi și accentul său educațional a fost o potrivire perfectă. Proiectul ScratchGPIO aduce controlul și percepția pinilor GPIO de nivel scăzut de la Pi la Scratch într-un mod foarte puternic. Autorul continuă să consolideze pachetul pentru a suporta ecrane LCD, motoare, componente compas, senzori de distanță și alte componente electronice și robotice.
Nivelul de control al hardware-ului oferit de pachetul ScratchGPIO permite programatorilor începători abilitatea de a interacționa cu lumea fizică cu un cadru de programare simplu și familiar.
Urmând acest tutorial, ați învățat cum să instalați pachetul ScratchGPIO, unde să căutați mai multe informații despre acesta și despre Scratch. În plus, ați asamblat un circuit ușor de utilizat, care vă va permite să experimentați cu siguranță controlul Scratch și GPIO atât pentru intrare cât și pentru ieșire.
În cele din urmă, ați instalat un joc care poate fi folosit ca exemplu și ca bază pentru a fi modificată pentru a învăța și a experimenta. Pe măsură ce proiectul ScratchGPIO continuă să se maturizeze și să se extindă, puteți aștepta să vedeți o nouă generație de robotică de Raspberry Pi controlată de Scratch.