def input_counter(): print "counter thread" pulsetime = 0 global counter while(1): #if pfio.digital_read(4): if pigpio.input(ECI): #While HIGHT increment time counter pulsetime = pulsetime + 1 else: #If the signal stay HIGH at least 50msec it's a good pulse if pulsetime >= 5: counter = counter + 1 #pfio.digital_write(0,1) pigpio.output(ECO, False) f = open("/var/log/iMeter/counter.dat","w") f.write(str(counter)) f.close() print "Counter = %i" % counter time.sleep(0.1) pigpio.output(ECO, True) pulsetime = 0 #wait for 10msec time.sleep(0.01)
def motor6_forward(): gpio.output(m6in1, True) gpio.output(m6in2, False) print("M6 FORWARD")
def motor6_reverse(): gpio.output(m6in1, False) gpio.output(m6in2, True) print("M6 REVERSED")
def motor5_forward(): gpio.output(m5in1, True) gpio.output(m5in2, False) print("M5 FORWARD")
def motor5_reverse(): gpio.output(m5in1, False) gpio.output(m5in2, True) print("M5 REVERSED")
def motor4_forward(): gpio.output(m4in1, True) gpio.output(m4in2, False) print("M4 FORWARD")
def motor4_reverse(): gpio.output(m4in1, False) gpio.output(m4in2, True) print("M4 REVERSED")
def motor3_forward(): gpio.output(m3in1, True) gpio.output(m3in2, False) print("M3 FORWARD")
def motor3_reverse(): gpio.output(m3in1, False) gpio.output(m3in2, True) print("M3 REVERSED")
def motor2_forward(): gpio.output(m2in1, True) gpio.output(m2in2, False) print("M2 FORWARD")
def motor2_reverse(): gpio.output(m2in1, False) gpio.output(m2in2, True) print("M2 REVERSED")
def motor1_forward(): gpio.output(m1in1, True) gpio.output(m1in2, False) print("M1 FORWARD")
def motor1_reverse(): gpio.output(m1in1, False) gpio.output(m1in2, True) print("M1 REVERSED")
def reset(): gpio.cleanup() gpio.setmode(gpio.BCM) #Motor1 gpio.setup(m1in1, gpio.OUT) gpio.setup(m1in2, gpio.OUT) gpio.output(m1in1, True) gpio.output(m1in2, False) gpio.setup(m1en, gpio.OUT) m1 = gpio.PWM(m1en, 1000) m1.start(0) #Motor2 gpio.setup(m2in1, gpio.OUT) gpio.setup(m2in2, gpio.OUT) gpio.output(m2in1, True) gpio.output(m2in2, False) gpio.setup(m2en, gpio.OUT) m2 = gpio.PWM(m2en, 1000) m2.start(0) #Motor3 gpio.setup(m3in1, gpio.OUT) gpio.setup(m3in2, gpio.OUT) gpio.output(m3in1, True) gpio.output(m3in2, False) gpio.setup(m3en, gpio.OUT) m3 = gpio.PWM(m3en, 1000) m3.start(0) #Motor4 gpio.setup(m4in1, gpio.OUT) gpio.setup(m4in2, gpio.OUT) gpio.output(m4in1, True) gpio.output(m4in2, False) gpio.setup(m4en, gpio.OUT) m4 = gpio.PWM(m4en, 1000) m4.start(0) #Motor5 gpio.setup(m5in1, gpio.OUT) gpio.setup(m5in2, gpio.OUT) gpio.output(m5in1, True) gpio.output(m5in2, False) gpio.setup(m5en, gpio.OUT) m5 = gpio.PWM(m5en, 1000) m5.start(0) #Motor6 gpio.setup(m6in1, gpio.OUT) gpio.setup(m6in2, gpio.OUT) gpio.output(m6in1, True) gpio.output(m6in2, False) gpio.setup(m6en, gpio.OUT) m6 = gpio.PWM(m6en, 1000) m6.start(0) #Sol orta servo gpio.setup(ss1, gpio.OUT) s1 = gpio.PWM(ss1, 100) #Sağ Orta Servo gpio.setup(ss2, gpio.OUT) s2 = gpio.PWM(ss2, 100) print("reset")
m1in2 = int(config.get("MOTORS", "m1in2")) m2in2 = int(config.get("MOTORS", "m2in2")) m3in2 = int(config.get("MOTORS", "m3in2")) m4in2 = int(config.get("MOTORS", "m4in2")) m5in2 = int(config.get("MOTORS", "m5in2")) m6in2 = int(config.get("MOTORS", "m6in2")) ss1 = int(config.get("MOTORS", "s1")) ss2 = int(config.get("MOTORS", "s2")) gpio.setmode(gpio.BCM) #Motor1 gpio.setup(m1in1, gpio.OUT) gpio.setup(m1in2, gpio.OUT) gpio.output(m1in1, True) gpio.output(m1in2, False) gpio.setup(m1en, gpio.OUT) m1 = gpio.PWM(m1en, 1000) m1.start(0) #Motor2 gpio.setup(m2in1, gpio.OUT) gpio.setup(m2in2, gpio.OUT) gpio.output(m2in1, True) gpio.output(m2in2, False) gpio.setup(m2en, gpio.OUT) m2 = gpio.PWM(m2en, 1000) m2.start(0)
#pfio.digital_write(0,1) pigpio.output(ECO, False) f = open("/var/log/iMeter/counter.dat","w") f.write(str(counter)) f.close() print "Counter = %i" % counter time.sleep(0.1) pigpio.output(ECO, True) pulsetime = 0 #wait for 10msec time.sleep(0.01) #pfio.init() pigpio.setup(ECI, pigpio.IN) pigpio.setup(ECO, pigpio.OUT) pigpio.output(ECO, True) logging.basicConfig() log = logging.getLogger() log.setLevel(logging.DEBUG) counter = load_counter() print "Initial counter is ", str(counter) Thread(target=input_counter).start() csv_log()