[D-2weeks] 수동 조작 제어 및 앞으로 할 일

2023. 4. 17. 03:37·자율주행자동차/[2023] 1-fifth AA EV
728x90

조종기의 Mode가 0일 때는 수동 조작 모드, Mode가 1일 때는 자율주행 모드로 주행할 수 있도록 코드를 수정하려했지만 조종기 내에 reverse기능이 있어 Mode(Gear)을 담당하는 Ch5에만 reverse를 주었다.

GPS모듈, 아두이노 mega2560, 구동모터 드라이버, 조향모터 드라이버

 오늘까지의 진전으로는 Ublox GPS모듈을 설치하여 신호를 잡아내는 것 까지 하였지만 ros통신으로 불러오는데까지는 문제가 보였던 것 같다. 

 -> 첫 번째 실행에서 보였던 문제점으로는 전륜에서 noise가 보이는 듯 하여 조향에 많은 흔들림이 나타났다. 

 -> 바닥 평면과 닿지 않았을 때는 p제어 상수를 0.2->0.1로 바꾸었을때 제어가 잘 된 듯 하였으나 막상 직접 바닥에 굴려보니 노이즈가 나타났다. 

-> 기존의 제어의 문제점? PD제어인데 제어를 좀 조정해야겠다. 

-> RosSerial과의 병합코드 점검하기.

 

float kp = 0.1;
float ki = 0.00000 ;
float kd = 2.00;
void SteerCon(float Q) { // 조향모터의 제어를 위한 함수, Q = 조향 목표값  
    val = Q;                           
    if(val>St_M+300){  // 조향 최대값 제한
      val=St_M+300;
    }
    else if(val<St_M-300){ // 조향 최소값 제한 
      val= St_M-300;
    }
    encoder_val =analogRead(encoder_pot);               // Read V_out from Feedback Pot
    t = millis();
    dt = (t - t_prev);                                  // Time step
    Theta = val;                                        // Theta= Actual Angular Position of the Motor
    Theta_d = encoder_val;                              // Theta_d= Desired Angular Position of the Motor

e = Theta_d - Theta;                                // Error
inte = inte_prev + (dt * (e + e_prev) / 2);         // Integration of Error
V = kp * e + ki * inte + (kd * (e - e_prev) / dt) ; // Controlling Function

    if (V > Vmax) {
        V = Vmax;
       inte = inte_prev;
     }
    if (V < Vmin) {
      V = Vmin;
      inte = inte_prev;
      val_prev= val;
     }
     int PWMval = int(255 * abs(V) / Vmax);
  if (PWMval > 200) {
     PWMval = 200;
  }
  if (V > 0.5) {
    digitalWrite(DirPin1, HIGH);
    analogWrite(PWMPin, PWMval);
  }
  else if (V < -0.5) {
    digitalWrite(DirPin1, LOW);
    analogWrite(PWMPin, PWMval);
  }
  else {
    digitalWrite(DirPin1, LOW);
    analogWrite(PWMPin, 0);
  }
    t_prev = t;
    inte_prev = inte;
    e_prev = e;

}

믿기지 않겠지만 내일이 중간고사인데 밤새서 대회 준비나 하고 있다ㅋㅋㅋ 셤공부 언제해??

728x90

'자율주행자동차 > [2023] 1-fifth AA EV' 카테고리의 다른 글

....  (0) 2023.04.27
[D-Week] 현재로부터 해야 할 일  (0) 2023.04.22
깃에 옮기기  (0) 2023.04.16
'자율주행자동차/[2023] 1-fifth AA EV' 카테고리의 다른 글
  • ....
  • [D-Week] 현재로부터 해야 할 일
  • 깃에 옮기기
뚱이, not a starfish
뚱이, not a starfish
M.S. Student,. Mainly interested in computer vision and autonomous cars
  • 뚱이, not a starfish
    Wilbur-Babo
    뚱이, not a starfish
  • 전체
    오늘
    어제
    • 분류 전체보기 (194)
      • Computer Graphics (0)
      • Algorithm (22)
        • BOJ (21)
        • 삼성 SW 역량 테스트 (0)
      • 통신 및 네트워크 (12)
      • Embedded Projects (2)
      • AI-Paper (10)
        • 3D-GS (1)
        • Mono-Depth (7)
        • Base (2)
      • AI-Study (12)
        • Computer Vision (1)
        • Tiny Object Detection (3)
      • Image Processing (3)
      • 자율주행자동차 (20)
        • [2023] 1-fifth AA EV (4)
        • [2022] 1-tenth AA EV (2)
        • ROS 1,2 (4)
        • 이론 (7)
        • 실습 (3)
      • 전기전자공학(전공) (12)
        • 반도체 (2)
        • 마이크로프로세서 (6)
      • EVS37 Ambassador (5)
      • .0 (8)
      • sw (16)
        • 정보보안 (1)
        • Android_develop (3)
      • 차량 제어 플랫폼 (5)
      • 영어 (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    현차 3월 신입 서류
    자율주행자동차
    software defined vehicle
    현대자동차최종불합
    현차 3월 자율주행
    자율주행작품
    evs37 sdv
    현대자동차 연구개발
    현대자동차 자율주행
    현대차3월신입후기
    오픽후기
    헤네스
    현대자동차 서류합격후기
    자율주행경진대회
    정렬
    우분투터미널
    rc카
    현차 자율주행
    현차떨
    현대자동차 자율주행 서류 합격 후기
    심포지움
    tar압축풀기
    자율주행시험
    오블완챌린지
    evs37sdv
    헤네스유아용자동차
    자율주행
    EVS37
    tar 파일
    현대자동차최종면접결과
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
뚱이, not a starfish
[D-2weeks] 수동 조작 제어 및 앞으로 할 일
상단으로

티스토리툴바