본문 바로가기

IoT 디바이스 활용/Arduino21

Arduino - 서보모터 서보모터 제어 서보 모터 제어하기 서보 모터 미리 정해진 범위 내에서 모터의 축을 세부 조정하도록 제한된 모터 취미용 서보 축의 움직임 범위 180도 50Hz의 주파수 내에서 주파수를 이용해 동작 → 20ms의 신호주기 제어를 위한 특별한 회로 없음 → 바로 연결 가능 마이크로 서보모터(SG-90) 0~180도 회전 선구분 주항 : 디지털 핀 빨강 : 전원 Vcc 갈색 : Gnd 서보 모터 제어 신호가 HIGH로 설정된 시간 양 → 서보의 각도 가장 왼쪽에 배치 1ms 동안 HIGH 유지, 남은 시간은 LOW 유지 가장 오른쪽에 배치 2ms 동안 HIGH 유지, 남은 시간은 LOW 유지 3개의 핀 빨간 선 : Vin / +5V에 연결 검은 선 : GND 연결 기타(오렌지 또는 흰색) : 디지털 출력 핀으.. 2020. 10. 15.
Arduino - 가변 저항 (PWMLed.h, AnalogSensor.h) 가변 저항 가변저항 가변저항 특성 값이 변하는 저항 세 개의 선으로 회로에 연결 연결 방법에 따라 두가지 기능 제공 바깥 단자와 중간 단자만 연결하는 경우 세번째 단자도 회로에 연결하는 경우 전형적인 전압 분압기 가변저항의 모양 trimmer 타입 스크류 드라이버를 이용하여 저항을 조절 rotary 타입 손잡이로 저항을 조정 보드 설정하기 아날로그 입력 A0~A5 칩 내부에서 ADC(Analog to Digital Converter) 모듈로 연결 LCD I2C 사용한다면 A0~A3 이용가능 아날로그 → 디지털 아날로그 값의 범위 05V → 01023 사이의 디지털 값으로 변환 대부분의 센서들은 아날로그 입력 핀으로 연결 가변 저항 ADC로 연결되는 부품 센서의 입력 원리와 같다 센서는 환경에 따라 변하고.. 2020. 10. 15.
Arduino - 버튼 (Led.h, Button.h) 버튼 버튼 택트(Tact) 스위치 풀업 방식 스위치 on, off 상태 풀업 저항 전압 소스와 회로 내에 있는 입력 핀 사이에 배치 - 디폴트 HIGH 버튼/스위치는 입력 핀과 접지(GND) 사이에 배치 - 스위치를 누르면 LOW 풀다운 방식 스위치 on, off 상태 풀다운 저항 접지와 회로 내에 있는 입력 핀 사이에 배치 - 디폴트 LOW 버튼/스위치는 전원 소스와 핀 사이에 배치 - 스위치를 누르면 HIGH 디지털 입력 읽기 digitalRead(핀번호) 해당 핀 번호의 값 읽기 HIGH/LOW 리턴 풀다운 버튼 버튼 연결 저항 : 10K옴 디폴트 : LOW 누른 경우: HIGH 버튼으로 LED 켜고 끄기(풀다운) int LED = 4; int BUTTON = 11; void setup() { pi.. 2020. 10. 15.
Arduino - 피에조 부저 피에조 부저 피에조 부저 부저 Active Buzzer 회로 내장형 전원만 인가되면 단일음 Passive Buzzer 회로 내장하지 않음 필요한 음역대의 주파수(펄스)를 제공하여 멜로디 연주 가능 PWM 이용 회로구성 능동 부저 int buzzerPin = 5; void setup() { pinMode(buzzerPin, OUTPUT); } void loop() { digitalWrite(buzzerPin,HIGH); delay(50); digitalWrite(buzzerPin,LOW); delay(400); } 수동 부저 Passive Buzzer 주파수 HIGH/LOW 신호의 비율 신호음의 음 또는 음높이 결정 Hz 단위 제어 함수 tone(핀번호, 주파수 [, 기간]) 피에조 스피커에 특정 주파수를.. 2020. 10. 15.
Arduino - 16x2 LCD 16x2 LCD 16x2 LCD 1602 Character LCD (16×2, LiquidCrystalDisplay 1602 V1) 1줄에 16개의 문자씩 2줄을 보여주는 LCD 모듈 백라이트는 5V, 가변 저항으로 폰트의 명암을 조절 LCD Interface Converter I2C 인터페이스를 사용해서 LCD를 제어 단 4개 선으로 LCD 조작 공급전압 : DC 2.5-6V 점퍼 스위치 : LCD 백라이트 ON/OFF 제어 가변저항 : LCD 명암 조절 I2C 주소 초기값 : 0x27 또는 0x3F 실수값을 문자열로 변경하기 char * dtostrf(double __val, signed char __width, unsigned char \__prec, char * __s); __val : 변환할 실.. 2020. 10. 15.
Arduino - 3색 LED 3색 LED 3색 LED 3색 LED R, G, B 핀에 0~255 사이의 값을 analogWrite() 함수로 출력 3색의 조합으로 색상 결정 자동으로 랜덤하게 색 바꾸기 const int redPin = 7; // RED const int greenPin = 5; // GREEN const int bluePin = 3; // BLUE void setup() { randomSeed(analogRead(A0)); // 랜덤한 숫자가 필요하다, 아두이노 A0 핀에 아무것도 꽂혀있지 않으면 랜덤값을 뿌려주기 때문에 이용 analogWrite(redPin, 255); // 0~255 random delay(1000); analogWrite(redPin, 0); analogWrite(greenPin, 255);.. 2020. 10. 15.
Arduino - LED (TrafficLight.h) LED LED 브레드 보드(Bread board, 빵팡) 남땜이 필요없는 프로토타입용 보드 ① VCC (빨간색) ② GND (검은색) ③ 부품 연결선 점퍼선 브레드 보드에 부품들을 서로 연결할 때 이용 LED 발광 다이오드 전류가 흐르면서 빛을 발하는 반도체 다이오드 : 전류를 한쪽 방향으로만 흐르게 함 과다 전류가 흐를 경우 파손 LED에 저항을 배치 저항 전기의 흐름을 제한 기본 구성 pinMode() 디지털 핀의 모드를 출력 또는 입력으로 설정하는 함수 pinMode(핀 번호, 모드) 매개변수 핀 번호 : 모드를 설정하고자 하는 핀 번호 모드: 출력인 경우 OUTPUT, 입력인 경우 INPUT 반환값 : 없음 사용 예 piMode(13, OUTPUT); //13번 핀을 출력 모드로 설정 pinMod.. 2020. 10. 15.
Arduino - 개발환경 구축 개발환경 구축 개발 환경 구축 Arduino IDE https://www.arduino.cc/ Software > DOWNLOADS 드라이버 모두 설치 Arduino IDE 디폴트로 설치 진행 C:\Program Files (x86)\Arduino 개발환경 구축 - VSCode Vscode를 위한 설정 아두이노 설치 폴더 arduino_debug.l4j.ini, arduino.l4j.ini java 머신의 설정파일 arduino_debug.l4j.ini -Xms128M -Xmx512M -DDEBUG=false -Dfile.encoding=UTF8 -Djava.net.preferIPv4Stack=true Arduino IDE 보드 선택 툴 > 보드 > Arduino Uno 포트 선택 툴 > 포트 > COM.. 2020. 10. 15.
Arduino - 아두이노 소개 아두이노 소개 아두이노? 2005년 이탈리아 이브레아에서 예술가와 디자이너를 위한 마이크로 컨트롤러 프로젝트로 시작 아두이노 하드웨어(아트멜의 AVR 시리즈 마이크로컨트롤러)와 소프트웨어(프로그램 개발을 위한 전용 라이브러리를 포함하는 개발 환경)를 함께 지칭 아두이노 하드웨어는 마이크로컨트롤러 보드의 일종임 아두이노 보드라고도 함 마이크로컨트롤러(AVR uC) + 커넥터 + α 아두이노의 하드웨어와 소프트웨어는 모두 오픈 소스 정책에 따라 공개되어 있음 아두이노 우노 특수 목적용 아두이노 보드 아두이노 나노 아두이노 프로 미니 크기 비교 특수 목적용 아두이노 보드 릴리패드: 웨어러블 제작 에스플로라: 센서 및 입력 장치 포함 로봇: 주행장치 개발 아두이노 우노와 아두이노 메가2560 쉴드 (Shield.. 2020. 10. 15.