차량에 조도센서 2개를 부착후 빛 추적차량을 만들고 있습니다.
조도센서 모듈은 GY-302입니다.
코드가 아래와 같은데 모니터에 출력되는 값이 빛이 없는데도 최대치로 나옵니다. 해결방법좀 알려주세요
void light_trace(void) {
int init_light = 200;
int maximum_light = 120;
int difference_light_L = 20;
int difference_light_R = 15;
int lux1 = lightMeter1.readLightLevel(0);
int lux2 = lightMeter2.readLightLevel(1);
if(lux1 < maximum_light || lux2 < maximum_light) {
if(lux1 > lux2 + difference_light_L) { // 좌회전
if(ROTATION_CONTROL != LEFT)
drive(LEFT);
} else if (lux2 > lux1 + difference_light_R) { // 우회전
if(ROTATION_CONTROL != RIGHT)
drive(RIGHT);
} else { //직진
drive(FRONT);
}
} else {
drive(STOP);
drive_mod = 0;
send_msg(3);
}
}
//조도센서 값 출력
void print_lightsensor(void) {
uint16_t lux1 = lightMeter1.readLightLevel(0);
uint16_t lux2 = lightMeter2.readLightLevel(1);
Serial.print("Light : ");
Serial.print(lux1);
Serial.print(", ");
Serial.print(lux2);
Serial.println(" lx");
}
|