/*
- Rover
+ Rover
Autore: Andrea Manni
byte speedB = 255;
// Servo vars
-int pos = 0; // variable to store the servo position
+int pos = 0; // variable to store the servo position
const byte servoPIN =9 ;
const byte middle = 90; // Centratura servo
-const int spausa = 30; // Pausa movimenti servo
+const int spausa = 10; // Pausa movimenti servo
+const byte sx = 10; // Min SX
+const byte dx = 170; // Maz DX
Servo myservo; // Non c'e' bisogno di extern se e' dichiarato in questo scope
////////////////////////
digitalWrite(enB,LOW);
}
+
+// Entrambi i motori
+void avanti() {
+ // Drive ahead: funzione composita
+ forwardA() ;
+ forwardB() ;
+}
+void indietro() {
+ // Drive backward: funzione composita
+ backwardA();
+ backwardB();
+}
+void giraSX() {
+ // Gira a DX
+ forwardB() ;
+ backwardA();
+}
+void giraDX() {
+ // Gira a DX
+ forwardA() ;
+ backwardB();
+}
+void stop() {
+ stopA();
+ stopB();
+}
+
+
+
// Servo
-void turnDX() {
+void servoDX() {
// TurnDX
- myservo.write(170);
+ while (pos < dx) {
+ myservo.write(pos++);
+ delay(spausa);
+ }
}
-
-void turnSX() {
+
+void servoSX() {
// TurnSX
- myservo.write(10);
+ while (pos > sx) {
+ myservo.write(pos--);
+ delay(spausa);
+ }
}
-void turnMiddle() {
- // TurnDX
- myservo.write(middle);
+void servoMiddle() {
+ // Middle
+ while (pos > middle) {
+ myservo.write(pos--);
+ delay(spausa);
+ }
+ while (pos < middle) {
+ myservo.write(pos++);
+ delay(spausa);
+ }
}