summaryrefslogtreecommitdiff
path: root/Venus_Skeleton
diff options
context:
space:
mode:
authorPeter Wu <peter@lekensteyn.nl>2015-06-17 14:14:22 +0200
committerPeter Wu <peter@lekensteyn.nl>2015-06-17 14:14:22 +0200
commit3fbf86c252d1964a6699e36cacd18a3b00bf77b6 (patch)
treee16685ff220428dce6693b5e6ccedd87574bcef2 /Venus_Skeleton
parent8e9bfbc9c44f1c09f5c93572d2ed3bf35cafbb9b (diff)
parenta849ba82c23427c51bc6f5121fb8ef5f3ff20fb8 (diff)
downloadcode-3fbf86c252d1964a6699e36cacd18a3b00bf77b6.tar.gz
Merge remote-tracking branch 'origin/peter'
Diffstat (limited to 'Venus_Skeleton')
-rw-r--r--Venus_Skeleton/Venus_Skeleton.ino39
1 files changed, 24 insertions, 15 deletions
diff --git a/Venus_Skeleton/Venus_Skeleton.ino b/Venus_Skeleton/Venus_Skeleton.ino
index bab00e2..efc1322 100644
--- a/Venus_Skeleton/Venus_Skeleton.ino
+++ b/Venus_Skeleton/Venus_Skeleton.ino
@@ -433,14 +433,14 @@ void maneuver(int speedLeft, int speedRight){
}
void stopMovement() {
- DEBUG_PRINT(" Stop Movement\n");
+ //DEBUG_PRINT(" Stop Movement\n");
maneuver(0, 0);
timerMovementStart = 0;
timerMovementStop = 0;
}
void stopAllServos() {
- DEBUG_PRINT(" Stop All Servos\n");
+ //DEBUG_PRINT(" Stop All Servos\n");
maneuver(0, 0);
timerTurret = 0;
timerMovementStart = 0;
@@ -529,9 +529,9 @@ void moveStraight(int direction, float distance) {
float drivetime = distance / CAL_MOVE_STRAIGHT;
if (!timerMovementStop) {
- DEBUG_PRINT(" Start straight move: ");
- DEBUG_PRINT(distance);
- DEBUG_PRINT(" - ");
+ //DEBUG_PRINT(" Start straight move: ");
+ //DEBUG_PRINT(distance);
+ //DEBUG_PRINT(" - ");
counterMovement++;
// timer = now() + direction * formula
timerMovementStart = millis();
@@ -539,13 +539,13 @@ void moveStraight(int direction, float distance) {
// If input is positive drive forward
if(distance > 0) {
- DEBUG_PRINT(" fw\n");
- maneuver(100, 100);
+ //DEBUG_PRINT(" fw\n");
+ //maneuver(100, 100);
}
// If input is negative drive backwards
if(distance < 0){
- DEBUG_PRINT(" bw\n");
- maneuver(-100, -100);
+ //DEBUG_PRINT(" bw\n");
+ //maneuver(-100, -100);
}
} else {
float dist = (millis() - timerMovementStart) * CAL_MOVE_STRAIGHT;
@@ -709,8 +709,8 @@ int eliminateDirections(int directionArray[]) {
}
}
- DEBUG_PRINT(" ");
- DEBUG_PRINT(directionArray[i]);
+ //DEBUG_PRINT(" ");
+ //DEBUG_PRINT(directionArray[i]);
if (directionArray[i]) {
numPossibleDirections++;
// Implement PI's choices (if still possible)
@@ -730,6 +730,7 @@ int eliminateDirections(int directionArray[]) {
void checkSample() {
if ((dataToPiChangedBits & (CHANGED_SENS_SAMPLETURRET | CHANGED_SENS_SAMPLEGRIPPER)) && (data.sample_turret_detected[counterTurret] || data.sample_gripper_detected) && (data.obstacle_turret_distances[counterTurret] > 37)) {
+ DEBUG_PRINT("\n -- FOUND SAMPLE?\n");
// One of the turret sees a sample (or the lab)
opMode(OPMODE_CHECKSAMPLE);
@@ -759,26 +760,34 @@ void confirmSample(int turretVal) {
currValDirectionDegree += (x == 0 ? 0 : 10);
currValDirectionDegree *= sign;
+ DEBUG_PRINT("\n currvaldeg = ");
+ DEBUG_PRINT(currValDirectionDegree);
+
counterSampleConfirm++;
} else {
+ DEBUG_PRINT("\n currvaldeg = ");
+ DEBUG_PRINT(currValDirectionDegree);
// Check if a sample was seen by the gripperSampleDetector and the movement to drive the grippers over it are done
if (!counterMovement && counterSampleConfirm == 2) {
// Pick it up
+ DEBUG_PRINT("\n---GRAB SAMPLE");
opMode(OPMODE_GRABSAMPLE);
}
// Check if a sample is seen by the gripperSampleDetector
if (data.sample_gripper_detected && (counterSampleConfirm == 1 || counterSampleConfirm == 3)) {
stopMovement();
- DEBUG_PRINT("sample detected");
+ DEBUG_PRINT("\nsample detected");
currValDirectionDegree = 0;
counterSampleConfirm = 2;
}
// Check if movement has stopped (turn and forward), without seeing a sample (second turn). -> False positive
if (!counterMovement && counterSampleConfirm == 3) {
+ DEBUG_PRINT("\n---FALSE POSITIVE")
opMode(OPMODE_WAIT);
}
// Check if movement has stopped (turn and forward), without seeing a sample (first turn). -> Turn other way
if (!counterMovement && counterSampleConfirm == 1) {
+ DEBUG_PRINT("\ncheck other side");
int sign = currValDirectionDegree < 0 ? 1 : -1;
currValDirectionDegree = 60 * sign;
counterSampleConfirm = 3;
@@ -863,8 +872,8 @@ void loop() {
sensObstacleTurret();
sensIRLine(L);
sensIRLine(R);
- //sensSampleTurret();
- //sensSampleGripper();
+ sensSampleTurret();
+ sensSampleGripper();
//sensLab();
@@ -906,7 +915,7 @@ void loop() {
if (moveTurnTo(directionToDegree(currValDirection))) {
currValDirection = 0;
}
- moveStraight(currValDirection, 30.0);
+ moveStraight(currValDirection, 100.0); // find distance
break;
case OPMODE_CHECKSAMPLE: