Cita:
Originalmente publicado por sailoog.com
Que buena pinta! y no son muy caros. Cuando dices de pulsos a que te refieres? con que interface/libreria de la raspi se puede leer? algún ejemplo?
|
El sitema de deteccion es por pala giratoria con un iman. En la carcasa tiene un sensor de hall que detecta los impulsos magneticos. El detector tiene una salida digital que proporciona pulsos por segundo (PPS) . Aqui la calibracion como ejemplo el modelo FLOW40L0 de Material:Nylon with 30% glass fiber y 3/4 el racor (19 mm) que pienso es el ideal para la entrada de agua salada y solo cuesta 12,9 $
Mounting Method : Horizontal to Vertical
Range of Flow Rate : 2.0 – 60.0 L/min.
Calibration(horizontal mounting) :
Flow rate (lpm) Resolution(pulse/liter)
2.0 – 3.0 290
3.0 – 6.0 315
6.0 – 60.0 330
Accuracy : +/- 10%
Calibration(vertical mounting) :
Flow rate (lpm) Resolution(pulse/liter)
2.0 – 3.0 305
3.0 – 6.0 330
6.0 – 60.0 330
Accuracy : +/- 10%
Es decir con uno de los GPIO de la Raspi contamos el numero de PPS y conocemos el número de litros/min. Lo que no se es si el voltaje de salida sera proporcional al voltaje de entrada (2,4 a 26 voltios). De todas maneras podriamos alimentarlo con 12 voltios y la salida reducirla con un divisor de tension a 3,3 Voltios.
Aqui tienes un ejemplo de como se programa:
#!/usr/bin/env python
import RPi.GPIO as GPIO
import time, sys
FLOW_SENSOR = 23
GPIO.setmode(GPIO.BCM)
GPIO.setup(FLOW_SENSOR, GPIO.IN, pull_up_down = GPIO.PUD_UP)
global count
count = 0
def countPulse(channel):
global count
count = count+1
print count
flow = count / 330 # 6.0 – 60.0 l/m 330 pulsos por litro
print(flow)
GPIO.add_event_detect(FLOW_SENSOR, GPIO.FALLING, callback=countPulse)
while True:
try:
time.sleep(1)
except KeyboardInterrupt:
print '\ncaught keyboard interrupt!, bye'
GPIO.cleanup()
sys.exit()