Indholdsfortegnelse:

Arduino Smartphone Coms/Serial Monitor Via Bluetooth HC-05, HC-06: 4 trin (med billeder)
Arduino Smartphone Coms/Serial Monitor Via Bluetooth HC-05, HC-06: 4 trin (med billeder)

Video: Arduino Smartphone Coms/Serial Monitor Via Bluetooth HC-05, HC-06: 4 trin (med billeder)

Video: Arduino Smartphone Coms/Serial Monitor Via Bluetooth HC-05, HC-06: 4 trin (med billeder)
Video: Светодиодный контроллер Arduino Bluetooth с Bluetooth-модулем Android HC-05 | Разработчик прилож MIT 2024, Juli
Anonim
Arduino Smartphone Coms/Serial Monitor Via Bluetooth HC-05, HC-06
Arduino Smartphone Coms/Serial Monitor Via Bluetooth HC-05, HC-06

Dette er utrolig nyttigt, hvis du vil teste din skitse i et virkeligt miljø uden for din pc. Resultatet er, at din smartphone fungerer på samme måde som den Arduino serielle skærm på din pc. HC-05 og HC-06 Bluetooth-modulerne fås for omkring £ 3 på ebay, og der er mange gratis smartphone-apps at vælge imellem. Der er et par faldgruber, som du forhåbentlig vil undgå ved at følge eksemplerne her. Den gratis smartphone -app, der bruges her, kan også gemme den modtagne tekst i en fil til senere brug. Der kræves ingen ændringer i dine skitser, da de samme serielle ben bruges.

Jeg brugte det først, da jeg testede en enhed, der måler afstanden, biler giver, når de overhaler mig på min cykel. Jeg kunne registrere afstandsmålinger taget 30 gange i sekundet på min telefon, hvor de blev gemt i en fil. Jeg analyserede dette senere med video, som jeg også optog ved hjælp af et sportskamera og min sporingsapp, der gav min hastighed og placering.

Du får brug for:

  • Din yndlings Arduino (Uno brugt her)
  • HC-05 eller HC-06 Bluetooth-modul
  • En smartphone (Android -telefon bruges her) og gratis Bluetooth -app

Trin:

  • Installer gratis Bluetooth -app
  • Konfigurer Bluetooth -modul
  • Tilslut Bluetooth til Arduino
  • Indlæs eksempelskitse
  • Testsystem

Trin 1: Installer Bluetooth App

Der er mange Bluetooth -apps tilgængelige, og mange er gratis. Jeg bruger Android -telefoner, men jeg forventer, at det samme er tilfældet for de andre systemer. Jeg besluttede at bruge BlueTerm 2, da det også giver mulighed for at logge de modtagne data til filen. Jeg fandt det også meget ligetil at bruge. Så gå til Google Play og anmod om download af BlueTerm 2.

Når du har appen installeret, kan du oprette forbindelse til Bluetooth -enheder. Bemærk, at Bluetooth -enhed først skal parres med telefonen, før de kan bruges i alle apps:

Tænd for BlueTooth: Jeg går via Indstillinger> Bluetooth.

Telefonen viser en liste over allerede parrede enheder og viser efter få sekunder derefter tilgængelige enheder. Navnet kan i første omgang vises som et sæt tal frem for enhedsnavnet. Men hvis du vælger det, vises navnet og beder om PIN -koden, der normalt er 1234.

Start nu BlueTerm 2. Klik på indstillinger, klik derefter på Tilslut enhed, og vælg efter behov. Du kan bare tænde et HC-05/HC-06-modul på dette trin og kontrollere parringsprocessen, hvis du ønsker det (tilslut negativ forsyning til jorden og 5v til Vcc).

Billede
Billede

Trin 2: Konfigurer Bluetooth -modul - del 1 - Forbindelser og HC -06

Hvis du er glad for at bruge standardnavnet og baudhastigheden, kan du springe dette trin over. Standardindstillingerne er navn: HC-05 eller HC-06 og baud: 9600. Fordelen ved at genkonfigurere modulet er, at hurtigere baudhastigheder kan vælges, og navnet kan indstilles til noget, der er lettere at genkende.

Konfiguration kræver kommandoer for at blive sendt fra en pc til modulet via en seriel forbindelse. Et FDTI USB serielt link er ideelt, især hvis det har en 3.3v mulighed. Arduino -kort har dog en USB til seriel konverter, og derfor kan dette også bruges, og det er metoden vist her. For at gøre dette er det bedst at deaktivere den serielle port på Arduino -hovedprocessoren, så vi kan kommunikere mellem pc'en og Bluetooth -modulet uden forstyrrelser.

Skitsen til at deaktivere Arduino -serien har simpelthen instruktionerne:

pinMode (0, INPUT):

pinMode (1, INPUT);

i opsætningsafsnittet {}.

Jeg har vedhæftet skitsen NoSerial.ino. Opret en mappe kaldet 'NoSerial' i din sketches -mappe, og tilføj NoSerial.ino til denne. Start Arduino IDE, naviger til File> Sketchbook> sketches> NoSerial for at åbne skitsen. Vælg tavletype og Port i menuen Værktøjer, og klik på download -knappen.

Tilslutning til konfiguration

Med skitsen indlæst kan vi nu forbinde Bluetooth -modulet til Arduino -kortet. Tx- og Rx -forbindelserne byttes i forhold til, hvad vi senere vil gøre, da vi vil kommunikere med pc -porten til Serial Monitor og ikke Arduino -hovedprocessoren. PC Tx er forbundet til Arduino Rx og omvendt.

Bemærk, at Bluetooth -modulerne har 3.3v niveauer for Tx og Rx. Derfor skal der bruges en spændingsdeler til Bluetooth Rx -indgangen ved tilslutning til 5v -systemer. Bluetooth 3.3v Tx -udgangen registreres normalt fint af 5v -systemer og kan derfor forbindes direkte.

Jeg har fundet ud af, at en spændingsdeler ved hjælp af 3k3 og 6k8 modstande fungerer op til 115200 serielle baudhastigheder.

HC05 og HC06 modulerne har indbyggede spændingsregulatorer og kører derfor med Vcc tilsluttet 5v.

Så tilslut:

  • 3k3 modstand til D0
  • 6k8 modstand til jord
  • Forbind de andre ender af de to modstande sammen og til Rx -stiften på Bluetooth -modulet
  • Tilslut Bluetooth -modulets Tx -pin til D1
  • Slut Bluetooth -modulets jordstift til GND Slut Bluetooth -modulets jordstift til GND
  • Tilslut Bluetooth -modulets Vcc -pin til 5v

Se billede for detaljer.

Billede
Billede

For at konfigurere modulet skal det sættes i AT -tilstand. Fremgangsmåden er anderledes for HC-05 og HC-06 modulerne.

HC-06

Disse er de letteste. De sætter sig i AT -tilstand, hvis de ikke er parret med nogen enhed. Baud -indstillingen vil dog være uanset den normale drifts -baud er blevet indstillet til. Dette er normalt 9600, når det leveres. Hvis dette ikke virker, prøv 38400 eller andre almindelige takster.

Tilslut USB -kablet fra pc'en til Arduino, og start Arduino IDE. Bluetooth -LED'en blinker hurtigt (~ 4Hz) i AT -tilstand.

Åbn Arduino Serial -skærmen via Værktøjer> Seriel skærm. Indstil baud til 9600 og indstil 'No line ending'.

Indtast nu AT, og klik på Send. Hvis alt fungerer, vil du se 'OK' returneres til skærmen. Hvis intet kommer tilbage, skal du kontrollere ledningerne og prøve forskellige Baud -indstillinger.

Med en OK, der bekræfter god kommunikation, kan vi ændre navnet og angive egen Baud -hastighed.

Indtast AT+NAMEARDUINO, og klik på Send. Dette indstiller modulnavnet til ARDUINO. Enhver anden tekst kan bruges. Bemærk ingen mellemrum i kommandoen.

Svaret skal være OKsetname. Dette tilføjes til OK sendt tidligere

Indtast nu AT+BAUD8. Dette indstiller baud til 115200.

Svaret skal være OK115200. Hvis der skal sendes flere AT -kommandoer, skal indstillingen for seriel monitor baud ændres til 115200.

Andre satser kan fastsættes. Baud4 er 9600, Baud5 er 19200, Baud6 38400, Baud7 57600. Der er højere indstillinger end 115200, men tjek først, at din pc og Arduino kan acceptere dem (min må ikke overstige 128000). Bemærk - Hvis du indstiller en hastighed, der er for høj, vil du ikke kunne kommunikere med den for at sætte den tilbage !!!

Billede
Billede

Trin 3: Konfigurer Bluetooth -modul - del 2 - HC -05 og indledende test

HC-05

Disse har den komplikation, at de skal indstilles manuelt til AT -tilstand. Manualen siger, at hvis AT -tilstand udløses efter opstart, fortsætter Baud -indstillingen med den hastighed, der allerede er indstillet for normal kommunikation. Jeg kunne ikke få det til at fungere! Hvis imidlertid AT -tilstand er indstillet til strøm på, er baud indstillet til 38400. Derfor er sidstnævnte mulighed den mest pålidelige, da vi kan være sikre på, at baud er 38400.

