Sadržaj:

Arduino pametni telefon Coms/serijski monitor putem Bluetootha HC-05, HC-06: 4 koraka (sa slikama)
Arduino pametni telefon Coms/serijski monitor putem Bluetootha HC-05, HC-06: 4 koraka (sa slikama)

Video: Arduino pametni telefon Coms/serijski monitor putem Bluetootha HC-05, HC-06: 4 koraka (sa slikama)

Video: Arduino pametni telefon Coms/serijski monitor putem Bluetootha HC-05, HC-06: 4 koraka (sa slikama)
Video: ESP8266 ESP01 WI-FI-UART | Программирование LDmicro-Roboremo 2024, Juli
Anonim
Arduino pametni telefon Coms/serijski monitor putem Bluetooth-a HC-05, HC-06
Arduino pametni telefon Coms/serijski monitor putem Bluetooth-a HC-05, HC-06

Ovo je nevjerovatno korisno ako želite isprobati svoju skicu u stvarnom okruženju, daleko od računara. Ishod je da vaš pametni telefon djeluje isto kao i Arduino serijski monitor na vašem računaru. Bluetooth moduli HC-05 i HC-06 dostupni su za oko 3 funte na ebayu, a postoji mnogo besplatnih aplikacija za pametne telefone koje možete izabrati. Nadamo se da ćete izbjeći nekoliko zamki slijedeći primjere ovdje. Ovdje korištena besplatna aplikacija za pametne telefone može spremiti primljeni tekst u datoteku za kasniju upotrebu. Ne morate mijenjati svoje skice jer se koriste iste serijske pinove.

Ovo sam prvi put upotrijebio prilikom testiranja uređaja koji mjeri udaljenost koju automobili daju kada me pretječu na biciklu. Mogao sam snimiti mjerenja udaljenosti snimljena 30 puta u sekundi na svoj telefon gdje su sačuvani u datoteku. Kasnije sam to analizirao videom koji sam snimio i sportskom kamerom i aplikacijom za praćenje koja mi daje brzinu i lokaciju.

Trebat će vam:

  • Vaš omiljeni Arduino (ovdje se koristi Uno)
  • HC-05 ili HC-06 Bluetooth modul
  • Pametni telefon (ovdje se koristi Android telefon) i besplatna Bluetooth aplikacija

Koraci:

  • Instalirajte besplatnu Bluetooth aplikaciju
  • Konfigurirajte Bluetooth modul
  • Povežite Bluetooth na Arduino
  • Učitaj primjer skice
  • Test sistem

Korak 1: Instalirajte Bluetooth aplikaciju

Dostupne su mnoge Bluetooth aplikacije, a mnoge su besplatne. Koristim Android telefone, ali očekujem da će isto biti i s drugim sistemima. Odlučio sam koristiti BlueTerm 2 jer pruža i mogućnost bilježenja primljenih podataka u datoteku. Također sam smatrao da je vrlo jednostavan za upotrebu. Idite na Google Play i zatražite preuzimanje BlueTerm 2.

Kada imate instaliranu aplikaciju, možete se povezati s Bluetooth uređajima. Imajte na umu da Bluetooth uređaj prvo morate upariti s telefonom da biste ga mogli koristiti u bilo kojoj aplikaciji:

Uključite BlueTooth: Idem putem Postavke> Bluetooth.

Telefon će prikazati već uparene uređaje i nakon nekoliko sekundi prikazati dostupne uređaje. Ime bi se u početku moglo prikazati kao skup brojeva, a ne kao naziv uređaja. Međutim, odabirom tada prikazuje se ime i traži PIN koji je obično 1234.

Sada pokrenite BlueTerm 2. Kliknite postavke, zatim kliknite Poveži uređaj i odaberite prema potrebi. Možete samo uključiti HC-05/HC-06 modul u ovoj fazi i provjeriti postupak uparivanja ako želite (priključite negativno napajanje na masu i 5v na Vcc).

Image
Image

Korak 2: Konfigurirajte Bluetooth modul - 1. dio - Veze i HC -06

Ako želite koristiti zadano ime i brzinu prijenosa, ovaj korak možete preskočiti. Zadane vrijednosti su naziv: HC-05 ili HC-06 i baud: 9600. Prednost ponovnog konfiguriranja modula je u tome što se mogu izabrati brže brzine prijenosa i ime se može postaviti na nešto lakše prepoznavanje.

Konfiguraciji su potrebne naredbe za slanje s računala na modul putem serijske veze. FDTI USB serijska veza je idealna, pogotovo ako ima opciju 3.3V. Međutim, Arduino ploče imaju USB na serijski pretvarač, pa se i ovo može koristiti, a ovo je metoda prikazana ovdje. Da biste to učinili, najbolje je onemogućiti serijski port glavnog procesora Arduino kako bismo mogli komunicirati između računala i Bluetooth modula bez smetnji.

