def calibrar_temp(dato): global temp_set #se reciben los parametros para calibracion setting = [dato['temp'], dato['itemp'], dato['medx']] #ORDEN DE: od_set: #ph_set = [od1_set, iod1_set, od2_set, iod2_set] try: if setting[2] == 'med1': temp_set[0] = float(dato['temp']) temp_set[1] = float(dato['itemp']) elif setting[2] == 'med2': temp_set[2] = float(dato['temp']) temp_set[3] = float(dato['itemp']) except: temp_set = [0, 0, 0, 0] if (temp_set[3] - temp_set[1]) != 0 and temp_set[0] != 0 and temp_set[1] != 0: m_temp = float( format((temp_set[2] - temp_set[0]) / (temp_set[3] - temp_set[1]), '.2f')) n_temp = float(format(temp_set[0] - temp_set[1] * (m_temp), '.2f')) else: m_temp = 0 n_temp = 0 if temp_set[0] != 0 and temp_set[1] != 0 and temp_set[2] != 0 and temp_set[ 3] != 0 and m_temp != 0 and n_temp != 0: try: coef_temp_set = [m_temp, n_temp] f = open(DIR + "coef_temp_set.txt", "w") f.write(str(coef_temp_set) + '\n') f.close() communication.calibrate(2, coef_temp_set) except: pass #logging.info("no se pudo guardar en coef_ph_set en coef_od_set.txt") #Con cada cambio en los parametros, se vuelven a emitir a todos los clientes. socketio.emit('temp_calibrar', {'set': temp_set}, namespace='/biocl', broadcast=True) #guardo set_data en un archivo para depurar try: temp_set_txt = str(temp_set) f = open(DIR + "temp_set.txt", "w") f.write(temp_set_txt + '\n') f.close() except: pass
def calibrar_ph(dato): global ph_set #se reciben los parametros para calibracion setting = [dato['ph'], dato['iph'], dato['medx']] #ORDEN DE: ph_set: #ph_set = [ph1_set, iph1_set, ph2_set, iph2_set] try: if setting[2] == 'med1': ph_set[0] = float(dato['ph']) #y1 ph_set[1] = float(dato['iph']) #x1 elif setting[2] == 'med2': ph_set[2] = float(dato['ph']) #y2 ph_set[3] = float(dato['iph']) #x2 except: ph_set = [0, 0, 0, 0] if (ph_set[3] - ph_set[1]) != 0 and ph_set[0] != 0 and ph_set[1] != 0: m_ph = float( format((ph_set[2] - ph_set[0]) / (ph_set[3] - ph_set[1]), '.2f')) n_ph = float(format(ph_set[0] - ph_set[1] * (m_ph), '.2f')) else: m_ph = 0 n_ph = 0 if ph_set[0] != 0 and ph_set[1] != 0 and ph_set[2] != 0 and ph_set[ 3] != 0 and m_ph != 0 and n_ph != 0: try: coef_ph_set = [m_ph, n_ph] f = open(DIR + "coef_ph_set.txt", "w") f.write(str(coef_ph_set) + '\n') f.close() #aca va el codigo que formatea el comando de calibracion. communication.calibrate(0, coef_ph_set) except: pass #logging.info("no se pudo guardar en coef_ph_set.txt. Tampoco actualizar los coef_ph_set al uc.") #Con cada cambio en los parametros, se vuelven a emitir a todos los clientes. socketio.emit('ph_calibrar', {'set': ph_set}, namespace='/biocl', broadcast=True) #guardo set_data en un archivo para depurar try: ph_set_txt = str(ph_set) f = open(DIR + "ph_set.txt", "w") f.write(ph_set_txt + '\n') f.close() except: pass
def calibrar_od(dato): global od_set #se reciben los parametros para calibración setting = [ dato['od'], dato['iod'], dato['medx'] ] #ORDEN DE: od_set: #ph_set = [od1_set, iod1_set, od2_set, iod2_set] try: if setting[2] == 'med1': od_set[0] = float(dato['od']) od_set[1] = float(dato['iod']) elif setting[2] == 'med2': od_set[2] = float(dato['od']) od_set[3] = float(dato['iod']) except: od_set = [0,0,0,0] if (od_set[3] - od_set[1])!=0 and od_set[1]!=0: m_od = float(format(( od_set[2] - od_set[0] )/( od_set[3] - od_set[1] ), '.2f')) n_od = float(format( od_set[0] - od_set[1]*(m_od), '.2f')) else: m_od = 0 n_od = 0 if od_set[1]!=0 and od_set[3]!=0 and m_od!=0 and n_od!=0: try: coef_od_set = [m_od, n_od] f = open(DIR + "coef_od_set.txt","w") f.write(str(coef_od_set) + time.strftime("__Hora__%H_%M_%S__Fecha__%d-%m-%y") + '\n') f.close() communication.calibrate(1,coef_od_set) except: pass #logging.info("no se pudo guardar en coef_ph_set en coef_od_set.txt") #Con cada cambio en los parametros, se vuelven a emitir a todos los clientes. socketio.emit('od_calibrar', {'set': od_set}, namespace='/biocl', broadcast=True) #guardo set_data en un archivo para depurar try: od_set_txt = str(od_set) f = open(DIR + "od_set.txt","w") f.write(od_set_txt + '\n') f.close() except: pass
def calibrar_ph(dato): global ph_set, calibrar_ph #se reciben los parametros para calibración setting = [ dato['ph'], dato['iph'], dato['medx'] ] #ORDEN DE: ph_set: #ph_set = [ph1_set, iph1_set, ph2_set, iph2_set] try: if setting[2] == 'med1': ph_set[0] = float(dato['ph']) #y1 ph_set[1] = float(dato['iph']) #x1 elif setting[2] == 'med2': ph_set[2] = float(dato['ph']) #y2 ph_set[3] = float(dato['iph']) #x2 except: ph_set = [0,0,0,0] if (ph_set[3] - ph_set[1])!=0 and ph_set[0]!=0 and ph_set[1]!=0: m_ph = float(format(( ph_set[2] - ph_set[0] )/( ph_set[3] - ph_set[1] ), '.2f')) n_ph = float(format( ph_set[0] - ph_set[1]*(m_ph), '.2f')) else: m_ph = 0 n_ph = 0 if ph_set[0]!=0 and ph_set[1]!=0 and ph_set[2]!=0 and ph_set[3]!=0 and m_ph!=0 and n_ph!=0: try: coef_ph_set = [m_ph, n_ph] f = open(DIR + "/ph_settings.txt","w") f.write(str(ph_set) + "__" + str(coef_ph_set) + "__" + calibrar_ph + " " + time.strftime("__Hora__%H_%M_%S__Fecha__%d-%m-%y") +'\n') f.close() #acá va el codigo que formatea el comando de calibración. calibrar_ph = communication.calibrate(0,coef_ph_set) #Publisher set_data commands al ZMQ suscriptor de myserial.py port = "5556" context = zmq.Context() socket = context.socket(zmq.PUB) socket.bind("tcp://*:%s" % port) #Publisher set_data commands socket.send_string("%s %s" % (topic, calibrar_ph)) except: pass #logging.info("no se pudo guardar en coef_ph_set.txt. Tampoco actualizar los coef_ph_set al uc.") #Con cada cambio en los parametros, se vuelven a emitir a todos los clientes. socketio.emit('ph_calibrar', {'set': ph_set}, namespace='/biocl', broadcast=True) #guardo ph_set en un archivo para depurar try: ph_set_txt = str(ph_set) f = open(DIR + "/ph_set.txt","w") f.write(ph_set_txt + '\n') f.close() except: pass
def calibrar_od(dato): global od_set #se reciben los parametros para calibración setting = [ dato['od'], dato['iod'], dato['medx'] ] #ORDEN DE: od_set: #ph_set = [od1_set, iod1_set, od2_set, iod2_set] try: if setting[2] == 'med1': od_set[0] = float(dato['od']) od_set[1] = float(dato['iod']) elif setting[2] == 'med2': od_set[2] = float(dato['od']) od_set[3] = float(dato['iod']) except: od_set = [0,0,0,0] if (od_set[3] - od_set[1])!=0 and od_set[1]!=0: m_od = float(format(( od_set[2] - od_set[0] )/( od_set[3] - od_set[1] ), '.2f')) n_od = float(format( od_set[0] - od_set[1]*(m_od), '.2f')) else: m_od = 0 n_od = 0 if od_set[1]!=0 and od_set[3]!=0 and m_od!=0 and n_od!=0: try: coef_od_set = [m_od, n_od] f = open(DIR + "/coef_od_set.txt","w") f.write(str(coef_od_set) + time.strftime("__Hora__%H_%M_%S__Fecha__%d-%m-%y") + '\n') f.close() #acá va el codigo que formatea el comando de calibración. calibrar_od = communication.calibrate(1,coef_od_set) #Publisher set_data commands al ZMQ suscriptor de myserial.py port = "5556" context = zmq.Context() socket = context.socket(zmq.PUB) socket.bind("tcp://*:%s" % port) #Publisher set_data commands socket.send_string("%s %s" % (topic, calibrar_od)) except: pass #logging.info("no se pudo guardar en coef_ph_set en coef_od_set.txt") #Con cada cambio en los parametros, se vuelven a emitir a todos los clientes. socketio.emit('od_calibrar', {'set': od_set}, namespace='/biocl', broadcast=True) #guardo set_data en un archivo para depurar try: od_set_txt = str(od_set) f = open(DIR + "/od_set.txt","w") f.write(od_set_txt + '\n') f.close() except: pass