planktoscope/pump_volume_flowrate.py

35 lines
789 B
Python
Raw Normal View History

from adafruit_motor import stepper
from adafruit_motorkit import MotorKit
from time import sleep
kit = MotorKit()
2019-12-11 00:14:36 +01:00
pump_stepper = kit.stepper2
2019-12-11 00:14:36 +01:00
pump_stepper.release()
2019-12-11 00:14:36 +01:00
def pump(vol, flowrate, dir):
if dir == "foward":
dir=stepper.FORWARD
if dir == "backward":
dir=stepper.BACKWARD
nb_step=vol*507 #if sleep(0.05) in between 2 steps
2019-12-11 00:14:36 +01:00
#35000steps for 69g
#nb_step=vol*460 if sleep(0) in between 2 steps
duration=(vol*60)/flowrate
2019-12-11 00:14:36 +01:00
delay=(duration/nb_step)-0.005
2019-12-11 00:14:36 +01:00
for i in range(nb_step):
2019-12-11 00:14:36 +01:00
pump_stepper.onestep(direction=dir, style=stepper.DOUBLE)
sleep(delay)
2019-12-11 00:14:36 +01:00
sleep(1)
2019-12-11 00:14:36 +01:00
pump_stepper.release()
2019-12-11 00:14:36 +01:00
#volume, flowrate (from 0 to 20), direction (foward or backward)
pump(1, 10, 'foward')