Trabajo realizado
Hasta ahora el esquema contiene únicamente el controlador de relé y su transistor, el diodo de flyback, los dos pulsadores genéricos, el buzzer, el LDR y un par de resistores genéricos. Se han creado los siguientes nets automatizados:
- RELAY_COIL: conecta K1:COIL_1 → Q1:C → D1:cathode
- GND: conecta Q1:E → SW1:P2 → SW2:P2 → GND:GND
- Q1_BASE: conecta Q1:B → R2:P2
Tareas sin completar
Según el plan de implementación, faltan por hacer:
- Añadir y configurar los siguientes componentes al esquemático:
- PIC18F4550-I/P (U1)
- LCD 16×2 (HD44780) con potenciómetro de 10 kΩ para V0 (RP1)
- LED aqua y su resistor de 330 Ω
- Realizar las conexiones de todos los pines del LCD:
- D4–D7 a RC0–RC3 de U1
- RS a RA0 y RW a GND
- V0 al potenciómetro y extremos del potenciómetro a VDD/GND
- Conectar el LED aqua a un GPIO del PIC a través de su resistor de 330 Ω
- Conectar el pulsador de Reset (SW1) a MCLR con pull-up y a GND
- Conectar el divisor de tensión del sensor de humo (LDR + resistor) a AN0 de U1
- Conectar el buzzer (BZ1) a un GPIO de U1 y a VDD
Tareas marcadas como no realizables
- Asignar huellas (“Footprint”) a los componentes
- Definir la caja delimitadora y ajustar el tamaño del PCB
Revisión de criterios de éxito
- No están todos los componentes (falta PIC, LCD, potenciómetro y LED) → criterio no cumplido
- No están todas las conexiones de control, datos y alimentación → criterio no cumplido
- Ningún componente tiene fija su huella, por lo que no está listo para PCB → criterio no cumplido
Próximo paso recomendado
Continúa añadiendo al esquemático los componentes faltantes (PIC18F4550, LCD 16×2, potenciómetro 10 k, LED aqua y resistor de 330 Ω), configura sus valores y realiza las conexiones de datos y control. Una vez completado, podrás asignar huellas y ajustar el tamaño del PCB para la vista 3D.
carlose1
ORG 0x0000
GOTO Main
ORG 0x0004
BTFSC INTCON, INT0IF ; Interrupción por el sensor
CALL SensorInterruption
BTFSC PIR1, TMR1IF ; Interrupción por el timer
CALL TimerInterruption
RETFIE
; Configuración inicial
BSF STATUS, 5 ; Cambia al banco 1
MOVLW B'00000100' ; Configura RB2 como entrada (sensor) y RB0 y RB1 como salida (electrovalvula y motor)
MOVWF TRISB
BCF STATUS, 5 ; Cambia al banco 0
BSF INTCON, GIE ; Habilita las interrupciones globales
BSF INTCON, INT0IE ; Habilita la interrupción externa INT0
BSF INTCON2, INTEDG0 ; INT0 en flanco de bajada
MOVLW H'3CB0' ; Configura el valor del timer
MOVWF TMR1H ; Asume que el valor cabe en TMR1H, ajustar si es necesario
BSF PIE1, TMR1IE ; Habilita la interrupción del timer 1
GOTO Loop ; Bucle principal
BSF PORTB, 0 ; Abre la electrovalvula
BCF PORTB, 1 ; Detiene el motor
BSF T1CON, TMR1ON ; Inicia el temporizador
BCF INTCON, INT0IF ; Limpia la bandera de interrupción INT0
RETURN
BCF PORTB, 0 ; Cierra la electrovalvula
BSF PORTB, 1 ; Arranca el motor
BCF T1CON, TMR1ON ; Detiene el temporizador
BCF PIR1, TMR1IF ; Limpia la bandera de interrupción del timer 1
RETURN
copilot