Noi proiecte originale pe Arduino. Ce este Arduino și ce poți face cu el?

Astăzi vom vorbi despre semafor aprins pe LED-urile adresabile DigiSpark și WS2812 . Aceasta este a doua versiune semafor. Despre primul am vorbit aici. Prima versiune s-a dovedit a fi destul de convenabilă și a constat din mai puține părți. De ce am decis să fac o a doua versiune? Cert este că cutia este pentru bateriile pe care le-am folosit în prima versiune semafor pe Arduino, a devenit foarte scump. Unii vânzători îl vând cu 5 USD pe . Mai scump decât toate celelalte electronice. Așa că am decis să schimb cutia cu una mai ieftină. Și odată a trebuit să refac corpul. Am decis să schimb dimensiunea semaforului în sine și să-l fac mai mare decât prima versiune. De asemenea, în picior semafor a adăugat o tijă de metal pentru a crește rigiditatea.

Ceas cu alarmă pe Arduino. Caroseria este realizată din truse de construcție LEGO. LEGO Arduino

Copilul meu de 5 ani a venit de la grădiniță și a spus că i s-a cerut să facă un proiect pentru dispozitive inteligente în casă. Caroseria poate fi realizată din orice kit de construcție disponibil. Se poate face din LEGO proiectant. După câteva gânduri, eu și fiul meu am decis să facem ceas deşteptător pe DigisparkȘi Indicator cu 7 segmente pe TM1637 Cu ceas în timp real DS3231.

Noi proiecte Arduino și proiecte realizate pe o mașină CNC

S-a terminat vara. Și timpul să se dezvolte Proiecte Arduino deveni mai mare. Și astăzi plănuiesc să vorbesc despre mine proiecte noi pe care o fac Arduinoși a ta mașină CNC de casă. Proiecte sunt încă în stadiu de dezvoltare și nu au o formă finală finală. Dar totuși, m-am hotărât să vorbesc despre ele ca să pot auzi o părere din afară.

Semafor pe Digispark si LED-uri adresabile WS2812 - Semafor Arduino

În articolul precedent: „ » Am vorbit deja despre dezvoltare semaforși că nu am reușit să-l fac pe deplin funcțional și operațional. După câteva săptămâni l-am finalizat și acum sunt gata să-l prezint semafor de casă folosind LED-uri adresabile Arduino și WS2812.

Am tăiat singur toate spațiile goale pentru corp mașină CNC de casă.

Proiecte nereușite de lampă Arduino și semafoare

Orice dezvoltare duce la modele nereușite și intermediare. Care nu satisfac toate nevoile si asteptarile.

O zi bună, Habr. Lansez o serie de articole care vă vor ajuta să vă familiarizați cu Arduino. Dar asta nu înseamnă că, dacă nu ești nou în această afacere, nu vei găsi nimic interesant pentru tine.

Introducere

Ar fi o idee bună să începeți prin a vă familiariza cu Arduino. Arduino – hardware și software pentru automatizarea clădirilor și sisteme robotice. Principalul avantaj este că platforma este destinată utilizatorilor neprofesioniști. Adică, oricine își poate crea propriul robot, indiferent de cunoștințele de programare și de propriile abilități.

start

Crearea unui proiect pe Arduino constă din 3 etape principale: scrierea codului, prototiparea (breadboarding) și firmware-ul. Pentru a scrie cod și apoi a flash-a placa, avem nevoie de un mediu de dezvoltare. De fapt, există destul de multe dintre ele, dar vom programa în mediul original - Arduino IDE. Vom scrie codul în sine în C++, adaptat pentru Arduino. Îl puteți descărca de pe site-ul oficial. O schiță este un program scris pe Arduino. Să ne uităm la structura codului:


main())( void setup())( ) void loop())( ) )

Este important de reținut că procesorul Arduino creează funcția main(), care este necesară în C++. Și rezultatul a ceea ce vede programatorul este:


void setup() ( ) void loop() ( )

Să ne uităm la cele două funcții necesare. Funcția setup() este apelată o singură dată când pornește microcontrolerul. Ea este cea care stabilește toate setările de bază. Funcția loop() este ciclică. Este numit într-o buclă nesfârșită pe toată durata de funcționare a microcontrolerului.

Primul program

Pentru a înțelege mai bine principiul de funcționare al platformei, să scriem primul program. Vom executa acest program cel mai simplu (Blink) în două versiuni. Singura diferență dintre ele este asamblarea.


