휴머노이드 로봇 발바닥 로드셀 센서의 실시간 시각화, 보정 및 zmp 계산을 제공하는 ROS 2 기반 GUI 패키지
Ubuntu 22.04 + ROS 2 Humble 환경에서 작동합니다.
이 패키지는 로봇 발바닥에 부착된 8개의 로드셀 센서 데이터를 serial port로 수신하고,
실시간 시각화, 디지털 필터링, 보정 (zero/unit gain), zmp 계산, 그리고 ROS 2 메시지 퍼블리시 기능을 수행합니다.
- Qt 기반 GUI로 센서 선택, 필터 적용, 보정값 저장/로드 가능
- QCustomPlot으로 실시간 그래프 출력
- FilterManager로 평균, 중앙값, LPF 적용
- 향후 로봇 ZMP 계산 및 자세 안정화에 활용 가능
07-18-2025.10_25_21.AM.1.mp4
mkdir -p ~/colcon_ws/src
cd ~/colcon_ws/src- 리포지토리 클론
git clone https://github.com/WJJJ2004/load_cell_2025.git
- 빌드
cd ~/colcon_ws
colcon build --packages-select load_cell_2025
- 실행
cd ~/colcon_ws
source install/setup.bash
ros2 run load_cell_2025 load_cell_2025
- 구성 요소 설명
- MainWindow Qt 기반 UI / 버튼 핸들링 및 시각화
- QNode ROS2 인터페이스 관리 (humanoid_interfaces/msg/lc_msgs)
- SerialReceiver 로드셀 MCU로부터 시리얼 데이터 수신
- FilterManager 평균/중앙값/LPF 필터 클래스
- QCustomPlot 실시간 그래프 출력용 외부 라이브러리 (third_party/)
- 보정 값
- Zero Gain (add2zero): 정지 상태에서 로드셀의 오프셋을 제거
- Unit Gain (add2unit): 센서 출력을 무게 단위로 환산하는 계수
- OS: Ubuntu 22.04
- ROS 2: Humble
- 언어: C++17, Qt5
- rclcpp
- std_msgs
- humanoid_interfaces
- Qt5 Widgets, Qt5 SerialPort
- QCustomPlot (third_party/qcustomplot)