Acasă / Console de jocuri / Conectarea arduino uno la Android. Creăm o aplicație Android pentru a controla un robot de acasă prin Bluetooth. Conectarea unui modul Bluetooth la Arduino

Conectarea arduino uno la Android. Creăm o aplicație Android pentru a controla un robot de acasă prin Bluetooth. Conectarea unui modul Bluetooth la Arduino

De mult timp, Google a făcut posibilă conectarea dispozitivelor Android prin USB la diferite microcontrolere prin deschiderea API-ului. Acum toți cei care sunt implicați în crearea diverselor proiecte pe Arduino se pot bucura, pentru că acum va fi mult mai ușor să depanați sistemul Android Arduino și, în principiu, să le reglementați interacțiunea.

Am început deja să prezentăm cititorilor posibilitățile de a combina un microcontroler și un smartphone - vezi.

Dar chiar și înainte de aceasta, diverse module au permis Android și Arduino să interacționeze cu ușurință. Să ne dăm seama cum puteți implementa un proiect care va fi controlat de pe un smartphone și ce este necesar pentru aceasta.

Unde pot folosi conexiunea dintre Android și Arduino?

În primul rând, trebuie să vă gândiți cum să utilizați capacitatea de a transmite un semnal de la Android la Arduino. La urma urmei, înainte de a studia orice materiale, fiecare persoană sănătoasă ar trebui să înțeleagă unde îl va duce în cele din urmă. Chiar dacă vorbim despre un hobby. Într-adevăr, capacitatea de a controla echipamentele de pe smartphone a încetat de mult să fie percepută ca ceva extraordinar. În prezent, majoritatea televizoarelor, frigiderelor și chiar aspiratoarelor achiziționate de clasa de mijloc au capacitatea de a transfera date pe un smartphone.

Această soluție vă permite să simplificați semnificativ viața omului obișnuit, deoarece pentru același televizor nu este nevoie să cumpărați constant baterii pentru telecomandă și să o căutați dacă se pierde. Ne apropiem de locuințele inteligente prețuite, dar unii preferă să nu cumpere astfel de echipamente, ci să le proiecteze ei înșiși.

În acest caz, pachetul Android Arduino ar trebui luat în considerare în două variante:

  1. Control de la distanță al oricărui dispozitiv folosind un smartphone. Se mai numește și conexiune smartphone-MK. Toate aceleași echipamente, de exemplu, jaluzele glisante sau iluminatul din cameră, care vor fi oprite cu un singur clic. Dacă doriți să faceți aceasta din urmă, atunci nu este nevoie să schimbați cablajul sau să cumpărați lămpi inteligente speciale, care se pot arde după o lună. Este suficient să achiziționați un mic microcontroler Arduino, un modul de comunicare prin Internet sau Bluetooth fără fir și bandă electrică. După care va fi suficient să lipiți cel mai simplu circuit, care se închide dacă este trimis un semnal către MK.
    Acest semnal va fi trimis de pe telefon, închideți contactele, iar lumina va începe să se aprindă. Pentru a evita problemele și pentru o securitate suplimentară a locuinței dvs., puteți scrie un script care poate deschide automat circuitul dacă dispozitivul de control este scos din vedere. Comutatoarele obișnuite vor funcționa în continuare, dar numai când circuitul este închis.
  2. Transfer de date pentru informare sau comunicare MK-Smartphone. Aici nu mai controlezi anumite echipamente, ci mai degrabă, dimpotrivă, diverse echipamente îți permit să primești anumite date pe smartphone. Primul lucru care îmi vine în minte și cea mai simplă aplicație este un senzor de mișcare. Acest modul este disponibil în senzori standard pentru microcontrolere Arduino cumpărarea lui nu va fi o problemă, așa cum va fi instalarea lui în pasaj. Apoi tot ce rămâne este să scrieți un cod, a cărui asemănare există deja pe multe forumuri în limba engleză, trimițând un SMS sau un mesaj către rețelele sociale, și de asemenea utilitate specială, dacă cineva traversează fasciculul infraroșu.
    Puteți crea sisteme mai complexe și mai automate care vor transmite nu numai informații media despre apartamentul dvs., ci și să raporteze dacă legumele sau fructele se coace în sera de acasă. Totul depinde numai de imaginația inginerului însuși, dar baza tehnologiei este încă aceeași - transferul de date de la un dispozitiv la altul.