int Led = 13; // declară variabila Led pe pinul 13 (ieșire) void setup() ( pinMode(Led, OUTPUT); // definește variabila ) void loop() ( digitalWrite(Led, HIGH); // aplică tensiune la întârzierea pinului 13 (1000); // așteptați 1 secundă digitalWrite (Led, LOW); // nu aplicați tensiune la pinul 13 întârziere (1000); // așteptați 1 secundă)

Principiul de funcționare al acestui program este destul de simplu: LED-ul se aprinde timp de 1 secundă și se stinge timp de 1 secundă. Pentru prima opțiune, nu trebuie să asamblam un aspect. Deoarece platforma Arduino are un LED încorporat conectat la pinul 13.

Firmware-ul Arduino

Pentru a încărca o schiță în Arduino, trebuie mai întâi să o salvăm pur și simplu. Apoi, pentru a evita problemele la încărcare, trebuie să verificați setările programatorului. Pentru a face acest lucru, selectați fila „Instrumente” din panoul de sus. În secțiunea „Plată”, selectați plata. Ar putea fi Arduino Uno, Arduino Nano, Arduino Mega, Arduino Leonardo sau altele. Tot în secțiunea „Port” trebuie să selectați portul de conectare (portul la care v-ați conectat platforma). După acești pași, puteți încărca schița. Pentru a face acest lucru, faceți clic pe săgeată sau selectați „Descărcare” în fila „Schiță” (puteți folosi și comanda rapidă de la tastatură „Ctrl + U”). Firmware-ul plăcii a fost finalizat cu succes.

Prototiparea/aspectarea

Pentru a asambla placa de breadboard, avem nevoie de următoarele elemente: LED, rezistor, cablare (jumpers), placa de breadboard. Pentru a nu arde nimic și pentru ca totul să funcționeze cu succes, trebuie să te ocupi de LED-ul. Are două „picioare”. Scurt este un minus, lung este un plus. Vom conecta masa (GND) si un rezistor la cel scurt (pentru a reduce curentul furnizat LED-ului pentru a nu-l arde), iar celui lung il vom alimenta (conectare la pinul 13). După conectare, încărcați schița pe tablă dacă nu ați făcut acest lucru anterior. Codul rămâne același.


Acesta este sfârșitul primei părți. Vă mulțumim pentru atenție.

Arduino este o platformă de calcul hardware care este utilizată pentru a proiecta și a crea dispozitive electronice cu diferite niveluri de complexitate.

Acest designer electronic se bazează pe o platformă hardware pentru intrare și ieșire, care este programată în limbajul Procesare/Wiring, bazat pe C++. Din ce componente constă Arduino, ce poți face cu el și cum poți învăța să folosești acest cip inteligent?

Arduino este unul dintre cele mai comune controlere miniaturale cu un set de intrări și ieșiri care funcționează conform unui program pre-scris. Acest controler versatil este foarte convenabil pentru crearea de prototipuri de dispozitive electronice, făcându-l popular nu numai printre studenții și pasionații din întreaga lume, ci și printre designerii și inventatorii avansați.

Arduino impresionează prin versatilitatea sa. Folosind plăci de expansiune speciale, acest controler poate interacționa cu alte dispozitive prin Bluetooth, Wi-Fi, GPRS, poate efectua și primi apeluri telefonice și SMS-uri.

Controlerul nu este un simplu cip, ci o placă cu un circuit de alimentare gata făcut și interfețe pentru conectarea la un PC, conectori de intrare și ieșire.

Datorită unei game largi de biblioteci de protocoale, este posibilă organizarea interacțiunii Arduino cu senzorii și servomotoarele utilizate în robotica modernă.

Și arhitectura deschisă face posibilă personalizarea Arduino pentru orice scop. Și datorită limbajului de programare simplificat, chiar și pentru începători va fi ușor să stăpânească lucrul cu controlerul. Este deosebit de convenabil să lucrezi cu Arduino datorită platformei, care oferă un răspuns aproape instantaneu la comenzile programate.

Ce poți face cu Arduino? Un programator, designer sau inginer poate transforma aproape orice idee originală într-un prototip funcțional - trebuie doar să achiziționați un controler și componente radio suplimentare. De asemenea, pasionații de programare și proiectare de circuite sunt captivați de costul scăzut al Arduino, care face controlerul accesibil maselor.

Proiecte Arduino: ce poți face

Să ne uităm la câteva idei originale care pot fi implementate pe Arduino. Pe lângă diagrama în sine, este posibil să aveți nevoie de piese suplimentare, care sunt cele mai profitabile pentru achiziționare de pe AliExpress.

