2. Control cotxe de 2 motors amb el Bluetooth i telèfon amb Android
Anem a crear una aplicació per controlar 2 motor reductors connectats a una Arduino UNO amb el shield Motor 1-2 i amb un integrat Bluetooth HC06 com mostra l'esquema següent:
Les potetes de l'integrat HC06 les connectem de la forma:
VCC a 5V d'Arduino
GND al comú d'Arduino
TX a port 2 d'Arduino
RX a port 3 d'Arduino
D'aquesta forma els ports RX i TX d'Arduino que hi són al 0 i 1 queden lliures per comunicar amb l'ordinador amb el cable USB, així podem carregar programes sense haver de desconnectar els ports RX i TX del HC06 ja que els hem assignat al 2 i 3.
El programa inicial amb que començaran els alumnes és aquest:
// Copyleft (C) 2019 Carles Ferrando Garcia. CotxBluetooth_Inicial.ino
// License: GNU GPL v3 http://www.gnu.org/copyleft/gpl.html
// Cotxe amb un Bluetooth controlat amb un telefon Android. Programa inicial per als alumnes.
#include <SoftwareSerial.h>
SoftwareSerial serial(2,3);
// Recorda posar al HC06 bluetooth RX pin 2 , TX pin 3
void setup() {
serial.begin(9600); // Monitor bluetooth per connectar amb mòbil
Serial.begin(9600); // Monitor Serial per comunicar amb l'ordinador
}
void loop() {
if(serial.available())
{
char caracter= serial.read();
Serial.println(caracter);
switch(caracter){
case '0':// Cotxe avant, els 2 motors en mode Horari
Serial.println("Ací has de programar instruccions digitalWrite( port,HIGH/LOW) per fer anar el cotxe cap endavant"); //Imprimeix el retol
break;
case '1'://Cotxe enrere, el dos motors en mode antiHorari
Serial.println("Ací has de programar instruccions digitalWrite( port,HIGH/LOW) per fer anar el cotxe cap endarrere"); //Imprimeix el retol
break;
case '2'://Cotxe gira esquerra, motor 1 H i motor 2 aH
Serial.println("Ací has de programar instruccions digitalWrite( port,HIGH/LOW) per fer anar el cotxe per girar a esquerra"); //Imprimeix el retol
break;
case '3'://Cotxe gira dreta, motor 1 aH i motor 2 H
Serial.println("Ací has de programar instruccions digitalWrite( port,HIGH/LOW) per fer anar el cotxe per girar a dreta"); //Imprimeix el retol
break;
case '4'://Cotxe atura motors, motor 1 i motor 2 aturats
Serial.println("Ací has de programar instruccions digitalWrite( port,HIGH/LOW) per fer anar el cotxe per aturar els motors del cotxe"); //Imprimeix el retol
break;
}//Final switch
} //Final if
// Ací és pot afegir més codi
}// Final void loop
|
El programa final al qual haurien d'arribar els alumnes és aquest: «CotxeBluetooh_Polsat.zip (zip - 1429 B)»
Ara mateix sols et falta activar el servei Bluetooth al teu mòbil, i des de la Play Store instal·lar l'app «Bluetooth Terminal». Després aparelles amb el telèfon el dispositiu insegur HC06 que té per contrasenya 1234.
A continuació envies consecutivament el text 0, 1, 2, 3, 4 (sense les comes) i prems «Send» després de cada número. Veuràs com els motors s'engeguen o s'aturen depenent del número que envies o s'aturem tots si prems i envies el 4.
Ara anem a obrir la interfície de l'AppInventor i anem a fer una aplicació senzilla per controlar els motors amb 5 botons.
Afegeix al dissenyador els elements següents:
- De «Interfaz de usuario» pren «SelectorDeLista» i anomena-lo SelectBluetooth
- De «Disposición» pren «Disposiciónvertical» i no cal que li canvie el nom. Els botons i etiquetes aniran tots dins de la disposició vertical.
- De «Interfaz de usuario» pren 4 «Botón» i anomena-los btAvant , btEnrere, btGiraDreta, btGiraEsquerra. Posa en cada botó una imatge feta amb GIMP amb una fletxa que mostre cap a on va el cotxe.
- De «Interfaz de usuario» pren 1 «Botón» i anomena-lo btAtura. Canvia la forma i el color per deixar-lo roig.
- De «Interfaz de usuario» pren 1 «Etiqueta» i anomena-lo «etiqueta» però no li poses títol , deixa-la sense contingut « ».
- De «Conectividad» pren «ClienteBluetooth» i solta-la dins de la pantalla «Screen1» que anirà a la secció «Componentes no visibles».
- De «Sensores» pren «Reloj» i solta-la dins de la pantalla «Screen1» que anirà a la secció «Componentes no visibles».
L'aspecte serà aquest:
Ara canvia el dissenyador per la finestra de «Blocks» i programa els blocs següents:
A continuació anem a «Generar» i premem el botó per generar la APP en format APK.
Després quan isca la finestra per escanejar el codi QR ho escanegem.
Carreguem l'aplicació al telèfon, li donem permisos per executar-se i l'executem.
Premem el selector de Bluetooth i triem aparellar el bluetooth HC06 de l'Arduino.
El HC-06 és un integrat de classe insegura amb contrasenya 1234.
Després ja podem provar el botons per engegar i controlar el cotxe o aturar-lo.
Cal tindre en compte que l'abast del Bluetooth són de 10 metres. No pots superar aquesta distancia per controlar el cotxe. Hi ha altres models que arriben als 200 metres però són lògicament més cars.
Llicenciat sota la Llicència Creative Commons Reconeixement NoComercial CompartirIgual 3.0