»Ë»Ñ Æ÷·³

¾ÆµÎÀ̳ë Ãʺ¸ ÄÚµù Áú¹®µå¸³´Ï´Ù..µµ¿ò ºÎŹµå·Á¿ä~

  • kyuz
  • µî·ÏÀÏ 2020-02-12 10:18
  • Á¶È¸¼ö 507
¾ÆµÎÀ̳븦 ÀÌ¿ëÇØ ¾Æ·¡¿Í °°Àº ÄÚÆÃÀ» ÇÏ·Á°í ÇÕ´Ï´Ù.
¾Æ¹«°Íµµ ¸ð¸£´Â Ãʺ¸¶ó ¿©±âÀú±â Âü°íÇؼ­ ÇÏ°íÀִµ¥, ¸îÀÏ° ÇØ°áÀÌ ¾ÈµÇ³×¿ä.¤Ð.¤Ì
 
ÇöÀç »óÅ´ 2¹ø±îÁö´Â ÀÛµ¿ µÇ´Âµ¥,
2¹ø ÀÛµ¿ÈÄ ¼¾¼­°ªÀÌ HIGH·Î ¹Ù²î¸é, 2¹øÀÌ ´Ù½ÃÇѹø µ¿ÀÛÇÑÈÄ °¨Áö»óÅ°¡ µË´Ï´Ù.
 
¾ÆµÎÀÌ³ë ´É·ÂÀÚºÐÀÇ µµ¿ò ºÎŹµå¸³´Ï´Ù~
 
// 1. ¼¾¼­°¡ °è¼Ó °¨ÁöÇÑ´Ù. ¼¾¼­´Â 1ÃÊ ÀÌÇÏÀÇ ÂªÀº µ¿ÀÛÀÌ °è¼ÓÀûÀ¸·Î °¨Áö, ºñ°¨Áö µÈ´Ù.
// 2. ¼¾¼­°¡ 1.5ÃÊ ÀÌ»ó ¼¾¼­ °ªÀÌ LOW(°¨Áö) À̸é, ½ºÅܸðÅ͸¦ ¿øÀ§Ä¡¿¡¼­ ¿ª¹æÇâ 1ȸ ȸÀüÇÏ°í,
// 3. ½ºÅܸðÅÍ°¡ ¿ª¹æÇâÀ¸·Î 1ȸ ȸÀüµÈ »óÅ·Î, 0.5ÃÊ ÀÌ»ó ¼¾¼­°ªÀÌ HIGH(¹Ì°¨Áö) À̸é, Á¤¹æÇâÀ¸·Î 1ȸ ȸÀüÇÏ¿© ¿øÀ§Ä¡ ½ÃŲ´Ù.
 
#define IR 4                               // ¼¾¼­ ÇÉ ¼³Á¤
#include <Stepper.h>                       // ½ºÅܸðÅÍ ¶óÀ̺귯¸® Æ÷ÇÔ
const int steps = 1536;                    // 270µµ ½ºÅܼ³Á¤
Stepper myStepper(steps, 8, 10, 9, 11);    // ½ºÅܸðÅÍ(IN4,IN2,IN3,IN1)ÇÉ ¼³Á¤
bool IR_on = LOW;                          // ¼¾¼­ÀÇ °¨Áö »óŸ¦ ÀúÀå
int motorflag = 0;                         // ¸ðÅÍ »óŸ¦ ÀúÀå
unsigned long last_time;                   // ÃÖÁ¾ ÀÔ·Â ½Ã°£À» ÀúÀå

void setup(){
  Serial.begin(9600);                      //½Ã¸®¾ó Åë½Å¼Óµµ ¼³Á¤
  pinMode(IR,INPUT);                       //¼¾¼­¸¦ ÀԷ¸ðµå·Î ¼³Á¤
  myStepper.setSpeed(24);                  //½ºÅܸðÅÍ ¼Óµµ ¼³Á¤
}

void loop(){
  if(!digitalRead(IR))                    //¼¾¼­ °ªÀÌ LOW À̸é
  {
    if((millis()-last_time > 1500)) IR_on = HIGH;  // ½Ã°£À» ÃøÁ¤ÇÏ¿©1.5ÃÊ ÀÌ»óÀÌ¸é ¼¾¼­»óŸ¦ HIGH·Î ÀúÀå
  }
    else    {
      last_time = millis();                // °ËÁö µÇÁö ¾ÊÀ¸¸é last_time °»½Å
      motorflag = 0;                       // ¸ðÅÍ»óÅ ÀÔ·Â
    }
  if((IR_on == HIGH) && (motorflag == 0))  // ¼¾¼­»óÅ°¡ HIGH ÀÌ°í, ¸ðÅÍ»óÅ°¡0 ÀÌ¸é ½ÇÇà
  {
    Serial.println("detected");            // ¸ð´ÏÅÍ¿¡ detected Ãâ·Â
    myStepper.step(-steps);                // ¸ðÅÍ ¿ª¹æÇâ ȸÀü
    myStepper.stop();                      // ¸ðÅÍ Á¤Áö
    motorflag = 1;                         // ¸ðÅÍ»óŸ¦ 1·Î ÀúÀå
    IR_on = LOW;                           // ¼¾¼­»óŸ¦ LOW·Î º¯°æ
  }  
}

0
ÃßõÇϱ⠴ٸ¥ÀÇ°ß 0
|
°øÀ¯¹öÆ°
  • ¾Ë¸² ¿å¼³, »óó ÁÙ ¼ö ÀÖ´Â ¾ÇÇÃÀº »ï°¡ÁÖ¼¼¿ä.
©¹æ »çÁø  
¡â ÀÌÀü±Û¡ä ´ÙÀ½±Û