Introduction: Domótica Con Raspberry Pi
Si deseas domótica con tu Raspberry Pi, este Hat esta diseñado para ti!
La InfiniPi contiene:
- Socket XBee compatible.
- 3 entradas análogas con conectores grove.
- 1 entrada I2C con conector grove.
- 2 salidas de Relé.
Con estos elementos puedes conectar tu Raspberry Pi a diferentes protocolos de comunicación, controlar otros dispositivos, medir sensores análogos, entre otras cosas.
Step 1: Materiales
- Raspberry Pi 3 Modelo B
- InifiniPi
- Grove - Sensor de Luz (LDR)
- Transformador para Raspberry Pi 3 5V/2.5A
- Ampolleta
- Monitor
- Teclado
- Mouse
Step 2: Conexionado
- Se coloca la InifiniPi sobre la Raspberry, asegúrate de que los pines estén en su posición.
- Inserta el sensor Grove LDR en la entrada A0 de la inifiniPi.
- Sujeta bien los cables que van en la salida del Relé hacia la red eléctrica y la ampolleta.
- Para programar en la Raspberry Pi 3 es necesario conectarle:
- Teclado
- Mouse
- Monitor
Step 3: Programación
Inicialmente debes importar las librerías, siguiendo los siguientes tutoriales:
ADC
Ubidots
Luego de importar las librerías, copia el código en tu archivo Python (Se ejecuto en la versión 2.7.13, porque la librería de Ubidots esta en esa versión)
Donde están los asteriscos "*", remplaza por tu TOKEN y Variable ID.
Al ejecutar el código, puedes visualizar la trama que se envía a la plataforma.
Step 4: Código
#!/usr/bin/python
#!/usr/bin/env python # -*- coding: utf-8 -*-
from ubidots import ApiClient
from ADCPi import ADCPi
import RPi.GPIO as GPIO
import math
import time
import os
import random
GPIO.setmode(GPIO.BCM)
GPIO.setup(22, GPIO.OUT)
adc = ADCPi(0x6e, 0x6e, 18)
while (True):
# clear the console
os.system('clear')
#Create an "API" object
api = ApiClient(token='******************************')
#Create a "Variable" object
variable = api.get_variable("************************")
#Here is where you usually put the code to capture the data
Luz= adc.read_voltage(1)
if Luz<1.5:
GPIO.output(22,True)
else:
GPIO.output(22,False)
# Write the value to your variable in Ubidots
response = variable.save_value({"value": Luz})
print(response)
time.sleep(5)
Step 5: Funcionamiento
Se observa que al cubrir el sensor, el valor es menor a 1.5, lo que hace que se active el Relé y encienda la ampolleta.
Comments