Bluetooth

De Wiket
Salta a la navegació Salta a la cerca

El mòdul bluetooth de l’Arduino és un dispositiu sense fils que crea una interconnexió entre aquest mateix i un telèfon smartphone, o qualsevol aparell amb receptor bluetooth i un programa compatible, permetent l’intercanvi de dades i l’accés a la placa Arduino. Amb aquesta funció, serem capaços de crear diversos programes que ens permetran fer servir la placa Arduino de diferent manera.

Podem d’identificar el nostre mòdul bluetooth per la seva direcció única de 48 bits o per el nom del dispositiu configurat. Una vegada els dos dispositius s’han reconegut i acceptat, s’iniciarà el procés de pairing. Normalment se’ns demanarà una password, per defecte, serà “0000”.

Un programa d’exemple que ens permetrà connectar-nos amb el nostre smartphone a la placa Arduino, ArduDroid.

Tipus de dispositius bluetooth

Un dispositiu bluetooth, pot connectar-se com a master o slave. La diferència entre els dos és que el dispositiu master, es pot connectar a diversos del tipus slave, a més de permetre que els slave connectats al mateix master s’enviïn informació entre ells, en canvi, un dispositiu slave només es pot connectar a un sols dispositiu master. Com a màxim, podrem connectar 7 dispositius slave a un master. Normalment volem que el nostre smartphone es connecti com a master i el mòdul com a slave.

Esquema de connexió

Bluetooth bb.png

  • RXD: Pot ser connectat a qualsevol pin Digital o Analògic, en aquest cas PIN 1 Digital.
  • TXD: Pot ser connectat a qualsevol pin Digital o Analògic, en aquest cas PIN 0 Digital.
  • GND: Ha de ser connectat a qualsevol port GND, en aquest cas GND Digital.
  • VCC: Ha de ser connectat a un port de voltatge, l’indicat és el port 5V.

Codi prova connexió

#include <SoftwareSerial.h> 
SoftwareSerial BT1(0,1); //Indiquem els ports TXD i RXD 

void setup()
   {
       //transmissió de dades
       Serial.begin(9600);
       BT1.begin(9600);       
   }

void loop()
   {
       //En el cas de que BT1 sigui funcional, crearem una variable char
       if (BT1.available()){

          //A aquesta variable, li assignarem el valor que ha llegit del dispositiu 
          char c = BT1.read();              
          String compare = String(c); //Fem de c un string
 
           //Comparem l'string amb un valor fix, 1      
           if(compare=="1"){

              //Si l'string és igual, mostrarà la paraula "Suspès" per pantalla al COM d'Arduino.
              Serial.write("Suspès");
           }
        }       
   delay(200);  
   }