아두이노 손가락 심장박동 감지 센서 (KY-039) 해당 센서는 적외선 송수신을 이용하여 심장박동을 측정 가능한 센서이다. 측정된 값의 정확도는 어느정도 인지는 확인되지 않는다.측정된 값을 bpm으로 변환하는 예제도 아래에 있다. int sensorPin = A0; double alpha = 0.75; int period = 50; double change = 0.0; double minval = 0.0; void setup () { Serial.begin(9600); } void loop () { static double oldValue = 0; static double oldChange = 0; int rawValue = analogRead(sensorPin); double value = alpha ..
아두이노 온도센서(LM35) 사용방법아날로그 온도센서 LM35를 사용하여 온도를 측정하는 방법을 알아보자.LM35는 0도~100도까지 측정가능 하고 빠른 온도 변화에는 적합하지 않은 센서라고 한다.아래의 예제로 사용방법을 테스트 해 보자. 아래 이미지의 순서대로 점퍼선을 연결하면 센서가 작동한다. 온도를 측정하여 시리얼 모니터에 출력하는 예제이다 float temperature; int reading; int lm35Pin = A0; void setup() { analogReference(INTERNAL); Serial.begin(9600); } void loop() { reading = analogRead(lm35Pin); temperature = reading / 9.31; Serial.println..
아두이노 기울기 센서 (KY-020) LED 켜기 기울기 센서 (KY-020)로 간단히 LED를 켜는 예제이다.해당 센서는 모듈이 기울어지면 내부 스위치가 작동하는 방식으로기울어진 각도등 상세값은 알수 없으며 기울어졌는지만 확인이 가능하다. 인터넷에서 저렴하게 구할수 있으며 정밀하지 않은 센서이다. int ledPin = 13; int buttonPin = 3; void setup () { pinMode (ledPin, OUTPUT) ; pinMode (buttonPin, INPUT); //센서의 값 0 or 1 } void loop () { int val = 0; val = digitalRead (buttonPin); if (val == HIGH) //센서의 값이 1이면 LED를 켠다 { digital..
조도센서를 이용하여 센서 값이 100 미만이면 LED가 켜지는 예제이다.조도센서의 GND연결 부분 중간에 아날로그핀(A0)을 연결한 부분을 유심히 확인 하세요.준비물 : 조도센서, 10K옴 저항, LED, 300옴 저항, 점퍼 케이블, 아두이노, 브레드 보드#define POT_PIN A0 #define LED_PIN 13 void setup(){ pinMode(LED_PIN, OUTPUT); }void loop(){ int val = 0; val = analogRead(POT_PIN); //조도센서 값이 100미만이면 LED를 켠다 if(val digitalWrite(LED_PIN, HIGH); } else { digitalWrite(LED_PIN, LOW); } delay(500..
아두이노 블루투스(HC-06) 모듈로 LED 켜기 블루투스 모듈 HC-06은 저렴한 가격으로 인터넷에서 쉽게 구할 수 있는 모듈이다.이 모듈을 이용하여 안드로이드 어플과 연동하여 LED를 켜는 예제를 만들어 보자.아이폰에서는 HC-06 모듈이 정상적으로 연결이 되지 않는것 같다. HC-05 모듈을사용하면 가능할 수 있다고 하는데 테스트는 아직 못해봄... 아래와 같이 회로도를 구성해 보자 "SoftwareSerial.h" 파일을 참조해야 하며, 컨트롤 방법은 간단하다블루투스에 수신된 값이 "1"이면 LED를 켜고 "0"이면 LED를 끈다 #include int TxPin = 2; int RxPin = 3; int ledPin = 13; SoftwareSerial BTSerial(TxPin, RxPin);..
아두이노 온도, 습도 센서 (KY-015) 사용방법 온도, 습도 센서 KY-015는 DHT11 센서에 기판 및 저항이 부착되어 더 편하게 사용할 수 있다.소스코드는 동일하게 사용가능 하다. 비용은 조금더 비싼듯하지만 인터넷에서 쉽게 구할 수 있다.아래의 사진과 같이 3개의 핀으로 이루어져 있으며 2가지 소스코드 예제로 테스트를 해 보았다. DHT11 라이버리를 사용하지 않고 센서의 값을 가져오는 예제 //KY015 DHT11 Temperature and humidity sensor //https://tkkrlab.nl/wiki/Arduino_KY-015_Temperature_and_humidity_sensor_module int DHpin = 4; byte dat [5]; byte read_data ()..
아두이노 서보모터(SG90) 구동하는 방법 인터넷에서 저렴하게 구할수 있는 미니 서보모터(Servo Moter)를 구동하는 예제를 만들어 보자. 서보모터(SG90)은 180도를 회전할수 있으며 1도씩 각도 값을 전달하여 정밀하게 모터를 컨트롤 할 수 있다. 로봇을 제작할때 많이 사용한다고 한다. 소스는 아두이노 기본 예제를 참조 하였다. 서보모터가 180도 회전하고 다시 반대로 180도 회전하는 예제 서버 모터를 쉽게 컨트롤 하기 위해서는 "Servo.h" 파일은 포함해야 한다 #include Servo myservo; int servoPin = 12; int pos = 0; void setup() { myservo.attach(servoPin); } void loop() { for(pos = 0; po..
아두이노 스텝모터 (28BYJ-48) 구동하기 아래의 스텝모터는 인터넷에서 쉽게 구할 수 있으며 스텝모터(28BYJ-48)와 모터 드라이브(ULN2003)가 함께 판매되고 있다.아래의 예제는 모터가 한바퀴 회전하고 다시 역방향으로 한바퀴 회전하는 예제이다. 아래의 순서대로 점퍼 케이블을 연결한다. 주황색 케이블 : 아두이노 8번핀, 스텝모터 IN1초록색 케이블 : 아두이노 9번핀, 스텝모터 IN2파란색 케이블 : 아두이노 10번핀, 스텝모터 IN3노란색 케이블 : 아두이노 11번핀, 스텝모터 IN4 하얀색 케이블 : 아두이노 5V, 스텝모터 +검은색 케이블 : 아두이노 GND, 스텝모터 - 예제 소스1#include // 2048:한바퀴(360도), 1024:반바퀴(180도)... const int st..
아두이노 초음파센서(HC-SR04) LED 켜기 HC-SR04 센서의 측정 거리는 2cm~400cm 이고 정확도는 3mm 이다.아두이노에 초음파센서를 연결하여 특정거리 만큼 접근하면 LED를 켜는 예제를 만들어 보자.어렵지 않으니 차근차근 따라해 보자. 준비물 : 아두이노 , 브레드보드, 초음파센서, 점퍼선 8개, 저항(200~300옴), LED #define TRIG_PIN 2 #define ECHO_PIN 3 #define LED_PIN 4 void setup() { pinMode(TRIG_PIN, OUTPUT); pinMode(ECHO_PIN, INPUT); pinMode(LED_PIN, OUTPUT); } void loop() { int distance = 0; digitalWrite(TRIG_P..
- 4.5V~36V 전압을 입력 가능 - 채널당 600mA의 전류를 인가 (4채널) - 4개의 DC 모터(단방향) 또는 2개의 스텝(stepper) 모터 제어 - 모터의 양방향 제어 - 모터의 속도제어 가능 (PWM 제어) - 외부전원 이용가능 - 다이오드 포함되어 있음 (전류의 역류 방지) ※ L293B는 대부분 기능이 비슷하나 다이오드가 포함되어 있지 않으며 채널 당 1A의 전류를 인가 할 수 있음 ENABLE는 PWM 제어를 위한 핀아두이노에서 INPUT 핀으로 전류를 보내면 OUTPUT 핀을 통하여 모터로 전류가 흐르게 됨. INPUT과 OUTPUT는 한쌍이며 4개의 모터를 제어할 수 있음Vs는 모터의 전원, Vss는 논리전원 digitalWrite(13, HIGH); //PWM 제어digital..