mida 14 ;------------------------------------------------------------- ;Aplicación -> concre ;Fecha -> enero 11 del 2006 ; 4 version se integra calagr a doag ;------------------------------------------------------------- scan equ 99 ;programa principal--------------------------------------- &ini ld scan jz &lea jmp ini10 &lea call &leavar ini10 ld manaut jnz ini20 set manaut1 ini20 ld manaut and manaut1 jnz ini30 call disp call cali jmp inif ini30 ld empiece jnz ini40 reset finagr1 reset finagr2 reset fincem reset finagu setri acuagr1 0 setri acuagr2 0 setri acucem 0 setri acuagu 0 set empiece ini40 ld finagr1 and finagr2 and fincem and finagu out final ld final jz ini50 reset manaut1 reset empiece clear com 0 clear disl finald com 1 clear com 2 jmp inif ini50 ld empagr1 jz ini60 call doag1 jmp ini70 ini60 ld empagr2 jz ini70 call doag2 ini70 call empcem call empagu inif end ;------------------------------------------- ;doag1, dosificacion agregado1 ; doag1 ld proces1 jnz doag10 ;--- ;calagr1, calculo de la cantidad a agregar ; se calcula objagr calagr1 movri finagr1 movri acuagr1 subi stoi nuepes ;indica cuanto falta movri nuepes movri pemiag1 cpgei calagr10 ;si el peso faltante es menor al minimo de excel termine definitivo set finagr1 ;esta bandera termina definitivo con este proceso jmp doag1f calagr10 movri nuepes movri paragr1 ;lo compara con el peso de parada cpgi calagr11 ;si es mayor que el de parada... movri nuepes ;si es menor que el de parada stoi objagr ;el peso objetivo es el peso de lo que le falta jmp doag10 calagr11 movri paragr1 ;si es mayor ...el peso objetivo es el peso de parada stoi objagr ;--- doag10 call disp ld bantem11 jnz doag13 ;si... vaya proceso mirar peso hasta desocupar tolva ppal set proces1 ld banest11 jnz doag12 ;si.... vaya a tiempo de estabilidad movri objagr ;no esta en proceso.... movri pesagri cpli doag11 set tolagr1 jmp doag1f doag11 reset tolagr1 set banest11 movri temagr1 ;llega del excel stoi tieagri doag12 call tieagr ; temporice mientras estabiliza la tolva de agregados ld auxagr2 ;aux estado agregado1, define si termino la dosi jz doag1f reset auxagr1 call disp ;termino tiempo... movri acuagr1 movri pesagri addi stoi acuagr1 ;guarda el nuevo acumulado set tolagre ;abra la tolva principal bascula agregados set bantem11 reset banest11 jmp doag1f doag13 movri pesagri movri peciag cpei doag1f reset tolagre reset proces1 set proces2 reset bantem11 reset empagr1 doag1f ret ;------------------------------------------- ;doag2, dosificacion agregado2 ; doag2 ld proces2 jnz doag20 ;--- ;calagr1, calculo de la cantidad a agregar ; se calcula objagr calagr2 movri finagr2 movri acuagr2 subi stoi nuepes ;indica cuanto falta movri nuepes movri pemiag2 cpgei calagr20 ;si el peso faltante es menor al minimo de excel termine definitivo set finagr2 ;esta bandera termina definitivo con este proceso jmp doag1f calagr20 movri nuepes movri paragr2 ;lo compara con el peso de parada cpgi calagr21 ;si es mayor que el de parada... movri nuepes ;si es menor que el de parada stoi objagr ;el peso objetivo es el peso de lo que le falta jmp doag20 calagr21 movri paragr2 ;si es mayor ...el peso objetivo es el peso de parada stoi objagr ;--- doag20 call disp ld bantem21 jnz doag23 ;si... vaya proceso mirar peso hasta desocupar tolva ppal set proces2 ld banest21 jnz doag22 ;si.... vaya a tiempo de estabilidad movri objagr ;no esta en proceso.... movri pesagri cpli doag21 set tolagr2 jmp doag1f doag21 reset tolagr2 set banest21 movri temagr2 ;llega del excel stoi tieagri doag22 call tieagr ; temporice mientras estabiliza la tolva de agregados ld auxagr2 ;aux estado agregado1, define si termino la dosi jz doag1f reset auxagr1 call disp ;termino tiempo... movri acuagr2 movri pesagri addi stoi acuagr2 ;guarda el nuevo acumulado set tolagre ;abra la tolva principal bascula agregados set bantem21 reset banest21 jmp doag2f doag23 movri pesagri movri peciag cpei doag2f reset tolagre reset proces2 set proces1 reset bantem21 reset empagr2 doag2f ret ;---------------------------------------------------------- ;docem, dosificacion demento ; docem ld proces3 jnz docem1 ;--- ;calagr1, calculo de la cantidad a agregar ; se calcula objagr calcem1 movri fincem movri acucem subi stoi nuepesc ;indica cuanto falta movri nuepesc movri pemicem cpgei calcem10 ;si el peso faltante es menor al minimo de excel termine definitivo set fincem ;esta bandera termina definitivo con este proceso jmp docemf calcem10 movri nuepesc movri parcem ;lo compara con el peso de parada cpgi calcem11 ;si es mayor que el de parada... movri nuepesc ;si es menor que el de parada stoi objcem ;el peso objetivo es el peso de lo que le falta jmp docem1 calcem11 movri parcem ;si es mayor ...el peso objetivo es el peso de parada stoi objcem ;--- docem1 call disp ld bantemc jnz docem3 ;si... vaya proceso mirar peso hasta desocupar tolva ppal set proces3 ld banestc jnz docem2 ;si.... vaya a tiempo de estabilidad movri objcem ;no esta en proceso.... movri pescemi cpli docem11 set tolcemc jmp docemf docem11 reset tolcemc set banestc movri temcem ;llega del excel stoi tieagri docem2 call tieagr ; temporice mientras estabiliza la tolva de agregados ld auxagr2 ;aux estado agregado1, define si termino la dosi jz docemf reset auxagr1 call disp ;termino tiempo... movri acucem movri pescemi addi stoi acucem ;guarda el nuevo acumulado set tolcemd ;abra la tolva principal bascula agregados set bantemc reset banestc jmp docemf docem3 movri pescemi movri pecice cpei docemf reset tolcemd reset proces3 reset bantemc reset empcem docemf ret ;---------------------------------------------------- ;doagu dosificacion de agua ; del excel se envia un registro entero para borrar el contador !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! doagu call disp movri finagu movri agua cpgei doagu1 reset valagu set finagu jmp doaguf doagu1 set valagu doaguf ret ;------------------------------------------------------------------- ;tieagr, temporizador de agregado sirve para agregado1 y agregado2 ;tieagri, configurar externo ;pregunta de terminado externa tieagr ld auxagr1 jz tieagr1 reset auxagr1 reset auxagr2 tieagr1 ld auxagr1 timr tieagrt tieagri out auxagr2 set auxagr1 estagr1f ret ;------------------------------------------------------- ;disp disp movrf pesagrf stofi pesagri movrf pescemf stofi pescemi movri pulagu movri calagu muli stoi agua dispf ret ;---------------------------------------------------------------- ;commid, comunicacion del mida commid movri 300 stoi 330 movri 301 stoi 331 movri 302 stoi 332 movri 303 stoi 333 movri 304 stoi 334 movri 305 stoi 335 movri 306 stoi 336 movri 307 stoi 337 movri 308 stoi 338 movri 309 stoi 339 movri 310 stoi 340 movri 311 stoi 341 movri 312 stoi 342 movri 313 stoi 343 movri 314 stoi 344 movri 315 stoi 345 movri 316 stoi 346 movri 317 stoi 347 movri 318 stoi 348 movri 319 stoi 349 movri 320 stoi 350 commidf ret ;----------------------------------------------- cali setri 157 6 cali6 clear ;calibracion agregados disl cal_agr com 0 clear disl e_c com 1 ink ent jnz cali61 ink cle jnz cali7 jmp cali6 cali61 func 9 0 func 8 0 cali7 clear ;calibracion humedad disl cal_cem com 0 clear disl e_c com 1 ink ent jnz cali71 ink cle jnz cali8 jmp cali7 cali71 func 9 0 func 8 0 cali8 clear disl cal_agu com 0 clear disl e_c com 1 ink ent jnz cali81 ink cle jnz calif jmp cali8 cali81 clear ini 2 stoi calagu calif ret ;----------------------------------------------- &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 ent equ 30 cle equ 31 arr equ 32 izq equ 33 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 auxagr1 equ 160 ;aux en tieagr que indica que se en un proceso de dosificacion auxagr2 equ 161 ;aux en tieagr que indica que se en un proceso de dosificacion proces equ 162 ;es 1 si hay algun proceso activo proces1 equ 163 proces2 equ 164 proces3 equ 165 proces4 equ 166 bantem11 equ 167 ;bandera que indica que ya paso el tiempo de estabilidad y espera desocupe de la tolva bantem21 equ 168 bantemc equ 169 banest11 equ 170 ;bandera de temporizador de estabilidad para toma de peso de agregado banest21 equ 171 banestc equ 172 empagr1 equ 173 empagr2 equ 174 empcem equ 175 empagu equ 176 manaut1 equ 177 empiece equ 178 final equ 179 ;[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 tieagri equ 157 ;valor tiempo para temporizador de estabilidad ;siguientes registros replica que llegan del excel finagr1 equ 330 ;peso final del agregado 1 finagr2 equ 331 fincem equ 332 finagu equ 333 paragr1 equ 334 ;parada de peso capacidad tolva-tolerancia paragr2 equ 335 parcem equ 336 temagr1 equ 337 ;tiempo de estabilidad para tova agregado1 temagr2 equ 338 temcem equ 339 peciag equ 340 ;peso minimo para cierre de tolva ppal agregados pecice equ 341 ;peso de cierre de tolva ppal de cemento pemiag1 equ 342 ;valor minimo de peso para acabar el proceso de agregado pemiag2 equ 343 ;si es mas bajo de este valor termina definitivamente la dosificacion del componente pemicem equ 344 nuepesc equ 345 ;no usar hasta el 350 incluido acuagr1 equ 351 ;acumulado de cada producto total de baches acuagr2 equ 352 acucem equ 353 acuagu equ 354 objagr1 equ 355 ;peso objetivo de la bachada objagr2 equ 356 objcem equ 357 objagu equ 358 objagr equ 359 ;objetivo para dodificar agregados en calagr1_2 nuepes equ 360 ;calculo de nuevo peso en calagr.. calagu equ 1100 ;factor para agua ;[REG_FLOATS] pesagrf equ 0 ;peso agregados pescemf equ 1 ;peso cemento ;[TIM] tieagrt equ 48 ;temporizador para estabilidad de agregados ;[CNT] ;[text] e_c lite "E-C" cal_cem lite "CEME" cal_agr lite "AGRE" cal_agu lite "AGUA" finald lite "fin" ;[NOP] ;VARIABLES PARA INICIAR reset proces1 reset proces2 reset proces3 reset proces4 &leavarf ret ;-----------------------------------------------