* 기술문의 안내
- 에듀이노에서는 판매중인 제품에 한정하여 기술문의 답변을 제공하고 있습니다.
- 입점사 제품 관련 문의경우, 제조사를 통해 답변을 제공하기 때문에 제조사의 사정에 따라 약 2~3일정도의 시간이 소요될 수 있습니다.
- 정확한 답변을 위해서, 사용환경에 대한 이미지 또는 영상을 함께 첨부해 주시면 정확한 답변을 제공하는데 도움이 됩니다.
(텍스트로만 이루어진 기술문의는, 정확한 원인 파악이 어려워 답변이 잘못되거나, 늦어질 수 있습니다.)
[제품 또는 키트명]
-
[기술문의 내용]
- 예제 6번 코드를 했는데 계속해서 전진 후진이 이상하게 됩니다. 원래 전진이랑 후진이 되야하는데 바퀴가 상쇄되어서 돕니다.
[코드]
int RightMotor_E_pin = 5; // 오른쪽 모터의 Enable & PWM
int RightMotor_1_pin = 8; // 오른쪽 모터 제어선 IN1
int RightMotor_2_pin = 9; // 오른쪽 모터 제어선 IN2
int LeftMotor_3_pin = 10; // 왼쪽 모터 제어선 IN3
int LeftMotor_4_pin = 11; // 왼쪽 모터 제어선 IN4
int LeftMotor_E_pin = 6; // 왼쪽 모터의 Enable & PWM
void SmartCar_Go();
void SmartCar_Back();
int L_MotorSpeed = 153; // 왼쪽 모터 속도
int R_MotorSpeed = 153; // 오른쪽 모터 속도
void setup() { // 출력모드로 설정
pinMode(RightMotor_E_pin, OUTPUT);
pinMode(RightMotor_1_pin, OUTPUT);
pinMode(RightMotor_2_pin, OUTPUT);
pinMode(LeftMotor_3_pin, OUTPUT);
pinMode(LeftMotor_4_pin, OUTPUT);
pinMode(LeftMotor_E_pin, OUTPUT);
}
void loop() {
SmartCar_Go();
delay(3000);
SmartCar_Back();
delay(3000);
}
void SmartCar_Go() { // 전진
Serial.println("Forward");
digitalWrite(RightMotor_1_pin, HIGH);
digitalWrite(RightMotor_2_pin, LOW);
digitalWrite(LeftMotor_3_pin, HIGH);
digitalWrite(LeftMotor_4_pin, LOW);
analogWrite(RightMotor_E_pin, L_MotorSpeed);
analogWrite(LeftMotor_E_pin, R_MotorSpeed);
}
void SmartCar_Back() { // 후진
Serial.println("Backward");
digitalWrite(RightMotor_1_pin, LOW);
digitalWrite(RightMotor_2_pin, HIGH);
digitalWrite(LeftMotor_3_pin, LOW);
digitalWrite(LeftMotor_4_pin, HIGH);
analogWrite(RightMotor_E_pin, L_MotorSpeed);
analogWrite(LeftMotor_E_pin, R_MotorSpeed);
}
댓글목록
작성자 에듀이노 개발팀
작성일 2023-11-21
평점
바퀴가 반대로 동작하는 경우에는 모터가 반대로 도는 쪽의 모터드라이버 포트의 검정선 빨간선을 서로 바꾸어 주시기 바랍니다 (왼쪽 바퀴일 경우 MOTOR B 포트/오른쪽 바퀴일 경우 MOTOR A 포트)
감사합니다