Innholdsfortegnelse:

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

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

Video: Arduino Smartphone Coms/Serial Monitor Via Bluetooth HC-05, HC-06: 4 trinn (med bilder)
Video: Amazing arduino project 2024, November
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 nyttig hvis du vil teste skissen din i et ekte miljø, vekk fra PC -en. Resultatet er at smarttelefonen din fungerer på samme måte som Arduino seriell skjerm på PCen. Bluetooth-modulene HC-05 og HC-06 er tilgjengelige for rundt £ 3 på ebay, og det er mange gratis smarttelefonapper å velge mellom. Det er noen få fallgruver som du forhåpentligvis vil unngå ved å følge eksemplene her. Den gratis smarttelefonappen som brukes her, kan også lagre teksten som er mottatt i en fil for senere bruk. Det er ingen endring nødvendig for skissene dine, siden de samme serielle pinnene brukes.

Jeg brukte dette først når jeg testet en enhet som måler avstanden bilene gir når jeg forbikjører meg på sykkelen min. Jeg klarte å registrere avstandsmålinger tatt 30 ganger i sekundet på telefonen min der de ble lagret i en fil. Jeg analyserte dette senere med video som jeg også spilte inn ved hjelp av en sportskamera og min sporingsapp som ga meg hastighet og plassering.

Du vil trenge:

  • Din favoritt Arduino (Uno brukt her)
  • HC-05 eller HC-06 Bluetooth-modul
  • En smarttelefon (Android -telefon brukt her) og gratis Bluetooth -app

Trinn:

  • Installer gratis Bluetooth -app
  • Konfigurer Bluetooth -modul
  • Koble Bluetooth til Arduino
  • Last inn eksempelskisse
  • Testsystem

Trinn 1: Installer Bluetooth -appen

Det er mange Bluetooth -apper tilgjengelig, og mange er gratis. Jeg bruker Android -telefoner, men jeg forventer at det samme er tilfelle for de andre systemene. Jeg bestemte meg for å bruke BlueTerm 2 ettersom det også gir muligheten til å logge dataene som er mottatt til filen. Jeg syntes også det var veldig enkelt å bruke. Så gå til Google Play og be om nedlasting av BlueTerm 2.

Når du har appen installert, kan du koble til Bluetooth -enheter. Vær oppmerksom på at Bluetooth -enheten først må kobles til telefonen før den kan brukes i alle apper:

Slå på BlueTooth: Jeg går via Innstillinger> Bluetooth.

Telefonen viser en liste over allerede sammenkoblede enheter, og etter noen sekunder viser de tilgjengelige enheter. Navnet kan i utgangspunktet vises som et sett med tall i stedet for enhetsnavnet. Men hvis du velger det, vises navnet og ber om PIN -koden som vanligvis er 1234.

Start nå BlueTerm 2. Klikk på innstillinger, klikk deretter på Koble til enhet og velg etter behov. Du kan bare slå på en HC-05/HC-06-modul på dette stadiet og sjekke sammenkoblingsprosessen hvis du ønsker det (koble negativ forsyning til bakken og 5v til Vcc).

Bilde
Bilde

Trinn 2: Konfigurer Bluetooth -modul - del 1 - Tilkoblinger og HC -06

Hvis du er glad i å bruke standardnavnet og overføringshastigheten, kan du hoppe over dette trinnet. Standardinnstillingene er navn: HC-05 eller HC-06 og baud: 9600. Fordelen med å konfigurere modulen på nytt er at raskere overføringshastigheter kan velges og navnet kan settes til noe som er lettere å gjenkjenne.

Konfigurasjon trenger kommandoer for å bli sendt fra en PC til modulen via en seriell tilkobling. En FDTI USB seriell lenke er ideell, spesielt hvis den har et alternativ på 3,3v. Arduino -kort har imidlertid en USB til seriell omformer, og derfor kan dette også brukes, og dette er metoden som vises her. For å gjøre dette er det best å deaktivere den serielle porten på Arduino -hovedprosessoren, slik at vi kan kommunisere mellom PC og Bluetooth -modulen uten forstyrrelser.

Skissen for å deaktivere Arduino -serien har ganske enkelt instruksjonene:

pinMode (0, INPUT):

pinMode (1, INNGANG);

i oppsettet {}.