Skica za onemogućavanje Arduino serije sadrži samo upute:

pinMode (0, INPUT):

pinMode (1, INPUT);

u odjeljku za postavljanje {}.

Priložio sam skicu NoSerial.ino. Kreirajte fasciklu pod nazivom 'NoSerial' u mapi skica i u nju dodajte NoSerial.ino. Pokrenite Arduino IDE, idite na Datoteka> Sketchbook> skice> NoSerial da biste otvorili skicu. Odaberite vrstu ploče i port s izbornika Alati i kliknite gumb za preuzimanje.

Veza za konfiguraciju

Sa učitanom skicom sada možemo spojiti Bluetooth modul na Arduino ploču. Tx i Rx veze su zamijenjene u odnosu na ono što ćemo kasnije učiniti jer želimo komunicirati s računarskim portom za serijski monitor, a ne za glavni procesor Arduino. PC Tx je spojen na Arduino Rx i obrnuto.

Imajte na umu da Bluetooth moduli imaju nivoe 3.3v za Tx i Rx. Stoga bi se za povezivanje na Bluetooth 5x sustav trebao koristiti razdjelnik napona za Bluetooth Rx ulaz. Bluetooth 3.3v Tx izlaz obično dobro prepoznaju 5v sistemi i stoga se može direktno povezati.

Otkrio sam da razdjelnik napona pomoću otpornika 3k3 i 6k8 radi do 115200 serijskih brzina prijenosa.

Moduli HC05 i HC06 imaju ugrađene regulatore napona i stoga rade s Vcc spojenim na 5v.

Zato se povežite:

  • 3k3 otpornik na D0
  • 6k8 otpornik na masu
  • Spojite druge krajeve dva otpornika zajedno sa Rx pinom na Bluetooth modulu
  • Spojite Tx pin Bluetooth modula na D1
  • Spojite iglu za uzemljenje Bluetooth modula na GND Priključite iglu za uzemljenje Bluetooth modula na GND
  • Spojite Vcc pin Bluetooth modula na 5v

Za detalje pogledajte sliku.

Image
Image

Da biste konfigurirali modul, potrebno ga je postaviti u AT način rada. Postupak je različit za module HC-05 i HC-06.

HC-06

Ovo su najlakši. Oni se postavljaju u AT način rada ako nisu upareni s bilo kojim uređajem. Međutim, postavka prijenosa bit će onakva kakva je normalna operativna brzina prijenosa postavljena. To je obično 9600 ako se isporučuje. Ako ovo ne uspije, pokušajte s 38400 ili drugim uobičajenim tarifama.

Spojite USB kabel s računala na Arduino i pokrenite Arduino IDE. Bluetooth LED dioda će brzo bljeskati (~ 4Hz) kada je u AT načinu rada.

Otvorite Arduino serijski monitor putem Alati> Serijski monitor. Postavite brzinu prijenosa na 9600 i postavite "Bez završetka linije".

Sada unesite AT i kliknite Pošalji. Ako sve radi, na monitoru ćete vidjeti „OK“. Ako se ništa ne vrati, provjerite ožičenje i pokušajte s različitim postavkama Bauda.

Uz OK koji potvrđuje dobru komunikaciju možemo promijeniti naziv i postaviti vlastitu brzinu prijenosa.

Unesite AT+NAMEARDUINO i kliknite pošalji. Ovo postavlja ime modula na ARDUINO. Može se koristiti bilo koji drugi tekst. Zapazite da u naredbi nema razmaka.

Odgovor bi trebao biti OKsetname. Ovo se dodaje ranije poslanom OK -u

Sada unesite AT+BAUD8. Time se baud postavlja na 115200.

Odgovor bi trebao biti OK115200. Ako se žele poslati još neke AT naredbe, postavku serijskog monitora morate promijeniti na 115200.

Mogu se postaviti i druge stope. Baud4 je 9600, Baud5 je 19200, Baud6 38400, Baud7 57600. Postoje veće postavke od 115200, ali prvo provjerite da li ih vaše računalo i Arduino mogu prihvatiti (moje ne može premašiti 128000). Napomena - Ako postavite previsoku stopu, nećete moći komunicirati s njom da biste je vratili !!!

Image
Image

Korak 3: Konfigurirajte Bluetooth modul - 2. dio - HC -05 i početno ispitivanje

HC-05

Oni imaju komplikaciju da se moraju ručno postaviti u AT način rada. U priručniku se kaže da ako se nakon uključivanja aktivira AT način rada, postavka Bauda će se nastaviti brzinom koja je već postavljena za normalnu komunikaciju. Nisam mogao ovo natjerati da funkcionira! Ako je ipak AT način rada uključen, baud je postavljen na 38400. Stoga je ova druga opcija najpouzdanija jer možemo biti sigurni da je baud 38400.

