보광병원 마취통증의학과장 양재영 yang303@gmail.com 아두이노를 이용한 . 나만의 온습도계 만들기 보광병원 마취통증의학과장 양재영 yang303@gmail.com
아두이노란? 아두이노: 오픈소스를 기반으로 한 단일보드 마이크로컨트러로 완성된 보드와 관련 개발도구 및 환경을 말합니다. 2005년 이탈리아의 IDI(interaction design institute)에서 하드웨어에 익숙하지 않은 학생들이 자신들의 디자인 작품을 손쉽게 제어할수 있게 하려고 고안된 장치입니다. (위키피디) CEO 마시모 반지
아두이노 보드의 종류
아두이노로 할 수 있는 것들 https://youtu.be/z9Cqm28lbRk
아두이노 성능
아두이노 회로 아두이노의 두뇌 디지털 입출력핀 아날로그 입력핀 - +
아두이노 사용에 필요한 두가지(하드웨어,소프트웨어) 아두이노 사용에 필요한 두가지(하드웨어,소프트웨어) 하드웨어 소프트웨어( 아두이노 IDE)
빵판(breadboard) 사용법 오른쪽 그림에서 처럼 전원 (+,-) 부위는 세로로 연결되어 있지만 일반 회로 부위는 가로로 연결되어있습니다.
아두이노 하드웨어 만들기
아두이노 IDE #include <Wire.h> // include는 보드에 기능을 로딩하는 함수 #include <LiquidCrystal_I2C.h> #include <DHT.h> LiquidCrystal_I2C lcd(0x3F,16,2); //I2C 통신프로토콜에서 주소를 설정해주는 명령 #define DHTPIN 7 // 디지털7번에 온도계 신호가 연결됨을 설정 #define DHTTYPE DHT11 // 디지털 온도 센서의 종류를 설정해주는 명령 DHT dht(DHTPIN, DHTTYPE); void setup() //맨처음 한번만 시행됨 { dht.begin(); //온도계 시작 lcd.init(); //LCD 화면을 시작하는 명령 lcd.backlight(); //LCD의 배경전구를 켜는 명령 Serial.begin(9600); //컴퓨터와의 시리얼 통신을 시작하는 명령 }
아두이노 IDE void loop() //무한 반복되어 실행되어짐 { float humidity=dht.readHumidity(); //humidity란 소수점 변수에 습도수치를 넣어주는 명령 float temperature=dht.readTemperature(); //temperature란 소수점 변수에 온도수치를 넣어주는 명령 lcd.backlight(); lcd.setCursor(0,0); // 글자를 맨왼쪽 위에서 시작하도록 하는 명령 lcd.print(temperature); //온도를 표시하라는 명령 lcd.print("*c"); //온도 뒤에 *c를 함께 출력함 lcd.print(" "); lcd.print(humidity); // 습도를 출력하라는 명령 lcd.print("%"); //습도 뒤에 %를 넣어줌 //시리얼 통신을 통해서 위와 같은 같은 값을 출력함 Serial.print(temperature); Serial.print("*c"); Serial.print(humidity); Serial.println("%"); delay (1000); //1초간 기다린다 }
아두이노와 컴퓨터 USB 연결
프로그램 업로딩(1) - 아두이노 종류 선택
프로그램 업로딩(2) -포트 확인
프로그램 업로딩(3) -업로딩 버튼 누르기
!!!완 성!!!