Page 112 - 2
P. 112
void stop(){
digitalWrite(in1_motor_left, LOW);
digitalWrite(in2_motor_left, LOW);
digitalWrite(in3_motor_right, LOW);
digitalWrite(in4_motor_right, LOW);
delay(pwm_on);
digitalWrite(in1_motor_left, LOW);
digitalWrite(in2_motor_left, LOW);
digitalWrite(in3_motor_right, LOW);
digitalWrite(in4_motor_right, LOW);
delay(pwm_off);
}
//motor 의 속도를 각도의 따라 조절함
void pwm_adjust(int value_y){
if(value_y >=-1 && value_y <=1 ){
int k = (value_y*value_y);
Serial.print(k);
pwm_on = 2.7; // ms ON
pwm_off = 1.5; // ms OFF
}
else if((value_y>=-3 && value_y<-1)||(value_y>1 && value_y<=3) ){
pwm_on =4;
pwm_off = 1.5;
}
// 조건의 각도값이 커질수록 모터의 속도증가
else if(value_y <=6&&value_y>=4 || value_y >=-6&&value_y<=-4 ){
Serial.print("**");
pwm_on = 4.5; // ms ON
pwm_off = 1.5; // ms OFF
}
// 조건의 각도값의 따라 모터의 속도 빠르기조절
else if(value_y <=9&&value_y>=7 || value_y >=-9&&value_y<=-7 ){
Serial.print("***");
pwm_on = 5.5; // ms ON
pwm_off = 1.5; // ms OFF
}
else
stop();
}
- 112 -