Deci ați ales un proiect potrivit și ați început să-l implementați. Modulele și microcontrolerele au fost deja comandate și, în timp ce sunt pe drum, puteți începe să dezvoltați software. La urma urmei, un Android gol nu interacționează cu Arduino folosind magia.

Aplicații Android pentru interacțiunea cu Arduino

Nu vom dezvolta utilitarul de la zero, deoarece aceasta nu este baza pentru programarea în Java. Cel mai simplu mod este să folosești motoare și medii gata făcute cu o interfață de utilizator, în care literalmente trebuie doar să adaugi 1-2 linii de cod pentru ca butonul să funcționeze. Desigur, o astfel de abordare limitează semnificativ funcționalitatea produsului final și afectează inevitabil creativitatea, dar va fi utilă celor care doresc să implementeze rapid un proiect simplu, fără probleme inutile.

Mai întâi, să ne uităm la cele trei fișiere de bază pe care le veți întâlni atunci când proiectați un program:

  1. MainActivity.java este întregul cod al aplicației în limba cu același nume, toate funcțiile și metodele pe care le scrieți sunt salvate aici.
  2. Activity_main.xml – aspect, după cum puteți ghici cu ușurință din extensia fișierului. Locația butoanelor, a textului și a altor componente interactive este stocată aici, care sunt apoi aduse la viață în cod.
  3. AndroidManifest.xml – Acest fișier se referă și la machete, dar într-o zonă ușor diferită. Acesta definește parametrii de bază pentru lansarea aplicației și permisiunile de care va avea nevoie. În cazul nostru, aceasta este necesitatea de a activa Bluetooth, deoarece prin intermediul acestuia vom comunica cu MK. Dacă realizați un senzor care trebuie să trimită informații pe o distanță lungă, atunci, în consecință, trebuie să porniți și să verificați funcționarea internetului wireless sau mobil.

Bazele recepției și transmiterii datelor

Pentru a înțelege cum va funcționa în general viitorul tău proiect, ar merita să studiezi fizica de bază a câmpurilor electromagnetice. Dar să nu supraîncărcăm informatii inutile, este suficient să înțelegem că astăzi transferul de date are loc în trei moduri principale:

  1. Prin intermediul unui cablu USB, care nu este potrivit peste tot, dar o opțiune bună pentru a configura proiectul.
  2. Prin Bluetooth și protocoale aferente, de exemplu, în în ultima vreme A devenit populară utilizarea NTFS pentru a gestiona dispozitivele inteligente. Dar, din moment ce vorbim despre un proiect pe Arduino MK, ne vom concentra pe bluetooth.
  3. Prin internet wireless. Nu este nimic nou aici, de fapt, mobilul sau microcontrolerul tău acționează ca un server care primește și procesează datele primite, apoi efectuează calcule sau acțiuni și trimite un răspuns.

Acestea sunt principalele metode de transmitere și primire a informațiilor trebuie doar să o alegeți pe cea potrivită. Pentru proiectele care nu vor fi utilizate pe distanțe lungi, cea mai bună opțiune în ceea ce privește volumul codului și ușurința de configurare este Bluetooth.

Ce componente pot fi necesare pentru interacțiune?

Am menționat deja mai sus că pentru un proiect Arduino care implică utilizarea uneia dintre metodele de transmitere a datelor la distanță, trebuie să achiziționați module suplimentare. Din nou, cea mai buna alegere va exista bluetooth. Acest modul vă permite să primiți și să trimiteți semnale cu o anumită frecvență, care sunt preluate de majoritatea smartphone-urilor și, în consecință, nu ar trebui să apară probleme. Puteți alege unul dintre dispozitivele prezentate în linia principală Arduino, sau analogi chinezești, care vor fi mult mai ieftine.

Unul dintre modulele pe care le puteți lua este Bluetooth Bee, care poate fi achiziționat de la multe magazine, de la DFRobot.

