Permalink
Browse files

一旦コミット

  • Loading branch information...
1 parent d15d5f2 commit 5599093c5106eae79919a5de0b09ce68e42ff97e @sonots sonots committed Sep 17, 2011
Showing with 8 additions and 9 deletions.
  1. +1 −1 nxtOSEK/etrobo2011/Gps.cpp
  2. +7 −8 nxtOSEK/etrobo2011/SeesawDriver.cpp
@@ -661,7 +661,7 @@ void Gps::adjustPositionIn(float avgX, float avgY, float avgD)
//if((22000.0 < getDistance()) && (getDistance() < 23500.0) && (405.0 < avgD) && (avgD < 495.0) && (2500.0 < avgX) && (avgX < 2850.0) && (-2000.0 < avgY) && (avgY < -1500.0))//距離は微妙なのでコメントアウト
if((405.0 < avgD) && (avgD < 495.0) && (2500.0 < avgX) && (avgX < 2850.0) && (-2000.0 < avgY) && (avgY < -1500.0))
{
- adjustDirection(450);
+ adjustDirection(getDistance() + (450 - avgD));
adjustXCoordinate(2676.0);
//adjustYCoordinate();
mSpeaker.playTone(1000, 1, 100);
@@ -60,23 +60,22 @@ bool SeesawDriver::drive()
mState = SeesawDriver::BEFORELINETRACE;
mTimeCounter = 0;
mDoDetectWall = false;
- mWallDetector.setThreshold(90);
+ mWallDetector.setThreshold(110);
}
- // 階段前のライントレース。段差にぶつかるまで。
+ // シーソーのライントレース。段差にぶつかるまで。
if (mState == SeesawDriver::BEFORELINETRACE) {
// 段差検知なしでライントレース
if (! mDoDetectWall) {
mLineTrace.setForward(50);
mLineTrace.execute();
- if((-1100.0 < mGps.getYCoordinate()) && (mGps.getYCoordinate() < -800.0)
- && (355 < mGps.getDirection())&& (mGps.getDirection() < 365)) {
+ if(mGps.getXCoordinate() > 2900 && mGps.getYCoordinate() > -1100) {
{ Speaker s; s.playTone(480, 20, 100); }
mDoDetectWall = true;
}
}
// 段差検知しながらライントレース
if (mDoDetectWall) {
- mLineTrace.setForward(50);
+ mLineTrace.setForward(80);
mLineTrace.execute();
if (mWallDetector.detect()) {
{ Speaker s; s.playTone(1976, 10, 100); }
@@ -96,15 +95,15 @@ bool SeesawDriver::drive()
mPrevMotor = mLeftMotor.getCount();
mDoDetectWall = false;
mInitState = false;
+ { Speaker s; s.playTone(1976, 10, 100); }
}
// 一旦バック(フラグ名が適切ではないが気にしないでください)
if (! mDoDetectWall) {
- { Speaker s; s.playTone(1976, 10, 100); }
mAngleTrace.setForward(-50);
mAngleTrace.setTargetAngle(mPrevDirection);
K_THETADOT = 7.5F;
mAngleTrace.execute();
- if (mGps.getXCoordinate() < 3060) { // 階段側マーカ始点
+ if (mGps.getXCoordinate() < 3150) { // シーソー側マーカ始点
mTimeCounter = 0;
mDoDetectWall = true;
}
@@ -141,7 +140,7 @@ bool SeesawDriver::drive()
}
// いざ突入
if (mDoDetectWall) {
- mActivator.reset(USER_GYRO_OFFSET + 10);
+ mActivator.reset(USER_GYRO_OFFSET + 5);
mAngleTrace.execute();
if (mWallDetector.detect()) {
{ Speaker s; s.playTone(1976, 10, 100); }

0 comments on commit 5599093

Please sign in to comment.