Otvorite Arduino serijski monitor putem Alati> Serijski monitor. Postavite baud na 38400 i postavite ‘Carriage Return’.

Sljedeći korak je prebacivanje ploče u AT način rada. Tu se javlja većina problema zbog razlika u nosačima.

Osnovni proces je držati iglu „ključa“(iglica 34) nisku nekoliko sekundi pri uključivanju.

Moja ploča ima dugme za to (dva dodatna priključna pina su EN i STATE). Odspojite Vcc žicu s Bluetooth modula. Zatim, dok držite pritisnuto dugme, ponovo primijenite 5v na Vcc. LED dioda bi trebala treptati u intervalima od približno 2 sekunde. Držim dugme do drugog treptaja.

Neke ploče imaju Key pin kao jedan od 6 pinova na modulu. Ako je tako, povežite ga na 3,3 V tokom uključivanja.

Neke ploče nemaju niti jedno, a korisnici su morali lemiti dugme između pinova ključa (34) i 3,3v (pina 12). Pogledajte priloženi priručnik.

Sa LED -om koja polako treperi možemo provjeriti komunikaciju. Unesite AT i kliknite Pošalji. Odgovor bi trebao biti u redu. Otkrio sam da se ovaj odgovor stalno ponavljao sve dok nisam poslao prazan red - samo kliknite pošalji. Ako dobijete GREŠKU: (0), pošaljite prazan red, a zatim pošaljite AT.

Sada postavite novo ime. Unesite AT+IME = ARDUINO Odgovor bi trebao biti u redu. Međutim, u mom slučaju modul se vratio iz AT načina rada (LED brzo treperi). Nisam mogao pronaći uzrok, a to se dogodilo i pri korištenju serijske veze FDTI umjesto Arduina. Vratio sam se u AT način rada kao i prije: Isključivanje kabela za napajanje s ploče i ponovno spajanje dok je dugme pritisnuto. Kasnije provjere pokazale su da je ime promijenjeno.

Zatim postavite Baud. Unesite AT+UART = 115200, 1, 0 Odgovor bi trebao biti u redu. Međutim, ponekad je iskočio iz AT načina rada kao gore.

UART postavku možete provjeriti naredbom: AT+UART? Odgovor bi trebao biti u redu i +UART = 115200, 1, 0

Početni test

U ovoj fazi imamo PC sa serijskom vezom na Bluetooth modul. Dakle, početni, izborni test može se obaviti pokretanjem aplikacije BlueTerm 2 za pametni telefon (pod pretpostavkom da je modul već uparen s telefonom). Povežite se na ARDUINO. Postavite Arduino serijski monitor na 115200 bauda. Upišite 'Hello World' i kliknite pošalji. Ovo bi se sada trebalo pojaviti na BlueTerm -u 2. Sada upišite 'Hello to you' u BlueTerm 2. Ovo bi se sada trebalo pojaviti na Serijskom monitoru.

Image
Image
Image
Image

Korak 4: Povežite Bluetooth modul s Arduinom

Moramo prvo učitati našu skicu Arduino testa. Priloženi BTtest.ino šalje broj svakih 0,5 s, a zatim ga povećava, prelazeći na 0 sa 255. Kreirajte fasciklu pod nazivom BTtest u mapi skica i dodajte BTtest.ino

Arduino serijska veza također se koristi za preuzimanje skica. Stoga se dvije žice na Bluetooth modulu moraju odspojiti kako ne bi ometale.

Nakon preuzimanja skice, ponovo povežite Bluetooth modul. Imajte na umu da je potrebno zamijeniti Tx i Rx na Arduinu u usporedbi s ranijim postavkama konfiguracije.

Zato se povežite:

  • 3k3 otpornik prema D1
  • 6k8 otpornik na masu
  • Spojite druge krajeve dva otpornika zajedno sa Rx pinom na Bluetooth modulu
  • Spojite Tx pin Bluetooth modula na D0
  • Spojite iglu za uzemljenje Bluetooth modula na GND Priključite iglu za uzemljenje Bluetooth modula na GND
  • Spojite Vcc pin Bluetooth modula na 5v

Za detalje pogledajte sliku.

Image
Image

Sada uključite Arduino. Ne mora biti povezan sa računarom.

Uparite ploču sa pametnim telefonom ako već nije povezana (pogledajte Instaliranje Bluetooth aplikacije gore). Zatim pokrenite BlueTerm 2, kliknite postavke, zatim kliknite Poveži uređaj i odaberite ARDUINO. Trebali biste vidjeti zaslon ispunjen brojevima koji se povećavaju od 0 do 255.

Image
Image

Nadam se da će vam ovo biti korisno kao i meni.

Mike

Bluetooth izazov
Bluetooth izazov
Bluetooth izazov
Bluetooth izazov

Drugoplasirani u Bluetooth izazovu

Preporučuje se: