es gl es ca gl gl gl gl es gl en gl es en pt ceb uk gl gl gl gl gl fr es gl gl gl gl gl gl es gl gl gl gl gl gl gl gl gl gl gl gl pt gl gl gl es gl gl gl gl gl en gl gl gl gl en gl es es gl gl gl pt es gl gl gl pt pt en gl ar es gl en en en gl gl gl ca gl ca gl gl gl gl gl gl gl gl it gl gl gl gl gl gl gl gl gl gl en it es es gl es gl es es gl pt en gl gl ca fr fr gl gl gl pt es sv es gl sv pt en gl hu en gl gl en gl it it es uk pt gl gl gl gl gl en gl gl es gl gl vi gl gl gl gl es es gl gl gl gl gl it gl es en en en gl en en en en gl en en en en gl
Bluetooth + móbil – Arduino
Imos conectar ao Arduíno un módulo Bluetooth, o que nos vai permitir comunicarnos co ordenador ou cun dispositivo móbil sen utilizar cable (máximo 10m).
As prácticas están relacionadas coa realización de aplicacións móbiles con App Inventor, que podes ver nesta sección.
Os módulos Bluetooth máis comúns para Arduíno son os HC-05 (6 pins) e HC-06 (4 pins).
O HC-06 só pode actuar como escravo, e o HC-05 pode actuar como mestre ou como escravo.
O que imos utilizar aquí é o módulo HC-05, pero podes usar igualmente un HC-06, que só ten os pins VCC, GND, TX e RX
VCC e GND son os pins de alimentación.
Tx e Rx son os pins de comunicación serie (transmisión e recepción de datos).
Estes non os imos usar:
State: Podemos conectar un LED a este pin para visualizar cando se comuniquen datos. Non o imos usar
Key: Utilízase para configurar o módulo bluetooth (cambiar o nome, contrasinal, parámetros, etc.)
O pin de recepción de datos Rx do módulo bluetooth non debería superar unha voltaxe de 3,3V, así que se traballamos con 5V deberiamos protexer o módulo.
Se conectamos un divisor de tensión tal e como aparece na imaxe, con resistencias de 100Ω e 220Ω, ao pin Rx chegarán como máximo 3,4V cando o pin Tx do Arduíno envíe 5V, polo que evitaremos que o módulo se queime cando o utilizamos de maneira continua.
Para facer a primeira práctica debemos conectar os pins Tx e Rx de forma cruzada cos Tx e Rx de Arduíno, como vimos na sección de comunicación entre Arduínos, pero desta maneira debemos desconectar o módulo bluetooth cada vez que queiramos cargar un programa, pois os pins serie Tx e Rx tamén son usados polo cable USB para a comunicación serie co ordenador. Esta configuración é útil cando queremos substituír o cable USB por bluetooth na comunicación co ordenador, pero non para o uso simultáneo.
Tamén existe a posibilidade de habilitar outros pins do Arduíno como pins Tx e Rx a través da librería SoftwareSerial.h. É o que imos facer na segunda práctica establecendo Rx no pin 10 e Tx no pin 11. Esta configuración é útil cando queremos manter o USB para a comunicación co ordenador e o bluetooth para comunicarnos con outro dispositivo, como por exemplo un teléfono móbil.
Estas son as conexións para a primeira e a segunda práctica respectivamente:
1. Acender e apagar un LED
1. Acender e apagar un LED: Imos acender e apagar un LED desde o móbil utilizando unha app específica.
A maneira de programar é similar a como o fariamos coa consola serie. Neste caso imos indicar que un LED se acenda cando reciba un “a” e se apague cando reciba un “b”.
// Declaración de variables int led=13; char val; // variable na que imos gardar os datos que enviamos // Configuración void setup() { Serial.begin(9600); // Iniciamos a comunicación co módulo Bluetooth pinMode(led, OUTPUT); // Led como saúda } // Programa void loop() { while(! Serial.available()); // Agarda a que haxa datos no buffer val = Serial.read(); // asigna eses datos á variable val if( val =='a'){ // Se recibe "a" acende o LED digitalWrite(13, HIGH); } if( val =='b'){ // Se recibe "b" apaga o LED digitalWrite(13, LOW); } }
Desconecta o módulo bluetooth desconectando o cable alimentación Vcc, instala este programa no Arduíno e volve a conectar o bluetooth.
2. Outros pins: Para non ter que andar a desconectar o módulo bluetooth cada vez que queremos cargar un programa na placa podemos habilitar a través de software outros pins do Arduíno para a comunicación serie. Imos utilizar a librería SoftwareSerial que vén por defecto no IDE e habilitar os pins 10 e 11 como Rx e Tx respectivamente. O módulo bluetooth debe conectarse de maneira cruzada con eses pins.
Isto vai permitirnos, ademais, poder utilizar a consola serie ao mesmo tempo que utilizamos a comunicación por bluetooth.
#include   SoftwareSerial BT(10, 11); // RX, TX // Declaración de variables int led=13; char val; // variable na que imos gardar os datos que enviamos // Configuración: void setup() { // Bluetooth serie BT.begin(9600); // Comunicación con Bluetooth Serial.begin(9600); // Comunicación coa consola pinMode(led, OUTPUT); // Led como saída } // Programa void loop() { while(! BT.available()); // Agarda a que haxa datos no buffer val = BT.read(); // asigna eses datos á variable val Serial.write(val); if( val =='a'){ // Se recibe "a" acende o LED digitalWrite(13, HIGH); Serial.println(" - Aceso"); } if( val =='b'){ // Se recibe "b" apaga o LED digitalWrite(13, LOW); Serial.println(" - Apagado"); } }
Agora descarga a aplicación para Android Arduino bluetooth controller de Play Store.
Conecta co dispositivo HC-05 utilizando o contrasinal por defecto “1234”. Despois elixe “Switch mode” e configúrao de xeito que para acender envíe o carácter a e para apagar o carácter b.
Unha vez feito xa podes acender e apagar o LED desde o teu móbil.
Explora outras posibilidades da aplicación Arduino bluetooth controller ou busca outras aplicacións que poidan ser do teu interese. Hai moitas.
Fai as túas propias aplicacións con App Inventor. Tes unha guía para traballar en tecnoloxia.org/appinventor
Deixa un comentario Cancelar a resposta
Nome Correo electrónico Sitio web
Gardar o meu nome, correo electrónico e web neste navegador para a próxima vez que faga un comentario.
Descrición de Arduíno UNO
O IDE de Arduíno
Entradas e saídas dixitais
Condicional if … else
Sinais PWM e lectura serial
Array de LEDs e funcións
A posición dun servo
Servos de xiro continuo
Motor de corrente continua
Motores paso a paso
Sensor de Luz LDR
Sensor de temperatura LM35 e TMP36
Sensor de temperatura e humidade DHT11
Sensor de temperatura DS18B20
Sensor de movemento PIR
Sensor de cor TCS3200
Sensor de cor TCS34725 RGB
Sensor de auga no solo
Medindo o tempo 1
Medindo o tempo 2: RTC
Bluetooth mestre + escravo
O tanque de auga
Reloxo de area dixital
A máquina máis inútil
Clasificador M&M’s por cor
Alarma para a cortadora láser
© 2022 Arduino • Creado con GeneratePress
We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept All”, you consent to the use of ALL the cookies. However, you may visit "Cookie Settings" to provide a controlled consent.
This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.