본문 바로가기

IoT/Arduino

(4)
버튼과 서보모터, LED의 연계 #include // 버튼을 눌렀을 때 서보모터가 90도로 가고 // 1초에 LED를 하나씩 킴 // 5개의 LED가 다 켜졌으면 LED를 다 끄고 나서 // 서보모터를 다시 0도로 원위치 Servo serb; //서보 자체가 데이터타입임 void setup() { pinMode(12, INPUT); pinMode(10, OUTPUT); pinMode(9, OUTPUT); pinMode(8, OUTPUT); pinMode(7, OUTPUT); pinMode(6, OUTPUT); serb.attach(2); } void loop() { int btn = digitalRead(12); serb.write(0); // 서보모터 0도로 초기화 /*if (btn == 1 ) { serb.write(90); dig..
서보모터의 활용 #include // 서보모터 제어 변수 Servo myServo; void setup() //서보모터 라이브러리 불러오기 { myServo.attach(13); //서보모터 제어변수+attach메서드 사용해 핀을 붙임 } void loop() { myServo.write(90); //0~180도 delay(1000); myServo.write(0); delay(1000); // 서보모터의 속도에 따른 딜레이 } 서보모터를 제어하기 위해 Servo.h 라이브러리를 추가하였으며 본문에 myServo; 변수를 선언했다. 일반 핀과 달리 Setup에서 서보변수.attach(핀번호); 로 세팅하며 서보변수.write(각도)를 통해 제어한다. 서보모터는 느리기 때문에 일정시간의 딜레이를 요한다.
조도센서의 이용 void setup() { pinMode(A3, INPUT); Serial.begin(9600); } void loop() { int light=analogRead(A3); Serial.println(light); } 가장 기본적인 조도 센서의 사용 저항은 10k옴을 연결하고 +는 그대로 사용하도록 한다. 또한 아날로그 입력으로 아날로그 핀을 통해 연속적인 값을 받는다. 여기서 조도센서가 감지하는 빛의 양은 54~974의 범위를 가졌다. 이를 이용해 LED를 부착하면 다음과 같이 구성을 할 수 있다. void setup() { pinMode(A3, INPUT); pinMode(6, OUTPUT); Serial.begin(9600); } void loop() { int light=analogRead(A3)..
가변저항의 이용 void setup() { // 분압기 자체는 0~1024의 값을 가지는 아날로그 저항 다이얼이고 // 그 자체가 저항임 // 저항값을 최대 1024까지 올려줄 수 있다. // 이는 스피커, 전등등을 만들 때 유용하게 사용 가능. // +,- 극, 와이퍼로 구성 -> 입력값 pinMode(A0, INPUT); pinMode(13, OUTPUT); pinMode(11, OUTPUT); Serial.begin(9600); } void loop() { int value = analogRead(A0); Serial.println(value); analogWrite(11, value/4); //tone(13, value*100, 0); } void setup() { // 분압기 자체는 0~1024의 값을 가지는 ..