Jeg har lagt ved skissen NoSerial.ino. Lag en mappe som heter ‘NoSerial’ i skisse -mappen din, og legg til NoSerial.ino i dette. Start Arduino IDE, naviger til Fil> Skissebok> skisser> NoSerial for å åpne skissen. Velg brettype og Port fra Verktøy -menyen og klikk på nedlastingsknappen.

Tilkobling for konfigurasjon

Med skisse lastet kan vi nå koble Bluetooth -modulen til Arduino -kortet. Tx- og Rx -tilkoblingene byttes i forhold til hva vi skal gjøre senere, ettersom vi ønsker å kommunisere med PC -porten for seriell monitor og ikke Arduino -hovedprosessoren. PC Tx er koblet til Arduino Rx og omvendt.

Vær oppmerksom på at Bluetooth -modulene har 3.3v nivåer for Tx og Rx. Derfor bør en spenningsdeler brukes for Bluetooth Rx -inngangen når du kobler til 5v -systemer. Bluetooth 3.3v Tx -utgangen oppdages vanligvis fint av 5v -systemer og kan derfor kobles direkte.

Jeg har funnet ut at en spenningsdeler som bruker 3k3 og 6k8 motstander fungerer opp til 115200 serielle overføringshastigheter.

HC05- og HC06-modulene har innebygde spenningsregulatorer og kjøres derfor med Vcc koblet til 5v.

Så koble til:

  • 3k3 motstand til D0
  • 6k8 motstand til bakken
  • Koble de andre endene av de to motstandene sammen og til Rx -pinnen på Bluetooth -modulen
  • Koble Bluetooth -modulens Tx -pin til D1
  • Koble Bluetooth -modulens jordingsstift til GND Koble Bluetooth -modulens jordingsstift til GND
  • Koble Bluetooth -modulens Vcc -pin til 5v

Se bildet for detaljer.

Bilde
Bilde

For å konfigurere modulen må den settes til AT -modus. Fremgangsmåten er annerledes for modulene HC-05 og HC-06.

HC-06

Disse er de enkleste. De setter seg i AT -modus hvis de ikke er sammenkoblet med noen enhet. Imidlertid vil baud -innstillingen være den normale drifts -baud som er satt til. Dette er normalt 9600 når det leveres. Hvis dette ikke fungerer, prøv 38400 eller andre vanlige priser.

Koble USB -kabelen fra PC til Arduino og start Arduino IDE. Bluetooth -LED -en blinker raskt (~ 4Hz) i AT -modus.

Åpne Arduino Serial -skjermen via Verktøy> Seriell skjerm. Sett baud til 9600 og sett 'No line ending'.

Skriv inn AT og klikk Send. Hvis alt fungerer, vil du se 'OK' returnert til skjermen. Hvis ingenting kommer tilbake, dobbeltsjekk ledningene og prøv forskjellige Baud -innstillinger.

Med en OK som bekrefter god kommunikasjon, kan vi endre navnet og angi egen Baud -hastighet.

Skriv inn AT+NAMEARDUINO og klikk på send. Dette setter modulnavnet til ARDUINO. Enhver annen tekst kan brukes. Legg merke til ingen mellomrom i kommandoen.

Svaret skal være OKsetname. Dette blir lagt til OK sendt tidligere

Skriv nå inn AT+BAUD8. Dette setter baud til 115200.

Svaret skal være OK115200. Hvis det skal sendes flere AT -kommandoer, må innstillingen for seriell monitor baud endres til 115200.

Andre priser kan settes. Baud4 er 9600, Baud5 er 19200, Baud6 38400, Baud7 57600. Det er høyere innstillinger enn 115200, men sjekk først at din PC og Arduino kan godta dem (min kan ikke overstige 128000). Merk - Hvis du angir en hastighet som er for høy, vil du ikke kunne kommunisere med den for å sette den tilbake !!!

Bilde
Bilde

Trinn 3: Konfigurer Bluetooth -modul - del 2 - HC -05 og første test

HC-05

Disse har den komplikasjonen at de må settes manuelt til AT -modus. Håndboken sier at hvis AT -modus utløses etter oppstart, vil Baud -innstillingen fortsette med den hastigheten som allerede er angitt for normal kommunikasjon. Jeg kunne ikke få dette til å fungere! Hvis AT -modus imidlertid er satt til strøm på baud, er den satt til 38400. Derfor er sistnevnte alternativ det mest pålitelige, da vi kan være sikre på at baud er 38400.

Åpne Arduino Serial Monitor via Verktøy> Seriell Monitor. Sett baud til 38400 og sett ‘Carriage Return’.

