Categories
Arduino Raspberry Technological

Arduino (IoT): Proyecto de Iluminación Nocturna

Arduino Honduras Santiapps Marcio Valenzuela

Proyecto de Iluminación Nocturna

Nuestros robots ya pueden diferenciar entre noche y día.  Podemos usar esto a nuestra ventaja al combinarlo con detección de movimiento para controlar una luz.

Requisitos:

  1. Computadora (mac)
  2. Arduino UNO o equivalente.
  3. Foto-transistor
  4. Detector de Movimiento PIR
  5. LED
  6. Resistor de 1kOhm
  7. Breadboard
  8. Arduino IDE (https://www.arduino.cc/en/Main/Software)

Ya aprendimos a usar el detector de movimiento PIR.  Ahora combinemos el PIR con el sensor de iluminación para controlar una LED.  Hagamos las conexiones así:

Arduino IoT: Simple Tutorial Luz Nocturna Detección de Movimiento Santiapps Marcio Valenzuela
Arduino IoT: Simple Tutorial Luz Nocturna Detección de Movimiento

Ahora estudiemos el código, el cual es bastante sencillo por cierto.  Lo importante es la lógica:

[code] //PIR
int ledPin = 10;
int pirPin = 9;
int pirVal = 0;
int photoTr = 0;
//Timing parameters
boolean motionDetectedFlag;
unsigned long initialiseSensorTimestamp;
long previousMillis = 0;
long interval = 1000;
void setup() {
Serial.begin(9600);
pinMode (pirPin, INPUT);
pinMode (ledPin, OUTPUT);
}
void loop() {
//if PIR motion is detected && illum is below x value
pirVal = digitalRead(pirPin);
Serial.print(“PIR: “);
Serial.println(pirVal);
photoTr = analogRead(A0);
Serial.print(“Illum: “);
Serial.println(photoTr);
if (pirVal == 1) { //if pirPin is 1…
//Test Illum
if (photoTr < 5) { //if photoTr is larger than 100…
Serial.println(“Illum is also low”);
digitalWrite(ledPin,HIGH); //light up the LED!
delay(15000); //leave it on for 15 seconds
digitalWrite(ledPin,LOW); //light up the LED!
} //end of photoTr
} //end of pir if
delay(1000); //delay loop for 1 whole second
}[/code]

Lo que hacemos es probar si se combinan las factores iluminación baja (<5) y detección de movimiento por parte del PIR (valor==1).  Si esto sucede, queremos escribir un voltaje alto a nuestra LED y dejarla así durante 15 segundos para hacer lo que tenemos que hacer.  Luego de 15 segundos la LED se apaga y la detección reincia con el loop().

Arduino IoT: Simple Tutorial Luz Nocturna Detección de Movimiento Santiapps Marcio Valenzuela
Arduino IoT: Simple Tutorial Luz Nocturna Detección de Movimiento

Como podemos ver, es fácil que cada vez nuestros robots se hacen mas habilidosos, inteligentes!

Categories
Arduino Raspberry Technological

Arduino (IoT): Simple Tutorial iOS App

Arduino Honduras Santiapps Marcio Valenzuela

Arduino iOS App

Ya vimos como conectarnos a dispositivos BT via Android.  No podríamos dejar por fuera al iOS.

Requisitos:

  1. Computadora (mac)
  2. iPhone con iOS 7+ (BLE)
  3. Xcode
  4. Arduino UNO
  5. Arduino IDE
  6. HM10/11
  7. LED & Resistor 220O
  8. Android Studio (http://developer.android.com/sdk/installing/index.html?pkg=studio)
iOS ObjC Swift iPhone iPad App Design Programming
iOS BLE + Arduino

Ahora vamos a crear una aplicación para iOS y un sketch para Arduino y hacer que se comuniquen de forma sencilla para controlar una LED.

Iniciemos con la Arduino Sketch para leer los datos:

[code]//#include <SoftwareSerial.h>

//SoftwareSerial mySerial(19,18); // RX, TX
// Connect HM10 Arduino MEGA
void setup() {
Serial.begin(9600);
// If the baudrate of the HM-10 module has been updated,
// you may need to change 9600 by another value
// Once you have found the correct baudrate,
// you can update it using AT+BAUDx command
// e.g. AT+BAUD0 for 9600 bauds
Serial1.begin(9600);
}
void loop() {
char c;
if (Serial.available()) {
c = Serial.read();
Serial1.print(c);
}
if (Serial1.available()) {
c = Serial1.read();
Serial.print(c);
}
}
[/code]

Ahora podemos enviar datos mas complejos y recibirlos en Arduino.

Veamos la iOS App.  Debemos entender que datos vamos a recibir primero para poder enviarlos desde nuestro dispositivo iOS.

En este caso estamos usando un modulo BT HM10, que es mas avanzado porque soporta BT4.0 o Smart BT.  Para conectarse a un dispositivo de estos es un poco mas complicado porque utiliza un protocolo GATT para asegurar las conexiones y hacerlas mas eficientes.  La aplicación iOS se puede ver en este tutorial:

http://www.instructables.com/id/IPhone-to-Arduino-using-Bluetooth-40-/

Corremos la app en el celular y podremos buscar dispositivos con BT y conectarnos a ellos y controlar una LED o mas!

Categories
Arduino Raspberry Technological

Arduino (IoT): Simple Tutorial del LazyBone Bluetooth Relay Switch

Arduino Honduras Santiapps Marcio Valenzuela

Tutorial del LazyBone Bluetooth

Relay Switch

Hoy exploraremos un componente controlador via bluetooth llamado LazyBone!

Requisitos:

  1. Computadora (mac)
  2. Arduino UNO o equivalente.
  3. Lazybones BT de 5V
  4. Breadboard
  5. Arduino IDE (https://www.arduino.cc/en/Main/Software)

Las especificaciones dictan que el lazybone requiere 5V para operar y le podemos pasar voltajes de 5, 12, 24, 120 y 240 VAC con un máximo de 10 amperios.  El setup es sencillo:

Arduino IoT: Tutorial de Lazybone Bluetooth Switch Santiapps Marcio Valenzuela
Arduino IoT: Tutorial de Lazybone Bluetooth Switch

 

 

La conexión es simplemente interrumpir el flujo en la linea viva o caliente a través del uso del switch.  Luego del otro lado del switch obtenemos el cable según el uso que le queremos dar, si normalmente abierto o cerrado el circuito.

Por ejemplo; en nuestro caso una lampara es un dispositivo que típicamente se maneja apagado.  Esto significa que este circuito esta normalmente abierto (apagado).  Por ende la salida al lado derecho del switch debe ser del polo etiquetado como “normalmente cerrado” el cual es representado por un símbolo de un circuito abierto o un switch abierto.  Si quisiéramos controlar un dispositivo que normalmente se maneja encendido, ósea con circuito cerrado, usamos el otro polo.

Finalmente conectamos el Lazybone a 5V usando un transformador de 5V/1A DC como salida.  Sencillo!

Ahora veamos como descargar la app y la configuramos para reconocer y conectarse a nuestro Lazybone.  La app la podemos encontrar en la PlayStore y por los momentos solo funciona con Android.  La podemos encontrar como Lazybone Bluetooth.  Luego conectamos al Lazybone usando bluetooth y con el código 1234 para autenticar.

Estamos listos!

El resultado es sencillo y muy poderoso para aplicaciones reales:

Automatización de dispositivos electrónicos en base a BT, Wifi o incluso GSM/GPRS es un campo muy reciente en el control automatizado de tareas y procesos!