PiLiDAR - 라즈베리 파이 라이다 스캐너

1 day ago 1

  • PiLiDAR는 DIY 360° 3D 파노라마 스캐너로, LiDAR파노라마 기능을 통해 3D 장면을 구성함
  • LiDAR는 LDRobot LD06, LD19 또는 STL27L을 사용하며, CRC 패키지 무결성 검사와 하드웨어 PWM을 포함함
  • 파노라마는 Hugin을 사용하여 어안 사진을 스티칭하고, EXIF 데이터를 읽어 일정한 카메라 노출과 색상 균형을 유지함
  • 3D 장면은 2D 평면에서 각도와 오프셋을 기반으로 구성되며, Open3D를 사용하여 시각화 및 내보내기를 지원함
  • 하드웨어는 Raspberry Pi 4, Raspberry Pi HQ 카메라, NEMA17 스테퍼 모터 등을 사용하여 구성됨

PiLiDAR의 핵심 기능

  • LiDAR: LDRobot LD06, LD19 또는 STL27L을 위한 맞춤형 직렬 드라이버를 사용함
  • CRC 패키지 무결성 검사와 하드웨어 PWM을 곡선 피팅을 통해 보정함
  • 2D 실시간 시각화 및 numpy 또는 CSV로 내보내기 기능을 제공함
  • 파노라마: 6K 360° 구형 맵을 Hugin 파노라마 사진 스티처를 사용하여 어안 사진에서 스티칭함
  • 자동 EXIF 데이터를 읽어 일정한 카메라 노출을 유지하고, 색상 게인을 최적화하여 일정한 화이트 밸런스를 유지함
  • 3D 장면: 각도와 오프셋을 기반으로 2D 평면에서 3D 장면을 조립함
  • 파노라마에서 버텍스 색상을 샘플링하고, Open3D를 사용하여 시각화 및 PCD, PLY 또는 e57로 내보내기를 지원함
  • 글로벌 등록ICP 미세 조정을 사용하여 여러 장면을 정렬함
  • Poisson Surface Meshing은 Pi4에서 매우 느리므로 PC에서 실행하는 것이 권장됨

하드웨어 사양

  • LDRobot LD06, LD19 또는 STL27L LiDAR
  • Raspberry Pi HQ 카메라와 ArduCam M12 렌즈
  • Raspberry Pi 4
  • NEMA17 42-23 스테퍼와 A4988 드라이버
  • 전원 공급 장치: 18650 배터리 2개 또는 10,000mAh USB 파워뱅크

스테퍼 드라이버, 모터 및 기어박스

  • A4988 양극 스테퍼 드라이버
  • NEMA17 42x42x23 양극 스테퍼
  • 3D 프린팅된 행성 감속 기어박스

LDRobot LiDAR 사양

  • LD06: 샘플링 주파수 4500 Hz, 보드레이트 230400
  • STL27L: 샘플링 주파수 21600 Hz, 보드레이트 921600

설정 및 배선

  • GPIO 핀을 사용하여 다양한 기능을 설정하고, i2c-GPIO를 사용하여 GY-521 가속도계와 연결함
  • 전원 버튼, 스캔 버튼, UART 권한 설정 등 다양한 설정을 포함함

파노라마 스티칭 및 원격 시각화

  • Hugin과 enblend 플러그인을 설치하여 파노라마 스티칭을 수행함
  • Plotly를 사용하여 Jupyter에서 3D 포인트 클라우드를 원격으로 시각화함

USB 저장소로 스캔 덤프

  • GitHub 저장소를 클론하고 설치하여 USB 저장소로 스캔 데이터를 덤프함

문제 해결

  • 다양한 문제 해결 방법을 제공하며, Windows 직렬 드라이버 설치, RPi.GPIO 런타임 오류 해결, VS Code 성능 문제 해결 등을 포함함

참고 자료

  • 다양한 영감을 받은 프로젝트와 하드웨어 PWM, ICP 구현, 3D 데모 데이터 등을 참고함

Read Entire Article