메뉴 바로가기

서브메뉴 바로가기

본문 바로가기

logo

WAT-Arduino128 아두이노 자료실

예제 시리얼 포트로 스텝모터 제어

2015.03.15 17:55

WhiteAT 조회 수:3331

개요

시리얼 포트 데이터로 유니폴라 스텝모터를 제어해보자.



준비물

WAT-Arduino128

WAT-STEP1 [유니폴라스텝모터 구동 드라이버](설명) (구매)


보드 연결

WAT-Arduino128의 PORTA 와 WAT-STEP1 을 연결하고

WAT-STEP1 모듈에 12V 스텝모터용 전원을 연결합니다.



예제 열기

[파일] => [예제] => [WhiteAT] => [StepMotor]  => [Serial] 을 엽니다.


/*

  시리얼포트로 키 입력을 받아

  스텝모터 회전 속도/방향을 조절하는 예제

 

  >

  '1' 입력시  delay(99) 로 시계방향 회전 - 느림

  '99' 입력시  delay(1) 로 시계방향 회전 - 빠름

 

  '-1' 입력시  delay(99)로 반시계방향 회전 - 느림

  '-99' 입력시  delay(1)로 반시계방향 회전 - 빠림

 

  출처: http://whiteat.com/Arduino  

 

  보드

  WAT-Arduino128  : https://kit128.com/goods/view?no=64

  WAT-STEP1 :  https://kit128.com/goods/view?no=41

*/ 

 



#include <WAT_Multi.h>

#include <WAT_STEP1.h>

 

// STEP1  : 유니폴라 1상 여자 방식

// STEP2  : 유니폴라 2상 여자 방식

// STEP12 : 유니폴라 1-2상 여자 방식

 

Step1 step(STEP2,PA0,PA1,PA2,PA3);

 

// 프로그램 시작 - 초기화 작업

void setup()

{

           Serial.begin(115200);    //시리얼 통신 초기화

}

 

void loop()

{

           step.Next();

}

 

String inString;

int m_speed = 4;

void serialEvent()

{

           while (Serial.available())

           {   

                     int inChar = Serial.read() ;

                     if (isDigit(inChar) || inChar=='-')

                     {

                                inString += (char)inChar;

                     }

                     else if (inChar == '\n')

                     {

                                if(inString.length()>0)

                                {

                                          m_speed = inString.toInt();

                                          step.SetInterval(m_speed);

                                          Serial.print("Turn Delay:");

                                          Serial.println(inString.toInt());

                                          Serial.println(step.GetInterval());                                   

                                }

                                inString = "";

                     }

           }

}

 

 


wat-Arduino128_step1.jpg