IUNIE, 2015 NR. 3 VOL. 3 PREţ: 10 LEI
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
Sumar
DESIGN HOBBY
4 Cu Raspberry Pi 2 şi resin.io se poate transmite temperatura prin voce Diverse PC-uri de mici dimensiuni, precum Raspberry Pi au evoluat în dispozitive de calcul mai puternice. Astfel diferite platforme, de exemplu resin.io, vă permit să obțineți aplicații (programe) ce rulează printr-un singur click. Spre exemplificare pentru o astfel de aplicație având în vedere noile tehnologii, vă propunem următorul proiect de bază: cum puteți transmite prin voce temperatura. Prin acest proiect vă expune cât de simplu poate fi să produceți (dezvolta) astăzi un program pentru hardware.
10 Banana-Pi Mulţi consideră Banana-Pi o clonă a Raspberry-Pi. Asemănarea dintre denumiri şi aspectul plăcilor sugerează, fără îndoială, o asemenea comparaţie. Însă pentru cei care cunosc mai în detaliu cele două proiecte, sunt evidente foarte multe diferenţe.
Revista Electronica Azi Hobby poate fi cumpărată de la partenerii noştri: Direct de la magazinele: CONEX ELECTRONIC - Bucureşti Str. Maica Domnului nr. 48, Sector 2 Tel.: 021-242.22.06 office@conexelectronic.ro vinzari@conexelectronic.ro www.conexelectronic.ro
14 Proiect de captare a energiei solare pentru alimentarea unui MSP430 cu notificare 2,4GHz În mod simplu, recoltarea energiei este abilitatea de a lua o formă de energie şi de a o transforma în electricitate ce poate fi stocată într-o baterie sau într-un super-condensator (denumit şi ‘supercap’ sau ‘ultracap’). Aplicaţiile solare sunt de la fotovoltaice de înaltă tensiune cu montare pe acoperiş, până la instalaţii solare mici pentru comandă de la distanţă a unor aplicaţii de joasă putere.
20 Multimetru tip stilou, Mastech MS8211 20 Multimetru pentru componente SMD, Mastech MS8910
Sau online de la: O’BOYLE - Timişoara Tel. +40 256-201346 office@oboyle.ro www.oboyle.ro
21 Detector de tensiune cu display UNI-T UT15C 22 Sistem de transmisie video la sol în 5.8Ghz Când ne gândim să achiziționăm un sistem de transmisie video la sol, trebuie luați în calcul o multitudine de factori, însă, cei mai importanți, sunt frecvența de emisie și puterea emisă.
Câştigaţi cu Electronica Azi Hobby
24 Iniţiere în electronică cu SparkFun Cei de la SparkFun vin în ajutorul începătorilor cu un kit de învățare, SparkFun Inventor’s Kit, reprezentând o modalitate foarte bună de a începe programarea și interacțiunea hardware prin intermediul limbajului de programare Arduino.
28 Internet of Things 4 Girls IoT4Girls este un workshop adresat fetelor de liceu prin care ne dorim să le arătăm, înainte ca ele să ia decizia de a urma o anumită facultate, ce înseamnă programarea şi cât de distractivă poate fi. Participantele nu trebuie să aibă anumite cunoştinţe, deoarece le învăţăm noi totul de la zero.
Revista Electronica Azi - HOBBY apare de 6 ori pe an.
Management Director General - Ionela Ganea Director Editorial - Gabriel Neagu Director Economic - Ioana Paraschiv Publicitate - Irina Ganea
Revista este publicată numai în format tipărit.
Redacţie:
2015© Toate drepturile rezervate.
office@electronica-azi.ro www.electronica-azi.ro
EURO STANDARD PRESS 2000 srl Tel.: +40 (0) 31 8059955 Mobil: 0722 707-254 office@esp2000.ro www.esp2000.ro
Preţul revistei este de 10 Lei. Preţul unui abonament pe 1 an este de 60 Lei.
O parte din articolele prezentate în această ediţie au fost realizate de către tinerii pasionaţi din cadrul laboratoarelor:
CUI: RO3998003 J03/1371/1993 Tiparul executat la Tipografia Everest
2
ROBOLAB - wonderbots.cs.pub.ro
Trimiteţi la redacţie proiectul unei aplicaţii practice şi aveţi şansa de a câştiga un sistem de evaluare şi dezvoltare “ENERGY-HARVEST-RD” de la Silicon Labs.
Colaboratori: Ing. Emil Floroiu - emilfloroiu@gmail.com Ing. Daniel Rosner - daniel.rosner@cs.pub.ro Asis. Drd. Ing. Răzvan Tătăroiu razvan.tataroiu@cs.pub.ro Asis. Dr. Ing. Alexandru Radovici msg4alex@gmail.com Șl. Dr. Ing. Dan Tudose dan.tudose@cs.pub.ro Dumitru-Cristian Trancă dumitru.tranca@cti.pub.ro Daniel Ghiţă - daneelg@yahoo.com Mihaela Sârbu - mihaela.sarbu@compec.ro Bogdan Brînzei - bogdan.brinzei@ymail.com Constantinescu Cosmin - ctinescu.cosmin@gmail.com Negru Rareș Răzvan - rares.negrubd@yahoo.com Cojocar Laura - laurav.cojocar@gmail.com Alina Țucunete - alina.tucunete@gmail.com
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
Cu Raspberry Pi 2 şi resin.io se poate transmite temperatura prin voce Diverse PC-uri de mici dimensiuni, precum Raspberry Pi au evoluat în dispozitive de calcul mai puternice. Astfel diferite platforme, de exemplu resin.io, vă permit să obțineți aplicații (programe) ce Sursa: Posted by ResinIO, publicat de DesignSpark rulează printr-un singur click. Spre exemplificare pentru o astfel de aplicație având în vedere noile tehnologii, vă propunem următorul proiect de bază: cum puteți transmite prin voce temperatura. Prin acest proiect vă expune cât de simplu poate fi să produceți (dezvolta) astăzi un program pentru hardware.
Raspberry Pi 2 Model B Pentru început vă reamintim câteva caracteristici de bază ale mini PC-ului Raspberry Pi 2, deoarece acesta se folosește în exemplu. Raspberry PI este un calculator de dimensiunea unui card bancar. Este utilizat în aproximativ tot ceea ce se poate face şi cu un PC obisnuit. Dar, faţă de acesta, Raspberry PI oferă posibilitatea realizării unor conexiuni hardware directe cu alte dispozitive prin intermediul pinilor GPIO, precum diverşi senzori de temperatură, lumină sau umiditate, dar şi presiune atmosferică, relee, drivere de motoare şi altele. Pinii GPIO sunt aşezaţi în zona din lateralul plăcii şi pot fi controlaţi din orice limbaj de programare care
rulează pe această placă Raspberry PI (Python, C, C+ +, Java, PHP, .NET etc). Raspberry Pi 2 are un factor de formă identic cu precedentul (Pi 1) Model B+ și are compatibilitate completă cu Raspberry Pi 1. Tot ceea ce puteați să faceți cu modelele anterioare se poate lucra și cu acesta, dar la performanţe de şase ori mai bune.
În plus faţă de Raspberry Pi 1 puteţi beneficia din plin de: ● procesor 900MHz quad-core ARM Cortex-A7 ● 1GB RAM
Ca şi Pi 1 Model B+, noul Raspberry Pi este dotat cu: ● 4 porturi USB ● interfaţă GPIO cu 40 pini ● port HDMI ● port Ethernet (10/100) ● conector audio jack 3.5mm și video compozit ● interfață Camera (CSI) ● interfață de afișare (DSI) ● slot pentru card microSD ● nucleu grafic VideoCore IV 3D
Aurocon COMPEC vă propune Raspberry PI deoarece reprezintă o alegere bună pentru proiecte din domeniile robotică, staţii meteo, servere web, jocuri sau imprimare 3D, ftp dar şi multe alte domenii. 4
RASPBERRY PI 2 ŞI RESIN.IO
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
APLICAȚIA DE TRANSMITERE A TEMPERATURII PRIN VOCE Primul pas: Alegerea componentelor Se face cald aici? Se utilizează noul Raspberry Pi 2, un termo-senzor şi motorul Google pentru conversie din text în vorbire pentru a citi valoarea temperaturii la apăsarea unui buton.
Detaliat: Raspberry Pi 2 (se poate lucra şi cu B+, A+) Senzor de temperatură W1(DS18S20, DS1822, DS18B20) Buton Cabluri Placă de dezvoltare (opţional) Difuzor Rezistenţă (~4,7KΩ - 10KΩ)
Al doilea pas: Dezvoltarea aplicației Următorul pas pe care trebuie să îl faceţi este de a conecta dispozitivul dvs. la resin.io. Utilizând resin.io, puteţi să transmiteţi programul către Pi prin aer, simplificându-se puternic procesul de instalare a sistemului de operare. Un alt avantaj al utilizării resin.io este abilitatea de a păstra o bază de program comună pe mai multe dispozitive – de exemplu să ne imaginăm că avem o serie întreagă de astfel de senzori de temperatură în jurul casei sau în oraş – de fiecare dată când vreţi să actualizaţi programul va trebui să transferaţi manual ssh în fiecare Pi. Resin simplifică această muncă. Înscrieţi-vă la resin.io. Veţi fi solicitat să introduceţi cheia ssh publică, care este folosită pentru a vă permite transferul sigur al programului dvs. către dispozitiv. Odată conectat în aplicaţia numită “tempToSpeech”, se va alege 'Raspberry Pi 2' ca tip dispozitiv.
Odată ce imaginea este descărcată complet, va trebui să o scrieţi pe cardul SD. Dacă sunteţi pe un sistem bazat pe Unix, puteţi instala imaginea cu un GUI precum pifiller, altfel va trebui să utilizaţi următoarele comenzi. Verificaţi discurile conectate $ mount Căutaţi cardul SD în listă – al meu era conectat ca '/dev/disk2s1'. Apoi deconectaţi discul. $ sudo umount /dev/disk2s1 Acum scrieţi imaginea înlocuind imaginea dvs. şi locaţia cardului respectiv (din nou, actualizaţi dispozitivul de ieşire specificat de /dev/rdisk) $ sudo dd bs=1m if=~/Downloads/resin-myApp-0.1.0-0.0.4. img of=/dev/rdisk2 Dacă utilizaţi Windows puteţi apela la windisk2 (http://sourceforge.net/projects/win32diskimager/) Înseraţi cardul SD în PI-ul dvs., porniţi-l şi asiguraţi-vă că sunteţi conectat la internet. După 5-10 minute, dispozitivul dvs. va apărea pe panoul aplicaţiei resin.io Dacă el nu apare pe panoul dvs., verificaţi lumina ACT. Dacă clipeşte într-un ciclu de 4 semnale lungi atunci PI nu se poate conecta la Internet. Dacă lumina ACT nu clipeşte deloc, este probabil că SD cardul dvs. are probleme. Apoi trebuie să conectăm componentele noastre la Pi, astfel că se va scoate alimentarea cu tensiune a Pi. Se va conecta apoi butonul la Pi. Aceasta însemnă conectarea simplă a unui terminal la masă şi a celuilalt la o intrare GPIO, în cazul exemplului nostru utilizând pinul 17.
Apoi, se va descărca imaginea sistemului de operare OS şi se va selecta configuraţia de reţea dorită.
Conectaţi senzorul de temperatură la Pi. Asiguraţi-vă că pinul de date este conectat la pinul 4, iar rezistenţa de ~4,7KΩ - 10KΩ se conectează pe deasupra liniilor de date şi de 3,3V. Puteţi găsi o explicaţie mai detaliată a montării la: https://learn.adafruit.com/adafruits-raspberry-pi-lesson-11ds18b20-temperature-sensing/hardware Ü 5
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
Ü
Conectaţi difuzorul prin conectorul jack corespunzător.
Acum dispozitivul nostru este gata să primească programe. Clonaţi proiectul nostru temp-to-speech pe maşina dvs. locală. $ git clone https://github.com/resin-projects/temp2speech.git Înainte de a transmite acest cod către dispozitiv, haideţi să aruncăm o privire rapidă asupra sa. Este un proiect simplu cu 3 fişiere. temp_to_speech.py citeşte temperatura şi o trimite ca şir de caractere către string to speech.sh. Acest script trimite şirul de caractere către serverul Google text-tospeech care returnează un fişier audio şi apoi îl rulează cu mplayer. Dockerfile spune resin.io cum să construiţi imaginea, ce elemente trebuie instalate şi ce să execute când codul se află pe dispozitivul dvs. În cazul în care nu aţi mai utilizat până astăzi un Dockerfile, să discutăm un minut despre acesta. Un Dockerfile este un set de instrucţiuni utilizate de motorul resin.io pentru a construi un container pentru a rula pe dispozitivul dvs. FROM resin/rpi-raspbian:jessie-2015-01-15 Linia de mai sus transmite către resin.io să construiască un container cu jessie ca sistem de operare. Dar puteţi selecta dintr-o varietate de versiuni Raspbian din registrul docker al resin.io. Dacă doriţi mai multe informaţii asupra acestui aspect puteţi accesa: http://en.wikipedia.org/wiki/Operating-system-level_virtualization RUN apt-get update && apt-get install -y python python-dev python-pip mplayer RUN pip install RPi.Gpio w1thermsensor Comanda RUN este executată pe serverul construit al resin.io. Am instalat câteva elemente necesare pentru acest proiect. ADD . /app Această instrucţiune adaugă baza codului nostru curent (dockerfile + temp_to_speech.py + speech.sh) într-un director numit app. Este o bună practică să nu aruncaţi proiectul în rădăcina containerului nostru. CMD ["python", "/app/temp_to_speech.py"] CMD rulează numai pe dispozitiv odată ce containerul a început să 6
ruleze. El spune pur şi simplu containerului să ruleze temp_to_speech.py. Acum că aţi înţeles cum construieşte resin.io containerul dvs. putem trece la transfer! Pentru început veţi avea nevoie să asociaţi depozitul nostru local cu depozitul de la distanţă necesar aplicaţiei. Asiguraţi-vă că sunteţi în directorul proiectului. $ cd resin-temp-to-speech $ git remote add resin git@git.resin.io:username/temptospeech.git Acum este o simplă problemă de transfer a programului către Pi. $ git push resin master Această comandă trimite programul către serverul resin.io, unde este construit containerul, compilat programul şi descărcat pentru a rula pe arhitectura Pi. Puteţi vizualiza progresul descărcării de pe panou după un transfer de succes. Odată ce programul a fost descărcat pe dispozitivul dvs. şi containerul a pornit trebuie apăsat butonul! Dacă vă gândiţi la conversia între Celsius şi Fahrenheit, suntem acoperiţi – se poate face o configurare utilizând funcţia de variabile de mediu a resin.io, care vă permite să operaţi cu variabile de mediu pe panoul dvs. Pentru a specifica unitatea preferată, navigaţi printre variabilele de mediu ale aplicaţiei şi adăugaţi una cu o cheie a unităţii, apoi introduceţi unitatea dorită ca valoare (Celsius, Fahrenheit sau Kelvin). Containerul va porni acum cu unitatea de măsură preferată.
În temp_to_speech.py noi primim această variabilă de mediu şi o stabilim ca “unitate” variabilă. unit = os.getenv('UNIT', 'celsius') os.getenv acceptă două argumente: primul este cheia variabilei pe care aţi dat-o, iar al doilea este o valoare în caz că prima nu este atribuită, sau dacă nu există. În cazul nostru rezerva este Celsius.
Aurocon Compec vă propune Raspberry Pi 2 Modelul B pentru utilizare, deoarece oferă o mai mare flexibilitate pentru dumneavoastră, astfel fiind mult mai util pentru proiecte de tip prototip și proiecte integrate, care necesită un consum redus de energie. Raspberry Pi 2 se poate comanda acum online de pe site-ul http://ro.rsdelivers.com/. De asemenea, trebuie să aveţi în vedere că va trebui să instalaţi şi noul sistem de operare Raspbian dedicat pentru procesoarele din seria ARMv7. Precizăm faptul că și modelele anterioare sunt livrabile, Raspberry Pi A + (Nr. stoc RS: 833-2699), Raspberry Pi 1 Model B (Nr. Stoc RS: 756-8308) și B+ (Nr. Stoc RS 811-1284) și le puteți comanda online de pe site-ul http://ro.rsdelivers.com/ Autor: Bogdan Grămescu Aurocon COMPEC SRL www.compec.ro
CONCURS MICROCHIP
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
Câştigaţi un Starter Kit PIC32 Bluetooth Microchip împreună cu revista Electronica Azi-HOBBY oferă cititorilor şansa de a câştiga kit-ul PIC32 Bluetooth (DM320018)! Kit-ul PIC32 Bluetooth (DM320018) este o platformă de dezvoltare Bluetooth ieftină ce conţine microcontrolerul PIC32MX270F256D. Acest kit oferă interfaţă HCI-based Bluetooth radio, pushbutoane, LED Cree multi-color high-output, LED-uri standard cu o singură culoare, accelerometru, senzor de temperatură şi GPIO pentru o dezvoltare rapidă de SPP (Bluetooth Serial Port Profile), USB şi aplicaţii de uz general. Starter kit-ul PIC32 Bluetooth oferă o metodă ieftină pentru dezvoltarea şi testarea transferurilor de date Bluetooth cu dispozitivele PIC32. Starter kit-ul dispune de Bluetooth Radio, o combinaţie de accelerometru 3-D şi senzor de temperatură, 16Mb SPI Flash, un depanator integrat, cinci butoane utilizator, precum şi interfeţe USB (Dispozitiv şi Gazdă), I2S, I2C şi UART. Pentru a putea să demaraţi dezvoltarea, starter kit-ul oferă o aplicaţie Android (App), Demo cod şi stivă gratuită Bluetooth Serial Port Profile. Microcontrolerul PIC32 de pe starter kit execută demo codul şi programul din stiva Microchip Bluetooth SPP pentru a efectua transmisii de date full-duplex prin link-ul Bluetooth, la final rezultând: • Mixarea culorii cu ajutorul LED-ului multi-color cu ieşire înaltă de la Cree • Afişarea temperaturii Pentru a avea şansa de a câştiga unul din cele două starter kit-uri PIC32 Bluetooth de la Microchip, accesaţi pagina de internet www.microchip-comps.com/ehobby-pic32bluetooth şi introduceţi datele voastre de contact în formularul de înscriere online. Termen limită de înscriere la concurs: 01 Septembrie 2015. Câştigătorul va fi anunţat în Electronica Azi - Hobby nr. 4, ediţia din luna Septembrie.
Câştigaţi cu Electronica Azi Hobby Trimiteţi la redacţie proiectul unei aplicaţii practice şi aveţi şansa de a câştiga un sistem de evaluare şi dezvoltare “ENERGY-HARVEST-RD” de la Silicon Labs. Articolul propus spre publicare trebuie să conţină următoarele elemente: • Introducere (~ 50 cuvinte) • Conţinut (~ 1000 cuvinte) • Poză autor şi pentru aplicaţia propusă • Diagrame (schemă electronică, detalii, circuit PCB).
7
VERTEX 3D PRINTER Acum, la Conex Electronic!
Printing Print technology: Fused Filament Fabrication (FFF) Layer resolution: standard: 0.1 mm (max.: 0.2 mm - min.: 0.05 mm) Build plate: 215 × 240 mm (8.46" × 9.45") Build volume: 180× 200 × 190 mm (7" × 7.8" × 7.5") Print speed: 30 mm/s - 120 mm/s Travel speed: 30 mm/s - 300 mm/s Build plate surface: Removable layer of BuildTak™ (consumable; also sold separately) Filament diameter: 1.75 mm (accepts all filament spools with a mounting hole = 53 mm). Open filament policy. Prints: PLA, ABS Testing with other materials in progress. Nozzle 1&2 diameter: 0.35mm One nozzle supplied. Second nozzle optional.
Distance between nozzles: 23.7 mm Maximum nozzle operating temperature: 270 °C Software Firmware: Modified Open Source Marlin 3D Printer Firmware - user upgradable Software: Repetier - CuraEngine - Slic3r (RepRap compatible) Hardware Dimensions: X Y Z 360 - 380 - 395 mm (14" × 15" × 15.5") (without filament spools) Frame: Polycarbonate panels and fibre reinforced molded ABS parts Electrical Communication: USB 2.0 or SD card Controller board: AVR ATmega2560 based Dual head and heated bed capable Display: 4 x 20 char. blue LCD with white backlight AC input: 100 - 240 VAC 50-60Hz 150W max.
Conex Electronic s.r.l. Tel.: 021 242.22.06 I Fax: 021 242.09.79 I office@conexelectronic.ro I www.conexelectronic.ro
8
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
Banana-Pi Mulţi consideră Banana-Pi o clonă a Raspberry-Pi. Asemănarea dintre denumiri şi aspectul plăcilor sugerează, fără îndoială, o asemenea comparaţie. Însă pentru cei care cunosc mai în detaliu cele două proiecte, sunt evidente foarte multe diferenţe. De fapt, prima versiune a Raspberry-Pi este surclasată din toate punctele de vedere de Banana-Pi. În funcţie de benchmark-urile folosite, procesorul A20 din Banana-Pi oferă o eficienţă chiar de două ori mai mare decât Raspberry-Pi. Folosind Banana-Pi ca mini-computer, diferenţa poate fi sesizată imediat. Aplicaţiile pornesc mult mai repede, iar datorită celor două nuclee, chiar atunci când sistemul este ocupat, interfaţa răspunde în continuare în mod eficient la acţiunile utilizatorului. Banana-Pi este cu puţin mai mare decât un card de credit, adică faţă de dimensiunile Raspberry-Pi. Din păcate, deşi diferenţa nu este mare, acest lucru face imposibilă utilizarea, de exemplu, a carcaselor destinate Raspberry. În plus, diferă dispunerea orificiilor de fixare şi a soclurilor. În primul moment, plăcile arată asemănător, dar diferă mult la detalii. Fără îndoială, diferenţa cel mai uşor de observat este procesorul. Banana-Pi este dotat cu un circuit cu două nuclee din gama Cortex-A7. Abia Raspberry 2 se poate Date tehnice Procesor Procesor grafic Memorie Interfeţe memorie Reţea Ieşiri video Ieşiri audio USB Butoane Interfeţe Soclu extensii Wymiary Greutate 10
compara cu circuitul A20. Mărimea memoriei instalate, RAM – 1GB, pare foarte potrivită pentru circuitul cu două nuclee. Aici merită amintită interfaţa SATA, în special faptul că, folosind un disc SSD, se poate obţine o eficienţă fenomenală a operaţiilor efectuate pe disc.
În mod asemănător Raspberry-Pi, placa are ieşire HDMI şi Composite. Folosirea primei ieşiri oferă posibilitatea de a obţine o imagine Full HD, adică la o rezoluţie de 1920 × 1080. În plus, Banana-Pi a fost echipată cu multe îmbunătăţiri micuţe, dar uneori foarte utile:
Conform informaţiilor furnizate de pagina bananaNAS, transferul de pe placa de reţea poate atinge 40MB/s. În afară de discul rapid, acesta este şi meritul indubitabil al interfeţei de reţea, Ethernet cu viteza de 1Gb/s.
1 buton reset – un element a cărui lipsă se simte foarte mult în cazul Raspberry-Pi 2 microfon 3 port USB OTG 4 receptor infraroşu (IR) 5 disponibilitatea afişajelor LCD dedicate
Allwinner A20 (ARM Cortex-A7, 2x 1.0GHz) ARM Mail400MP2, conform cu OpenGL ES 2.0/1.1 1GB DDR3 SD/MMC, max. 64GB, SATA max. 2TB 10/100/1000 Ethernet HDMI, Composite, LVDS/RGB HDMI, 3.5 mm jack 2 × USB 2.0, 1 × USB OTG Reset, Power Receptor infraroşu, microfon Compatibile cu Raspberry-Pi 92 mm × 60 mm 48g
BANANA-PI
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
Exemple de utilizări Mini-computer Placa Banana-Pi este, de fapt, un minicomputer complet. Este suficient să conectaţi perifericele corespunzătoare şi puteţi folosi sistemul ca pe un computer obişnuit, însă sigur că nu trebuie să vă aşteptaţi la performanţele calculatoarelor de tip desktop. Un kit minim necesar pentru construirea unui mini-computer va cuprinde: • alimentator USB, 5V, 2A • card SD, minimum 4GB • monitor cu intrare HDMI şi cabluri • mouse şi tastatură • cablu ethernet Ca dotări suplimentare, merită să aveţi în vedere: • card SD cu capacitatea de cel puţin 8GB şi clasa 10 • carcasă pentru Banana-PI • hub usb cu alimentare activă • card WiFi
Primul pas este furnizarea unei alimentări corespunzătoare. Banana-Pi este alimentată printr-un port microUSB, deoarece consumul de curent este totuşi destul de mare şi este necesar un alimentator cu un randament de curent de cel puţin 2A. În acest scop, poate fi folosit un încărcător de la un telefon sau tabletă, bineînţeles dacă asigură parametrii corespunzători.
Pentru punerea în funcţiune a plăcii este necesar şi un card SD, pe acesta urmând să se afle imaginea completă a sistemului de operare (Linux sau Android). Capacitatea minimă a cardului este de 4GB, care sunt suficienţi pentru pornirea sistemului şi vizualizarea posibilităţilor acestuia. Însă spaţiul liber nu va fi prea mare şi poate fi epuizat rapid. Cea mai bună soluţie este un card cu o capacitate de minimum 8GB. Următorul parametru important căruia trebuie să îi acordaţi atenţie la cumpărare este viteza de transfer a cardului. Aceasta este definită cu ajutorul clasei – sunt disponibile carduri din clasa 4, care vor putea funcţiona, însă sistemul va porni şi va reacţiona mai lent faţă de un card din clasa 10. Computerul trebuie dotat şi cu un monitor. În acest scop poate fi utilizat un televizor LCD sau un monitor obişnuit de calculator, cel mai bine echipat cu un conector HDMI. Controlul digital asigură o înaltă calitate a imaginii. Banana-Pi poate genera o imagine FullHD, aşa că ne putem bucura de o imagine la rezoluţie 1920 × 1080. Există şi posibilitatea de conectare a unui afişaj printr-un conector analog, însă în acest caz calitatea imaginii va fi una mai slabă. În cazul în care monitorul nu este prevăzut cu un conector HDMI, rămâne opţiunea folosirii unui adaptor din HDMI în DVI sau VGA. Un adaptor HDMI-DVI este relativ ieftin şi asigură o bună calitate a imaginii.
Mai rămâne conectarea tastaturii şi a mouse-ului. Pot fi folosite dispozitive standard, cu condiţia să fie prevăzute cu interfaţă USB. Utilizarea unui mouse şi a unei tastaturi cu interfaţă radio oferă două beneficii, în primul rând creşte confortul utilizatorului, în al doilea rând ambele dispozitive pot fi conectate la un singur soclu USB. Unul dintre cele mai importante accesorii opţionale este carcasa. Mini-computerul va putea fi folosit şi fără aceasta, dar prima greşeală de manevrare poate Ü fi, pentru placă, ultima. 11
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
Ü
Din fericire, sunt disponibile carcase dedicate pentru Banana-Pi (trebuie amintit faptul că carcasele de la Raspberry-Pi nu se potrivesc).
Pentru pregătirea cardului SD, este suficient să descărcaţi fişierul corespunzător şi să salvaţi imaginea pe cardul SD
Banana-Pi este prevăzută cu 2 porturi USB de tip host şi unul OTG. După conectarea tastaturii şi mouse-ului, este posibil să constatăm că nu mai avem porturi libere. În plus, consumul de curent al dispozitivelor periferice poate dăuna stabilităţii de funcţionare a întregului sistem. Soluţia la aceste probleme este folosirea unui hub usb extern. Este şi mai bine dacă acesta este un hub cu alimentare proprie, în acest caz chiar şi după conectarea unei mini-camere video sau a unui disc suplimentar, computerul îşi va menţine stabilitatea de funcţionare.
Server de fişiere Banana-Pi se distinge prin interfaţa SATA şi conexiunea rapidă Ethernet (1Gb/s). În combinaţie cu procesorul eficient şi care consumă puţină energie, oferă astfel o platformă ideală pentru un server de fişiere personal. Vă puteţi construi singuri un server corespunzător, de la bază sau folosind proiectul gata realizat denumit banaNAS. Serverul de fişiere este bazat pe distribuţia OpenMediaVault. Pe pagina proiectului pot fi găsite informaţii despre construirea serverului şi proiectul de carcasă (de printat cu o imprimantă 3D). BanaNAS foloseşte un disc rapid SSD ca suport de date, astfel încât este posibilă obţinerea unui transfer chiar de 40MB/s (după cum susţin autorii proiectului). Un avantaj suplimentar al discului SSD este consumul mai mic de curent decât în cazul discurilor tradiţionale. Dacă însă cineva va dori să folosească un disc tradiţional cu suport magnetic, sigur că acest lucru este posibil, dar necesită o alimentare suplimentară pentru disc. Serverul de fişiere oferă posibilităţi enorme. În afară de stocarea de fişiere, permite folosirea torentelor, punerea în funcţiune a unui server de imprimare sau versionarea de fişiere (Git).
După ce hardware-ul este complet, putem trece la pregătirea cardului cu imaginea sistemului. În prezent, sunt disponibile următoarele imagini de sisteme: • Lubuntu – distribuţie Ubuntu adaptată computerelor ARM • Raspbian – linux optimizat pentru Raspberry-Pi • Android – versiunea beta a sistemului cunoscut de pe smartphone-uri şi tablete • Bananian – distribuţie minimală (implicit doar modul text) • Open MediaVault – server de fişiere de reţea • LeMedia – centru multimedia, bazat pe XBMC • Berryboot • OpenSuse • Fedora • Gentoo • OpenWrt • ArchLinux 12
Tableta proprie Procesorul A20 este folosit în tabletele pe care este instalat sistemul Android. Cu ajutorul Banana-Pi poate fi realizată versiunea proprie a unui asemenea dispozitiv. Imaginea unui card SD cu Android 4.4 este disponibilă pentru descărcare de pe internet. De asemenea, poate fi pregătită propria compilaţie Android. Există şi posibilitatea conectării afişajului LCD direct la placa Banana-Pi. LeMaker a pregătit modulele corespunzătoare şi este posibilă construirea unui prototip de tabletă propriu, pe deplin funcţional. Afişajele pot fi dotate cu senzori tactili. De asemenea, placa poate fi conectată prin HDMI la televizor şi putem avea o tabletă cu un afişaj de 50” (desigur, în măsura în care chiar avem un asemenea televizor). Dacă nu vrem să pierdem timpul cu proiectarea alimentării, există posibilitatea achiziţionării unui acumulator cu ieşire USB. Mini-consolă pentru jocuri sau centru multimedia în autoturism Ieşirea analogică pentru imagine asigură, într-adevăr, o calitate cu mult mai slabă a imaginii decât versiunea digitală, dar poate fi folosită pentru construirea (ieftină) a propriei console de jocuri sau a unui centru multimedia mobil. Pe internet sunt disponibile ecrane ieftine destinate camerelor video pentru mers înapoi, care pot fi conectate direct la placa Banana-Pi şi pot servi ideilor proprii. Este disponibilă distribuţia RetroPie, destinată Raspberry-Pi, dar acelaşi rezultat poate fi obţinut şi cu ajutorul Banana-Pi. Vom avea atunci o consolă portabilă cu posibilitatea de activare a unui emulator de computere pe 8 sau 16 bit. Dacă avem un ecran destinat instalării în autoturism, putem, de asemenea, să realizăm propriul player pentru filme,
BANANA-PI navigaţie sau mp3 player. Sigur că putem să conectăm şi o cameră video pentru mers înapoi sau o alta, foarte populară în ultima vreme, pentru înregistrarea situaţiilor rutiere. Există chiar şi posibilitatea construirii propriului etilometru (deşi precizia acestuia nu trebuie să ne dea dreptul de a ne aşeza la volan după ce am luat ceva “la bord”). Platformă educativă Proiectul Raspberry-Pi a apărut pentru învăţarea programării. Un asemenea scop poate fi îndeplinit şi de Banana-Pi, însă din cauza numărului cu mult mai mic de cursuri pentru începători, această placă este mai degrabă una pentru utilizatori avansaţi. Cu toate acestea, sunt disponibile biblioteci pentru Python şi C, cu ajutorul cărora pot fi comandate circuite periferice şi pot fi îmbunătăţite abilităţile de programator. Platformă de dezvoltare Poate cel mai mare potenţial al Banana-Pi este cel de platformă pentru crearea de software. Are câteva avantaje mari în comparaţie cu Raspberry-Pi. Primul plus este disponibilitatea documentaţiei. Ce-i drept, sunt cu mult mai puţine tutoriale pentru începători, dar pentru programatorii avansaţi pot fi găsite multe
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
informaţii care nu sunt disponibile pentru o platformă bazată pe circuite Broadcom. Pagina dedicată procesoarelor Allwinner are adresa: http://sunxi.org/Main_Page, iar pe aceasta pot fi găsite informaţii despre procesoare, coduri sursă pentru bootloader şi kernel de linux. Un alt plus este folosirea unui bootloader standard (U-Boot), în locul bootloaderelor complicate şi dedicate (utilizarea GPU pentru pornirea sistemului în cazul RaspberryPi). Având documentaţia procesorului, codul bootloaderului şi sursele kernelului de linux pot fi scrise propriile drivere şi pot fi modificate cele existente pentru cerinţele proprii. Este un mare avantaj pentru programatorii începători. Un alt avantaj este potrivirea terminalelor cu Raspberry-Pi. În acest mod, un mare număr de module proiectate pentru Raspberry-Pi pot funcţiona cu Banana-Pi. În oferta firmei TME vom găsi un adaptor şi module pentru multe circuite periferice, precum: • • • • • •
adaptor Banana-Pi, module Microe modul GPS accelerometru giroscop compas modul Bluetooth
• • • •
senzor de presiune receptor RFID driver pentru motor pas cu pas şi multe altele.
Cu ajutorul acestor module se poate trece chiar imediat la scrierea de programe sau drivere pentru periferice dedicate. Centru multimedia Banana-Pi are mari posibilităţi multimedia: conectarea unui hard disk, control cu ajutorul unei telecomenzi în infraroşu, funcţionare cu un televizor (prin HDMI) şi procesor grafic cu accelerare hardware (Mali400). În prezent, este disponibilă versiunea demo a distribuţiei LeMedia bazate pe XBMC (http://kodi.tv). Din păcate, versiunea nu este pe deplin funcţională şi, deşi placa are enorme posibilităţi hardware, lipsa unui software nu ne permite deocamdată să beneficiem în întregime de acestea. Pe de altă parte, aceasta este o ocazie ideală pentru dezvoltatori să se alăture proiectului, să scrie şi să îşi publice propriile drivere. www.tme.ro
13
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
Proiect de captare a energiei solare pentru alimentarea unui MSP430 cu notificare 2,4GHz În mod simplu, recoltarea energiei este abilitatea de a lua o formă de energie şi de a o transforma în electricitate ce poate fi stocată într-o baterie sau într-un super-condensator (denumit şi ‘supercap’ sau ‘ultracap’). Aplicaţiile solare sunt de la fotovoltaice de înaltă tensiune cu montare pe acoperiş, până la instalaţii solare mici pentru comandă de la distanţă a unor aplicaţii de joasă putere. Mai multă atenţie este dată energiei solare ca alternativă la petrol, ceea ce este o aplicaţie la scară largă, dar energia solară poate fi captată la scară mică pentru a oferi o sursă de energie auto-sustenabilă pentru instalaţii cu comandă de la distanţă. Panourile solare încarcă bateriile pe timpul zilei şi unitatea de monitorizare de la distanţă poate transmite un semnal sau chiar poate înregistra date local. Dispozitivele de captare a energiei de toate felurile sunt utilizate pentru a alimenta multe aplicaţii de joasă energie, incluzând încărcătoare de baterii pentru dispozitive mobile, electronice portabile şi reţele de senzori cu comandă de la distanţă. Microcontrolerul MSP430 este un MCU ideal pentru comanda de la distanţă pentru că este incredibil de eficient energetic. Autor:
Michael Parks P.E. la Mouser Electronics
Figura 1: Lista de materiale în format vizual. 14
CAPTAREA ENERGIEI SOLARE Pentru a evidenţia utilizarea energiei solare într-o aplicaţie cu comandă de la distanţă, vom utiliza un microcontroler Texas Instruments (TI) MSP430 într-o aplicaţie wireless ce v-ar putea tenta să o faceţi personal. În mod specific vom testa o platformă de colectare a energiei EH (Energy Harvesting) pentru a alimenta un sistem de cutie poştală cu comandă de la distanţă cu notificare. Cutia poştală este utilizată în lipsa unei cerinţe profesionale reale, dar aceeaşi schemă poate fi utilizată pentru transmisia la distanţă a unei acţiuni complete. Odată ce aveţi proiectul circuitului de bază şi programarea unui microcontroler, s-ar putea să doriţi să începeţi explorarea diferitelor arhitecturi de microcontroler şi platforme pentru a vedea ce este posibil. Producătorii de cipuri vând plăci de dezvoltare sau kit-uri pentru a oferi o cale inginerilor să dezvolte şi testeze rapid o aplicaţie fără eforturile de a dezvolta o placă particulară. De aceea inginerii proiectanţi le utilizează frecvent, iar producătorii vor găsi aceste “dev kits” ca o
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
oportunitate fantastică de a avansa în profunzimile proiectării electronice. Există în lume numeroase platforme de microcontrolere, şi unele pot fi mai bine potrivite pentru aplicaţii concrete decât venerabilul Arduino. Aici, prezentăm un proiect utilizând foarte cunoscutul microcontroler de joasă putere MSP430 de la Texas Instruments (TI) pentru o aplicaţie pe care aţi putea fi tentaţi să o faceţi şi dvs. Aici, o platformă solară EH (Energy Harvesting) alimentează un sistem de notificare la distanţă. Acest articol cu instrucţiuni complete, listă de materiale necesare, produse pre-selectate într-un proiect, cod sursă şi multe altele, vă este oferit la pagina web www.mouser.com/applications/solar-energy -harvesting
corespondenţa este livrată şi spune asta unui computer aflat în interior. Computerul comandă apoi un servo-motor care mută un indicator fizic al stării livrării corespondenţei.
Scurtă descriere a proiectului: MSP430 alimentat prin panou solar Deşi acest aranjament poate fi utilizat pentru orice notificare similară la distanţă, exemplul dat detectează atunci când
Informaţii cu privire la proiect şi anume toate componentele electronice necesare (BOM) pot fi găsite la adresa de internet: www.mouser.com/ProjectManager/Project Detail.aspx?AccessID=5da7159fe5. Ü
Proiectul constă din două module: primul este un panou solar (aflat evident în exterior) pentru alimentarea MSP430, un transceiver RF şi un circuit de detecţie a luminii ambientale montat în interiorul cutiei poştale. Al doilea modul (aflat în interior) este conectat la o cheie hardware (dongle) de depanare USB, un computer pe care rulează programul stabilit şi placa de dezvoltare MSP430 LaunchPad ce comandă servomotorul care mişcă braţul indicator de stare.
Figura 2: Întreg sistemul aşa cu este el conectat.
15
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
Ü
Accesând acest link puteţi primi un coş de cumpărături la mouser.com cu toate componentele din lista de materiale, cantităţi şi preţuri. Legăturile din proiect create în cadrul coşului mouser.com sunt excelente pentru partajarea proiectelor cu încrederea că toate componentele sunt corecte fără a necesita căutări speciale. Lista de materiale (BOM) conţine: Cantitate
Kit-ul “–SEH” integrează numeroase funcţii pe care altfel ar fi trebuit să le proiectăm de la nivel de schemă, inclusiv panoul solar, o pereche de baterii reîncărcabile film subţire, circuite de protecţie, un MCU TI MSP430F2274 şi un transceiver wireless CC2500 2.4-GHz. Am avut de asemenea nevoie să născocim un circuit simplu de divizare a tensiunii pentru a-l utiliza cu senzorul de lumină ambientală. De vreme
Cod produs Mouser
Descriere
Loc utilizare
1
595-EZ430-RF2500-SEH
Modul de captare a energiei solare TI cu placă de panou solar (2,25 inch × 2,25 inch), MSP430 MCU, două plăci ţintă wireless şi canal de aplicaţie USB
La distanţă
1
595-LP2950-33LPRE3
TI – stabilizator LDO 3,3V
La distanţă
1
782-TEPT4400
Senzor de lumină ambientală de la Vishay
La distanţă
1
71-CCF55221RFKE36
Rezistenţă Vishay 220Ω
La distanţă
1
652-3362P-1-103LF
Rezistenţă semi-reglabilă Bourns 10KΩ
La distanţă
4
512-FOD852300
Optocuplor Fairchild
Înăuntru
1
595-MSP-EXP430FR5969
TI LaunchPad kit de dezvoltare pentru experimentare
Înăuntru
1
563-BB-32620
Carcasă Bud Industries Boardganizer
Înăuntru
1
653-A3DT-500R
Buton rotativ cu apăsare de la Omron
Înăuntru
1
71-CCF0710K0GKE36
Rezistenţă Vishay 10KΩ
Înăuntru
1
871-B41041A6104M
Condensator EPCOS 0.1μF
Înăuntru
1
647-UVR1H100MDD1TA
Condensator Nichicon 10 μF
Înăuntru
1
782-T010051
Modul servo Arduino
Înăuntru
1
517-9611256404AR
Conector cu pini 3M – pas 2,54mm
Înăuntru
1
563-BB-32621
Placă de testare fără lipire de la 3,2” × 2,08” × 0,33"
Înăuntru
2
932-MIKROE-511
Fire de conectare Mamă-Mamă tip jumper
Ambele locuri
2
932-MIKROE-513
Fire de conectare Tată-Tată tip jumper
Ambele locuri
Componentele externe de captare la distanţă În mediul exterior folosim unealta de dezvoltare pentru captarea energiei solare eZ430-RF2500-SEH. Din descrierea ce însoţeşte produsul ştim următoarele: Modulul de captare a energiei solare eZ430-RF2500-SEH include un panou solar de înaltă eficienţă ce poate opera de asemenea şi în mediu interior cu lumină fluorescentă de joasă intensitate, pentru a oferi suficientă energie unei aplicaţii cu senzori wireless, fără baterii suplimentare. Acest kit are de asemenea intrări pentru captatori externi de energie şi stochează energia suplimentară într-o pereche de baterii reîncărcabile film subţire, ce seamănă cu nişte cipuri CI mari. eZ430-RF2500 este un kit în kit; acesta este inclus în kit-ul de captare a energiei solare eZ430-RF2500-SEH şi este utilizat pentru a comanda o aplicaţie de captare a energiei la distanţă, aplicaţie pe care am montat-o afară cu panoul solar. Dispozitivul inclus eZ43016
RF2500 este în sine o unealtă de dezvoltare completă, wireless, bazată pe USB, dezvoltată în jurul microcontrolerului MSP430 (unul dintre membrii familiei MSP430F22x4, unde “x” este un număr ce poate varia). Acesta include o interfaţă de depanare pentru MSP430, ce permite depanare în sistem în timp real, programare, dar şi interfaţă de transfer a datelor către un PC de la un sistem wireless.
Pentru colectarea unor date suplimentare poate fi integrat şi un senzor extern, deşi în cazul acestui exemplu nu a fost folosită această capabilitate. Kit-ul de dezvoltare eZ430-RF2500 include: • Un emulator alimentat prin USB pentru programarea şi depanarea unei aplicaţii în sistem • Două plăci wireless ţintă 2,4-GHz cu MCU MSP430F de ultra joasă putere • O placă de extensie baterii şi baterii AAA • 1 buton cu apăsare • 2 LED-uri • Placa wireless ţintă eZ430-RF2500T • TI CC2500 integrat – un transceiver multicanal, 2.4 GHz, bandă ISM, de joasă putere • Carcasă pentru stick USB • Exemplu de proiect cu reţea de senzori wireless ce măsoară temperatura, tensiunea şi puterea semnalului • IAR Kickstart şi Code Compose Essentials Core Edition, ce includ un assembler, linker, depanator la nivel de sursă şi un compilator C limitat • Documentaţie completă pe CD-ROM
ce dorim să detectăm prezenţa sau absenţa luminii în interiorul cutiei poştale, divizorul de tensiune va fi suficient. Dacă doriţi o rezoluţie mai bună, există circuite mult mai complexe ce utilizează senzorul de lumină ambientală ca un tranzistor NPN (baza fiind sensibilă la lumină şi reglând emitorul pentru a colecta curentul), dar acest lucru reprezintă un alt subiect. Vom folosi o rezistenţă mică de 220Ω în serie cu un potenţiometru de 10kΩ ca jumătate a divizorului de tensiune şi senzorul de lumină ambientală ca cealaltă jumătate. Potenţiometrul ne va permite să reglăm manual sensibilitatea senzorului de lumină ambientală odată ce este instalat fără a trebui să rescriem firmware dacă ne schimbăm locul sau dacă se schimbă condiţiile de iluminare. O modificare suplimentară pe care trebuie să o facem plăcii MSP430 “nodul de la distanţă” (placa de afară ce gestionează captarea energiei solare) este de a lipi două linii de pini pentru a simplifica accesul la pinii MCU şi pentru a permite reconectarea dacă placa va fi folosită într-un alt proiect viitor.
CAPTAREA ENERGIEI SOLARE distanţă (cel de afară cu panoul solar) şi care conţine firmware-ul de hub (din interior, de pe kit-ul LaunchPad ce controlează motorul servo pentru steagul de semnalizare fizic).
Figura 3: Circuitul exterior din cutia poştală cu senzor de lumină ambientală cu potenţiomatru de reglare şi Texas Instruments MSP430FR5969. Placa de dezvoltare pentru captarea energiei solare oferă circuite de control care permit panourilor solare să alimenteze microcontrolerul MSP430 dacă soarele este suficient de strălucitor. Bateriile din kit-ul solar TI au viteze de descărcare extrem de reduse, făcându-le ideale pentru aplicaţii de captare a energiei. Odată ce soarele scade sub un anumit nivel adecvat, kit-ul va începe automat să alimenteze MSP430 de la baterii. Aceasta este o funcţie integrată extrem de convenabilă şi va furniza suficientă energie pentru aproximativ 400 de comunicaţii RF înainte ca bateriile să se descarce. Optimizând intervalul de timp între comunicaţii, puteţi obţine un interval generos de utilizare a acestei plăci fără a avea suficientă lumină solară. Acest lucru este extrem de important în multe aplicaţii de detecţie la distanţă. Programarea MSP430 este destul de simplă pentru inginerii care au lucrat utilizând alte platforme de microcontrolere. MCU-ul din interior, kit-ul de dezvoltare LaunchPad (MSP EXP430FR5969), vine cu un CD conţinând programul sursă şi aplicaţii. Cu toate acestea vă puteţi asigura că aţi instalat cea mai recentă versiune a mediului de dezvoltare integrat (IDE) TI numit Code Composer Studio (care este la versiunea 6.0.1 la momentul scrierii acestui articol), şi că utilizaţi cel mai recent firmware vizitând www.ti.com. Pentru cei care vin dinspre medii de dezvoltare relativ simple precum mediul de dezvoltare oficial Arduino IDE, nu trebuie să fie îngrijoraţi de mediul de dezvoltare integrat mai complex. Tutorialul care însoţeşte eZ430-RF2500 este bine scris şi vă va arăta tot ceea ce trebuie să ştiţi pentru a optimiza firmware-ul preîncărcat. Pentru încărcarea unui nou firmware veţi utiliza cheia hardware USB de depanare inclusă. Doar trebuie fiţi siguri că vă reamintiţi care MSP430 este nodul de la
Figura 4: Niciun software nu poate rula fără hardware, astfel că această schemă de circuit arată MSP430 LaunchPad cu conexiuni la servomotor şi butonul care reiniţializează steagul, odată ce corespondenţa a fost preluată. Noi vom face optimizări minime asupra firmware-ului implicit ce vine preîncărcat pe nodul MSP430 de la distanţă. În mod specific, vom optimiza porţiunea de program ce citeşte tensiunea de la baterie astfel încât va citi tensiunea pe un pin de intrare analogic extern, în cazul nostru pe pinul analogic A0. Făcând apel la lista de materiale prezentate anterior, se observă că kit-ul solar vine cu un panou solar, un microcontroler MSP430 (“nodul de la distanţă”), şi două plăci ţintă wireless eZ430-RF2500T. Micile plăci eZ430-RF2500T transmit şi recepţionează semnale care anunţă prin parametrii MSP430 din interior despre expunerea cutiei poştale la lumină.
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
simplu. Dacă vă uitaţi la firmware-ul implicit instalat pe modulul MSP430 nod de la distanţă, va trebui schimbată linia de program evidenţiată în figura 6. După salvarea schimbării, putem acum încărca noul firmware pe MSP430 care gestionează panoul de captare a energiei solare (localizat fizic cu panoul de la căsuţa poştală) utilizând cheia hardware USB ca unealtă de programare. Apoi este doar o simplă problemă de prindere a senzorului de lumină ambientală (după cum se poate vedea în figura 3) şi conectarea plăcii ţintă MSP430 pe placa de captare a energiei (precum în figura 4). Prin înlăturarea jumperului JP8 se permite panoului solar să înceapă încărcarea pe placă. Trebuie verificat dacă LED-ul de pe placa MSP430 nod de la distanţă începe să clipească atunci când este ataşat la panoul solar. Un lucru important de remarcat este că, dacă se doreşte oprirea alimentării proiectului şi depozitarea plăcii de captare a energiei (EH), trebuie să vă asiguraţi de înlocuirea jumperului J8. În acest punct, dacă doriţi instalarea permanentă a aplicaţiei, trebuie să apelaţi la o carcasă care să asigure rezistenţă la condiţiile meteorologice şi să utilizaţi un material termocontractabil sau un material de etanşare (poate ceva ca sugru – lipici care odată modelat seamănă cu un cauciuc) pentru a etanşa carcasa şi pentru a menţine ordonate cablurile exterioare. Când montaţi dispozitivul la o căsuţă poştală, reţineţi că dacă locuiţi în emisfera nordică este ideal să îndreptaţi panoul solar către sud pentru a maximiza expunerea solară pe toată durata anului.
Figura 5: Interfaţa de depanare USB eZ430-RF şi placa ţintă wireless caracterizată de transceiverul RF de joasă putere CC2500 2.4 GHz. Pinii plăcii ţintă eZ430-RF2500T arată că A0 de la nodul de la distanţă MSP430 este adus către pinul 3 de pe placa ţintă eZ430RF2500T. Acesta este unul dintre pinii externi care face parte din conectorii cu pini lipiţi mai devreme pentru acces mai
Pregătirea sistemului din interior Porţiunea din interior a sistemului nostru de notificare cu privire la livrarea corespondenţei vor necesita utilizarea unui computer cu Windows. Ü
17
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
Dacă nu puteţi avea disponibil un computer pentru proiectul de comandă de la distanţă, acest întreg proiect de captare a energiei poate fi construit utilizând doar microcontrolere, deşi utilizarea computerului vă permite crearea de noi funcţii pentru acest proiect, precum rularea unui script Python pentru a trimite un email cu privire la schimbarea stării. Porţiunea din interior constă din calculatorul anterior menţionat care va rula programul de procesare ce va asigura interfaţa cu două dispozitive externe: 1. MSP430 din interior ce rulează firmware-ul hub-ului şi care este ataşat la computer prin intermediul cheii hardware de depanare USB; 2. Placa de dezvoltare şi experimentare TI LaunchPad ce controlează servomotorul care ridică steagul în interiorul casei. Vom utiliza uneltele de limbaj Processing de tip open source pentru a dezvolta aplicaţia noastră într-un program numit “schiţă”. Am ales limbajul Processing pentru că atunci când sunteţi în faza de prototip, există puţine medii de dezvoltare la fel de uşoare ca Processing din punct de vedere al manipulării comunicaţiei seriale şi al creării unei interfeţe de bază cu utilizatorul (UI). Pentru a rezuma structura hardware internă, modulul MSP430 pe care rulează
firmware-ul se ataşează la computer cu o cheie hardware USB. Depanatorul va apărea pe computer ca un port COM. Reţineţi care port COM, deoarece vom utiliza această informaţie în programul Processing mai târziu. O altă componentă hardware care se va lega la computer este placa de dezvoltare şi experimentare TI LaunchPad. Aceasta ne va permite interfaţarea cu un servomotor ce va ridica steagul atunci când corespondenţa a fost livrată. Vom ataşa de asemenea un buton pentru a permite utilizatorului să reiniţializeze sistemul (şi să coboare steagul prin intermediul servo) după ce corespondenţa a fost preluată. Precum în cazul tuturor I/O digitale, nu uitaţi să includeţi o rezistenţă de ridicare sau de coborâre pentru a preveni o intrare incertă care să facă aplicaţia nesigură în cel mai bun caz, iar în cel mai rău caz să o facă defectă. Pseudocodul pentru programul în Processing constă din: 1. Citeşte pachetul de date seriale venind de la portul COM conectat la placa eZ430-RF2500T, care este conectat la depanatorul USB. 2. Analizează pachetul de date pentru a ignora pachetul de date de la hub şi pentru a lua în considerare doar datele de la nodul de la distanţă.
Figura 6: Reutilizarea programului demonstrativ ce vine deja instalat pe plăcile RF2500-SEH MSP430: linia evidenţiată mai sus este adaptată pentru firmware-ul nodului de la distanţă utilizând Code Composer Studio. Acesta se încarcă pe eZ430-RF2500T prin cheia hardware USB. 18
3. Analizează pachetul de date de la nodul de la distanţă pentru a căuta citirile de tensiune de la ADC. 4. Dacă tensiunea citită este mai mică de 4,5V, se consideră că s-a livrat corespondenţa. 5. Se trimite pachetul de date serial către LaunchPad informându-l astfel că s-a livrat corespondenţa şi să ridice steagul. LaunchPad-ul ce controlează servomotorul va fi programat utilizând mediul de programare Energia IDE în loc de Code Composer Studio, ce a fost utilizat anterior. Mediul de dezvoltare integrat arată similar cu Processing IDE şi ar trebui să facă tranziţia dintre cele două foarte uşor, şi ar trebui să gestioneze mult mai uşor problemele de comunicare. Firmware-ul va aştepta până la recepţionarea de la computer a unui cuvânt cheie; în acest caz steagul va fi un şir de caractere cu valoarea “MAIL”. Odată ce recepţionează cuvântul cheie el va roti servomotorul cu 90 de grade, ridicând steagul. Putem utiliza o bibliotecă sevo oferită pe site-ul Energia, care va face mult mai simplă comanda servomotorului, prin abstractizarea programului necesar pentru calculele factorului de umplere al semnalului PWM; ea reduce interacţiunea servo cu o simplă apelare a unei funcţii. Suplimentar, avem nevoie de o funcţie pentru a gestiona butonul de reiniţializare conectat la unul dintre pinii digitali de I/O al LaunchPad. În acest caz funcţia va comanda motorul pentru a coborî steagul şi pentru a permite sistemului să aştepte din nou pe serial cuvântul cheie “MAIL”. Concluzie Există un număr mare de platforme de microcontrolere (şi unelte software), iar utilizarea plăcii de dezvoltare Texas Instrument LaunchPad este o cale minunată de a începe lucrul. MSP430 are cerinţe de joasă putere extraordinare şi este ideal pentru aplicaţii de captare a energiei, unde cheia este eficienţa energetică. Fie că sunteţi un inginer experimentat sau un dezvoltator de week-end, învăţarea diferitelor platforme are o valoare incredibilă. Expunerea la o varietate de platforme permite o mai mare flexibilitate la analiza tuturor soluţiilor posibile în vederea rezolvării unei probleme specifice. Aici a fost prezentată o soluţie posibilă pentru un sistem de notificare la distanţă a primirii corespondenţei utilizând microcontrolerul TI MSP430. Cum îl veţi modifica pentru a se potrivi necesităţilor dvs.? Sau veţi proiecta o aplicaţie complet diferită?
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
Multimetru tip stilou, Mastech MS8211 Acest multimetru sub formă de stilou, cu detector integrat de tensiune în curent alternativ, este un instrument indispensabil pentru profesionişti, dar şi pentru pasionaţi. Datorită manevrării cu o singură mână, este deosebit de util în domeniul său. Intervale de măsurare: • Tensiune CC: 200mV/2V/20V/200V/600V (±0,7%) • Tensiune CA: 200 mV/2V/20V/200V (±0,8%)/600V(±1%) • Rezistenţă: 200Ω/2kΩ/20kΩ/200kΩ/2MΩ/20MΩ (±1%) • Selecţie manuală sau automată a domeniului de măsurare • Funcţie de închidere automată • Funcţie de Data Hold • Funcţie de Peak Hold (valoarea cea mai mare) • Testare diode şi buzzer de continuitate • Detector de tensiune AC Dimensiuni (L × l × h): 208 × 38 × 29mm. Livrare: multimetru, cabluri de testare, geantă de transport.
Tel.: 0256-201346 office@oboyle.ro www.oboyle.ro
Multimetru pentru componente SMD, Mastech MS8910 Multimetru pentru componente SMD Mastech MS8910, ideal pentru măsurarea rezistenţelor, condensatorilor şi diodelor SMD precum şi pentru test de continuitate. Poate detecta automat şi identifica componentele necunoscute, afişând valorile acestora pe ecran. Tel.: 0256-201346 • office@oboyle.ro • www.oboyle.ro 20
Caracteristici: • selectare manuală sau automată a intervalului de măsurare • detectarea automată a componentelor necunoscute • funcţie Data Hold • indicator de nivel scăzut al bateriei • rezistenţă: 300Ω / 3kΩ / 30kΩ / 300kΩ / 3MΩ • capacitate: 3nF / 30nF / 3μF / 30μF / 300μF / 3mF / 30mF • test diodă: 2,8V / 2mA • test de continuitate: notificare sonoră (până la 30Ω) Dimensiuni (L × l × h): 175 × 32 × 20 mm. Pachetul conţine: multimetru, acumulator, 2 vârfuri de rezervă, cutie de depozitare.
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
Detector de tensiune cu display UNI-T UT15C UT15C este un tester profesional de tensiune, potrivit pentru măsurarea tensiunii AC sau DC, pentru a determina direcţia de rotaţie sau pentru test de continuitate. Are LED-uri integrate pentru luminarea punctului de măsurare. Ideal pentru electricieni, tehnicieni service etc. Specificaţii: • Domeniu de măsurare: de la 12V la 690V; 50Hz la 400Hz • LED-urile indicatoare de tensiune: - 12V: între 0 şi 12V se va aprinde acest LED - 24V: între 19V ±2V se va aprinde acest LED - 50V: între 48V ±6V se va aprinde acest LED - 120V: între 110V ±20V se va aprinde acest LED - 230V: între 200V ±20V se va aprinde acest LED - 400V: între 340V ±30V se va aprinde acest LED - 690V: între 520V ±30V seva aprinde acest LED • Dimensiune afişaj LCD: 23 × 12mm • Afişare LCD (AC/DC): 24V - 690V (± 3%+5) • Tester de continuitate: domeniu 0 la 100 KΩ. LED-ul de continuitate se va aprinde, iar buzzerul va emite sunete. • Test rotaţie fază: 50Hz la 60Hz • Selectare domeniu: automată • Detectare polaritate: negativ şi pozitiv • Detectare tensiune cu o singură sondă: de la 100V la 690V; 50Hz la 400Hz, doar pentru test rapid • Detectare scurt circuit • Dimensiuni: 275 × 51 × 30mm
Tel.: 0256-201346 office@oboyle.ro, www.oboyle.ro 21
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
Sistem de transmisie video la sol în 5.8Ghz
Autor:
Bogdan Brînzei bogdan.brinzei@ymail.com
Banda 900 Mhz (rază medie de acțiune)
Banda 1,2 Ghz (rază medie/mare de acțiune)
Avantaje: • Semnal foarte bun chiar și în zone obstaculate datorită frecvenței mici. • Poate fi folosit cu sisteme de control în 2.4Ghz • Antenele pot fi făcute și în regim de amator, însă datorită frecvenței mici, vor fi destul de mari.
Avantaje: • Semnal bun chiar și în zone obstaculate datorită frecvenței mici. • Poate fi folosit şi cu sisteme de control în 2.4 Ghz însă va fi nevoie de unele filtre speciale. Dezavantaje: • Frecvențe interzise în această bandă: 1. 1227.60 1575.42Mhz - GPS 2. 962-1213 Mhz - comunicație aeronautică • Imagine mai slabă față de sistemele în 5.8 Ghz
Banda 2,4 Ghz (rază mare de acțiune) Dezavantaje: • Frecvență repartizată de asemenea și unor companii de telefonie mobilă (semnalul va fi slab în zonele în care sunt plasați stâlpi de telefonie mobilă). • Tehnologie învechită. 22
Avantaje: • Folosit pentru transmisii cu rază mare de acțiune. • Tehnologie nouă și în continuă dezvoltare. • Gamă mare de antene disponibile pentru câştig de putere.
Dezavantaje: • Datorită frecvenței destul de mari, semnalul va fi slab în zonele obstaculate. Se recomandă antene unidirectionale și sisteme de urmărire în timp real. • Bandă de frecvență aglomerată (Wi-fi, microunde, bluetooth) • Nu poate fi folosit sub nicio formă cu sisteme de control în 2,4 Ghz. Banda 5.8 Ghz (rază mică/medie de acțiune) Avantaje: • Folosit în special pentru spații deschise fără obstacole.
HEXACOPER
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
• Poate fi folosit cu sisteme de control în 2,4 Ghz • Tehnologie nouă • Imagine foarte bună în comparație cu celelalte frecvențe. Dezavantaje: • Raza de acțiune se micșorează seminificativ atunci când aerul este umed sau când se zboară foarte aproape de plafonul de nori. • Frecvență aglomerată în oraşe. • Antenele se pot face în regim de amator, însă pentru un efect cât mai bun, trebuiesc să fie foarte precise.
Reguli generale: 1. Raza de acțiune este invers proporțională cu frecvența de emisie. 2. Frecvențele mari sunt mult atenuate de obstacole. 3. Cu cât frecvența de emisie crește, dimensiunea antenei este mai mică. 4. NU zburați niciodată cu un sistem video a cărui frecvență de emisie coincide cu cea de control. Riscul de bruiaj este foarte mare. În principal, puterea de emisie depinde de distanța pe care vrem să zburăm. Deși pe piață există sisteme de transmisie video cu puteri cuprinse de la 10mW până la 2-5W, nu se recomandă decât în situații cu totul speciale puteri mai mari de 500mW - 1W din mai multe considerente. În primul rând, cu cât puterea de emisie este mai mare cu atât consumul va fi mai mare şi va duce la epuizarea bateriei de pe model și în al doilea rând, o putere de 1W poate induce în sistemul de control interferențe semnificative. Se recomandă ca sistemul de emisie să stea cât mai departe posibil față de receptorul de comandă pentru a nu se influența unul pe celalalt. Alegerea noastră: Deoarece un hexacopter are o rază mică/medie de acțiune, iar sistemul de comandă este un FrSky 2,4 GHz, cea mai bună variantă în cazul nostru a fost alegerea unul transmitător în 5.8 Ghz cu o putere de 200mW.
Puterea emisă nu este una mare însă suficientă pentru o rază de acțiune de 12km cu posibilitatea de mărire dacă se folosesc antene cu câştig de putere. Datorită constrângerilor impuse de greutate, am ales un model de transmitător ce are doar 16g.
Pentru a profita cât mai mult de frecvența de 5.8 Ghz, am ales o cameră Sony cu un senzor CCD de 1/3". Calitatea imaginii este una foarte bună, iar datorită lentilei cu distanţa focală de 2.8mm, câmpul vizual acoperit este unul foarte mare.
Specificații:
Greutatea redusă, calitatea foarte bună a imaginii și posibilitatea de interschimbare a lentilei, sunt principalele atu-uri care ne-au facut să alegem camera Sony Effio 700TVL.
• • • • • • • • •
Format video acceptat: NTSC/PAL Impedanţă de ieşire: 50 Ohm Putere de ieşire: 23~24dBm Canale: 32CH Tensiune de alimentare: 7V~24V Curent consumat: 190mA Conector: RP-SMA Dimensiuni: 40mm × 23mm × 8mm Greutate: 8g (fără antenă)
Bibliografie: www.flitetest.com www.fpvforme.com Sursă imagini: www.flitetest.com www.dohc.co.uk http://blog.oscarliang.net/ 23
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
Iniţiere în electronică cu
SparkFun Lumea Sistemelor Embedded poate părea, la prima vedere, de nepătruns. Astfel, un începător se poate pierde ușor în masiva cantitate de informații despre piese, microcontrolere și tehnici ale unui mic proiect electronic, cum ar fi chiar și aprinderea unui LED. Cei de la SparkFun vin în ajutorul începătorilor cu un kit de învățare, SparkFun Inventor’s Kit, reprezentând o modalitate foarte bună de a începe programarea și interacțiunea hardware prin intermediul limbajului de programare Arduino. Autori: Constantinescu Cosmin - ctinescu.cosmin@gmail.com Negru Rareș Răzvan - rares.negrubd@yahoo.com Cojocar Laura - laurav.cojocar@gmail.com
Kit-ul include tot ce aveți nevoie pentru a finaliza 15 circuite, de bază spunem noi, care te vor face să înțelegi cum lucrează microcontrolerul, cum se folosește un breadboard, diferența dintre un semnal analogic și unul digital, precum și lucruri mai complexe, cum ar fi, citirea senzorilor, afișarea informațiilor pe un LCD, conducerea motoarelor și multe altele, dar oferă și posibilitatea creării unor noi circuite și dezvoltarea propriilor proiecte. 24
Kit Preview
SPARKFUN
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
RedBoard v23 Schematic 25
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
Ü
Drumul spre succes Acest best-seller al celor de la SparkFun este destinat celor care își doresc să pătrundă în minunată lume a electronicii fără aproape niciun fel de cunoștință teoretică necesară. Pe lângă piese precum: LED-uri, Servo, motoare DC și un BreadBoard care ajută foarte mult deoarece nu este nevoie de lipirea componentelor între ele, kit-ul conține o placă hibridă RedBoard bazată pe Arduino UNO împreună cu un Shield UNO R3 și FTDI, oferind stabilitate în transmisia serialelor TTL către USB, iar alimentarea plăcii se face printr-un cablu Mini-USB prevăzut și el în kit. Specificaţii Placa conține un microprocesor ATmega328P, cu un consum redus, dar cu performanțe crescute, ce funcționează la o frecvență de 20MHz și 20MPSI/MHz cu o memorie flash de 32 KBytes. În descrierea producătorului, plăcuța RedBoard are următoarele specificații: • • • • • • • • • • • •
Microcontroler ATmega328 cu Optiboot (ONU) Bootloader Programare USB facilitată de omniprezentele FTDI FT231X Tensiune de intrare - 7-15V 0-5V ieșiri cu 3.3V intrări compatibile 14 Digital I/O Pini (6 ieșiri PWM) 6 intrări analogice ISP antet Memorie flash 32k 16MHz ceas de viteză Toate SMD Utilaje construcții R3 Shield Compatibil PCB Red!
SparkFun RedBoard este echivalent cu placa Arduino UNO V3, dar este produs în SUA de către firma Sparkfun. Folosind același procesor, această placă este capabilă să ruleze orice cod care rulează pe UNO și va oferi exact aceleași rezultate. Programarea pe placă În ceea ce privește partea practică a kit-ului, acesta este prevăzut cu un ghid de Start-Up care vă va purta prin 15 lucrări de dificultate progresivă, astfel încât la finalul acestora veți dobândi o multitudine de cunoștințe pe partea de programare Arduino și interconectare a pieselor pentru a duce la bun sfârșit un mic proiect imaginat de voi. Poate vă întrebați dacă logo-ul de la începutul articolului este doar o imagine preluată de pe internet sau este făcută de noi. Răspunsul este cel pe care vi-l doriți să îl auziți: Da,este în totalitate făcută de noi. Vă vom explica în cele ce urmează pașii pe care i-am parcurs pentru a scrie pe display-ul LCD, tot ce ne trece prin cap. 26
Ai nevoie de: • Display LCD
• 16 fire
• Potențiometru Componentele vor fi interconectate după următoarea schemă. Potențiometrul din acest proiect are rolul de a seta contrastul fundalului display-ului LCD. În locul acestuia se poate folosi o rezistență de 10KΩ.
LCD Schematic Trecând la partea software, codul necesar funcționării dorite a display-ului vă este prezentat în următoarea figură. După cum se poate observa, codul din Arduino conține două funcții obligatorii pentru ca placa noastră să poată funcționa după modul în care o programăm. Cei care sunt obișnuiți cu programarea în C şi C++ vor înțelege ce înseamnă prima linie de cod “#include”.
Arduino Code
SPARKFUN Acea linie îi spune compilatorului să adauge la rulare funcții specifice lucrului cu display-uri LCD. Următoarea linie reprezintă declararea efectivă ca o “structură de date” a unui display LCD. Parametrii funcției reprezintă pinii de input. Funcția setup( ) reprezintă partea incipientă a codului în care sunt declarați pinii pe care urmează să îi folosim, cât și modul în care vrem să îi folosim (input sau output); În cazul de față, pinii au fost declarați anterior. Metoda lcd.begin(16,2) îi transmite compilatorului că display-ul LCD are 16 coloane structurate pe 2 rânduri.
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
Concluzii Kit-ul de la SparkFun vine în ajutorul celor care doresc să patrundă cu ușurință în lumea electronicii, atribuind un stil ludic lucrului hardware. Deschizând poarta către universul vast de posibilităţi al roboticii, începătorii își pot concepe propriile lor mici proiecte și pot să-și găsească un nou hobby sau, de ce nu, să dezvolte o carieră din această pasiune pe care noi o găsim foarte antrenantă și satisfăcătoare. Cu toții am fost începători, așa că noi vă recomandăm cu tărie acest kit al celor de la SparkFun, pentru o experiență interactivă de neuitat.
Cursorul ce parcurge matricea de 16×2 este setat inițial pe rândul 1, iar metoda lcd.print scrie șirul de caractere pe rândul indicat de cursor. Setând cursorul pe poziția (0,2) , ne vom situa pe rândul 2, coloana 0. Astfel vom putea scrie şi pe cel de-al doilea rând fără să interacționăm cu primul rând. A doua funcție, loop( ) este corpul în care se descrie ceea ce va face placa cât timp va fi alimentată. Această metodă funcționează în aceeași manieră ca un for loop, ciclând la infinit până la încheierea alimentării, codul însă rămânând stocat pe memoria Flash a plăcii Arduino. În cazul de față, funcția loop() nu conține nimic deoarece instrucțiunile plăcii sunt declarate în setup(). Uite mai jos cum va arăta placa ta la sfârșit:
Proiectul terminat
27
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
Internet of Things
4 Girls Autor: Alina Țucunete - alina.tucunete@gmail.com
Ce este? IoT4Girls este un workshop adresat fetelor de liceu prin care ne dorim să le arătăm, înainte ca ele să ia decizia de a urma o anumită facultate, ce înseamnă programarea şi cât de distractivă poate fi. Participantele nu trebuie să aibă anumite cunoştinţe, deoarece le învăţăm noi totul de la zero.
28
INTERNET OF THINGS 4 GIRLS Cine sunt organizatorii? IoT4Girls este un program Google RISE realizat de Asociaţia Tech Lounge, Girls Who Code Romania şi Universitatea Politehnica din Bucureşti. Tech Lounge este locul de întâlnire în care studenți din ICT și inginerie, tineri interesați de business, dezvoltatori, designeri și antreprenori schimbă gânduri și schimbă câte un colț de lume (http://tech-lounge.ro). Girls Who Code Romania este comunitatea pentru femei programator, dar și a celor care își doresc să învețe să programeze; a fost înființată din pură pasiune pentru programare, obiectivul organizației fiind de a oferi suport și susținere tuturor fetelor interesate de acest domeniu (www.girlswhocode.ro). De ce doar pentru fete? În timpul liceului este foarte important să descoperi ce ţi-ar plăcea să faci mai departe şi să-ţi alegi facultatea potrivită. Fetele, spre deosebire de băieți, sunt descurajate de la a urma direcții tehnice, deși sunt la fel de capabile. Ca o mică paranteză, se spune că în spatele unui barbat puternic stă o femeie puternică. Dar ştiţi cine stă în spatele unei femei puternice? Ea însăşi. Aşadar, fetelor, şi voi puteţi fi ingineri de succes dacă vă doriți asta! Cum a fost prima ediţie? Aceasta s-a desfăşurat în perioada 27-29 martie la Facultatea de Automatică şi Calculatoare din Bucureşti. Fetele au fost foarte interesate de acest workshop, ca dovadă că s-au înscris 166 de
tinere, în condiţiile în care erau disponibile doar 16 locuri. Drept mentori au fost studenţi sau proaspăt absolvenţi de la mai multe facultăţi din domeniul IT. Considerăm că diferenţa mică de vârstă dintre participante şi mentori a contribuit la atmosfera destinsă şi plăcută.
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
Pentru aceasta, ele au scris în SparkiDuino un cod ce folosea următoarele funcţii: void loop() { sparki.gripperOpen(); // open the robot's gripper delay(1000);
Pe parcursul acestor zile, fetele au învăţat conceptele de bază despre hardware, pagini web şi programarea în Arduino. Fiecare şi-a ales un proiect (Sparki, Do It Yourself Gamer KIt, Wyliodrin, colier cu LED-uri etc.) la care a lucrat în prezenţa unui mentor, iar la final l-au prezentat. Astfel, îl puteai privi pe Sparki cum desenează un dragon comandat de pe telefonul mobil sau puteai controla LED-uri în funcție de comenzile date de un Web Server.
sparki.gripperClose(); // close the robot's gripper delay(1000);
Ce au făcut fetele în cadrul unui proiect? De exemplu, două dintre fete l-au făcut pe Sparki să deseneze un dragon. Roboţelul are două grippere cu care poate prinde obiecte, iar fetele l-au pus să ţină un marker.
// for 1 second (1000 milliseconds)
sparki.gripperStop(); // stop the grippers from moving delay(1000);
La sfârşit, fetelor le-au fost prezentate oportunităţile pe care le au dacă îşi aleg domeniul IT şi care sunt diferenţele dintre cele mai bune facultăţi cu acest profil din Bucureşti: Automatică și Calculatoare (U.P.B.); Cibernetică, Statistică și Informatică Economică (A.S.E.) și Mate-Info (Universitate).
// for 1 second (1000 milliseconds)
// for 1 second (1000 milliseconds)
} Apoi, utilizând funcţiile de bază sparki.moveForward(); sparki.moveBackward(); sparki.moveRight(); sparki.moveLeft();, ele l-au programat pe Sparki să facă anumite mişcări, precum să meargă în zigzag pentru a desena creasta dragonului. O altă echipă a creat aplicația mobilă pentru controlul robotului (folosind un modul bluetooth) chiar de pe telefon.
29
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
Ü
30
Electronica Azi HOBBY • Iunie, 2015 • Nr. 3
31