Totul depinde de sistemul specific și de ceea ce este necesar în el " Lățimea de bandă" La urma urmei, dacă este o cameră de supraveghere video, atunci fluxul de date trebuie transmis continuu și în cantități mari. Iar pentru un simplu senzor de mișcare, cel mai ieftin modul Wi-Fi este suficient. Este același lucru cu dispozitivele automate de acasă inteligente.

Atunci când alegeți fiecare componentă, luați în considerare nevoile dvs. și ceea ce veți implementa în proiect și nu plătiți în exces pentru caracteristicile de care nu aveți nevoie.

Configurarea conexiunii

Deci, acum ați creat și instalat deja o aplicație sau un analog gata făcut pe smartphone pentru a vă controla microcontrolerul cu Arduino, atunci trebuie să:

  1. Porniți modulul Bluetooth în sine, alimentându-l de la rețea sau de la baterie.
  2. Lansați aplicația pe telefon și găsiți dispozitivul dorit.
  3. Conectați-vă la modulul Bluetooth utilizând parola implicită sau cea pe care ați setat-o ​​când faceți intermitent Arduino.
  4. Dați primele comenzi și vedeți cum reacționează sistemul la ele.

Merită să spunem aici că există multe aplicații pentru Arduino pe Google Play, în articolul următor vom arăta 7 dintre ele.

Cel mai simplu exemplu

Pentru a înțelege aproximativ cum ar trebui să funcționeze proiectul finalizat, vom da un exemplu folosind același supliment pentru lampă.

  1. Vă conectați la sistem prin intermediul smartphone-ului.
  2. Apăsați un buton și circuitul se deschide sau se închide.
  3. Lumina apare sau dispare.
  4. Apăsați din nou butonul de pe smartphone și are loc efectul opus.

Desigur, pentru a face acest lucru, trebuie mai întâi să închideți circuitul aprinzând becul folosind un întrerupător de perete. Dar acesta este doar un exemplu condiționat a ceea ce poate fi realizat folosind această tehnologie.

În lecțiile care urmează, ne vom opri mai detaliat asupra interacțiunii dintre smartphone-uri și microcontrolere, iar împreună cu tine vom face câteva lecții utile.

Astăzi vă vom arăta cum să încărcați codul pe placa Arduino de pe folosind Android. Este foarte ușor cu gratuit software disponibil sub numele de ArduinoDroid. Deci, să începem.

Pasul 1: De ce avem nevoie

De fapt, avem nevoie de doar 4 lucruri.

  1. Orice placă Arduino;
  2. cablu OTG;
  3. Cablu USB compatibil cu placa Arduino;
  4. dispozitiv Android.

Tehnologia USB OTG (On-The-Go) este concepută pentru a se conecta dispozitive periferice unul cu celălalt fără a folosi un computer ca intermediar. Cu ajutorul acestuia, puteți conecta o unitate flash USB la smartphone-ul dvs. Android, mouse-ul computerului, imprimantă sau alte periferice. Pentru aceasta este folosit un cablu OTG special.

Pasul 2: Instalați ArduinoDroid pe dispozitivul Android

Un pas destul de simplu, deschideți Google Play, găsiți ArduinoDroid și instalați. Puteți descărca aplicația. Dar nu toată lumea va putea urmări linkul.

Acum pregătește-ți cablurile și placa Arduino. De fapt, vom încărca codul.

Pasul 3: Conectați totul și deschideți ArduinoDroid

Luați cablul OTG și conectați-l la dispozitivul Android. Luați un cablu USB și conectați-l la cablul OTG și placa Arduino. Deschideți aplicația ArduinoDroid pe dispozitivul dvs. Android.

Pasul 4: Introduceți codul în aplicația ArduinoDroid

Introduceți codul pentru ca Arduino să răspundă. Introducerea codului este aproximativ aceeași ca în Arduino IDE pe computer.

Salvați codul des pentru că... după cum spun mulți, uneori cade. Nu-ți face griji, în timp vei avea suficientă experiență cu aplicația.

Pasul 5: Concluzie

Deoarece aplicația este încă în versiune beta, este încă dificil să încărcați codul pe Arduino. Deci, programăm în continuare Arduinos folosind un laptop sau un computer.

Sperăm că ați avut o idee despre cum să încărcați codul pe placa Arduino folosind dispozitivul Android.

