From 8023e0d27ed6db406248c46f1cc87becf34dc4c8 Mon Sep 17 00:00:00 2001 From: mhby1g21 <mhby1g21@soton.ac.uk> Date: Wed, 26 Mar 2025 16:39:43 +0000 Subject: [PATCH] fixed directions --- wifi-integrated.ino | 46 ++++++++++++++++++++++----------------------- 1 file changed, 22 insertions(+), 24 deletions(-) diff --git a/wifi-integrated.ino b/wifi-integrated.ino index 5de09a4..e1826a1 100644 --- a/wifi-integrated.ino +++ b/wifi-integrated.ino @@ -186,10 +186,10 @@ void loop() { // Move Forward - Using the exact structure from Medical_V2.ino void moveForward() { // Set direction pins first - digitalWrite(IN2, HIGH); - digitalWrite(IN1, LOW); - digitalWrite(IN4, HIGH); - digitalWrite(IN3, LOW); + digitalWrite(IN2, LOW); + digitalWrite(IN1, HIGH); + digitalWrite(IN4, LOW); + digitalWrite(IN3, HIGH); Direction = 1; // Then apply IMU control if available @@ -205,10 +205,10 @@ void moveForward() { // Move Backwards - Using the exact structure from Medical_V2.ino void moveBackward() { // Set direction pins first - digitalWrite(IN2, LOW); - digitalWrite(IN1, HIGH); - digitalWrite(IN4, LOW); - digitalWrite(IN3, HIGH); + digitalWrite(IN2, HIGH); + digitalWrite(IN1, LOW); + digitalWrite(IN4, HIGH); + digitalWrite(IN3, LOW); Direction = -1; // Then apply IMU control if available @@ -217,36 +217,34 @@ void moveBackward() { } else { // Without IMU, just use basic speed control analogWrite(ENA, SPEED); - analogWrite(ENB, SPEED); + analogWrite(ENB, SPEED); } } -// Turn Left - Using the exact structure from Medical_V2.ino -void turnLeft() { - digitalWrite(IN2, HIGH); +// Turn Right - Using the exact structure from Medical_V2.ino +void turnRight() { + digitalWrite(IN2, LOW); // Left motor stopped digitalWrite(IN1, LOW); - digitalWrite(IN4, LOW); - digitalWrite(IN3, LOW); + digitalWrite(IN4, LOW); // Right motor forward (per reversed convention) + digitalWrite(IN3, HIGH); Direction = 0; // No IMU control for turning - analogWrite(ENA, SPEED); - analogWrite(ENB, 0); + analogWrite(ENA, 0); // Left motor stopped + analogWrite(ENB, SPEED); // Right motor active } -// Turn Right - Using the exact structure from Medical_V2.ino -void turnRight() { - digitalWrite(IN2, LOW); - digitalWrite(IN1, LOW); - digitalWrite(IN4, HIGH); +// Turn Left - Using the exact structure from Medical_V2.ino +void turnLeft(IN2, LOW); // Left motor forward (per reversed convention) + digitalWrite(IN1, HIGH); + digitalWrite(IN4, LOW); // Right motor stopped digitalWrite(IN3, LOW); Direction = 0; // No IMU control for turning - analogWrite(ENA, 0); - analogWrite(ENB, SPEED); + analogWrite(ENA, SPEED); // Left motor active + analogWrite(ENB, 0); // Right motor stopped } - // Using the exact IMU_Control from Medical_V2.ino void IMU_Control() { // Update IMU data -- GitLab