Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

06/11/2007 #1


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
06/11/2007 #2
Moderador general

Avatar de Fogonazo

Algo como para ir mirando

http://olmo.pntic.mec.es/jmarti50/ascensor/ascensor.htm
06/11/2007 #3


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.
25/10/2013 #5


romyggar dijo: Ver Mensaje
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.
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
'************************************************* *********
este codigo hay que modificar para que cumpla las llamadas de los pisos... aki tengo el problema-.....

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
Archivos Adjuntos
Tipo de Archivo: rar ASCENSOR NUEVO.rar (8,4 KB (Kilobytes), 100 visitas)
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2015, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.