CdS - Realy - Lamp (PIC12F617)

/ Digital Input  |   CdS-Relay-Lamp

디지탈 출력은 0 또는 1, 0V 또는 5V의 신호를 내는 것으로 이를 사용하여 다양한 종류의 일을 할 수 있다. 아래 그림은 그 중 하나의 예로써 CdS로 부터 빛 신호를 받아(빛이 있고 없음) 디지탈 출력을 사용하여 트랜지스터(2N3904)를 구동하고 릴레이를 구동하여 최종적으로 220 V 전등을 켜고 끄는 회로이다.

PPIC12F617의 PIN A5를 통하여 CdS 신호를 Digital Input으로 받아들이고(input (PIN_A5)) 그 결과(0 또는 1)를 사용하여 PIN A2를 사용하여 Digital Output으로 신호를 트랜지스터 (2N3904)의 베이스에 전압을 걸어주게 된다. 트랜지스터는 베이스에 전압이 걸리면 전류가 컬렉터에서 에미터로 흐르게 되고 이에 따라 릴레이가 동작하게 된다. 릴레이가 동작하면 그림과 같이 220 V용 전등이 켜지게 됩니다. 따라서 CdS의 신호를 받아 PIN A2를 디지탈 출력으로 사용하여 빛의 존재 여부에 따라 전등을 켜고 끌 수 있다.


어두운 경우


빛이 있는 경우

//***********************************************************************
// PIC12F617을 사용하여 Relay 다루기 (Basic Circuit/08-Pin 참고)
//***********************************************************************  
                                          
#include  <12f617.h>                                      //* PIC12F617용 헤더파일
#fuses    INTRC_IO                                           //* 내부 발진회로 사용
#use      delay (clock = 8000000)		            //* 내부 클럭을 8MHz로 설정
										
#define   CdS_PIN   PIN_A5                               //* PIN_A5를 CdS 입력 핀으로
                                                    
void main (void)
{
	while (1) {
		if (input (CdS_PIN) == 1) {
			output_high (PIN_A2) ;  // 어두울 경우 (입력신호 = 1) A2 를 High 로, TR On - Realy On - Lamp On
		}
		else {
			output_low  (PIN_A2) ; // 밝을 경우 (입력신호 = 0) A2 를 Low 로, TR Low - Realy Off - Lamp Off
		}
	} 
}
                                                     
//***********************************************************************  										 

디지탈 출력을 사용하는 회로와 프로그램이 간단하지만 다양하게 응용가능하다.



PIC를 사용하여 주변의 밝기에 따라(CdS) 전등을 켜고 끄는(Realy) 회로
(그림을 마우스로 클릭하면 간단한 동영상을 볼 수 있다)


참고:

     
     
     



< Prev
TOP