티스토리가 카카오를 통해서만 동영상을 올리게 제한해 놓아서 관련 동영상은 모두 facebook에 올립니다. 

동영상 링크 :  www.facebook.com/permalink.php?story_fbid=4335689146551601&id=100003316754962

 

개요 

총 부품비 10만원 이하의 이 조그만 로봇은 기초 이론을 구현을 연습하기 위한 실습용으로 만들어 보는 로봇입니다.

이 로봇으로 이번에 실험할 내용들을 나열하자면

1. GPIO on/off (로봇의 모터 컨트롤러의 방향 세팅용)

2. PWM Timer (로봇의 바퀴 속도 조절용)

3. 센서와 I2C 통신 (BNO055 Absolute Orientation 9축 센서)

4. 인터럽트 (두개의 바퀴의 엔코더로부터 실제 바퀴가 도는 속도를 읽어 냄)

5. Wifi UDP 통신 (PC의 통합 모니터링 프로그램과의 교신)

      5.1 통신시 메세지 분석을 위한 Parsing 실력 양상. 

         (* 파싱은 프로그래머의 기초 체력,

            파싱 실력이 약하면 자료구조 알고리즘 공부가 불가능 함.   

            자료구조 알고리즘 공부가 안 된 프로그래머는 거의 단순 노가다임.  *)

      5.2 네트워크 관련 전반적 지식.  

6. PID - 1 (1개의 바퀴의 엔코더로부터 PID를 적용해 보기 - 속도 조절)

7. PID - 2 (2개의 바퀴로 PID 적용을 확산시키기 - 직선 주행)

8. PID - 3 (9축 센서에도 PID를 확장시키기 -  직선 주행)

9. PID - 4 (이젠 바닥을 불규칙하게 만들어서 실험하기)

10. 윗 PID 에 완전히 익숙해 지면 이젠 여러 속도와 다각도 커브 주행해 보기.

 

윗 작업이 다 끝나면 똑같은 작업을 Linux 환경인 파이에서 해 보는 것입니다.

파이에서 작동하는 방식은 Jetson과 거의 동일하기 때문에 저렴한 파이에서 실험합니다.

이때 주의할 점은 지나치게 raspberry pi 전용으로 만들어진 라이브러리는 피해야 합니다.   

그래야 Jetson이나 다른 리눅스용 SBC에 포팅이 쉽습니다.

======================================================================

아두이노용 라이브러리

PID  링크 : r-downing.github.io/AutoPID/

BNO055 링크 : github.com/adafruit/Adafruit_BNO055

======================================================================

사용하는 하드웨어 :

TTGO ESP32 Board,

N20 Low noise geared moter w/ encoder (60 rpm, 6V) x 2

TB6612FNG : Dual H-Bridge motor controller

14500 Li-Ion Batteries (Ultrafire brand) x 2 : 1,800 mAh each

GY-BNO055 : 9-axis sensor (absolute orientation), GY버전이 쌈.

TFT 1.3" LCD : for quick feedback. (취소. PC 모니터링 프로그램이 좋아서 불필요)

Step-down buck converter x 2. (8V => 5V, 6V)

MISC. : Some holdered, plastic plate, rubber wheels, battery holder

======================================================================

'ESP32 BOT > My ESP32 Bot' 카테고리의 다른 글

현재 코드 (11/4/2021) - 계속 바뀝니다.  (0) 2021.11.04

+ Recent posts