본문 바로가기

Arduino UNO

(8)
아두이노 릴레이 제어 회로구성 • 릴레이(relay) + 전등(lamp) + 분압기(Potentiometer) 동작 요구사항 • 아두이노에 전원이 인가되면 전등 꺼져있는 상태이다. • 분압기로 전압을 조정하여 임계값(2.5V)보다 커지면 전등에 불이 들어오고 다시 조정하여 작아지면 불이 꺼진다. • (응용) “분압기로 전압을 조정”하는 것을 다른 센서로 활용할 수 있다. 사운드 센서를 이용하면 소리의 크기나 패턴으로 전등을 끄거나 켤 수 있다. 릴레이(relay) • 전자석 원리를 이용한 스위치(기계식) : 코일에 전류가 흐르면 내부의 스위치가 ON, OFF 하는 소자 • 반도체 릴레이(무접점 릴레이) • 릴레이는 낮은 전압/전류를 이용하여 더 높은 전압/전류를 제어하는데 많이 사용한다. • 릴레이 내부 구조 NC : Nor..
아두이노를 이용한 자동차 후방 센서 구현 : 초음파 거리센서+LED+피에조 회로구성 • 초음파 거리센서 + LED + 피에조 동작 요구사항 • 아두이노에 전원이 인가되면 LED와 피에조는 꺼져있는 상태이다. • 초음파 센서로 거리를 측정하여 일정 거리 임계값보다 작으면 LED에 불이 들어오고, 피에조에서 소리가 발생한다. • 측정 거리가 임계값보다 커지면 LED와 피에조 소리는 꺼진다. • 자동차 후방 센서 (3단계 경보) 피에조(piezo) • 피에조는 압전 물질에 얇은 판을 대어 압전 효과에 의해 소리가 나도록 한 소자 • 압전물질 : 압력을 가하면 전위차가 발생하거나 반대로 전압을 인가하면 물리적 변위가 생기는 물질 • 압전효과 : 압력을 가했을 때 전압이 발생되거나, 전압을 가했을 때 압력(신장, 응축)이 생기는 효과 초음파 거리 센서(ultrasonic sensor) ..
아두이노와 2개의 7세그먼트를 이용한 카운터 구현 회로구성 • 2개의 7세그먼트 회로 동작 • 2개의 7세그먼트를 이용하여 1~99까지 카운트 할 수 있는 카운터 • 00 → 01 → 02 → … → 98 → 99 → 00 → 01 → 02 → … • 최초 아두이노에 전원이 인가되면 00이 표시된다. Tinkercad 구현 코드설명 전체코드 int btn = 19; // pin A5 == 19 int cur_btn_state = 0; // 현재 버튼 상태 int pre_btn_state = 0; // 이전 버튼 상태 int num1 = 0, num2 = 0; // num1 = 1의 자리 수, num2 = 10의 자리 수 int FND1[7] = {2,3,4,5,6,7,8}; //abcedfg int FND2[7] = {9,10,11,12,13,14,15..
아두이노와 7세그먼트를 이용한 16진수 카운터 회로구성 • 7 세그먼트와 버튼을 아두이노 디지털 핀에 연결 동작 요구사항 • 아두이노에 전원이 인가되면 7 세그먼트는 꺼져있다. • 버튼을 누르면 숫자가 1씩 증가한다. 16진수로 나타내며 F 다음에는 다시 0으로 표시된다. (카운터 기능) 7 세그먼트 동작 • 7 세그먼트(7 Segment)는 7개의 획으로 숫자나 문자를 나타낼 수 있는 표시장치로 FND (Flexible Numeric Display)라고도 한다. • 각각의 획은 LED로 구성되어 있으며, 이들의 일부를 켜고 끄는 것으로 숫자나 문자를 표시할 수 있다. 아두이노 제어 함수 아두이노 보드의 디지털 핀을 제어하기위한 함수 • pinMode() • digitalWrite() • digitalRead() 데이터를 비트 단위로 읽어 오기 위한..
아두이노에서 버튼으로 LED 제어하기 2 '아두이노에서 버튼으로 LED 제어하기'는 버튼을 누르고 있는 동안, 또는 버튼을 누르지 않고 있는 동안 상태를 반영하여 LED를 제어하였으나, 이번 실습에서는 버튼을 한 번 누르고 떼는 것을 인지하여 LED를 제어하는 실습이다. 회로구성 '아두이노에서 버튼으로 LED 제어하기'와 동일한 (LED+BUTTON) 회로 구성 동작 아두이노에 전원이 인가되면 LED는 켜져있다. 버튼을 눌렀다가 떼면 LED는 꺼진다. 다시 버튼을 눌렀다가 떼면 LED는 켜진다. 이 동작을 무한히 반복한다. 코드 함수 int get_btn_state() : 버튼의 상태를 받아오는 함수 코드 설명 !digitalRead(btn) : digitalRead함수는 btn 핀의 상태를 LOW 또는 HIGH 값으로 반환함. btn 핀은 P..
아두이노를 이용한 2개의 LED 제어 회로구성 아두이노 3번, 5번 핀에 각각 빨간색, 파란색 LED를 연결하고, 저항은 220Ω을 사용한다. 동작 빨간색 LED ON, 파란색 LED OFF → 0.5초 대기 → 빨간색 LED OFF, 파란색 LED ON → 0.5초 대기 → 빨간색 LED ON, 파란색 LED OFF → 0.5초 대기 → …(무한 반복) Tinkercad 시뮬레이션
아두이노에서 버튼으로 LED 제어하기 회로구성 • 아두이노에 7번핀에 LED를 연결하고, 3번 핀에 택트 버튼(tact button)연결한다. 동작 요구사항 • 최초에 LED는 ON 상태이다. 버튼을 누르고 있는 동안 LED는 OFF가 되고, 버튼에서 손을 떼면 다시 LED가 ON이 되도록 한다. • 버튼의 상태는 0.1초마다 확인한다. LED 동작 • LED(Light Emitting Diode)는 발광 다이오드라고 하며 전류를 가하면 빛을 발하는 반도체 소자이다. Button 동작 High, Low and Floating • 디지털에서 High는 논리값 1, 즉 회로에서 어떤 지점의 전압이 기준 전압(Vref) 이거나 또는 임계 전압(Threshold, V_HIGH) 이상을 가질 때 논리적으로 High 또는 1이라고 한다. • 이와 반대..
아두이노를 이용한 LED 제어 아두이노란? • 2005년 이탈리아의 IDII(Interaction Design Institutelvera)에서 하드웨어에 익숙하지 않은 학생들이 자신들의 디자인 작품을 손쉽게 제어할 수 있게 하려고 고안되었다. • 아두이노는 오픈 소스를 기반으로 한 단일 보드 마이크로 컨트롤러로 완성된 보드(상품)와 관련 개발 도구 및 환경을 말한다. • 아두이노는 다수의 스위치나 센서로부터 값을 받아들여, LED나 모터와 같은 외부 전자 장치들을 통제함으로써 환경과 상호작용이 가능한 물건을 만들어 낼 수 있다. 아두이노 장점 • 마이크로 컨트롤러를 쉽게 동작 시킬 수 있다. - 일반적으로 AVR 프로그래밍이 AVRStudio와 WinAVR의 결합으로 컴파일하거나 IAR E.W.나 코드비전(CodeVision)등으로 ..