ㅇ 일 자 : 2026년 5월 18일(월)
ㅇ 주 제 : 아두이노를 활용한 사물인터넷 실습
ㅇ 내 용
1. 사물인터넷( Iot : (Internet of Things)
각종 사물에 센서와 통신 기능을 내장하여 인터넷에 연결하는 기술 또는 이를 활용해 제공하는 서비스
2. PIR 센서로 현관등 만들기
//[방법 1] 단순히 조건에 맞게 high, low 출력값만 제어
void setup()
{
Serial.begin(9600); // 직렬 통신 초기화
pinMode(8, OUTPUT); // 8번 디지털 핀을 출력 모드로 설정
pinMode(7, INPUT); // 7번 디지털 핀을 입력 모드로 설정
}
void loop()
{
int readValue = digitalRead(7); // 입력 핀의 값을 읽어 변수에 저장
Serial.println(readValue); // 변수의 값을 시리얼 모니터에 출력
if (readValue == HIGH) { // 입력값에 따라 LED 출력값 제어
digitalWrite(8,HIGH);
}
else {
digitalWrite(8, LOW);
}
}

//[방법 2] 단순히 5초 켜두고 다른 작업이 필요 없는 경우
void loop()
{
int readValue = digitalRead(7); // 입력 핀의 값을 읽어 변수에 저장
Serial.println(readValue); // 변수의 값을 시리얼 모니터에 출력
if (readValue == HIGH) { // 신호가 감지되면
digitalWrite(8, HIGH); // 8번 핀을 켜고
delay(5000); // 5초(5000ms) 동안 이 상태를 유지 (대기)
}
else {
digitalWrite(8, LOW); // 신호가 없으면 끔
}
}
//[방법 3.] 5초 동안에도 아두이노가 멈추지 않고 계속 작동해야 하는 경우
unsigned long turnOnTime = 0; // 켜진 시간을 저장할 변수
bool isTimerActive = false; // 타이머가 작동 중인지 확인하는 변수
void loop()
{
int readValue = digitalRead(7);
Serial.println(readValue);
// 1. 신호가 감지되면 불을 켜고 타이머 시작
if (readValue == HIGH) {
digitalWrite(8, HIGH);
turnOnTime = millis(); // 현재 아두이노가 켜진 후 지난 시간을 저장
isTimerActive = true;
}
// 2. 타이머가 작동 중일 때, 5초가 지났는지 수시로 체크
if (isTimerActive && (millis() - turnOnTime >= 5000)) {
digitalWrite(8, LOW); // 5초가 지나면 불을 끔
isTimerActive = false; // 타이머 종료
}
}

3. 가변저항 값 측정하기
3.1. 측정하는 이유
가변 저항(Potentiometer)의 값을 측정하는 주된 이유는 회로의 안전성을 확인하고, 원하는 목표 전압/전류를 정확하게 제어 및 보정(Calibration)하기 위함입니다.
- 현재 저항값 확인 : 다이얼(와이퍼) 위치에 따라 저항이 어떻게 변하는지 파악, 회로가 요구하는 적절한 저항 범위()에 있는지 확인
- 최대 저항값 검증 : 가변저항의 양 끝 단자를 측정해 해당 부품의 공칭 스펙과 일치하는지, 혹은 부품 불량이나 단선이 없는지 점검
- 정밀한 전압 분배 : 가변저항은 전압 분배기 역할, 다이얼 조정에 따른 출력 전압 변화율(비례 관계)을 측정해 회로의 오작동 방지

4. 교육 후기
가. 회로도를 구성하여 코드를 생성하고, 아두이노 환경에서 실행해 본 결과 여러가지 상황을 가정했을 때 방법 1부터 3까지 차이를 확인해 보았다. 코드를 수정하고 회로를 조정하여 다양한 환경에서 사용자 요구조건을 수용할 수 있겠다.
나. 센서등이 사물의 움직임에 따라 반응하는 시간과 조건에 따른 실행 차이를 둠으로써 출력값에 따라 다양한 환경이 구현된다
(예) 센서등이 사물을 감지했을때 계속 켜져 있거나, 켜진후 사물이 있어도 움직임을 감지하지 않으면 꺼지는 경우
다. 인터넷 사물에 센서와 통신 기능을 내장하여 인터넷에 연결하는 기술 또는 이를 활용해 제공하는 서비스는 인공지능(AI)와 결합해 더욱 진화하고 있다.
(예) 중국 : 거리의 모든 사람의 얼굴을 거리 카메라로 인공지능이 인식하여 분석해 낸 후 데이타들을 다방면으로 활용하고 있다.
미국 : 이란(중동)전에서 제거대상의 사물을 식별하여 선별타격 하는 인공지능 기술들을 활용하였다.
'학습 로그 > Aduino' 카테고리의 다른 글
| D+34 [아두이노] Aduino '전자키보드 만들기' 실습 (0) | 2026.05.26 |
|---|---|
| D+31 [아두이노] Aduino 환경에서 조건문, 함수 활용한 제어 실습 (0) | 2026.05.20 |
| D+30 [아두이노] 시뮬레이터+키트 를 활용한 "실습" (0) | 2026.05.19 |
| D+25 [아두이노] Arduino 입문 및 실습 (0) | 2026.05.12 |