rc + servo + tt_motor +L298N + hc-06
Makerist
스마트&tech
0
703
2024.03.24 01:43
#include <Servo.h> // 모터 제어 핀 설정 #define motor1Pin1 2 #define motor1Pin2 3 #define motor2Pin1 4 #define motor2Pin2 5 // 서보모터 핀 설정 #define servoPin 9 Servo steeringServo; void setup() { // 시리얼 통신 초기화 Serial.begin(9600); // 모터 제어 핀 초기화 pinMode(motor1Pin1, OUTPUT); pinMode(motor1Pin2, OUTPUT); pinMode(motor2Pin1, OUTPUT); pinMode(motor2Pin2, OUTPUT); // 서보모터 핀 초기화 steeringServo.attach(servoPin); // 블루투스 통신 초기화 // 여기서 블루투스 모듈을 초기화해야 합니다. } void loop() { if (Serial.available() > 0) { char command = Serial.read(); // 움직임 제어 if (command == 'F') { // 전진 forward(); } else if (command == 'B') { // 후진 backward(); } else if (command == 'L') { // 좌회전 steerLeft(); } else if (command == 'R') { // 우회전 steerRight(); } else if (command == 'S') { // 정지 stop(); } } } // 전진 함수 void forward() { digitalWrite(motor1Pin1, HIGH); digitalWrite(motor1Pin2, LOW); digitalWrite(motor2Pin1, HIGH); digitalWrite(motor2Pin2, LOW); } // 후진 함수 void backward() { digitalWrite(motor1Pin1, LOW); digitalWrite(motor1Pin2, HIGH); digitalWrite(motor2Pin1, LOW); digitalWrite(motor2Pin2, HIGH); } // 좌회전 함수 void steerLeft() { steeringServo.write(90); // 서보모터를 중앙으로 조향 } // 우회전 함수 void steerRight() { steeringServo.write(0); // 서보모터를 우측으로 조향 } // 정지 함수 void stop() { digitalWrite(motor1Pin1, LOW); digitalWrite(motor1Pin2, LOW); digitalWrite(motor2Pin1, LOW); digitalWrite(motor2Pin2, LOW); }