Acest articol prezintă instrucțiuni pas cu pas, care vă va ajuta să vă creați propria aplicație pentru un smartphone Android conceput pentru a controla ceva prin Bluetooth. Pentru a demonstra, vom analiza în detaliu un exemplu de clipire a unui LED pe Arduino folosind comenzi de pe un telefon sau tabletă. Ca urmare a respectării instrucțiunilor noastre, veți învăța să faceți acest lucru:

Pentru a controla un robot de acasă, trebuie doar să adăugați butoane și să procesați comenzile lor pe partea Arduino.

Ce va fi nevoie?

  1. Orice placă compatibilă cu Arduino
  2. modul Bluetooth
  3. Dispozitiv pe care este instalat sistemul de operare Android

Cel mai bine este să utilizați HC-05 ca modul Bluetooth. Este ușor de cumpărat de la Internetul chinezesc magazin sau pe eBay. Modulul este alimentat de 3,3V, dar liniile sale I/O pot gestiona logica de 5V, permițând conectarea UART-ului la un Arduino.

Modul Bluetooth HC-05

Conectarea unui modul Bluetooth la Arduino

Deci acum trebuie să ne conectăm Arduino cu Bluetooth. Dacă Arduino nu are o ieșire de 3,3 V, ci doar 5 V, atunci va trebui să instalați un stabilizator pentru a reduce puterea. Alocarea pinilor HC-05 este ușor de găsit pe Internet. Pentru utilizare, vă recomandăm să faceți o placă cu linii electrice, Rx și Tx. Conexiunea la Arduino trebuie făcută în următoarea ordine:

  • Ieșire Arduino 3,3 V sau (5 V printr-un stabilizator!) - la pinul 12 al modulului Bluetooth
  • Ieșire Arduino GND - la pinul 13 al modulului Bluetooth
  • Ieșire Arduino TX - la pinul 2 al modulului Bluetooth RX
  • Ieșire Arduino RX - la pinul 1 al modulului TX Bluetooth

După conectare, trebuie să verificați funcționalitatea modulului Bluetooth. Conectați LED-ul la pinul 12 al Arduino și încărcați următoarea schiță pe placă:

Char incomingByte; // date primite int LED = 12; // LED-ul este conectat la pinul 12 void setup() ( Serial.begin(9600); // inițializarea portului pinMode(LED, OUTPUT); // Setați pinul 12 ca ieșire Serial.println ("Apăsați 1 pentru a LED-ul ON sau 0 la LED OFF..."); ) void loop() ( dacă (Serial.available() > 0) ( //dacă datele au ajuns incomingByte = Serial.read(); // citește octetul if(incomingByte == "0" ) ( digitalWrite(LED, LOW); // dacă este 1, apoi opriți LED-ul Serial.println ("LED OFF. Apăsați 1 pentru a LED-ul ON!"); // și imprimați înapoi mesajul ) if(incomingByte == "1") ( digitalWrite(LED, HIGH); // dacă este 0, atunci porniți LED-ul Serial.println ("LED ON. Apăsați 0 pentru a LED-ul OFF!"); ) ) )

Cine nu vrea să scape de acei nasturi voluminoase și fire încurcate în timp ce lucrează la proiecte? Aplicatii pentru telecomanda Arduino pe Android oferă o interfață grafică cu utilizatorul (GUI) pentru controlul ușor al microcontrolerului.

Creată în 2003, platforma Arduino a atras rapid atenția comunităților open source și electronice datorită prețului său scăzut, a tonelor de tutoriale online și a comunității de susținere de mai multe milioane de dolari. Plăcile vin cu o varietate de microprocesoare și microcontrolere, cele mai populare fiind Atmega328. Cu un număr mare de module de expansiune disponibile comercial, aceste plăci italiene au devenit alegerea începătorilor pentru a explora lumea sistemelor încorporate.

1. Controler Bluetooth Arduino

