Módulos Arduino y Raspberry Pi

sexta parte

KY-026: Módulo sensor de llama

Descripción:

Mediante un fotodiodo que es sensible al espectro luminoso de la llama, actua enviando una señal por la salida digital, mientras que la salida análoga se encarga de medir directamente el fotodiodo.El LED 1, situado del lado del Pin D0, nos indicará que está encendido, mientras que LED 2, situado del lado Pin A0, nos indicará que ha detectado una llama, podemos probarlo acercando la flama de un encendedor al fotodiodo.

Conexión Arduino:

Código Arduino:

int A0_Sensor = A0; 
int D0_Sensor = 3;
  
void setup ()
{
  pinMode (A0_Sensor, INPUT);
  pinMode (D0_Sensor, INPUT);
       
  Serial.begin (9600); 
}

void loop ()
{
  float Analog;
  int Digital;

  Analog = analogRead (A0_Sensor) * (5.0 / 1023.0); 
  Digital = digitalRead (D0_Sensor);
 
  Serial.print ("Analog voltage value:"); Serial.print (Analog, 4);  Serial.print ("V, ");
  Serial.print ("Extreme value:");
  
  if(Digital==1)
  {
      Serial.println ("Alcanzado");
  }
  else
  {
      Serial.println ("No alcanzado");
  }
  Serial.println ("----------------------------------------------------------------");
  delay (200);
}

Conexión Raspberry Pi:

Código Raspberry Pi:

from Adafruit_ADS1x15 import ADS1x15
from time import sleep

import math, signal, sys, os
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)

delayTime = 0.5

ADS1115 = 0x01  # 16-bit

gain = 4096  # +/- 4.096V

sps = 64

adc_channel_0 = 0
adc_channel_1 = 1
adc_channel_2 = 2
adc_channel_3 = 3

adc = ADS1x15(ic=ADS1115)

Digital_PIN = 24
GPIO.setup(Digital_PIN, GPIO.IN, pull_up_down = GPIO.PUD_OFF)
  
try:
        while True:
                analog = adc.readADCSingleEnded(adc_channel_0, gain, sps)
  
                if GPIO.input(Digital_PIN) == False:
                        print("Analog voltage value:", analog,"mV, ","extreme value: not reached")
                else:
                        print ("Analog voltage value:", analog, "mV, ", "extreme value: reached")
                sleep(delayTime)

except KeyboardInterrupt:
        GPIO.cleanup()

Para correr el programa abrimos terminal y tecleamos:

  • sudo python ky-026.py

KY-027: Módulo taza mágica o Interruptor de mercurio con Led THT


Descripción:

Se trata de un interruptor de inclinación mediante gota o bola de mercurio, el cual encenderá el Led al inclinar el módulo.

Conexión Arduino:

Código Arduino:

int Led = 9 ;
int Sensor = 8;
int val;
  
void setup ()
{
  pinMode (Led, OUTPUT) ; 
  pinMode (Sensor, INPUT) ; 
  digitalWrite(Sensor, HIGH);
}
  
void loop ()
{
  val = digitalRead (Sensor) ; 
  
  if (val == HIGH) 
  {
    digitalWrite (Led, LOW);
  }
  else
  {
    digitalWrite (Led, HIGH);
  }
}

Conexión Raspberry Pi:

Código Raspberry Pi:

import RPi.GPIO as GPIO
import time
   
GPIO.setmode(GPIO.BCM)

LED_PIN = 24
Sensor_PIN = 23
GPIO.setup(Sensor_PIN, GPIO.IN)
GPIO.setup(LED_PIN, GPIO.OUT)
   
print( "Sensor-test [press ctrl+c to end the test]")

def funcionMagic(null):
        GPIO.output(LED_PIN, True)

GPIO.add_event_detect(Sensor_PIN, GPIO.FALLING, callback=funcionMagic, bouncetime=10)
try:
        while True:
        time.sleep(1)
        
        if GPIO.input(Sensor_PIN):
            GPIO.output(LED_PIN,False)

except KeyboardInterrupt:
        GPIO.cleanup()

Para correr el programa abrimos terminal y tecleamos:

  • sudo python ky-027.py

KY-028: Módulo sensor digital de temperatura, Termistor

Descripción:

El sensor de temperatura digital es activado al detectar una variación en la temperatura, cuando esto sucede el LED se enciende, de lo contrario el LED permanecerá apagado.

Características del sensor.

  • Corriente: 30 ~ 60 mA
  • Corriente de Pulso: 0.3 a 1 A
  • Voltaje Inverso: 4.5 a 24 V
  • Potencia de disipación: 90 mW
  • Rango de Temperatura: -25 a +80℃
  • Temperatura de Almacenamiento: -40 a +100℃

Conexión Arduino:

Código Arduino:

int A0_Sensor = A0;
int D0_Sensor = 3;
  
void setup ()
{
  pinMode (A0_Sensor, INPUT);
  pinMode (D0_Sensor, INPUT);
       
  Serial.begin (9600);
}

void loop ()
{
  float Analog;
  int Digital;
  
  Analog = analogRead (A0_Sensor) * (5.0 / 1023.0); 
  Digital = digitalRead (D0_Sensor);
  
  Serial.print ("Analog voltage value:");
  Serial.print (Analog,4);
  Serial.print ("V, ");
  Serial.print ("Extreme value:");
  
  if(Digital==1)
  {
      Serial.println (" reached");
  }
  else
  {
      Serial.println (" not yet reached");
  }
  Serial.println ("----------------------------------------------------------------");
  delay (200);
}

Conexión Raspberry Pi:

Código Raspberry Pi:

from Adafruit_ADS1x15 import ADS1x15
from time import sleep

import math, signal, sys, os
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)

delayTime = 0.5

ADS1115 = 0x01  # 16-bit

gain = 4096  # +/- 4.096V

sps = 64

adc_channel_0 = 0   
adc_channel_1 = 1   
adc_channel_2 = 2   
adc_channel_3 = 3   

adc = ADS1x15(ic=ADS1115)

Digital_PIN = 24
GPIO.setup(Digital_PIN, GPIO.IN, pull_up_down = GPIO.PUD_OFF)

try:
        while True:
                analog = adc.readADCSingleEnded(adc_channel_0, gain, sps)
  
                if GPIO.input(Digital_PIN) == False:
                        print( "Analog voltage value:", analog,"mV, ","extreme value: not reached")
                else:
                        print( "Analog voltage value:", analog, "mV, ", "extreme value: reached"_
                sleep(delayTime)
  
except KeyboardInterrupt:
        GPIO.cleanup()

Para correr el programa abrimos terminal y tecleamos:

  • sudo python ky-028.py

KY-029: Módulo Led THT 3mm Bi-Color

Descripción:

Led de colores rojo y verde con cátodo común. En la programación Raspberry Pi introduciremos la librería gpiozero y su función LED.

Conexión Arduino:

Código Arduino:

int rojo = 10;
int verde = 11;
 
void setup ()
{
  pinMode (rojo, OUTPUT); 
  pinMode (verde, OUTPUT); 
}
 
void loop () 
{
  digitalWrite (rojo, HIGH); 
  digitalWrite (verde, LOW); 
  delay (3000);
 
  digitalWrite (rojo, LOW); 
  digitalWrite (verde, HIGH);
  delay (3000); 
}

Conexión Raspberry Pi:

Código Raspberry Pi:

#Importamos la librería gpiozero y su función LED, además la función sleep de time
from gpiozero import LED
from time import sleep

#Declaramos ambos leds y a cuales esta conectado, lo tomamos como BCM osea GPIO23 y 18
rojo = LED(23)
verde = LED(18)

#Como siempre nuestro bucle
while True:
rojo.on()
sleep(1)
rojo.off()
sleep(1)
verde.on()
sleep(1)
verde.off()
sleep(1)

Para correr el programa abrimos terminal y tecleamos:

  • sudo python ky-029.py

Módulos Primera Parte

Módulos Segunda Parte

Módulos Tercera Parte

Módulos Cuarta Parte

Módulos Quinta Parte

Gracias por leer y compartír Makers

Lee más artículos de Nuestra Comunidad Makers

Saludos!!!

Luciano

views
42

ElectroMercado

    0 Comentarios

    Contesta

    CONTACTANOS

    Esta es su red social de tecnología para compartir tus ideas y proyectos .Puedes enviarnos un correo si tienes dudas.Nos vemos

    Enviando

    Inicia Sesión con tu Usuario y Contraseña

    o    

    ¿Olvidó sus datos?

    Create Account