else: data=sys.argv[1] data=data.split("-") dia=int(data[0]) mes=int(data[1]) yea=int(data[2]) '''Login ASDU 183''' P.pregunta(C.creaTramaVar(0b01110011,C.creaASDU183())) #request data & send password P.pregunta(C.creaTramaFix(0b01011011)) #request data '''ASDU 123, registre 11, objecte 1 (inicial i final)''' P.pregunta( C.creaTramaVar(0b01110011, C.creaASDU123(11,1,1, C.creaTemps(dia ,mes,yea,0,0), C.creaTemps(dia+1,mes,yea,0,0)))) P.pregunta(C.creaTramaFix(0b01011011)) #request data respostes=[] #array per contenir les respostes a processar (trames amb asdus 11) while True: #vés consultant fins que doni senyal de fi try: respostes.append(P.pregunta(C.creaTramaFix(0b01111011))) #flip FCB bit respostes.append(P.pregunta(C.creaTramaFix(0b01011011))) #request data except: #quan s'acabi donarà runtime error break '''FI REQUEST''' print("CORBA POTÈNCIA");print("==============") for i in range(len(respostes)): E.extreuPotencia(respostes[i])
ASDU 118: no disponible (idem) ''' import sys sys.path.insert(0, "../bin") #add bin folder to path import crea as C import pregunta as P #login P.pregunta(C.creaTramaVar(0b01110011, C.creaASDU183())) #request user data & send password P.pregunta(C.creaTramaFix(0b01011011)) #request class 2 data '''TEST: ASDU 123 amb registre 21''' P.pregunta( C.creaTramaVar( 0b01110011, C.creaASDU123(21, 1, 1, C.creaTemps(16, 10, 20, 0, 0, 0), C.creaTemps(16, 10, 22, 0, 0, 0)))) while (1): P.pregunta(C.creaTramaFix(0b01011011)) #request data P.pregunta(C.creaTramaFix(0b01111011)) #request data (flip FCB) quit('STOP') #TEST: prova asdu 190 amb registre 11 (Curva de carga) i direccio 9,10,11 '''La dirección de objeto selecciona la obtención de bloques de puntos de medida genéricos con reservas (9), bloques de puntos de medida genéricos sin reservas (10) o bloques de puntos de medida de consumo sin reservas (11).''' P.pregunta( C.creaTramaVar( 0b01110011,
ASDU 118: no disponible (idem) ''' import sys sys.path.insert(0, "../bin") #add bin folder to path import crea as C import pregunta as P #login P.pregunta(C.creaTramaVar(0b01110011, C.creaASDU183())) #request user data & send password P.pregunta(C.creaTramaFix(0b01011011)) #request class 2 data '''TEST: ASDU 123 amb registre 21''' P.pregunta( C.creaTramaVar( 0b01110011, C.creaASDU123(21, 1, 1, C.creaTemps(20, 10, 16, 0, 0), C.creaTemps(22, 10, 16, 0, 0)))) while (1): P.pregunta(C.creaTramaFix(0b01011011)) #request data P.pregunta(C.creaTramaFix(0b01111011)) #request data (flip FCB) quit('STOP') #TEST: prova asdu 190 amb registre 11 (Curva de carga) i direccio 9,10,11 '''La dirección de objeto selecciona la obtención de bloques de puntos de medida genéricos con reservas (9), bloques de puntos de medida genéricos sin reservas (10) o bloques de puntos de medida de consumo sin reservas (11).''' P.pregunta( C.creaTramaVar( 0b01110011,
print "Dia final (dd/mm/aa):", dia, mes, yea #local imports sys.path.insert(0, "../bin") #add bin folder to path import crea as C import pregunta as P import processaA11 as E '''Login ASDU 183''' P.pregunta(C.creaTramaVar(0b01110011, C.creaASDU183())) #request data & send password P.pregunta(C.creaTramaFix(0b01011011)) #request data '''ASDU 123 amb registre 11 i objecte 1 (inicial i final)''' P.pregunta( C.creaTramaVar( 0b01110011, C.creaASDU123(11, 1, 1, C.creaTemps(yea, mes, 1, 0, 0, estiu_inici), C.creaTemps(yea, mes, dia, 0, 0, estiu_final)))) P.pregunta(C.creaTramaFix(0b01011011)) #request data respostes = [] #array de trames amb asdus 11 #consulta fins que doni error while True: try: respostes.append(P.pregunta(C.creaTramaFix(0b01111011))) #flip FCB bit respostes.append(P.pregunta(C.creaTramaFix(0b01011011))) #request data except: #quan s'acabi donarà runtime error break '''FI REQUEST''' #obre arxiu de lectura
anyFinal = final[2] #horari estiu? <0,1> estiuInici = inici[3] estiuFinal = final[3] '''Login amb ASDU 183''' P.pregunta(C.creaTramaVar(0b01110011, C.creaASDU183())) #request data & send password P.pregunta(C.creaTramaFix(0b01011011)) #request data '''REQUEST amb ASDU 123 registre 11 i objecte 1 inicial i final''' P.pregunta( C.creaTramaVar( 0b01110011, C.creaASDU123( 11, 1, 1, C.creaTemps(anyInici, mesInici, diaInici, 0, 0, estiuInici), C.creaTemps(anyFinal, mesFinal, diaFinal, 0, 0, estiuFinal)))) P.pregunta(C.creaTramaFix(0b01011011)) #request data '''Array per contenir les respostes a processar (trames amb asdus 11)''' respostes = [] #consulta fins que doni error while True: try: #fcb respostes.append(P.pregunta( C.creaTramaFix(0b01111011))) #request data & flip FCB bit respostes.append(P.pregunta(C.creaTramaFix(0b01011011))) #request data except: #quan s'acabi donarà runtime error break '''FI REQUEST'''
import processaA11 as E #esbrina dia, mes i any actuals ara = time.localtime() dia = ara.tm_mday + 1 #dia següent: sinó es queda a les 00:00 del dia actual mes = ara.tm_mon yea = ara.tm_year - 2000 #0-99 '''Login ASDU 183''' P.pregunta(C.creaTramaVar(0b01110011, C.creaASDU183())) #request data & send password P.pregunta(C.creaTramaFix(0b01011011)) #request data '''ASDU 123 amb registre 11 i objecte 1 (inicial i final)''' P.pregunta( C.creaTramaVar( 0b01110011, C.creaASDU123(11, 1, 1, C.creaTemps(1, mes, yea, 0, 0), C.creaTemps(dia, mes, yea, 0, 0)))) P.pregunta(C.creaTramaFix(0b01011011)) #request data respostes = [] #array de trames amb asdus 11 #consulta fins que doni error while True: try: respostes.append(P.pregunta(C.creaTramaFix(0b01111011))) #flip FCB bit respostes.append(P.pregunta(C.creaTramaFix(0b01011011))) #request data except: #quan s'acabi donarà runtime error break '''FI REQUEST'''
#processa dates diaInici = inici[0] mesInici = inici[1] anyInici = inici[2] diaFinal = final[0] mesFinal = final[1] anyFinal = final[2] '''Login amb ASDU 183''' P.pregunta(C.creaTramaVar(0b01110011, C.creaASDU183())) #request data & send password P.pregunta(C.creaTramaFix(0b01011011)) #request data '''REQUEST amb ASDU 123 registre 11 i objecte 1 inicial i final''' P.pregunta( C.creaTramaVar( 0b01110011, C.creaASDU123(11, 1, 1, C.creaTemps(diaInici, mesInici, anyInici, 0, 0), C.creaTemps(diaFinal, mesFinal, anyFinal, 0, 0)))) P.pregunta(C.creaTramaFix(0b01011011)) #request data '''Array per contenir les respostes a processar (trames amb asdus 11)''' respostes = [] #consulta fins que doni error while True: try: respostes.append(P.pregunta(C.creaTramaFix(0b01111011))) #flip FCB bit respostes.append(P.pregunta(C.creaTramaFix(0b01011011))) #request data except: #quan s'acabi donarà runtime error break '''FI REQUEST''' print("CORBA POTÈNCIA")