2WD_균형잡는 Ai

2WD_균형잡는 Ai

Makerist 0 632
  1. 설정: setup() 함수에서는 초기 설정을 수행합니다. MPU6050(자이로 센서)와 PID 컨트롤러를 초기화하고, 필요한 핀을 설정하여 모터를 제어합니다. 또한 DMP(Digital Motion Processor)를 활성화하여 로봇의 자세 데이터를 수집할 수 있도록 합니다.

  2. 루프: loop() 함수에서는 계속해서 MPU6050(자이로 센서)로부터 데이터를 읽습니다. 이 데이터를 기반으로 자세를 추정하고, PID 컨트롤러를 사용하여 로봇의 각도를 제어합니다. 이것이 로봇이 균형을 유지하는 핵심 기능입니다. 또한 FIFO 오버플로우나 데이터가 준비되지 않은 경우에 대한 예외 처리도 수행합니다.

  3. 인터럽트 처리: dmpDataReady() 함수는 MPU6050(자이로 센서)의 데이터가 준비되었을 때 호출되는 인터럽트 핸들러입니다. 이 함수는 인터럽트 플래그를 설정하여 메인 루프에서 데이터가 준비되었음을 인식할 수 있도록 합니다.

이 코드는 결국 MPU6050(자이로 센서)를 사용하여 로봇의 자세를 추정하고, PID 컨트롤러를 통해 로봇의 균형을 유지하는 것이 목적입니다.

0 Comments