Această aplicație are o interfață de utilizator simplă și este ușor de personalizat. Conectați Android-ul la modulul Bluetooth conectat la Arduino. Vă puteți conecta în 4 moduri diferite:

  1. Modul controler: Acest mod este interfața controlerului jocului. Când apăsați pe oricare dintre butoanele de pe ecran, comanda corespunzătoare va fi trimisă la Arduino. Controlați-vă robotul cu ușurință cu această interfață frumoasă.
  2. Modul comutator: Acest mod constă dintr-un buton pe care îl puteți utiliza pentru a controla comutatorul de la distanță.
  3. Modul Dimmer: Modul Dimmer poate trimite valori în schimbare către Arduino. Foarte util atunci când trebuie să capturați date precum luminozitatea și viteza.
  4. Modul terminal. Trimiteți comenzile personalizate în acest mod și scrieți câteva linii de cod pe Arduino pentru a decoda comenzile.

2.Bluetooth Controller 8 Lampă

Mulțumită sprijinului module Bluetooth HC-05, HC-06 și HC-07, această aplicație vă permite să controlați până la 8 canale. Are o interfață simplă de utilizator constând din 8 butoane pentru canalele corespunzătoare.

Butoanele sunt, de asemenea, concepute pentru a comuta toate canalele simultan. Tutorialele avansate oferă și exemple de cod.

Arduino nu are suficientă memorie și putere de procesare pentru recunoașterea eficientă a vorbirii. Ce se întâmplă dacă am putea folosi caracteristica de recunoaștere a vorbirii a Android pentru a trimite comenzi către Arduino?

Exact pentru asta este făcută această aplicație. Preia intrarea vocală și o trimite la Arduino prin Bluetooth ca șir.

4. RemoteXY: Control Arduino

Aplicația vă permite să vă controlați Arduino folosind Bluetooth, Wi-Fi și chiar Ethernet. Creați-vă propria interfață grafică unică pentru această aplicație vizitând site-ul web al aplicației - remotexy. Distrați-vă creând butoane, comutatoare, glisoare, joystick-uri și alte elemente GUI pentru a vă controla Arduino.

În plus, vă permite să vă conectați prin intermediul unui server cloud, astfel încât dispozitivele dumneavoastră să poată fi accesate de oriunde în lume.

5.Virtuino

Virtuino vă permite să vă vizualizați proiectele ca nicio altă aplicație. Controlați mai multe plăci Arduino simultan prin Bluetooth, Wi-Fi, Internet sau chiar SMS.

Creați interfețe vizuale pentru LED-uri, comutatoare, diagrame, instrumente analogice, contoare și multe altele. Vine cu suport pentru bibliotecă și o mulțime de tutoriale (inclusiv tutoriale video) pentru a vă ajuta pe parcursul procesului. Adăugați câteva linii de cod la exemplele existente și puteți începe să inventați.

6. Blynk

Datorită designului său frumos, Blynk vă permite să creați interfețe cu utilizatorul pentru Arduino și controlați-le folosind USB, ethernet, Wi-Fi și Bluetooth. Partajarea proiectele au devenit mai ușoare, trebuie doar să distribuiți linkul către el.

7. Controler Wifi IoT

Controlerul Wifi IoT are o interfață unică care afișează configurația fiecăruia dintre pinii Arduino IO. Comutați GPIO la un nivel ridicat sau scăzut și vizualizați-l în timp real. Este afișată și valoarea ADC. Se conectează la placă folosind telefonul sau printr-un router.

Te-ai găsit singur în această listă aplicație pentru Android pentru a controla Arduino? Împărtășește-ți feedback-ul și sugestiile în comentariile din grupul nostru VKontakte.

În acest proiect vreau să arăt cum să încarc o schiță pe Arduino folosind dispozitiv convențional bazat pe sistem de operare Android. Acest dispozitiv poate fi util pentru plăcile Arduino instalate permanent, cum ar fi controlerele de iluminat...

Pasul 1: Materiale și instrumente

Materiale:

Cablu USB-A la USB-B
Cablu USB la gazdă (cablu OTG)
Arduino
1 LED (pentru testare)
dispozitiv Android, Android OS versiunea 4.0.0+ (sau cu suport pentru modul gazdă)

Software:

ArduinoDroid sau ArduinoCommander, care poate fi descărcat din Google Play Store

Pasul 2: cablu USB la gazdă

