질문게시판 > 서보모터 질문

TODAY1,601 TOTAL2,425,988
사이트 이용안내
Login▼/회원가입
최신글보기 질문게시판 기술자료 동영상강좌

아두이노 센서 ATMEGA128 PWM LED 초음파 AVR 블루투스 LCD UART 모터 적외선


BASIC4MCU | 질문게시판 | 서보모터 질문

페이지 정보

작성자 죠르디 작성일2022-06-07 16:03 조회3,259회 댓글2건

본문

	

안녕하세요. 질문이 있어서 글 남깁니다. 사운드센서의 일정값이 넘으면 멜로디가 나오면서 서보모터 두개가 돌아가는 코드인데 사운드가 넘으면 한 멜로디에 서보모터가 반 바퀴만 천천히 돌아가는데 그 속도를 빠르게 하거나 반바퀴로 두번 회전하게끔 할 수는 없나요? 도와주시면 정말 감사하겠습니다 ㅜㅜ

 

 #include <MsTimer2.h>

#include <Servo.h>

 

 

Servo myservo1;// create servo object to control a servo

Servo myservo2;// twelve servo objects can be created on most boards

int Sensor = A1; 

int speakerPin=8;

 

char notes[] = "ccggaag ffeeddc ggffeed ggffeed ccggaag ffeeddc "; 

int beats[] = { 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 4 };

int tempo = 300;

volatile int pos=0,length=15,len=0,run=0;

 

void playTone(int tone, int duration) { //자장가 출력1

  for (long len = 0; len < duration * 1000L; len += tone * 2) {

    digitalWrite(speakerPin, HIGH);

    delayMicroseconds(tone);

    digitalWrite(speakerPin, LOW);

    delayMicroseconds(tone);

  }

}

 

void playNote(char note, int duration) { //자장가 출력2

  char names[] = { 'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C' };

  int tones[] = { 2015, 1800, 1619, 1532, 1375, 1236, 1114, 1056 };

  

  for (int len = 0; len < 8; len++) {

    if (names[len] == note) {

      playTone(tones[len], duration);

    }

  }

}

 

 

void flash() { //서보모터 작동

  if(run){

    if(len<9){ if(pos<180)pos++; }

    else{ if(pos>0)pos--; }

    myservo1.write(pos);

    myservo2.write(pos);

  }

  else{ 

    pos=0; myservo1.write(0); myservo2.write(0);

  }

}

 

void setup() {

  myservo1.attach(6);

  myservo2.attach(5);// attaches the servo on pin 5,6 to the servo object

  Serial.begin(9600);

  pinMode(Sensor,INPUT);

  pinMode(speakerPin, OUTPUT);

 

  MsTimer2::set(16,flash); // flash함수를 16ms마다 호출한다

  MsTimer2::start();

}

 

 

void loop() {

 int Sound = analogRead(Sensor);

 Serial.println(Sound);

 

 if (Sound > 100) { //소리가 100이상이면

    run=1;

    for (len=0;len<length;len++){

      if (notes[len]==' ') { delay(beats[len] * tempo); }

      else { playNote(notes[len], beats[len] * tempo); }

      delay(tempo / 2); 

    }

    run=0;

  } 

}

  • BASIC4MCU 작성글 SNS에 공유하기
  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기

댓글 2

조회수 3,259

master님의 댓글

master 작성일

MsTimer2::set(16,flash); // flash함수를 16ms마다 호출한다
16ms마다 서보모터 각도가 회전합니다.
16을 8로 고치면 두배 빠르게 회전합니다

죠르디님의 댓글

죠르디 댓글의 댓글 작성일

도움 주셔서 감사합니다. 항상 행복한 일만 가득하시길 바랄게요!

질문게시판HOME > 질문게시판 목록

MCU, AVR, 아두이노 등 전자공학에 관련된 질문을 무료회원가입 후 작성해주시면 전문가가 답변해드립니다.
ATMEGA128PWMLED초음파
아두이노AVR블루투스LCD
UART모터적외선ATMEGA
전체 스위치 센서
질문게시판 목록
제목 작성자 작성일 조회
답변 답변글 답변 : (도와주세요ㅠ) 초음파센서로 lcd와 부저 울리기댓글[4] master 22-11-06 489
질문 서보모터 2개 구동하는법댓글[1] 호하늘 22-11-05 346
질문 블루투스 모듈간에 페어링이 안됩니다 ㅠ댓글[3] starter92 22-11-05 331
질문 블루투스 모듈 HC-05,06은 레오나르도와 사용이 불가능한가요?댓글[2] starter92 22-11-05 181
질문 안녕하십니까? 핀볼관련 코드 질문 드립니다 이미지첨부파일 Honor 22-11-04 391
답변 답변글 답변 : 안녕하십니까? 핀볼관련 코드 질문 드립니다댓글[2] 이미지 master 22-11-05 446
질문 GP2Y0A02YK센서 사용 거리 측정댓글[1] 이미지 cky88 22-11-04 307
질문 wifi server 구현하고 메시지 송신하는 방법좀댓글[1] 라칸 22-11-04 216
질문 Atmega128질문좀 부탁드려요. ㅠㅠ댓글[5] 그냥사는사람 22-11-04 509
질문 초음파 센서를 이용해서 lcd거리측정에 부저 집어넣기...댓글[1] 이미지첨부파일 승천 22-11-04 367
질문 pull down 이용해서댓글[1] 이미지첨부파일 무어유 22-11-03 406
질문 atemega128 가변저항을 이용하여 single conversion mode로 변환하는 과정 질문입니다댓글[1] 호루라기 22-11-03 358
질문 atmega128 인터럽트 스위치, 반복문 안에 반복문댓글[2] 시속90 22-11-03 415
답변 답변글 답변 : atmega128 인터럽트 스위치, 반복문 안에 반복문 master 22-11-03 269
질문 (도와주세요..ㅜ) 아두이노 초음파센서를 이용한 서보모터, 부저 제어 질문댓글[2] 이미지첨부파일 승천 22-11-03 486
질문 아두이노 자동 창문 개폐기 코드 질문드립니다. keajoo12 22-11-03 273
답변 답변글 답변 : 아두이노 자동 창문 개폐기 코드 질문드립니다.댓글[3] master 22-11-03 378
질문 시리얼 모니터를 통한 LCD 문자 출력 시 오류(괴문자)댓글[2] 이미지첨부파일 takeonefor 22-11-02 252
질문 stm32 spi로 센서 모듈 여러개 사용하는 방법좀댓글[4] 이미지첨부파일 라칸 22-11-01 380
질문 stm32 i2c로 센서 2개를 읽고 쓰고 싶은데댓글[4] 라칸 22-11-01 406
질문 블루투스 관련 질문입니다.댓글[5] 이미지 LightP 22-11-01 438
질문 ESP8266을 이용해서 Atmega128에 연결된 모터 제어댓글[1] bbbin 22-11-01 365
질문 릴레이 모듈, 가습기 모듈, 아두이노 연결댓글[1] 이미지첨부파일 보라색 22-10-31 341
질문 스텝모터,twi,LCD관련 질문 있습니다..!댓글[1] 이미지첨부파일 만두 22-10-31 445
질문 ATmega128 디지털 도어락 관련 질문입니다댓글[3] 이미지첨부파일 아트메가왕초보 22-10-30 822
질문 심박수 센서 오류관련 질문입니다댓글[1] starter92 22-10-30 361
질문 압력센서 8개 mux모듈 이미지 ㅋㅈㅇ 22-10-29 330
답변 답변글 답변 : 압력센서 8개 mux모듈 이미지 master 22-10-29 216
답변 답변글 답변 : 답변 : 압력센서 8개 mux모듈댓글[1] 이미지 ㅋㅈㅇ 22-10-29 276
질문 atmega128 온도계 도와주세요.. 이미지첨부파일 세븐사장 22-10-29 272
게시물 검색

2022년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2021년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2020년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2019년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2018년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
Privacy Policy
MCU BASIC ⓒ 2020
모바일버전으로보기