질문게시판 > 리니어레일+적외선 리모컨+리미트스위치 질문입니다!

인기검색어 > 아두이노 센서 ATMEGA128

최신글 질문게시판 동영상강좌 가입하기

▼ BASIC4MCU 후원업체 신제품 정보 ▼

▲ BASIC4MCU 후원업체 신제품 정보 ▲

BASIC4MCU > 질문게시판

리니어레일+적외선 리모컨+리미트스위치 질문입니다!

페이지 정보

작성자 capstone돌모자 작성일20-11-21 18:20 조회9,116회 댓글1건

본문

#include <IRremote.h>

#include <Stepper.h>

int stepsPerRevolution = 200; 

int control;

 

Stepper motor1(stepsPerRevolution, 8, 9);

Stepper motor2(stepsPerRevolution, 10, 11);

#define LIMIT_PIN 3

int RECV_PIN = A0;   

IRrecv irrecv(RECV_PIN);    

decode_results results;

void setup()

{

     irrecv.enableIRIn();

     digitalWrite(0,LOW);

     pinMode(8, OUTPUT);

     pinMode(9, OUTPUT);

     pinMode(10, OUTPUT);

     pinMode(11, OUTPUT);

     pinMode(LIMIT_PIN, INPUT); 

     

     motor1.setSpeed(1200);

     motor2.setSpeed(1200);

     Serial.begin(9600);

}

void loop()

{

    if (irrecv.decode(&results))

    {

      Serial.println(results.value,HEX);

      if((results.value == 0xFF6897)||(results.value == 0xFF30CF)||(results.value == 0x97483BFB)||(results.value == 0xFFE01F))    

      {

         control=1;    

      }

      else if((results.value == 0xFF6897)||(results.value == 0xFF5AA5)||(results.value == 0xFF4AB5)||(results.value == 0xFF52AD))    

      {      

        control=2;    

      }

      irrecv.resume(); 

    }

    if (control==1)    

    {      

      motor1.step(1);      

      motor2.step(1);    

    }

    else if(control==2)    

    {      

      motor1.step(-1);      

      motor2.step(-1);          

    }

    else if(digitalRead(LIMIT_PIN) == LOW)

    {

       motor1.step(0);

       motor2.step(0); 

       delay(500);

       motor1.step(-1);      

       motor2.step(-1);

       delay(1000);

       motor1.step(0);

       motor2.step(0);

    }

}

 

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

 

적외선 리모컨으로 레일을 이동시키고 리미트 스위치에 물체가 닿으면 정지했다가 딜레이 후 반대방향으로 잠깐 움직였다가 레일이 다시 멈추게 하는 코드를 짰습니다.

하지만 리미트 스위치에 닿으면 정지만 하고 원하는대로 역방향으로 움직이거나 하지 않습니다.

리미트 스위치 자체에 정지하는 기능만 있어서 코드가 그 상태에서 종료되는지 궁금합니다.

아니라면 원하는 방식대로 구현하도록 하는 코딩이 있을지 조언 부탁드립니다 ! :)

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

댓글 : 1

조회수 : 9,116

master님의 댓글

master 작성일

딜레이를 준다고 모터가 이동하는 것이 아닙니다.
//
      motor1.step(0);
      motor2.step(0);
스텝0 제어는 아무런 의미가 없습니다.
스텝모터의 정지는 스텝신호를 주지 않으면 정지입니다.
//

      motor1.step(-1);     
      motor2.step(-1);
      delay(1000);
잠깐 움직이는 코드가 이 것 이겠죠?
만약 1초동안 -100스텝 정도 움직이고 싶다면
    for(int i=0;i<100;i++){ motor1.step(-1);  motor2.step(-1); delay(10); }
만약 1초동안 -1000스텝 정도 움직이고 싶다면
    for(int i=0;i<1000;i++){ motor1.step(-1);  motor2.step(-1); delay(1); }
만약 1초동안 -10스텝 정도 움직이고 싶다면
    for(int i=0;i<10;i++){ motor1.step(-1);  motor2.step(-1); delay(100); }

게시물 검색

BASIC4MCU > 질문게시판 목록

제목 날짜
공지 MCU, AVR, 아두이노 등 전자공학에 관련된 질문은… 스태프  19-01-15
공지 사이트 이용 안내 댓글[29] master  17-10-29
질문 GPS 모듈 관련 질문입니다. 댓글[3] 지구과학 새글 23-09-22
질문 아두이노 블루투스와 초음파센서를 이용한 장애물 정지 댓글[1] 둘둘이 새글 23-09-22
질문 stm32 보드에서 시간설정과 불러오기를 하는데 댓글[5] 라칸  23-09-22
질문 아두이노 인터럽트 질문입니다. 댓글[2] Tell  23-09-21
답변 답변 : 아두이노 인터럽트 질문입니다. 댓글[1] master  23-09-22
질문 아두이노와 거리 감지 센서의 전류 관련 댓글[1] hmkim  23-09-21
질문 아두이노 코딩 질문있습니다. 도와주세요.... 댓글[1] 첨부파일vnpaz  23-09-20
질문 아두이노를 사용한 dc모터 위치제어 댓글[2] 모터위치  23-09-20
질문 stm32 디버깅이나 rst버튼 없이 하는 방법좀 댓글[1] 라칸  23-09-20
질문 LCD에 숫자 표기법을 바꾸고 싶습니 댓글[2] Bs드리프터  23-09-19
질문 알코올 측정기(MQ-3) 관련 질문 소오금  23-09-18
답변 답변 : 알코올 측정기(MQ-3) 관련 질문 master  23-09-19
질문 스텝모터 제어하는 소스파일 수정방법 질문드립니다. Bs드리프터  23-09-15
답변 답변 : 스텝모터 제어하는 소스파일 수정방법 질문드립니… 댓글[1] master  23-09-15
질문 atmega 128을 이용한 악기 튜너기 댓글[1] 아두이노짱  23-09-15
질문 stm32 보드 ip주소 찾는법 댓글[1] 라칸  23-09-13
질문 마이컴 종류 질문 댓글[2] stevie8  23-09-12
질문 주파수 실수배 체배 관련문의 댓글[6] 스쳐두임신  23-09-11
질문 스마트 창문 제작 중에 질문 있습니다! 댓글[1] 첨부파일N8008  23-09-09
질문 아두이노와 파이어베이스 연결이 안되는데 도와주실수 있을… 댓글[1] 아카링고  23-09-08
질문 노르딕 타이머 댓글[1] stevie8  23-09-08
질문 아두이노우노 엔코더모터 서보모터 코드 댓글[1] 팔쟁이  23-09-07
질문 rs485 모드버스 통신 질문 댓글[2] 킹초보  23-08-28
질문 데이터 타입 질문 댓글[1] stevie8  23-08-22
질문 아두이노 서보모터 연결 작동안함 댓글[1] 토뭉이  23-08-19
질문 아두이노 외부전원 인가 문제 해결방안... 댓글[3] 나도할수있어아두  23-08-17
질문 Arduino nano 33 iot 모듈 블루투스 통신 댓글[5] 첨부파일senior  23-08-16
질문 아두이노로 전달받은 값을 실시간으로 웹페이지와 연동 댓글[1] 스냥  23-08-16
게시물 검색


Privacy Policy
MCU BASIC ⓒ 2017
PC버전