Regulator de temperatură acasă

Puteți implementa un astfel de proiect folosind mai multe plăci Arduino Nano și un Arduino Uno/Mega, care va acționa ca bază. Comunicarea între module poate fi realizată folosind NRF24L01, un modul de comunicație radio care face posibilă combinarea a până la 6 plăci.

Într-un caz este necesar să asamblați un Arduino Nano conectat la senzorii de umiditate și temperatură DHT22, precum și un modul NRF24L01. Sursa de alimentare poate fi o baterie obișnuită. Mai multe dintre aceste dispozitive trebuie amplasate în toate încăperile casei.

Indicatorii de la Arduino Nano vor fi transmisi la bază, care va fi Arduino Mega sau Uno. De asemenea, este necesar să atașați receptorul de semnal NRF24L01, sursa de alimentare și afișajul LCD pentru a afișa informații text. „Baza” trebuie să fie amplasată în imediata apropiere a sistemului de încălzire. Primind și procesând datele primite despre umiditate și temperatură, baza va transmite comenzi către sistemul de încălzire pentru a crește sau a scădea temperatura.

Mașină CNC

Această idee este una dintre cele mai dificil de implementat. Cu Arduino Mega poți implementa nu numai o mașină CNC, ci și o imprimantă 3D. Pe lângă placa în sine, veți avea nevoie de drivere de motor L298N, precum și de motoarele în sine. Restul lucrării este dezvoltarea de cadru și cod.

Sere inteligente

Toți proprietarii unei grădini de legume sau ai unui teren personal știu câtă atenție necesită o seră și răsadurile cultivate în ea. Este necesară monitorizarea constantă a umidității solului, deschiderea și închiderea ușilor la timp etc. Cu ajutorul Arduino, toate aceste procese de rutină pot fi automatizate.

Folosind doar o placă Arduino Mega și un controler DHT22, puteți înregistra și afișa informații despre temperatura din seră, precum și transmite comenzi pentru a porni irigarea, puteți controla motoarele pentru deschiderea și închiderea ușilor.

Roboți

Roboții sunt cea mai bună jucărie nu numai pentru copii, ci și pentru adulți, mai ales atunci când este posibil să le controlezi. Folosind Arduino și diverse materiale disponibile, puteți realiza un robot în orice configurație: de la cele mai primitive la cele mai complexe modele.

De exemplu, cu ajutorul telemetrului cu ultrasunete HC-SR04, robotul tău va putea să înregistreze distanța până la obstacole și să le evite pe măsură ce se mișcă. Folosind driverul de motor L293D, veți avea la dispoziție 3 servo-uri și 4 motoare. Folosind modulul HC-06, îți vei putea controla creația prin Bluetooth prin intermediul unui smartphone.

Desigur, acesta nu este sfârșitul listei de proiecte Arduino pe care le puteți realiza singur - posibilitățile de aici sunt limitate doar de imaginația și abilitățile dumneavoastră.

Arduino este un mic dispozitiv electronic format dintr-o singură placă de circuit imprimat care este capabil să controleze diverși senzori, motoare electrice, iluminat, transmite și recepționează date... Arduino este o întreagă familie de dispozitive de diferite dimensiuni și capacități. Și, de asemenea, aceasta este o întreagă grădină zoologică de clone Arduino și o lume de dispozitive compatibile cu Arduino. Dar să vorbim despre totul în ordine.

1 "Creier" Arduino

„Creierul” Arduino este microcontroler familiile Atmega. Un microcontroler este un microprocesor cu memorie și diverse dispozitive periferice, implementate pe un singur cip. De fapt, este un microcomputer cu un singur cip care este capabil să realizeze sarcini relativ simple. Diferite modele din familia Arduino sunt echipate cu diferite microcontrolere.

Atmega328 - creierul Arduino UNO

Fotografia arată un microcontroler Atmega328. Asemenea microcontrolere costă Arduino UNOȘi Arduino Nano(dar într-o clădire diferită).

2 "Mâini" Arduino

Dar la ce folosește un creier dacă nu are mâini? În acest caz, mâinile sunt bornele electrice, plasat în jurul perimetrului plăcii Arduino. Există plăci cu mai multe ace, iar unele cu mai puține. De exemplu, cea mai mare placă din familia Arduino este Arduino Mega- are peste 70 de ieșiri independente, iar cea mai mică - Arduino Pro Mini- 22 de ace în total.


