라즈베리 파이로 셀프 밸런싱 세그웨이 만들기
1단계: 재료 준비
- 라즈베리 파이 2 (라즈비안 설치, 5V AC-DC 어댑터 전원) - $45.00
- USB Wi-Fi 어댑터 (예: Edimax) - $10.00
- DC 모터 2개, 바퀴 2개, 경량 카 프레임, 아크릴 시트, 모터 브래킷, 브라스 스터드, 샤프트 커플링, 각종 나사 - $50.00
- 모터 기어비 1:34, 토크와 속도 허용 시 1:21 비율이 더 나은 성능 가능
- 12V AC-DC 어댑터 - $4.00
- L293D 모터 드라이버 IC - $3.00
- MPU6050 6축 IMU - $3.00
- 830포인트 브레드보드 - $4.00
- 점퍼 와이어 (암-암, 암-수) - $3.00
- 케이블 타이 (8개) - $1.00
- 총계: ~$123.00
2단계: 프레임 조립
제공된 프레임 지침 따라 모터, 바퀴, 전자부품을 섀시에 마운트. 아크릴 시트로 깔끔한 로우 프로파일 룩 연출.
3단계: 회로 배선
아래와 같이 MPU6050과 L293D를 라즈베리 파이와 전원 공급 장치에 연결. 이 구성으로 파이가 모션 데이터 읽고 모터 구동 가능.
- MPU6050 VCC → 파이 핀 1 (3.3V)
- MPU6050 SDA → 파이 핀 3 (SDA)
- MPU6050 SCL → 파이 핀 5 (SCL)
- MPU6050 GND → 파이 핀 6 (GND)
모터 드라이버 연결:
- 좌측 바퀴: 파이 핀 11, 13, 15 → L293D 핀 2, 7, 1
- 우측 바퀴: 파이 핀 16, 18, 22 → L293D 핀 15, 10, 9
- L293D 핀 3 & 6 → 좌측 모터 단자 (M+, M-)
- L293D 핀 14 & 11 → 우측 모터 단자 (M+, M-)
- L293D Vs → 12V 전원
- L293D Vss → 5V 전원
- L293D 핀 4, 5, 12, 13 → GND
L293D에 12V 어댑터, 파이에 별도 5V 어댑터로 전원 공급.
4단계: 모든 것 고정
케이블 타이로 모든 배선과 부품 단단히 고정, 동작 중 이동하지 않는 깔끔한 빌드 보장.
5단계: 소프트웨어 설치
라즈비안 설치돼 있고 파이 SSH 접속 가능하다고 가정, I²C 커널 모듈과 WiringPi 라이브러리 설정. 파이가 MPU6050과 통신하고 GPIO 핀 제어 가능케 함.
$ sudo apt-get install libi2c-dev
/etc/modules 편집해 I²C 활성화:
i2c-bcm2708
i2c-dev
/etc/modprobe.d/raspi-blacklist.conf 블랙리스트 파일에 다음 줄 주석 처리:
#blacklist spi-bcm2708
#blacklist i2c-bcm2708
sudo raspi-config로 I²C 활성화 (Advanced Options → I²C). 파이 재부팅:
$ sudo bash; sync; sync; reboot
모듈 로드 확인:
$ lsmod | grep i2c
WiringPi 설치:
$ sudo apt-get install git-core
$ git clone https://github.com/WiringPi/WiringPi
$ cd WiringPi
$ sudo ./build
하드웨어와 소프트웨어 준비 완료, 이제 MPU6050 데이터로 파이 프로그래밍해 세그웨이 밸런싱 구현 가능.