domingo, 9 de abril de 2017

Domotica con Arduino y App Android


PRACTICA No. 2


El objetivo de esta practica es que los participantes puedan crear una aplicación Android para que puedan controlar algunos dispositivos en su hogar desde su teléfono celular, como pueden ser: Las luces exteriores, la puerta de la cochera, el aire acondicionado, la puerta de acceso a las visitas, etc.



FASE I  CREANDO LA APP CON MIT APP INVENTOR


I.1 EL DISEÑO









I.2 LAS PROPIEDADES DE LOS OBJETOS DEL DISEÑO


I.2.1  Objeto Screen1

a) Background Color: none
b) AppName: ArduHouseControl
c) BackGroundImage: El archivo con la imagen deseada se obtiene desde su computadora
d) Title: ArduBT House Control


I.2.2 Objeto ListPicker1

a) BackGroundColor: White
b) FontSize: 40
c) FontTypeface: Serif
d) Heigth: 50 pixels
e) Width : Fill Parent
f)  Text: Conectar HC-06
g) Text Alligment: Center
h) Text Color: Red


I.2.3 Objeto HorizontalScrollArrangment1





I.2.4 Objeto Button1



I.3 LA PROGRAMACION DE CADA OBJETO MODO BLOQUES








I.4 LA CREACIÓN DEL ARCHIVO .APK

a) En el menú Build de Mit App Inventor, seleccione la opción App (Save .apk to my computer)






b)  Mensaje de generación del archivo .apk guardado en la carpeta descargas de la pc







FASE II  EL CÓDIGO PARA ARDUINO

/*Este programa emplea Arduino Uno y el Modulo Bluetooth HC-06

Se empleara un telefono celular Android que ejecutara una App 
diseñada en Mit App Inventor. La App enviara comandos a Arduino
via el modulo Bluetooth HC-06

Una vez alimentado el HC-06 con 5 Volts y ya que esta acoplado
el telefono Android con el Modulo Bluetooth, al oprimir ciertos
botones en la App, los leds correspondientes deben encender o 
apagar, segun el boton que se haya oprimido
*/


int led8=8; 
int led9=9;
int led10=10;
int led11=11; 

int estado=0; // Variable que almacena el dato enviado desde el Celular Android via HC-06
 void setup()

{
  Serial.begin(9600);
  pinMode(led8,OUTPUT);
  pinMode(led9,OUTPUT);
  pinMode(led10,OUTPUT);
  pinMode(led11,OUTPUT);
}

void loop()

{

 if(Serial.available()>0) // Si hay un dato de entrada en el puerto serie

 {
  estado = Serial.read(); // Se almacena el dato de entrada en el puerto serie en la variable estado.
  }

 if (estado =='1') // Si el valor de la variable estado es 1
 {
    digitalWrite(led8,HIGH); // Se enciende el led conectado al pin 8
   }

if(estado =='2') // Si el valor de la variable estado es 2

 {
    digitalWrite(led8,LOW); // Se apaga el led conectado al pin 8
   }



   if (estado =='3') // Si el valor de la variable estado es 3
 {
    digitalWrite(led9,HIGH); // Se enciende el led conectado al pin 9
   }

if(estado =='4') // Si el valor de la variable estado es 4

 {
    digitalWrite(led9,LOW); // Se apaga el led conectado al pin 9
   }


   if (estado =='5') // Si el valor de la variable estado es 5
 {
    digitalWrite(led10,HIGH); // Se enciende el led conectado al pin 10
   }

if(estado =='6') // Si el valor de la variable estado es 6

 {
    digitalWrite(led10,LOW); // Se apaga el led conectado al pin 10
   }


   if (estado =='7') // Si el valor de la variable estado es 7
 {
    digitalWrite(led11,HIGH); // Se enciende el led conectado al pin 11
   }

if(estado =='8') // Si el valor de la variable estado es 8

 {
    digitalWrite(led11,LOW); // Se apaga el led conectado al pin 11
   }


   
}  






martes, 7 de marzo de 2017

Creando mi Primera APP con AppInventor


FASES DE LA PRACTICA


FASE I CREACIÓN DE LA APP CON MIT APP INVENTOR

FASE II DESCARGA DE LA APP AL TELÉFONO ANDROID

FASE III CREACIÓN DEL CÓDIGO EN ARDUINO PARA EL RECONOCIMIENTO DE LA APP

FASE IV  CONEXIÓN DE ARDUINO CON EL MODULO BLUETOOTH HC-05

FASE V PRUEBA DE LA APP



FASE I.1 CREANDO MI PRIMERA APP CON MIT APP INVENTOR



La pantalla de edición







El diseño de la aplicación







1.-  Seleccionar el idioma español

2.- En el MIT APP INVENTOR existen 4 secciones principales

  • Paleta
  • Visor
  • Componentes
  • Propiedades


3.- Seleccione el menú conectividad en la sección Paleta. Arrastre el Bluetooth Client hacia el área de diseño.




En la sección componentes deberá aparecer Bluetooth Client1

4.- Seleccione el menú Interface de Usuario en la sección Paleta y arrastre el componente ListPicker al área de diseño



5.- Al objeto ListPicker1 apliquele las siguientes propiedades:






6.- En la sección Paleta, seleccione el menú Disposición. Por cuestión de estética de nuestra aplicación, vamos a dejar un espacio en blanco entre el objeto Conectar BT y los Botones de Encendido y Apagado.

Seleccionamos el objeto HorizontalScrollArragment



7.- Al objeto HorizontalScrollArragment1 apliquelé las siguientes propiedades:


8.- Repita el paso 6 y 7 para insertar otros dos objetos  HorizontalScrollArragment



9.- De la sección Paleta, seleccione el menú User Interface y seleccione el objeto Botón, insertelo dentro del segundo HorizontalScrollArragment, de tal suerte que el tercer objeto HorizontalScrollArragment quede en medio de los dos botones.



10.- Aplique las siguientes propiedades al objeto Boton1 






11.- Repita el paso 9 y 10 para insertar el objeto Boton2

12.- Al finalizar la etapa de diseño, los siguientes son los componentes de la APP






FASE I.2 ETAPA DE PROGRAMACIÓN

1.- De clic sobre el botón BLOQUES en MIT APP INVENTOR




2.- En la sección BLOQUES, de clic sobre el componente Boton1. 

 

3.- Arrastre del área Visor, el objeto cuando Button1.clik ejecutar al área de programación.




4.- Arrastre del área Visor, el objeto llamar BluetoothClient1 Enviar Texto al área de programación.




5.- Arrastre del área Visor, el objeto Texto " "  al área de programación.







6.-  Para encender el modulo Bluetooth, los bloques deberán quedar como sigue:



FASE II DESCARGA DE LA APP AL TELÉFONO ANDROID


1.-  Ir al menú Generar


2.- Seleccionar Archivo APK en el ordenador






3.- El archivo apk es guardado en el folder Descargas de tu computadora







4.- El archivo apk lo podrá sacar de la carpeta descargas para llevarlo a su smarthphone






5.- Conectar el SmarthPhone a la computadora y seleccionar que lo reconozca como un dispositivo USB

6.- En el telefono, activar almacenamiento USB

7.- Copiar el archivo desde la PC hacia el SmarthPhone, en una carpeta llamada APK

8.- Desconecte el SmarthPhone de la PC

9.- Active la funcion de ver los archivos internos en el SmarthPhone

10.- Localice la carpeta llamada APK y abrala para ver su contenido

11.- Seleccione el archivo apk dentro de esa carpeta y seleccione la opcion INSTALADOR DE PAQUETES


FASE III CREACIÓN DEL CÓDIGO EN ARDUINO  PARA EL RECONOCIMIENTO DE LA APP



PROGRAMA PARA ARDUINO

CONTROL DEL LED DESDE APP ANDROID

int led13=13;

int estado=0;
void setup()

{
 Serial.begin(9600);
 pinMode(led13,OUTPUT);
}

void loop()

{

if(Serial.available()>0)

{
estado = Serial.read();
}

if (estado =='1')
{
   digitalWrite(led13,HIGH);
}

if(estado=='2')

{
   digitalWrite(led13,LOW);
}
}  



FASE IV CONEXIÓN MODULO BLUETOOTH HC - 05 Y ARDUINO


FASE V PRUEBA DE LA APP

Antes de poder probar la app desarrollada debemos de considerar algunas cosas:


1.- Debemos de encender el modulo Bluetooth y tenerlo sincronizado con el teléfono android


2.- En el teléfono debe encender el bluetooth


3.-  En el teléfono, ir a la sección de configuración, buscar dispositivos bluetooth  para aparear el modulo Bluetooth HC-05 con el teléfono Android


Se supone que el modulo bluetooth HC-05 ya está conectado a Arduino y alimentado con 5 volts. El led en el modulo debe estar parpadeando


4.- Ahora que ya está vinculado el teléfono android con el modulo bluetooth HC-05 el Led en el modulo HC-05 debe parpadear lentamente. Ahora vamos a ir a la app y deberá oprimir el botón Conectar BT


En el teléfono android, seleccione de la lista de dispositivos, el modulo HC-05


5.- Oprima el botón encender en la app y el led conectado al pin 13 debe encender. Oprima el botón apagar en la app y el led deberá apagarse







EL EMULADOR DE MIT APP INVENTOR
Si no dispone de un teléfono celular o tableta Android, puede crear aplicaciones con App Inventor. y ejecutarlas sin problema.

App Inventor proporciona un emulador (simulador) de Android, que funciona igual que un Teléfono Android, pero que aparece en la pantalla de la computadora.

Así que puedes probar tus aplicaciones en un emulador y seguir distribuyendo la aplicación a otros, incluso a través de Play Store. 

Algunas escuelas emplean los emuladores proporcionando teléfonos virtuales a toda la clase para realizar pruebas de la aplicación antes de bajarla a los teléfonos físicos.

Para usar el emulador, primero tendrá que instalar un software en su computadora. Siga las instrucciones a continuación para el  sistema operativo usado en su computadora

Instalación del software para la ejecución del Emulador en el SO Windows

1.- La instalación del software de Windows para el programa consta de dos partes:

Instale el App Inventor Setup software package. Este paso es el mismo para todos los dispositivos Android y lo mismo para Windows XP, Vista, Windows 7, 8.1 y 10.

2.- Si elige utilizar el cable USB para conectarse a un dispositivo, deberá instalar los controladores de Windows para su teléfono Android.

NOTA: App Inventor 2 no funciona con Internet Explorer. Para usuarios de Windows, se recomienda  usar Chrome o Firefox como navegador para usar con App Inventor.

LA INSTALACIÓN DEL PAQUETE

Descargue el programa dando clic Aquí

Una vez que descargue el archivo instalador, vaya a la carpeta descargas en su pc y ejecute el archivo.

Una vez concluida la instalación, aparece el siguiente mensaje:




Deberá seleccionar Setup Emulator







martes, 24 de enero de 2017

CONTROL DE SERVO GIRO ANGULAR

COYOBOTICS PROYECTO 002_102023  CONTROL DE UN SERVO MOTOR 

En este proyecto vamos a mover el eje de un servomotor. Los servomotores son motores eléctricos con un mecanismo interno de control, el cual nos permite controlar la posición o ángulo de su eje. Normalmente están construidos para girar en un ángulo de 0 a 180 grados y en ambos sentidos. También hay los que tienen giro continuo, en los que no podemos controlar la posición pero si la velocidad.
En este proyecto sólo haremos girar el eje del servomotor de manera continua, primero de 0 a 90 grados y después en sentido contrario, de 90 a 0 grados.
Para lograr este objetivo, el IDE ARDUINO requiere de una libreria llamada Servo.h que deberemos tener instalada en el IDE








EL DIAGRAMA ESQUEMATICO



EL CÓDIGO



FUNCIONAMIENTO DEL PROYECTO