Fotografia arată o comparație între Arduino Mega și Arduino Pro Mini. Vă puteți imagina ce ar putea face o persoană cu atâtea mâini câte pini Arduino Mega există?

3 Digital și analogic concluzii

Nu toți pinii Arduino sunt la fel. Există concluzii digital, este acolo analogic. Diferența fundamentală dintre ele este că pinii digitali pot avea doar două valori: fie „1” logic (adevărat, de la 3 la 5 volți), fie „0” logic (FALSE, de la 0 la 1,5 volți), și pe pinii analogici. , intervalul de la „1” logic la „0” este împărțit în multe secțiuni mici.

De ce este necesar acest lucru? Să ne uităm la un exemplu atât de clar. Dacă conectați un LED la pinul digital Arduino și aplicați un „1” logic la ieșire, LED-ul se va aprinde cu luminozitate maximă; Dacă aplicați „0” LED-ul se va stinge. Nu există opțiuni intermediare. Dacă LED-ul este conectat la o ieșire analogică, atunci luminozitatea LED-ului poate fi controlată fără probleme. În practică, unii tipuri de senzori analogici sunt cel mai adesea conectați la ieșirile analogice.

4 Ce poate controla? Arduino

Ca rezultat, un astfel de număr de „brațe” Arduino vă permite să conectați un număr mare de dispozitive periferice diferite la acesta. Printre acestea, de exemplu:

  • butoane, comutatoare cu lame și joystick-uri,
  • LED-uri și fotodiode,
  • microfoane și difuzoare,
  • motoare electrice și servo-uri,
  • display LCD,
  • cititoare de etichete radio (RFID și NFC),
  • module bluetooth, WiFi și Ethernet,
  • Cititoare de carduri SD,
  • receptoare radio și transmițătoare radio,
  • module GPS si GSM...

Și, de asemenea, zeci de senzori diferiți:

  • iluminare,
  • camp magnetic,
  • telemetru cu ultrasunete și laser,
  • giroscoape și accelerometre,
  • senzori de compoziție de fum și aer,
  • senzori de presiune, temperatura si umiditate...

Și mult, mult mai mult

Toate acestea transformă Arduino într-un nucleu de sistem universal care poate fi configurat într-o varietate completă de moduri. Vrei să faci un hrănitor radiocontrolat pentru animale de companie? Vă rog! Vrei ca fereastra de pe loggia ta să se închidă când începe să plouă? Vă rog! Vrei să controlezi luminozitatea luminii din camera ta de pe smartphone-ul tău? Uşor! Doriți să primiți notificări prin e-mail dacă solul plantelor dvs. de apartament devine prea uscat? Și acest lucru este posibil!


Fotografia arată doar o mică parte din periferice care pot fi conectate la Arduino. De fapt, sunt multe, multe altele.

5 Comunicare cu Arduino

De unde știe procesorul ce ar trebui să facă exact? Ar trebui să-i spui asta. Scrierea mesajelor pentru Arduino este numită programare. Există un limbaj pentru comunicarea cu un microcontroler, simplificat și adaptat special pentru Arduino. Stăpânirea acestui limbaj nu este deloc dificilă dacă ai dorință și o oarecare perseverență, chiar dacă nu ai mai programat niciodată.

Și pentru a simplifica acest proces, a fost dezvoltat un mediu software special - Arduino IDE. Include zeci de exemple de programe bune, de lucru. După ce le studiezi, vei învăța foarte repede multe despre limbajul de comunicare cu Arduino.

Arduino va permite programelor dumneavoastră să treacă din lumea virtuală în lumea reală. Veți putea vedea cum programele pe care le scrieți fac să clipească un LED sau un motor să se rotească și apoi să faceți lucruri mai complexe și mai utile. Arduino vă va permite să învățați o mulțime de lucruri noi și interesante atât în ​​electronică, cât și în programare. În cele din urmă, acesta poate servi ca un hobby excelent pentru tine, o activitate distractivă cu copiii și o distracție minunată și utilă.

Puteți comanda Arduino și o mare varietate de senzori pentru acesta în magazinul online chinez Ali-Express. Aici prețurile sunt mai mici, dar livrarea durează de la 3 săptămâni la 1,5 luni. Puteți comanda Arduino la magazinul de electronice Voltiq.ru. Prețurile de aici sunt puțin mai mari decât în ​​magazinele online chinezești, dar nu trebuie să așteptați o lună întreagă. Un alt magazin bun de electronice și robotică este FastNVR.ru.

Și, în sfârșit, uitați-vă la ce proiecte diferite și minunate pot fi implementate folosind Arduino!