Åbn Arduino Serial -skærmen via Værktøjer> Seriel skærm. Indstil baud til 38400, og sæt 'Carriage Return'.

Det næste trin er at få brættet i AT -tilstand. Det er her, de fleste problemer opstår på grund af forskelle i transportbrædderne.

Den grundlæggende proces er at holde 'nøgle' pin (pin 34) lav et par sekunder ved opstart.

Mit bord har en knap til at gøre dette (de to ekstra tilslutningsstifter er EN og STATE). Afbryd Vcc -ledningen fra Bluetooth -modulet. Mens du holder knappen nede, skal du derefter igen anvende 5v til Vcc. LED'en skal blinke med cirka 2 sekunders mellemrum. Jeg holder knappen inde, indtil det andet blink.

Nogle tavler har en nøglepind som en af de 6 ben til modulet. I så fald skal du binde dette til 3,3v under opstart.

Nogle tavler har ingen af dem, og brugerne har været nødt til at lodde en knap mellem nøglestiften (34) og 3,3v (nål 12). Se vedhæftede manual.

Med LED'en langsomt blinkende kan vi kontrollere kommunikationen. Indtast AT, og klik på Send. Svaret skal være OK. Jeg fandt ud af, at dette svar blev gentaget hele tiden, indtil jeg sendte en tom linje - klik bare på send. Hvis du får FEJL: (0), send derefter en tom linje og send derefter AT.

Indstil nu et nyt navn. Indtast AT+NAME = ARDUINO Svaret skal være OK. Men i mit tilfælde nulstilles modulet fra AT -tilstand (LED blinker hurtigt). Jeg kunne ikke finde årsagen, og dette skete også, når jeg brugte en FDTI seriel forbindelse frem for Arduino. Jeg kom tilbage til AT -tilstand som før: Afbryd strømkablet til kortet og tilslut igen, mens der blev trykket på knappen. Senere kontrol viste, at navnet var ændret.

Indstil derefter Baud. Indtast AT+UART = 115200, 1, 0 Svaret skal være OK. Det hoppede dog nogle gange ud af AT -tilstand som ovenfor.

UART -indstillingen kan kontrolleres med kommandoen: AT+UART? Svaret skal være OK og +UART = 115200, 1, 0

Indledende test

På dette tidspunkt har vi pc'en med en seriel forbindelse til Bluetooth -modulet. Så en indledende, valgfri test kan udføres ved at starte smartphone BlueTerm 2 -appen (forudsat at modulet allerede er parret med telefonen). Opret forbindelse til ARDUINO. Indstil Arduino Serial Monitor til 115200 baud. Skriv 'Hej verden', og klik på Send. Dette skal nu vises på BlueTerm 2. Skriv nu 'Hej til dig' i BlueTerm 2. Dette skal nu vises i Serial Monitor.

Billede
Billede
Billede
Billede

Trin 4: Tilslut Bluetooth -modul til Arduino

Vi skal først indlæse vores Arduino testskitse. Den vedhæftede BTtest.ino sender et nummer hver 0,5 sekund og øger det derefter og ruller over til 0 fra 255. Opret en mappe kaldet BTtest i din skitsemappe, og tilføj BTtest.ino

Arduino seriel forbindelse bruges også til at downloade skitser. Så de to ledninger til Bluetooth -modulet skal afbrydes, så det ikke forstyrrer.

Efter download af skitsen skal du tilslutte Bluetooth -modulet igen. Bemærk dog, at Tx og Rx på Arduino skal byttes i forhold til den tidligere konfigurationsopsætning.

Så tilslut:

  • 3k3 modstand til D1
  • 6k8 modstand til jord
  • Forbind de andre ender af de to modstande sammen og til Rx -stiften på Bluetooth -modulet
  • Tilslut Bluetooth -modulets Tx -pin til D0
  • Tilslut Bluetooth -modulets jordstift til GND Slut Bluetooth -modulets jordstift til GND
  • Tilslut Bluetooth -modulets Vcc -pin til 5v

Se billedet for detaljer.

Billede
Billede

Tænd nu for Arduino. Det behøver ikke at være forbundet til en pc.

Par kortet med smartphonen, hvis den ikke allerede er tilsluttet (se Installer Bluetooth -app ovenfor). Start derefter BlueTerm 2, klik på indstillinger, klik derefter på Tilslut enhed, og vælg ARDUINO. Du skal se skærmen fylde med tal, der øges fra 0 til 255.

Billede
Billede

Jeg håber, at du finder dette lige så nyttigt som jeg har.

Mike

Bluetooth -udfordring
Bluetooth -udfordring
Bluetooth -udfordring
Bluetooth -udfordring

Runner Up i Bluetooth Challenge

Anbefalede: