Proyecto de un ascensor de 3 pisos con pic

hola:
lo que pasa es que estoy en apuros con un proyecto del cole.
c trata de un ascensor de 3 pisos con una pic 16f84a, si es que conocen algun link que me puedan enviar, o si alguien sabe del tema y me pueda dejar su mail para poder comunicarle con el de verdad se lo agradeceré mucho
 
hola denuevo
gueno gracias, pero la verdad es que no me sirbe por que es con conmutadores y necesito uno con pic 16f84a
la verdad es que me meti a este foro por que necesito el programa para la pic, debido a que no lo he encontrado.
mas k nada lo tome como un metodo de busqueda con ayuda lo digo por el primer link
lo k pasa es k he buscado en variadas paginas desde foros hasta paginas de universidades y aun asi no he encontrado nada.
porfavor si es k alguien tiene el proyecto o sabe de donde lo puedo obtener, se los agradecere.
 
romyggar dijo:
Amigo alexis487.

Si eres tan amable de especificar mas claramente tu proyecto quizá te pueda ayudar un poco con el código. Pero es clave que no me pongas a descifrar jeroglíficos (al tratar de entender que es lo que buscas).

Estaré por acá todo el dia.(y)

este es mi codigo solo me falta las combinaciones y esta en el 1 piso bajar al 3 o al 2 piso....y al reves

ahi tiene las variables de llegada para saber en que piso se encuentra el ascensor.............


dato: no se si estara bien las ordenes del motor para subir o bajar........


Código:
'-----------------------PROYECTO ASCENSOR 5 PLANTAS-----------------------------
DEFINE LCD_DREG PORTD
DEFINE LCD_DBIT 0
DEFINE LCD_RSREG PORTD
DEFINE LCD_RSBIT 4
DEFINE LCD_EREG PORTD
DEFINE LCD_EBIT 5

ADCON1 = %0110
I Var Byte 
TRISC = 0 
PORTC = 0

'-----------Constantes para definir en que piso se encuentra (llamada)----------
Uno CON %00000110
Dos CON %01011011
Tres CON %01001111
Cuatro CON %01100110
Cinco CON %01101101

'-------------------------PULSADORES ACCIONADOS POR CABINA----------------------
piso1 var porta.4
piso2 var porta.3
piso3 var porta.2
piso4 var porta.1
piso5 var porta.0
'------------------------------PULSADORES DE LLAMADA----------------------------
llama1 var portb.4
llama2 var portb.3
llama3 var portb.2
llama4 var portb.1
llama5 var portb.0
'------------------------------PULSADORES DE LLEGADA----------------------------
LLEGADA1 VAR PORTE.0
LLEGADA2 VAR PORTE.1
LLEGADA3 VAR PORTE.2
'--------------------------------SALIDAS DE MOTOR-------------------------------
bajar var portb.5
subir var portb.6

PAUSE 200
Lcdout $fe, 1 'Limpia la pantalla
lcdout $fe,2,"ASCENSOR 3 PISOS"
pause 2000
LCDOUT $fe,1
PORTC = uno 'empesamos por el primer piso
i = 1
lcdout $fe,2,"ESTADO ="
lcdout $fe,$c2,"PISO =",dec i 'aparece en el display y LCD
'************************************************* *********
inicio: 
if i = 1 then PORTC = uno
if i = 2 then PORTC = dos
if i = 3 then PORTC = tres
if piso1 = 0 then pisouno
if piso2 = 0 then pisodos
if piso3 = 0 then pisotres
if LLEGADA1 = 0 then pisouno1
if LLEGADA2 = 0 then pisodos2
if LLEGADA3 = 0 then pisotres3

goto inicio
'************************************************* *********
pisouno:
if piso1 = 0 and PORTC != uno then
i = 1 : gosub subeA : portc = i : gosub lcd

endif 
goto inicio
'************************************************* *********
pisodos:
if piso2 = 0 and portc != dos then
i = 2 : gosub subeA : portc = i : gosub lcd 
endif
goto inicio
'************************************************* *********
pisotres:
if piso3 = 0 and portc != tres then
i = 3 : gosub subeA : portc = i : gosub lcd 
endif
goto inicio
'************************************************* *********
[COLOR="Red"]este codigo hay que modificar para que cumpla las llamadas de los pisos... aki tengo el problema-.....[/COLOR]

pisouno1:
if LLEGADA1 = 0 gosub bajaA 
endif 
goto inicio

pisodos2:
if LLEGADA2 = 0 and PORTC != DOS then
i = 2 : gosub bajaA : portc = i : gosub lcd
endif 
goto inicio

pisotres3:
if LLEGADA3 = 0 and PORTC != Tres then
i = 3 : gosub bajaA : portc = i : gosub lcd
endif 
goto inicio


'************************************************* *********
lcd:
lcdout $fe,$c2,"PISO = ",dec i
return
'************************************************* *********
bajaA:
high bajar
pause 1000
low bajar 
RETURN
'************************************************* *********
subeA:
high subir
pause 1000
low subir 
RETUrn
 

Adjuntos

  • ASCENSOR NUEVO.rar
    8.4 KB · Visitas: 333
Última edición por un moderador:
Atrás
Arriba