mida 14 ;------------------------------------------------------------- ;Aplicación -> concre ;Fecha -> enero 11 del 2006 ;------------------------------------------------------------- scan equ 99 ;programa principal--------------------------------------- &ini ld scan jz &lea jmp ini10 &lea call &leavar ini10 nop inif end ;------------------------------------------- ;dosage1, dosificacion de agregados 1 ; el auxdos1 auxiliar de dosificacion debe set externamente en el principal doag1 call disp ld auxdos1 jz doag1f ;aux pcuando esta en 1 es que se esta dosificando este agregado movri agr1nb movci 0 cplei doag11 ;no hay baches enteros para agregar movri pesagr1t movri pesagri cplei doag12 ;termino el bache entero? set tolagr1 ;esta en proceso de dosificacion bache entero jmp doag1f doag11 movri agr1bf movci 2 cplei doag13 ;el bache final es menor a 2 kg. por lo que se termina movri agr1bf movri toleagr1 muli stoi pesagrtt ;calculo del peso a que debe llegar movri pesagrtt movri pesagri cplei doag13 ;termino el bache final ? set tolagr1 ;esta en proceso de dosificacion bache final jmp doag1f doag12 reset tolagr1 reset auxdos1 ;termino el bache entero inc agr1nb -1 ;disminuye el numero de baches enteros jmp doag1f doag13 reset tolagr1 reset auxdos1 ;termino el bache final doag1f return ;................................................ ;dosage2, dosificacion de agregados 2 ; el auxdos1 auxiliar de dosificacion debe set externamente en el principal doag2 call disp ld auxdos2 jz doag2f ;aux pcuando esta en 1 es que se esta dosificando este agregado movri agr1nb movci 0 cplei doag21 ;no hay baches enteros para agregar movri pesagr2t movri pesagri cplei doag22 ;termino el bache entero? set tolagr2 ;esta en proceso de dosificacion bache entero jmp doag2f doag21 movri agr2bf movci 2 cplei doag23 ;el bache final es menor a 2 kg. por lo que se termina movri agr2bf movri toleagr2 muli stoi pesagrtt ;calculo del peso a que debe llegar movri pesagrtt movri pesagri cplei doag23 ;termino el bache final ? set tolagr2 ;esta en proceso de dosificacion bache final jmp doag2f doag22 reset tolagr2 reset auxdos2 ;termino el bache entero inc agr2nb -1 ;disminuye el numero de baches enteros jmp doag2f doag23 reset tolagr2 reset auxdos2 ;termino el bache final doag2f return ;................................................ ;doce, dosificacion de cemento ; el auxcem auxiliar de dosificacion debe set externamente en el principal doce call disp ld auxce jz docef ;aux pcuando esta en 1 es que se esta dosificando este agregado movri cemnb movci 0 cplei doce1 ;no hay baches enteros para agregar movri pescemt movri pescemi cplei doce2 ;termino el bache entero? set tolcem............. ;esta en proceso de dosificacion bache entero jmp docef doce1 movri cembf movci 2 cplei doce3 ;el bache final es menor a 2 kg. por lo que se termina movri agr2bf movri tolecem muli stoi pescemtt ;calculo del peso a que debe llegar movri pescemtt movri pescemi cplei doce3 ;termino el bache final ? set tolecem ;esta en proceso de dosificacion bache final jmp docef doce2 reset tolcem reset auxcem ;termino el bache entero inc cemnb -1 ;disminuye el numero de baches enteros jmp docef doce3 reset tolcem reset auxcem ;termino el bache final docef return ;................................................ ;disp disp movrf pesagrf stofi pesagri movrf pescemf stofi pescemi dispf return ;----------------------------------------------- &leavar ;[REG_RELAYS] manaut equ 0 ;manual automatico manual=0 inirut equ 1 ;inicio de rutina inicio=1 carcem equ 2 ;carge cemento descem equ 3 ;descarge cemento pulagu equ 4 ;contador pulsos de agua resagu equ 5 ;reset contador de agua tolagr1 equ 100 ;descarge agregado1 tolagr2 equ 101 ;descarge agregado2 tolcemc equ 102 ;tolva carge de cemento tolcemd equ 103 ;descarge tolva de pesado de cemento valagu equ 104 ;valvula de agua tolagre equ 105 ;descarge tolva de pesado de agregados auxdos1 equ 160 ;aux en doag1 que indica que se en un proceso de dosificacion=1 auxdos2 equ 161 ;aux en doag2 que indica que se en un proceso de dosificacion=1 ;[REG_INTEGERS] pesagri equ 150 ;peso agregado online entero pescemi equ 151 ;peso cemento online entero pesagr equ 152 ;peso temporal de agregado pescem equ 153 ;peso final de cemento agua equ 154 ;litros de agua pesagr1 equ 155 ;peso acumulado del agregado pesagr2 equ 156 ;peso acumulado del agregado agr1nb equ 300 ;numero de baches maximos del agregado1 agr1bf equ 301 ;cantidad del ultimo bache agr2nb equ 302 ;numero de baches completos agr2bf equ 303 ; cantidad de peso del bache final cemnb equ 304 cembf equ 305 agubf equ 306 ;cantidad de agua a dosificar pesagr1t equ 307 ;temporal calculo peso con tolerancia completos pesagr2t equ 308 ;temporal calculo peso con tolerancia completos pescemt equ 309 ;temporal calculo peso con tolerancia completos pesagrtt equ 310 ;temporal para pesos finales con tolerancia pescemtt equ 311 ;temporal para pesos finales con tolerancia direc equ 400 ;direccionamiento del registro a dosificar auxdirec equ 401 ;auxiliar para direccionamiento toleagr1 equ 1100 ;% tolerancia donde debe parar la dosificacion del agregado 1 toleagr2 equ 1101 ;% tolerancia donde debe parar la dosificacion del agregado 2 tolecem equ 1102 ;% tolerancia donde debe parar la dosificacion del cemento toleagu equ 1103 ;% tolerancia donde debe parar la dosificacion del agua capagr equ 1104 ;capacidad maxima tolva agregados capcem equ 1105 ;capacidad maxima tolva cemento ;[REG_FLOATS] pesagrf equ 0 ;peso agregados pescemf equ 1 ;peso cemento ;[TIM] ;[CNT] ;[NOP] ;VARIABLES PARA INICIAR &leavarf ret ;-----------------------------------------------