수능이 끝나고 모든 입시가 끝나니 정말 할게 없었다.
예전에 학교에서 조금 해봤던 아두이노를 만져보려고 마음 먹고 용산 전자상가 지하에 있는 샘플전자와 동신전자에서 아두이노, 초음파센서, 점퍼선, 서보모터, 저항, led 몇 개를 사왔다.
그런데 집에와서 보니,,,,, 점퍼선을 MF로 사온 것을 깨닫게 되었다.. 정말 짜증이 났지만 브레드보드와 아두이노를 연결하기 위해 다음 날 다시 용산에 가 MM 점퍼선을 구매해왔다.
오랜만에 하는 거니 감을 익히기 위해 간단한 led 끄고 켜기, 초음파 센서로 led 키기 등등을 만들어 봤다.
어떤 분 인스타에서 자동으로 열리는 쓰레기통을 종이컵으로 만든 영상을 보고 난 후로 그걸 꼭 만들고 싶었다.
여~~러 시행착오 끝에 완성했다.. 비주얼은 좀 구리지만
완성작
영상도 있다.
ㅋㅋ 허접하네
서보모터 위치랑 각도 맞추는게 참.. 애매해서 애먹었다.
사용한 소스코드는 다음과 같다.
#include <Servo.h>
Servo myservo;
int pos = 0;
int servo=12;
int echoPin = 3;
int trigPin = 2;
float duration;
float distance = 100;
void setup() {
myservo.attach(servo);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}
void loop() {
digitalWrite(trigPin, HIGH);
delay(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = ((float)(340 * duration) / 10000) / 2;
if (distance < 10) {
for (pos = 10; pos < 250; pos += 2)
{
myservo.write(pos);
delay(30);
}
delay(2000);
}
delay(50);
}
각도를 0~90으로 했더니 영 안돌아 가서 이것저것 해보다 10에서 250도로 맞췄다.
사실 if 부분에서 delay(2000) 후이 다시 250에서 10으로 가야하는데 코드를 그렇게 짜니 이상하게 뚜껑 열고 닫는게 반대로 되버렸다.. 어찌어찌하다 아예 저렇게 해버리니 그럭저럭 된 것 같다.
다음은 피에조부저를 사서 종이 피아노를 만들 계획이다~~
그나저나 저거 다시 분해하기 뭔가 아깝다.
'DEV > 잡다한 개발 일지' 카테고리의 다른 글
[Node.js] SMSW 취업 알리미, Slack App 개발 (0) | 2021.04.21 |
---|---|
[React] 나와 비슷한 오마이걸 멤버는? 성격 테스트 개발 (0) | 2021.04.17 |
외장 SSD(Samsung Portable T5)에 Ubuntu 18.04.5 LTS 설치 (0) | 2021.02.04 |
Uncaught SyntaxError: Unexpected token '<' in <!DOCTYPE html> 자문자답 ^0^ - Node.js (0) | 2021.02.04 |
자료구조 수업 과제 (0) | 2019.05.15 |