안녕하세요 땜블리 입니다.
라즈베리파이 피코 베이직 트레이닝 보드를 이용한 릴레이 제어를 진행 하겠습니다.
베이직 트레이닝 보드는 아래에서 확인이 가능합니다.
https://ttcw.tistory.com/4
1) 릴레이 제어 구동 원리
(1) 동작설명
릴레이는 우리말로 “계전기(繼電器)”라고 합니다. 말뜻을 풀어보면 “전기(전원)을 잇는 기기”라는 뜻입니다
릴레이의 원리는 간단하게 말해서 “전원 스위치”라고 할 수 있습니다. 입력이 어떤 값에 도달하였을 때 작동하여 다른 회로를 열고 닫는 역할을 하기 때문입니다.
릴레이의 내부는 아래 그림과 같이 코일과 전기자, 그리고 코일핀과 NO, COM, NC 핀으로 구성되어 있습니다.
NO는 Normal Open의 뜻으로 전류가 흐르지 않을 경우에는 스위치가 열려 있다고 보면 됩니다. COM은 Common Terminal의 뜻으로 공통 단자입니다. 이것은 항상 연결되어야 하는 포트입니다. 마지막으로 NC는 Normal Close의 뜻으로 전류가 흐르지 않을 경우에 스위치가 닫혀 있다고 보면 됩니다.
코일핀을 통해 코일에 전류가 흐르면 코일 주변에 자기장이 형성됩니다. 이렇게 생성된 자기장은 감겨있는 코일에 중첩되면서 코일 중앙에 한 방향으로만 작용하는 자기장이 형성되게 됩니다.
이런 코일 안에 철심을 넣으면 자기장이 강해지면서 자석과 같은 힘이 발생하게 됩니다.
이러한 힘을 이용하여 전기자를 움직여 회로를 열었다 닫았다 하게 됩니다. 이것이 릴레이의 기본적인 구동원리입니다.
2) 릴레이 제어
(1) 동작설명
센서 값에 따라 릴레이가 구동됩니다.
주석을 풀어주는 실행 시키는 거에 따라 가변저항과 cds 값에 따라 변경됩니다.
cds_input = adc_input(0)
#cds_input = adc_input(1)
(2) 코드작성
code.py
import time
import board
import digitalio
import analogio
led1 = digitalio.DigitalInOut(board.GP2)
led1.direction = digitalio.Direction.OUTPUT
led2 = digitalio.DigitalInOut(board.GP3)
led2.direction = digitalio.Direction.OUTPUT
relay = digitalio.DigitalInOut(board.GP12) # 릴레이 설정
relay.direction = digitalio.Direction.OUTPUT
cds_adc = analogio.AnalogIn(board.GP27)
vr_adc = analogio.AnalogIn(board.GP26)
def adc_input(ch):
global vr_data
if ch == 0: # VR
vr_data = vr_adc.value
vr_data_v = (3.3 / 65535) * vr_data
vr_data_v = round(vr_data_v, 2)
return vr_data_v
elif ch == 1: # CdS
cds_data = cds_adc.value
cds_data_v = (3.3 / 65535) * cds_data
cds_data_v = round(cds_data_v, 2)
return cds_data_v
relay_state = 0
while True:
print('CdS Volt = {}V'.format(adc_input(1)))
print('RELAY STATE = {}\n'.format(relay_state))
adc_data = adc_input(0) # VR
#adc_data = adc_input(1) # CDS
if adc_data <= 1:
led2.value = False
relay.value = False # relay on
relay_state = 1
else:
led2.value = False
relay.value = True # relay off
relay_state = 0
time.sleep(0.5)
(3) 동작 결과
'라즈베리파이_피코_피코 W > circuitPython' 카테고리의 다른 글
10. Circuit 파이썬 라즈베리파 피코 W OLED 제어 (0) | 2023.03.19 |
---|---|
09. Circuit 파이썬 라즈베리파 피코 W DHT11 (0) | 2023.03.18 |
07. Circuit 파이썬 라즈베리파이 피코 W WS2812 제어하기 (2) | 2023.03.16 |
06. Circuit 파이썬 라즈베리파이 피코 W PWM제어 (0) | 2023.03.15 |
05. Circuit 파이썬 라즈베리파이 피코 W ADC 제어 (0) | 2023.03.14 |
댓글