정보나눔

오픈소스하드웨어 프로젝트에 대한 다양한 정보를 나누는 공간입니다.

조도센서2개를 이용한 스텝모터제어
나루토 | 2017-10-08
#include <Stepper.h>
const int STEPS = 1024;
int val;
int previous;
int in1Pin = 8;
int in2Pin = 9;
int in3Pin = 10;
int in4Pin = 11;
int cds1 = A0;
int cds2 = A1;
Stepper stepper(STEPS, 8, 9, 10, 11);


void setup() {
  pinMode(8,OUTPUT);
  pinMode(9,OUTPUT);
  pinMode(10,OUTPUT);
  pinMode(11,OUTPUT);
  pinMode(A0,INPUT);
  pinMode(A1,INPUT);
  stepper.setSpeed(30);
  Serial.begin(9600);
}

void loop() {
  val = analogRead(A0);
  val = map(val, 0, 1023, 0, 255);
  Serial.println(val);
  
  previous = analogRead(A1);
  previous = map(previous, 0, 1023, 0, 255);
  Serial.println(previous);
  if(val>previous){
    digitalWrite(8, HIGH);
    digitalWrite(9, HIGH);
    digitalWrite(10, HIGH);
    digitalWrite(11, HIGH);
    stepper.step(STEPS);
  }
  else{
    digitalWrite(8, HIGH);
    digitalWrite(9, HIGH);
    digitalWrite(10, HIGH);
    digitalWrite(11, HIGH);
    stepper.step(-STEPS);
  }
  delay(500);
}

https://kocoafab.cc/make/view/341 태양광추적장치인데요.

위 사항에서 크기를 좀 크게 만드려다보니 태양전지판이 커지면서 서보모터대신 스텝모터를 사용하게 되었고

모터방향제어도 상하좌우가 아닌 좌우만 하게끔 만들어보고싶은데 조언 좀 구하고 싶습니다.

조도센서를 좌우 2개만 이용해서 두 값을 비교해 방향제어하는 방식인데요.

여기저기서 가져다 붙이다보니 막막해지더라구요.

if부문에서도 상당히 이상하고 해서 글 올려봅니다. 도와주세요!


 




  



 

이전글   |    아두이노 모션센서 2017-10-07
다음글   |    exit status 1 보드 Arduino/Genuino Uno 컴파일 에러.... 2017-10-10