Un cablu USB la gazdă este practic același cu un cablu USB, dar conectorul micro USB are rezistențe diferite. Rezistoarele interne permit dispozitivului Android să activeze modul USB-Host. În acest mod, puteți utiliza și unități flash USB sau alte dispozitive care acceptă o interfață USB. Acest lucru este foarte caracteristică utilă, iar acum puteți chiar să conectați o imprimantă USB.

Problema este că după conexiuni USB dispozitiv, acesta va primi energie de la dispozitivul gazdă, descarcându-și astfel bateria.

Pasul 3: Conexiuni

Acesta este un pas foarte simplu și nu necesită multă atenție. Doar lipiți Cablu USB-A– USB-B la USB conector mamă cablu gazdă. Apoi conectați conectorul USB-B la Arduino și Micro USB la dispozitivul Android.

Pasul 4: Pornirea Arduino

Toate conexiunile trebuie făcute așa cum se arată în fotografie. Apoi, puteți porni Arduino și încărcați cel mai recent cod descărcat în el. Am folosit schița Blink pe Arduino. Dacă Arduino nu pornește, atunci verificați dacă conexiunile sunt corecte.

Pasul 5: Aplicații

Acum Arduino este gata să descarce codul, dar dispozitivul dvs. Android nu este încă...

Să schimbăm această situație!

Pe în acest moment Există două aplicații care vă permit să lucrați cu Arduino prin modul Gazdă.

Pentru a le descărca, accesați site-ul Play Store, apoi introduceți „Arduino” în bara de căutare. Apoi, faceți clic pe „Aplicații”, după care vor fi afișate doar aplicațiile. Avem nevoie de două aplicații: „ArduinoDroid” și „ArduinoCommander”. Instalați-le, apoi lansați „ArduinoDroid”. Această aplicație trebuie să actualizeze IDE-ul, ceea ce va dura ceva timp. Aplicația „ArduinoCommander” va fi necesară în continuare.

Notă: Nu este necesar să folosiți ambele aplicații în același timp, vreau doar să vă arăt cum funcționează ambele!

Pasul 6: ArduinoCommander, autorul programului Anton Smirnov

Ei bine, să începem cu aplicația ArduinoCommander. A fost dezvoltat de Anton Smirnov pentru Andorid versiunea 2.2 sau mai recentă.

Această aplicație este proiectată să funcționeze cu Arduino folosind un dispozitiv Android. Cu acesta, puteți schimba cu ușurință stările pinului (setat direct la mare sau la scăzut), puteți încărca schițe sau puteți citi pinii analogici în modul osciloscop.

Această aplicație este ușor de înțeles, chiar dacă controalele nu sunt standard. Detectează automat Arduino și funcționează foarte stabil.

Cu toate acestea, unele funcții nu funcționează. Sper că aceste erori vor fi remediate în versiunile viitoare ale aplicației. Încărcarea schiței a avut succes!

pun pariu această aplicație 4.0 din 5 stele.

Acum să aruncăm o privire rapidă la conectarea la Arduino.

Pasul 7: Partea 1

Alte opțiuni includ:
Ethernet
Bluetooth
Suplimente USB

Pasul 8: Partea 2

Acum faceți clic pe „Detectare automată”. Dispozitivul Android va porni căutare automată Arduino îl va afișa apoi pe ecran. Acum să selectăm Arduino (doar să facem clic pe el).

Pasul 9: Partea 3

După finalizarea pasului anterior, Arduino nostru va fi afișat pe ecran. De obicei, este afișat în culoare și puteți face clic pe pini pentru a le schimba modul. Cu toate acestea, selecția modului nu a funcționat pentru mine și nu am putut rezolva această problemă; Poate că totul va funcționa pentru tine fără eșecuri. Când faceți clic pe colțul din dreapta jos, veți ajunge la un meniu care vă va permite să descărcați schițele de pe cardul SD. Această caracteristică funcționează foarte bine.

Pasul 10: ArduinoDroid

Acum să trecem la o altă aplicație care vă permite să încărcați schițe pe Arduino. Această aplicație se numește „ArduinoDroid” și funcționează pentru Android versiunea 4.2.2 sau mai recentă. Autorul acestei aplicații este și Anton Smirnov!