def comprobar(self):#comprobar cada subzona si se inicia usar en el bucle principal !!!falta btn next!!! if (self.comprobarDSemana() == True):### dia de la semana if(self.riego_inic == False): if (obtener_hora() in self.zonas_ini and lectura.leerParam()[5] == True):####### hora self.riego_inic = True print("inicio") else: if(obtener_hora() in self.zonas_ini): print("hola ") self.ZonaAct = self.zonas_ini.index(obtener_hora()) print("Zon: ", self.ZonaAct) exec("self.gpioZonas[{}].llmamar_pin(False)".format(self.ZonaAct-1)) lectura.escribirParam("riego", self.ZonaAct) elif(obtener_hora() == self.acaba_zon): self.riego_inic = False for x in range(len(self.pinZonas)): exec("self.gpioZonas[{}].llmamar_pin(False)".format(x)) print("c acabo") lectura.escribirParam("riego", False) print("nop")####### else: print("Zon: ", self.ZonaAct) exec("self.gpioZonas[{}].llmamar_pin(False)".format(self.ZonaAct-1)) exec("self.gpioZonas[{}].llmamar_pin(True)".format(self.ZonaAct)) lectura.escribirParam("riego", self.ZonaAct) if(lectura.leerParam()[5] == False): self.riego_inic = False else: print("nop, sem")### if self.bManual.leer_pin() == True:#cambiar a GPIO.HIGH print("Manual") self.riegoManual()
def riegoManual(self): #copia y pega del comprobar !!!falta btn next!!! paraZonaM = False ZonaActM = 0 T_inicioM = obtener_hora() zonas_iniM = [] acaba_zonM = [] i = 0 ######no tocar, no se como va xddd lista = [] while (len(self.tiempo) + 1 > i): y = T_inicioM[1] for x in range(i): y = y + self.tiempo[x] lista.append(y) i += 1 for x in range(len(lista)): zonas_iniM.append([T_inicioM[0], lista[x]]) while (zonas_iniM[x][1] >= 60): zonas_iniM[x][1] = zonas_iniM[x][1] - 60 zonas_iniM[x][0] = zonas_iniM[x][0] + 1 acaba_zonM = zonas_iniM[len(zonas_iniM) - 1] #hasta aqui xddd zonas_iniM.pop() print(zonas_iniM, " - ", acaba_zonM) lec = lectura.leerParam() while ( paraZonaM == False and lec[1] != False ): #bucle principal modo manual, anula temp el normal, si manual = false parar lec = lectura.leerParam() if (obtener_hora() in zonas_iniM): self.lManual.llmamar_pin(True) ZonaActM = zonas_iniM.index(obtener_hora()) print("Zon: ", ZonaActM) exec("self.gpioZonas[{}].llmamar_pin(False)".format(ZonaActM - 1)) exec("self.gpioZonas[{}].llmamar_pin(True)".format(ZonaActM)) elif (obtener_hora() == acaba_zonM): for x in range(len(self.pinZonas)): exec("self.gpioZonas[{}].llmamar_pin(False)".format(x)) print("c acabo") print("nop") ####### paraZonaM = True else: print("Zon: ", ZonaActM) exec("self.gpioZonas[{}].llmamar_pin(False)".format(ZonaActM - 1)) exec("self.gpioZonas[{}].llmamar_pin(True)".format(ZonaActM)) time.sleep(0.3) if (lec[2] == True): print("hola") lectura.escribirParam("riego", False) lectura.escribirParam("off", False) lectura.escribirParam("manual", False) quit() self.lManual.llmamar_pin(False) lectura.escribirParam("manual", False)
def bucle_principal(): ###cambiar en app cuando este listo while (True): a.comprobar() print(datetime.datetime.today().weekday()) time.sleep(0.3) lec = lectura.leerParam() if (lec[1] == True): a.riegoManual() elif (lec[2] == True): lectura.escribirParam("riego", False) lectura.escribirParam("off", False) lectura.escribirParam("manual", False) quit()
def reloj(self): self.label1.configure(text=time.strftime("%H : %M : %S Dia: ") + str(datetime.datetime.today().weekday() + 1)) lec = lectura.leerParam() if (lec[1] == True): self.label2.configure(text="Estado: riego manual") elif (lec[2] == True): self.label2.configure(text="Estado: off") elif (not lec[0] == False): self.label2.configure(text="Estado: regando Auto, zon: " + str(lec[0])) else: self.label2.configure(text="Estado: funcionando...") listbo = self.Lb1.curselection() try: self.boton1.configure(text=("manual", listbo[0])) except: pass self.raiz.after(1000, self.reloj)