;*******PROGRAMA DE CONTROL DE CARGA************ ;RELES IN0 EQU 0 IN4 EQU 4 TENTER EQU 30 TCLEAR EQU 31 TARRIBA EQU 32 TIZQ EQU 33 T1SEG EQU 37 T0.5SEG EQU 36 OUT0 EQU 100 OUT1 EQU 101 OUT2 EQU 102 LED1 EQU 118 LED2 EQU 119 LED3 EQU 120 LED4 EQU 121 LED7 EQU 124 LED8 EQU 125 LED9 EQU 126 EA0 EQU 127 FASCEN1 EQU 128 FDESCE1 EQU 129 ESPERAN EQU 130 FINESPE EQU 131 ENCARGA EQU 132 FINCARGA EQU 133 ;ENTEROS SEG EQU 96 HORA EQU 97 MIN EQU 98 DIA EQU 101 MES EQU 102 ANO EQU 103 CONTIN0 EQU 104 CONTS EQU 150 PULSOS EQU 151 TEMPOR EQU 152 SEGUNDO EQU 153 MINUTOS EQU 154 DIFTIMER EQU 155 TCRMT EQU 156 TMUESTRA EQU 157 TESPERA EQU 1100 TCARGA EQU 1101 ALARM1 EQU 1102 ALARM2 EQU 1103 ;TEMPORIZADORES TEMPO1 EQU 48 TEMPO2 EQU 49 ;32 BITS CONTADOR EQU 20 CONTA EQU 21 POTENCIA EQU 23 DEMAXRMT EQU 24 TIEMPO EQU 25 PENDX EQU 26 PENDY EQU 27 PENDIENT EQU 28 PROYEC EQU 29 MAXHRMTO EQU 30 ANORMTO EQU 31 MESRMTO EQU 32 DIARMTO EQU 33 HORARMTO EQU 34 MINRMTO EQU 35 VALPULSO EQU 400 ;VALOR DEL PULSO EN WATIOS/HORA DEMAX EQU 401 ;PARAMETRO DE MAX DEMANDA HISTORI EQU 404 ANOHIST EQU 405 MESHIST EQU 406 DIAHIST EQU 407 HORAHIS EQU 408 MINHIST EQU 409 MAXHIST EQU 410 ANOMAX EQU 411 MESMAX EQU 412 DIAMAX EQU 413 HORAMAX EQU 414 MINMAX EQU 415 ;TEXTOS TXT1 LITE "STAND" TXT2 LITE "ULTIMO DATO" TXT3 LITE "MAX DEMANDA" TXT4 LITE "BORRA" TXT5 LITE "Histo" TXT6 LITE "E-C" TXT7 LITE "SET" TXT8 LITE "d-pot" TXT9 LITE "PULSO" TXT10 LITE "T-CARG" TXT11 LITE "T-ESP" TXT12 LITE "AL-1" TXT13 LITE "AL-2" ;**************DEFINICION BASE DE DATOS************ ;FILE 0, 103I,102I,101I,97I,98I,23F, LEN=4500, TYPE=C ;************************************************** INI ;SETRI TESPERA 90 ;SETRI TCARGA 900 MOVCF 0 STOF CONTADOR ;MOVCF 0.025 ;PROBE ;STOF VALPULSO ;MOVCF 25 ;PROBE ;STOF DEMAX INICIO MOVRI TCARGA STOI TCRMT MOVRF DEMAX STOF DEMAXRMT MOVRF MAXHIST STOF MAXHRMTO MOVRF ANOMAX STOF ANORMTO MOVRF MESMAX STOF MESRMTO MOVRF DIAMAX STOF DIARMTO MOVRF HORAMAX STOF HORARMTO MOVRF MINMAX STOF MINRMTO INK TCLEAR ;BORRA DATO HISTORICO JZ MENU2 MENU1 CLEAR DISL TXT4 ;TEXTO "BORRA" COM 0 CLEAR DISL TXT5 ;TEXTO "HISTO" COM 1 CLEAR DISL TXT6 ;TEXTO "E/C" COM 2 INK TENTER JZ SALIRBOR MOVCF 0 STOF MAXHIST JMP MENU2 SALIRBOR INK TCLEAR JZ MENU1 MENU2 LD TARRIBA ;MENU DE CONFIGURACION AND TIZQ JZ LEDS DISMENU2 CLEAR DISL TXT7 ;TEXTO "SET" COM 0 CLEAR DISL TXT8 ;TEXTO "DM" COM 1 CLEAR DISRF DEMAX 50 COM 2 INK TCLEAR JZ ENTMENU2 CLEAR INF 2 0 STOF DEMAX JMP MENU3 ENTMENU2 INK TENTER JZ DISMENU2 MENU3 CLEAR DISL TXT9 ;TEXTO "VPULS" COM 1 CLEAR DISRF VALPULSO 25 COM 2 INK TCLEAR JZ ENTMENU3 CLEAR INF 2 4 STOF VALPULSO JMP MENU4 ENTMENU3 INK TENTER JZ MENU3 MENU4 CLEAR DISL TXT10 ;TEXTO "T-CARG" COM 1 CLEAR DISRI TCARGA 5 COM 2 INK TCLEAR JZ ENTMENU4 CLEAR INI 2 STOI TCARGA JMP MENU5 ENTMENU4 INK TENTER JZ MENU4 MENU5 CLEAR DISL TXT11 ;TEXTO "T-ESP" COM 1 CLEAR DISRI TESPERA 4 COM 2 INK TCLEAR JZ ENTMENU5 CLEAR INI 2 STOI TESPERA JMP MENU6 ENTMENU5 INK TENTER JZ MENU5 MENU6 CLEAR DISL TXT12 COM 1 CLEAR DISRI ALARM1 4 COM 2 INK TCLEAR JZ ENTMENU6 CLEAR INI 2 STOI ALARM1 JMP MENU7 ENTMENU6 INK TENTER JZ MENU6 MENU7 CLEAR DISL TXT13 COM 1 CLEAR DISRI ALARM2 4 COM 2 INK TCLEAR JZ ENTMENU7 CLEAR INI 2 STOI ALARM2 ENTMENU7 INK TENTER JZ MENU7 LEDS LD IN4 OUT LED7 LD T1SEG OUT LED4 LD LED1 OUT OUT0 ;RELE DE ALARMA LD OUT1 OUT LED8 LD OUT2 OUT LED9 CONTI MOVRI CONTIN0 MOVCI 30000 ;MAX VALOR DE CONTADOR CPGI OTROCNT LEAPULSO MOVIF CONTIN0 STOF CONTA MOVRF CONTA STOFX CONTS SETRI PULSOS 0 MOVCF 0 STOF CONTADOR SUMAPULS MOVFX PULSOS MOVRF CONTADOR ADDF STOF CONTADOR INC PULSOS 1 MOVRI PULSOS MOVRI CONTS CPLI SUMAPULS STAND LD ESPERAN ;TIEMPO DE ESPERA TIMR TEMPO1 TESPERA OUT FINESPE LD ENCARGA JNZ PROCESO LD FINESPE JNZ INICNT SET ESPERAN CLEAR DISL TXT1 COM 0 CLEAR LOC 0 DISRI HORA 2 LOC 2 DISCH 58 LOC 3 DISRI MIN 2 COM 1 CLEAR COM 2 JMP INICIO INICNT SETRI CONTIN0 0 SETRI CONTS 0 SETRI SEGUNDO 59 MOVRI TCARGA MOVCI 600 DIVI STOI MINUTOS INC MINUTOS -1 MOVCF 0 STOF CONTADOR SETRI TMUESTRA 300 RESET LED1 RESET LED2 RESET LED3 BORRA MOVCF 0 STOFX CONTS INC CONTS 1 MOVRI CONTS MOVCI 10 CPLI BORRA SETRI CONTS 0 PROCESO LD ENCARGA TIMR TEMPO2 TCARGA OUT FINCARGA SET ENCARGA LD FINCARGA JNZ RESETEMP MOVRF CONTADOR MOVRF VALPULSO MULF STOF POTENCIA ;CALCULA POTENCIA MOVRI TCARGA MOVRI TEMPO2 SUBI STOI DIFTIMER MOVRI DIFTIMER MOVRI TMUESTRA CPLI FLAGS ;CALCULA PTOX MOVIF DIFTIMER STOF PENDX MOVRF POTENCIA STOF PENDY ;CALCULA PTOY MOVRI TMUESTRA MOVCI 300 ADDI STOI TMUESTRA MOVRF PENDY MOVRF PENDX DIVF STOF PENDIENT ;CALCULA PENDIENTE EN 30 SEG MOVRF PENDIENT MOVIF TCARGA MULF STOF PROYEC MOVRF PROYEC MOVRF DEMAX ;REALIZA PROYECION DE CARGA Y CPLF POTBAJA ;COMPARA CON DEMANDA MAX MOVRF PROYEC MOVRF DEMAX CPGF POTALTA POTOK SET LED2 RESET LED1 RESET LED3 FLAGS MOVRF DEMAX MOVIF ALARM1 MULF MOVCF 100 DIVF MOVRF POTENCIA CPLF SETAL1 RESET OUT1 AL2 MOVRF DEMAX MOVIF ALARM2 MULF MOVCF 100 DIVF MOVRF POTENCIA CPLF SETAL2 RESET OUT2 JMP FLANCO SETAL1 SET OUT1 ;SALIDA PARA ALARMA 1 JMP AL2 SETAL2 SET OUT2 FLANCO LD T1SEG LDNT EA0 ANDLD OUT FASCEN1 LDNT T1SEG LD EA0 ANDLD OUT FDESCE1 LD T1SEG OUT EA0 LD FASCEN1 JZ DESCEN INC SEGUNDO -1 MOVRI SEGUNDO MOVCI 0 CPLI INCMIN JMP VISUAL INCMIN SETRI SEGUNDO 59 INC MINUTOS -1 DESCEN LD FDESCE1 JZ VISUAL INC SEGUNDO -1 MOVRI SEGUNDO MOVCI 0 CPLI INCMIN1 JMP VISUAL INCMIN1 SETRI SEGUNDO 59 INC MINUTOS -1 VISUAL CLEAR DISRF POTENCIA 41 COM 0 CLEAR LOC 0 DISRI MINUTOS 2 LOC 2 DISCH 58 LOC 3 DISRI SEGUNDO 2 COM 1 CLEAR DISRF MAXHIST 50 COM 2 JMP INICIO ;RUTINAS UTILIDADES******* OTROCNT SETRI CONTIN0 0 INC CONTS 1 JMP LEAPULSO POTBAJA RESET LED1 RESET LED2 SET LED3 JMP FLAGS POTALTA SET LED1 RESET LED2 RESET LED3 JMP FLAGS RESETEMP ;WRITE 0 1 ;ESCRIBE EN BASE DE DATOS RESET FINCARGA RESET ESPERAN RESET ENCARGA RESET FINESPE MOVRF POTENCIA STOF HISTORI MOVIF ANO STOF ANOHIST MOVIF MES STOF MESHIST MOVIF DIA STOF DIAHIST MOVIF HORA STOF HORAHIS MOVIF MIN STOF MINHIST MOVRF POTENCIA MOVRF MAXHIST CPLF TRANSMIT ;VERIFICA SI HAY DATO MAYOR MOVRF POTENCIA STOF MAXHIST MOVIF ANO STOF ANOMAX MOVIF MES STOF MESMAX MOVIF DIA STOF DIAMAX MOVIF HORA STOF HORAMAX MOVIF MIN STOF MINMAX TRANSMIT CLEAR LOC 0 DISL TXT2 ;TEXTO "ULTIMO DATO" LOC 13 DISRF HISTORI 61 LOC 24 DISRF HORAHIS 20 LOC 26 DISCH 58 LOC 27 DISRF MINHIST 20 LOC 32 DISRF DIAHIST 20 LOC 34 DISCH 47 LOC 35 DISRF MESHIST 20 LOC 37 DISCH 47 LOC 38 DISRF ANOHIST 20 LOC 41 DISCH 13 ;CR LOC 42 DISCH 10 ;LF COM 3 CLEAR LOC 0 DISL TXT3 ;TEXTO "MAX DEMANDA" LOC 13 DISRF MAXHIST 61 LOC 24 DISRF HORAMAX 20 LOC 26 DISCH 58 LOC 27 DISRF MINMAX 20 LOC 32 DISRF DIAMAX 20 LOC 34 DISCH 47 LOC 35 DISRF MESMAX 20 LOC 37 DISCH 47 LOC 38 DISRF ANOMAX 20 LOC 41 DISCH 13 LOC 42 DISCH 10 COM 3 JMP INICIO