Det neste trinnet er å sette brettet i AT -modus. Det er her de fleste problemene oppstår på grunn av forskjeller i bærerkortene.

Den grunnleggende prosessen er å holde "nøkkel" -nålen (pin 34) nede et par sekunder ved oppstart.

Brettet mitt har en knapp for å gjøre dette (de to ekstra tilkoblingspinnene er EN og STATE). Koble Vcc -kabelen fra Bluetooth -modulen. Deretter, mens du holder knappen inne, må du bruke 5v på nytt på Vcc. Lysdioden skal blinke med omtrent 2 sekunders mellomrom. Jeg holder knappen til den andre blinkingen.

Noen brett har en nøkkelpinne som en av de 6 pinnene til modulen. I så fall må du knytte dette til 3,3V under oppstart.

Noen tavler har ingen av dem, og brukerne har måttet lodde en knapp mellom nøkkelpinnen (34) og 3,3 v (pinne 12). Se vedlagt manual.

Når LED -en sakte blinker, kan vi kontrollere kommunikasjonen. Skriv inn AT og klikk på Send. Svaret skal være OK. Jeg fant ut at dette svaret ble gjentatt til jeg sendte en tom linje - bare klikk på send. Hvis du får FEIL: (0) send deretter en tom linje og send deretter AT.

Sett nå et nytt navn. Skriv inn AT+NAME = ARDUINO Svaret skal være OK. Men i mitt tilfelle tilbakestilles modulen fra AT -modus (LED blinker raskt). Jeg kunne ikke finne årsaken, og dette skjedde også ved bruk av en FDTI -seriell tilkobling i stedet for Arduino. Jeg kom tilbake til AT -modus som før: Koble fra strømledningen til kortet og koble til igjen mens knappen ble trykket. Senere kontroller viste at navnet var endret.

Sett deretter Baud. Skriv inn AT+UART = 115200, 1, 0 Svaret skal være OK. Imidlertid hoppet den noen ganger ut av AT -modus som ovenfor.

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

Første test

På dette stadiet har vi PC -en med en seriell tilkobling til Bluetooth -modulen. Så en første, valgfri test kan utføres ved å starte smarttelefonens BlueTerm 2 -app (forutsatt at modulen allerede er paret med telefonen). Koble til ARDUINO. Sett Arduino Serial Monitor til 115200 baud. Skriv 'Hello World' og klikk på send. Dette skal nå vises på BlueTerm 2. Skriv nå "Hei til deg" i BlueTerm 2. Dette skal nå vises i Serial Monitor.

Bilde
Bilde
Bilde
Bilde

Trinn 4: Koble Bluetooth -modulen til Arduino

Vi må laste vår Arduino testskisse først. Den vedlagte BTtest.ino sender et tall hver 0,5 sekund og øker det deretter, ruller over til 0 fra 255. Lag en mappe som heter BTtest i skissemappen og legg til BTtest.ino

Arduino seriell tilkobling brukes også til å laste ned skisser. Så de to ledningene til Bluetooth -modulen må kobles fra slik at den ikke forstyrrer.

Etter å ha lastet ned skissen, koble Bluetooth -modulen til igjen. Vær imidlertid oppmerksom på at Tx og Rx på Arduino må byttes i forhold til det tidligere konfigurasjonsoppsettet.

Så koble til:

  • 3k3 motstand til D1
  • 6k8 motstand til bakken
  • Koble de andre endene av de to motstandene sammen og til Rx -pinnen på Bluetooth -modulen
  • Koble Bluetooth -modulens Tx -pin til D0
  • Koble Bluetooth -modulens jordingsstift til GND Koble Bluetooth -modulens jordingsstift til GND
  • Koble Bluetooth -modulens Vcc -pin til 5v

Se bildet for detaljer.

Bilde
Bilde

Slå nå på Arduino. Den trenger ikke å være koblet til en PC.

Koble kortet til smarttelefonen hvis den ikke allerede er tilkoblet (se Installere Bluetooth -appen ovenfor). Start deretter BlueTerm 2, klikk på innstillinger, klikk deretter på Koble til enhet og velg ARDUINO. Du bør se skjermen fylle med tall som øker fra 0 til 255.

Bilde
Bilde

Jeg håper du synes dette er like nyttig som jeg har.

Mike

Bluetooth -utfordring
Bluetooth -utfordring
Bluetooth -utfordring
Bluetooth -utfordring

Andreplass i Bluetooth -utfordringen

Anbefalt: