Page 155 - 최강 아두이노 스마트 자동차 로봇 키트
P. 155

struct DistanceDir g_DistanceDirValue;
                 //
                 // measure distance
                 //
                 int measureDirDistance(int iDir)
                 {
                     // servo motor rotate
                     setRotateServo(iDir);
                     //  delay(10);//wait for servo.
                     int currDistance = getSafeDistance();
                     return currDistance;
                 }

                 //
                 // direction
                 //
                 int decisionDirection()
                 {
                     g_DistanceDirValue.left =
                 measureDirDistance(SERVO_DIR_LEFT);
                     delay(100); //
                     g_DistanceDirValue.right =
                 measureDirDistance(SERVO_DIR_RIGHT);
                     delay(100);
                     g_DistanceDirValue.center =
                 measureDirDistance(SERVO_DIR_CENTER);
                     delay(100);

                     int finalDir = g_DistanceDirValue.getProperDir();
                     return finalDir;
                 }

                 //
                 // int iDir : 방향 설정 변수
                 //
                 void setRotateServo(int iDir)
                 {
                 #define DEG_CENTER 90 // 85~90 도 정도 설정합니다.
                     // for debug
                     //Serial.println("Servo curr " + String(myservo.read())
                 + "  " + String(iDir));

                     //






                                                   154
   150   151   152   153   154   155   156   157   158   159   160