Página 1 de 1

Relés temporizados

Publicado: 05 Sep 2017, 16:14
por Kirit0
Hola!!! :|
Estoy haciendo unas practicas para hacer un banquito de pruebas para tarjetas electrónicas para hacer medidas de resistencias conectando la placa de salidas y entradas a un polímetro.
Y bueno manejar la Rasp para activar y desactivar manualmente los relés mas o menos lo tengo controlado pero para temporizar varios relés para encender y apagar varios relés en orden cada 5 seg/10 seg no lo se y no encuentro nada en Internet o estoy buscando mal a ver si me podéis ayudar o re dirigirme a algún sitio donde poder encontrar los comandos.

GRACIAS :x

Re: Relés temporizados

Publicado: 05 Sep 2017, 17:06
por egrueda
Necesitas hacer un programa.
¿Con qué lenguaje de programación lo vas a hacer?

Re: Relés temporizados

Publicado: 05 Sep 2017, 17:31
por Kirit0
Con Pithon.
Aunque creo que ya he encontrado la solución.

3.1. Creamos un nuevo archivo Python.
sudo nano blink.py
3.2. Importamos la librería que acabamos de instalar y declaramos los pines.
Los pines serán de salida, pues tenemos que encender LEDs. Como ya hemos hecho en el montaje, utilizaremos los GPIO 17 y 27. La forma de tratar los pines, su declaración y el encendido y apagado os recordará a Arduino.

import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(17, GPIO.OUT)
## GPIO 17 como salida
GPIO.setup(27, GPIO.OUT) ## GPIO 27 como salida
3.3. Creamos una función para ejecutar el bucle que enciende y apaga los LEDs. Por si no sabéis cómo definir funciones en Python. Aquí os dejo un tutorial: Funciones en Python. La función se llamará 'blink'. Es la típica con la que se empieza en Arduino.
def blink():
print "Ejecucion iniciada..."
iteracion = 0
while iteracion < 30: ## Segundos que durara la funcion
GPIO.output(17, True) ## Enciendo el 17
GPIO.output(27, False) ## Apago el 27
time.sleep(1) ## Esperamos 1 segundo
GPIO.output(17, False) ## Apago el 17
GPIO.output(27, True) ## Enciendo el 27
time.sleep(1) ## Esperamos 1 segundo

Re: Relés temporizados

Publicado: 05 Sep 2017, 17:33
por Kirit0
¿Seria así como habría que poner las funciones?

O me recomendáis otro lenguaje diferente.

luego el calculo para los 15 salidas que necesito supongo que tendré que hacer los cálculos para ver si el 1º empieza en el seg 1 y dura 10 seg tengo que programar la 2º salida a los 11 seg ¿no?

Re: Relés temporizados

Publicado: 05 Sep 2017, 17:41
por egrueda
Lo que has encontrado es lo más habitual:
- se envía una señal a un relé
- se esperan x segundos
- se envía otra señal al relé
- y vuelta a empezar

Vas a encontrar mucha ayuda y mucho código ya hecho en python, así que es buena elección.

La otra consulta, cuando elabores un pseudo-código o te hagas un esquema, verás exactamente cómo lo vas a hacer.
Con los ejemplos anteriores le dices al programa que se pause en ese punto (time.sleep) durante X segundos, y luego sigue procesándose.
Es decir, no es que se apague a los 10 segundos, a menos que tú le des la orden de apagado después del time.sleep

Si quieres, dibuja una línea de tiempo, así verás de forma más visual en qué momento tienes que poner los sleep

Re: Relés temporizados

Publicado: 05 Sep 2017, 17:51
por Kirit0
Me pongo a ello y luego lo cuento en el post a ver como se da.

Gracias por la ayuda.

Re: Relés temporizados

Publicado: 05 Sep 2017, 18:28
por Kirit0
Estos son los materiales que en principio necesito creo.
La idea es que por cada pin poner 2 led, Rojo positivo y Azul negativo de polimetro para poder medir todos los pines con todos como muestro en el esquemilla.
El cableado lo tengo mas o menos claro solo tengo la duda de la colocación de los led para que se encienda simultáneamente por ejemplo.

1 Rojo y 2 Azul simultáneamente encendido y a la vez que el polimetro mida desde el pin 1 con el cable de medida y pin 2 con el cable CO.

¿Que opinais? ¿Alguna corrección que se os ocurra?


Imagen