include <MetisAgv.h>
include <MetisRemoteIO.h>
void setup() {
pinMode (7, INPUT);
pinMode (8, INPUT);
//Remote 10 통신 속도
Agv. Initialize(19200);
}
void loop() {
int SW1= digitalRead(7);
int SW2 = digitalRead(8);
if (SW1 == HIGH)
{
Agv.digitalWrite(8, HIGH);
}
if (SW2 == HIGH)
{
Agv.digitalWrite(8, LOW);
}
}
안녕하세요, RootingforU님! Arduino Uno(아두이노 우노)에 대해 초등학생도 이해할 수 있도록 쉽고 자세히 설명드리고, 관련 URL과 예제 코딩 5종도 함께 제공해드리겠습니다.
---
## 1. 아두이노 우노란 무엇인가요?
아두이노 우노는 작은 컴퓨터 같은 전자기기입니다. 컴퓨터처럼 명령을 써서 전자 부품들을 움직일 수 있게 해줍니다. 예를 들어, LED를 켜고 끄거나, 버튼을 누르면 소리가 나게 만들 수도 있어요.
- **작은 컴퓨터 같은 '마이크로컨트롤러' 보드**
- 전기 신호를 받아서 불을 켜거나, 모터를 움직이는 일을 할 수 있음
- 컴퓨터 프로그램을 만들어서 아두이노에 올려 쓰는 방식
---
## 2. 아두이노 우노 주요 기능 소개
| 기능 | 설명 |
|---|---|
| 디지털 입력/출력 (Digital I/O) | 0과 1, 켜짐과 꺼짐을 신호로 주고받음 (예: 버튼 누름, LED 켜짐) |
| 아날로그 입력 (Analog Input) | 빛, 소리 등 연속적인 센서 값을 읽음 (예: 조도 센서) |
| PWM 출력 | LED 밝기 조절이나 모터 속도 조절에 사용 |
| 시리얼 통신 | 컴퓨터와 데이터를 주고받음 (프로그램 올릴 때도 사용) |
| 전원 공급 | USB케이블이나 건전지로 전원 공급 가능 |
---
## 3. 사용법 기본 절차
1. **아두이노 IDE 설치**
컴퓨터용 프로그램인 ‘아두이노 IDE’ 설치 (아래 URL 참고)
2. **USB 연결**
아두이노 우노를 컴퓨터에 USB로 연결
3. **코딩 작성**
아두이노에 할 일을 적은 프로그램(코드)을 IDE에서 작성
4. **업로드**
코드를 아두이노로 보내기(업로드) 버튼 누르기
5. **작동 확인**
아두이노가 명령대로 동작하는지 확인
---
## 4. 아두이노 배우기에 좋은 사이트
- [아두이노 공식 홈페이지](https://www.arduino.cc/)
아두이노 제품 정보와 튜토리얼이 있어요.
- [아두이노 프로젝트 허브](https://create.arduino.cc/projecthub)
다양한 프로젝트 예제 모음으로 따라 해볼 수 있어요.
- [코드엑스](https://code-ex.com/)
한국어 아두이노 기초 강좌와 예제가 많아요.
---
## 5. 기본 예제 5종 (초등학생도 쉽게 도전 가능)
```c
// 1. LED 켜고 끄기 (디지털 출력)
void setup() {
pinMode(13, OUTPUT); // 13번 핀을 출력 모드로 설정
}
void loop() {
digitalWrite(13, HIGH); // LED 켜기
delay(1000); // 1초 기다리기
digitalWrite(13, LOW); // LED 끄기
delay(1000); // 1초 기다리기
}
```
```c
// 2. 버튼 눌렀을 때 LED 켜기 (디지털 입력)
int buttonPin = 2; // 버튼 연결 핀
int ledPin = 13; // LED 연결 핀
void setup() {
pinMode(buttonPin, INPUT);
pinMode(ledPin, OUTPUT);
}
void loop() {
int buttonState = digitalRead(buttonPin);
digitalWrite(ledPin, buttonState); // 버튼 눌리면 LED 켜기
}
```
```c
// 3. 아날로그 센서 밝기 따라 LED 밝기 조절 (PWM)
int sensorPin = A0; // 아날로그 입력 핀
int ledPin = 9; // PWM 출력 핀
void setup() {
pinMode(ledPin, OUTPUT);
}
void loop() {
int sensorValue = analogRead(sensorPin);
int brightness = map(sensorValue, 0, 1023, 0, 255);
analogWrite(ledPin, brightness); // LED 밝기 조절
delay(10);
}
```
```c
// 4. 부저로 소리 내기
int buzzer = 8;
void setup() {
pinMode(buzzer, OUTPUT);
}
void loop() {
tone(buzzer, 1000); // 1000Hz 소리 내기
delay(500);
noTone(buzzer); // 소리 끄기
delay(500);
}
```
```c
// 5. 시리얼 창에 텍스트 보내기
void setup() {
Serial.begin(9600); // 시리얼 통신 시작
}
void loop() {
Serial.println("안녕하세요!"); // 텍스트 출력
delay(1000);
}
```
---
더 자세한 설명이나 응용 예제도 필요하시면 언제든 알려주세요! 아두이노 배움의 첫걸음부터 차근차근 도와드리겠습니다.
궁금한 점 있으시면 편하게 문의해 주세요! :)
안녕하세요, RootingforU님! 아두이노 우노 보드와 초음파 센서를 연결하는 방법과 예제 코드를 상세히 안내해드리겠습니다.
---
## 1. 아두이노 우노 보드와 초음파 센서(HC-SR04) 연결 방법
초음파 센서 HC-SR04는 거리 측정을 할 때 자주 사용합니다. 센서에는 총 4개의 핀이 있습니다.
| 핀 이름 | 역할 | 아두이노 우노 연결 핀 예시 |
|---|----------|--------------------|
| VCC | 전원 공급 (+5V) | 아두이노 5V 핀 |
| GND | 접지 | 아두이노 GND 핀 |
| Trig | 초음파 신호 보내기 | 아두이노 디지털 9번 핀 |
| Echo | 초음파 신호 받기 | 아두이노 디지털 10번 핀 |
### 연결 방법 요약
- 초음파 센서 VCC → 아두이노 5V
- 초음파 센서 GND → 아두이노 GND
- 초음파 센서 Trig → 아두이노 9번 핀
- 초음파 센서 Echo → 아두이노 10번 핀
---
## 2. 초음파 거리 측정 원리 (간단히)
Trig 핀에서 초음파를 발사하면 물체에 부딪혀 Echo 핀으로 돌아옵니다. 이 시간을 계산해 거리를 구합니다.
---
## 3. 예제 코드 (거리 측정 및 시리얼 모니터 출력)
```c
const int trigPin = 9; // Trig 핀 연결 번호
const int echoPin = 10; // Echo 핀 연결 번호
long duration;
int distance;
void setup() {
Serial.begin(9600); // 시리얼 통신 시작
pinMode(trigPin, OUTPUT); // Trig 핀 출력 설정
pinMode(echoPin, INPUT); // Echo 핀 입력 설정
}
void loop() {
// 초음파 신호 보내기
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Echo 핀에서 신호 오는 시간 측정
duration = pulseIn(echoPin, HIGH);
// 거리 계산(cm) : 시간 * 음속 속도(340m/s) 를 이용하여 변환
distance = duration * 0.034 / 2;
// 거리값 시리얼 모니터에 출력
Serial.print("거리: ");
Serial.print(distance);
Serial.println(" cm");
delay(500); // 0.5초 대기 후 반복
}
```
---
## 4. 참고할 만한 사이트 링크
- [아두이노 공식 사이트 - HC-SR04 사용법 (영문)](https://www.arduino.cc/en/Tutorial/Ping)
- [한국어 초음파 센서 연결하기 튜토리얼](https://makerpro.kr/guides/1618)
- [아두이노 프로젝트 허브 - 초음파 센서 활용](https://create.arduino.cc/projecthub/projects/tags/ultrasonic)
---
필요 시 더 복잡한 응용이나 서보모터, LED 활용 연계 예제도 도와드릴 수 있습니다. 언제든 문의 주세요!
즐거운 아두이노 프로젝트 되세요! :)
안녕하세요, RootingforU님! 아두이노 우노 보드와 초음파 센서를 연결하는 방법과 예제 코드를 상세히 안내해드리겠습니다.
---
## 1. 아두이노 우노 보드와 초음파 센서(HC-SR04) 연결 방법
초음파 센서 HC-SR04는 거리 측정을 할 때 자주 사용합니다. 센서에는 총 4개의 핀이 있습니다.
| 핀 이름 | 역할 | 아두이노 우노 연결 핀 예시 |
|---|----------|--------------------|
| VCC | 전원 공급 (+5V) | 아두이노 5V 핀 |
| GND | 접지 | 아두이노 GND 핀 |
| Trig | 초음파 신호 보내기 | 아두이노 디지털 9번 핀 |
| Echo | 초음파 신호 받기 | 아두이노 디지털 10번 핀 |
### 연결 방법 요약
- 초음파 센서 VCC → 아두이노 5V
- 초음파 센서 GND → 아두이노 GND
- 초음파 센서 Trig → 아두이노 9번 핀
- 초음파 센서 Echo → 아두이노 10번 핀
---
## 2. 초음파 거리 측정 원리 (간단히)
Trig 핀에서 초음파를 발사하면 물체에 부딪혀 Echo 핀으로 돌아옵니다. 이 시간을 계산해 거리를 구합니다.
---
## 3. 예제 코드 (거리 측정 및 시리얼 모니터 출력)
```c
const int trigPin = 9; // Trig 핀 연결 번호
const int echoPin = 10; // Echo 핀 연결 번호
long duration;
int distance;
void setup() {
Serial.begin(9600); // 시리얼 통신 시작
pinMode(trigPin, OUTPUT); // Trig 핀 출력 설정
pinMode(echoPin, INPUT); // Echo 핀 입력 설정
}
void loop() {
// 초음파 신호 보내기
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Echo 핀에서 신호 오는 시간 측정
duration = pulseIn(echoPin, HIGH);
// 거리 계산(cm) : 시간 * 음속 속도(340m/s) 를 이용하여 변환
distance = duration * 0.034 / 2;
// 거리값 시리얼 모니터에 출력
Serial.print("거리: ");
Serial.print(distance);
Serial.println(" cm");
delay(500); // 0.5초 대기 후 반복
}
```
---
## 4. 참고할 만한 사이트 링크
- [아두이노 공식 사이트 - HC-SR04 사용법 (영문)](https://www.arduino.cc/en/Tutorial/Ping)
- [한국어 초음파 센서 연결하기 튜토리얼](https://makerpro.kr/guides/1618)
- [아두이노 프로젝트 허브 - 초음파 센서 활용](https://create.arduino.cc/projecthub/projects/tags/ultrasonic)
---
필요 시 더 복잡한 응용이나 서보모터, LED 활용 연계 예제도 도와드릴 수 있습니다. 언제든 문의 주세요!
즐거운 아두이노 프로젝트 되세요! :)
안녕하세요, RootingforU님! 아두이노 우노와 초음파 센서(HC-SR04)를 활용한 응용 예제로서, ALC(자동 조명 제어)와 서보모터, LED를 함께 사용하는 연계 예제를 자세히 설명해드리겠습니다.
---
## 1. 프로젝트 개요
- **목적**: 초음파 센서로 물체나 사람의 거리를 감지해서 일정 거리 이내에 있으면 LED를 켜고, 서보모터를 움직이도록 자동 제어
- **주요 부품**: 아두이노 우노, HC-SR04 초음파 센서, LED, 서보모터(예: SG90)
- **응용 분야**: 자동 문 열림, 자동 조명 제어, 거리 기반 경고 시스템 등
---
## 2. 하드웨어 연결 방법
| 부품 | 아두이노 핀 연결 |
|-----------|--------------------|
| 초음파 센서 VCC | 아두이노 5V |
| 초음파 센서 GND | 아두이노 GND |
| 초음파 센서 Trig| 디지털 9번 핀 |
| 초음파 센서 Echo| 디지털 10번 핀 |
| LED | 디지털 13번 핀 (+저항 220Ω 연결 권장) |
| 서보모터 신호핀 | 디지털 6번 핀 |
| 서보모터 전원 | 아두이노 5V |
| 서보모터 GND | 아두이노 GND |
---
## 3. 주요 코드 설명
- 초음파 센서로 거리 측정
- 거리가 15cm 이하이면 LED ON과 서보모터 90도 회전 (예: 문 열림)
- 거리가 멀어지면 LED OFF와 서보모터 원위치(0도)로 돌아감
---
## 4. 예제 코드
```c
#include <Servo.h>
const int trigPin = 9;
const int echoPin = 10;
const int ledPin = 13;
const int servoPin = 6;
Servo myServo;
long duration;
int distance;
void setup() {
Serial.begin(9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(ledPin, OUTPUT);
myServo.attach(servoPin);
myServo.write(0); // 서보 초기 위치 0도
}
void loop() {
// 초음파 신호 보내기
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Echo 수신 시간 측정
duration = pulseIn(echoPin, HIGH);
// 거리 계산(cm)
distance = duration * 0.034 / 2;
Serial.print("거리(cm): ");
Serial.println(distance);
if (distance <= 15 && distance > 0) { // 15cm 이내 감지 시
digitalWrite(ledPin, HIGH); // LED 켜기
myServo.write(90); // 서보모터 90도 회전
} else {
digitalWrite(ledPin, LOW); // LED 끄기
myServo.write(0); // 서보모터 0도 회전
}
delay(200); // 0.2초마다 반복
}
```
---
## 5. 동작 설명
- 초음파 센서가 거리값을 측정해 시리얼 모니터에 출력합니다.
- 측정한 거리가 15cm 이하일 때, LED가 켜지고, 서보모터가 90도로 움직여 특정 동작(예: 문 열림)을 모사합니다.
- 15cm를 벗어나면 LED는 꺼지고 서보모터는 원래 위치로 돌아옵니다.
---
## 6. 추가 아이디어
- 거리 범위를 더 세분화하여 LED 밝기 조절(PWM)과 서보모터 각도 조절을 할 수 있습니다.
- 여러 개의 초음파 센서와 서보모터를 연결해 복잡한 자동화 시스템으로 확장하기 좋습니다.
- IoT 연동을 위해 Wi-Fi 모듈과 함께 사용하면 원격 제어도 가능합니다.
---
필요하시면 단계별 사진, 더 복잡한 제어법, 또는 다른 센서 연동법도 설명해 드릴 수 있으니 편하게 말씀해 주세요!
항상 RootingforU님의 즐거운 전자·로봇 학습을 응원합니다. :)

댓글 없음:
댓글 쓰기