분류 전체보기 63

Yocto 쉽게 이해하고 깊게 다루기 정리 (chapter 05)

chapter 05 새로운 레이어를 만들고 레시피 생성 5.1 문법을 실습할 예제 작성 5.2 bitbake 문법 두 번째 5.3 hello 애플리케이션 레시피 작성 5.4 라이선스 5.5 레시피 확장 파일 5.6 BBFILE_COLLECTIONS, BBFILE_PATTERN 변수의 역할 5.7 요약 새로운 레이어를 만들고 간단한 레시피 파일 작성 또한 만든 애플리케이션을 실제 이미지에 넣을 수 있도록 레시피 확장 파일에 대해서도 학습 5.1 문법을 실습할 예제 작성 Poky 내에 새로운 레이어를 생성하고 예제 레시피를 만들어 진행 1. poky 디렉터리 내 meta-hello 디렉터리 생성 2. meta-hello 디렉터리 내 conf/, recipes-hello/ 생성 3. conf/ 내 la..

IT 개발/Yocto 2025.06.10

Yocto 쉽게 이해하고 깊게 다루기 정리 (chapter 04)

chapter 04 빌드 속도개선을 위한 작업들4.1 소스 받기 4.2 자신만의 소스 저장소 PREMIRRORS 구성 4.3 자신만의 공유 상태 캐시(Shared State Cache) 생성 4.4 요약 bitbake core-image-minimal 명령어로 루트 시스템 이미지 파일을 생성했다. 빌드하는데 꽤 오랜 시간이 걸리는데, 그 이유는 소스를 패치하는 과정 때문 로컬 소스 저장소를 구축해 외부 저장소로부터의 다운로드 시간을 단축 Yocto에서 제공하는 공유 상태 캐시 Shared State Cache 캐시 저장소를 구축해 빌드 시간을 획기적으로 줄임 4.1 소스 받기 앞서 다운로드한 Poky 소스 코드를 보면 메타데이터들과 bitbake 툴이 코드의 전부이다. 실제로 빌드에 필요한 소스는 빌드할..

IT 개발/Yocto 2025.06.10

Yocto 쉽게 이해하고 깊게 다루기 정리 (chapter 03)

chapter 03 Poky 3.1 오픈임베디드 3.2 Poky 소스를 다운로드 받고 빌드 실행 3.3 빌드 결과를 QEMU 에뮬레이터로 실행 3.4 bitbake 환경 변수 옵션을 통한 변수값 확인 3.5 리눅스 호스트를 위한 빌드 소프트웨어 과정과 오픈임베디드 빌드 시스템의 빌드 과정 비교 3.6 요약 Poky는 Yocto를 사용해 커스텀 리눅스를 빌드하는데 사용되는 레퍼런스 Poky를 참고해 우리의 타깃 시스템에 맞는 커스텀 리눅스를 빌드할 수 있도록 구성해야 함 Poky를 이해한다는 것은 bitbake와 오픈임베디드 코어를 이해한다는 것과 같다. Poky를 빌드시스템 관점에서 말할 때 오픈임베디드 빌드 시스템 이라고 부를 것이다. 3.1 오픈임베디드 Poky에서 가장 핵심적인 역할을 하는 레이어는..

IT 개발/Yocto 2025.06.10

Yocto 쉽게 이해하고 깊게 다루기 정리 (chapter 02)

Chapter 02 bitbake 2.1 bitbake 소스받기 2.2 메타데이터 2.3 메타데이터 파일들 2.4 bitbake 문법 첫 번째 2.5 bitbake 실행 2.6 bitbake로 "Hello! bitbake world!" 출력 2.7 지금까지 생성한 메타데이터 해석 2.8 예제에서 bitbake의 실행 절차 2.9 addtask 지시어를 통한 태스크 추가 2.10 요약 bitbake란? 'C'나 'C++' 프로그래밍 언어를 빌드하기 위해 사용하는 빌드 도구 정도로 이해하자 2.1 bitbake 소스받기 bitbake 소스받기 wget http://git.openembedded.org/bitbake/snapshot/bitbake-1.46.0.tar.gzbitbake 압축 풀기 tar -xz..

IT 개발/Yocto 2025.06.10

Yocto 쉽게 이해하고 깊게 다루기 정리 (chapter 01)

Chapter 01 Yocto의 소개와 추상화 개념 1.1 추상화와 Yocto 프로젝트 1.2 Yocto의 앞으로의 학습 방법 1.3 Yocto 프로젝트 1.4 실습에 필요한 설치 파일들 1.5 요약 임베디드 소프트웨어의 하부 설계에 독립적인 리눅스 배포판을 생성하는 도구 셋 1.1 추상화와 Yocto 프로젝트 Yocto는 리눅스를 빌드하기 위한 툴 1.2 Yocto와 앞으로의 학습 방법 Yocto 프로젝트에는 임베디드 리눅스 소프트웨어 개발에 관련된 다양한 프로젝트가 존재 이 중에서 리눅스 빌드에 필요한 bitbake, 오픈임베디드 코어, Poky를 다룸 1.3 Yocto 프로젝트 Yocto 프로젝트는 커스텀 리눅스 배포를 위한 소프트웨어 스택을 구성해주는 도구 집합 Yocto 홈페이지에서 Poky를 ..

IT 개발/Yocto 2025.06.10

LIO-SAM with Cube Orange+ 결과 (1층 로비)

20250304 1층 LIO-SAM 테스트 결과 * lio_sam 테스트- 테스트 파일 : zed_mlx_cube_data_20250304_3h.bag 파일 (R&D 센터 1층 로비)- bag 파일 설정   - mlx 라이다 : 가로 셋팅  - imu           : 200Hz  - zed           : left, right 영상 - param.yaml 주요 파라미터# IMU Settings  imuAccNoise: 0.02  # cube orange+  imuGyrNoise: 0.002 # cube orange+  imuAccBiasN: 0.0002  imuGyrBiasN: 0.00003  imuGravity: 9.805  imuRPYWeight: 0.001  extrinsicRot: [0..

2024.10.21_1fl 데이터 LIO-SAM 테스트 (IMU 제외)

LIO-SAM 알고리즘 테스트를 하는데, 일단 코드 리팩토링을 진행해야 겠다 싶어서,IMU Preintegration 코드를 제거하고 LiDAR 만 사용해서 LIO-SAM 알고리즘을 돌려봤다.라이다 센서만 사용해도 결과가 나쁘지 않다. 오히려 IMU Preintegration 이 수행되면서 발생하는 튀는 현상이 줄어든다.LiDAR-SAM 만으로도 꽤 그럴듯 하긴 한데..아래는 결과 동영상이다. ML-X 가로장착   ML-X 세로장착

카테고리 없음 2024.12.02

2024.10.21_1fl 데이터 LIO-SAM 테스트 (dt값 수정)

LIO-SAM 알고리즘 테스트 진행중이다.IMU Preintegration 수행에 문제가 있는것 같아 IMU 센서 데이터 값을 고정 시켜놓고 테스트도 해보고,이런 저런 파라미터 값을 수정해서 테스트 중이다. imuPreintegration.cpp 파일에서 아래와 같이 gtsam::PreintegratedImuMeasurements::integrateMeasurement() 함수의마지막 파라미터 값인 dt 값을 임의로 0.0005 로 바꿔 봤다.dt 값의 의미는 이전 센서 데이터 사이의 시간인데, 이 값을 작게 줘서 imu 의 영향을 적게 주려고 한다.  double imuTime = ROS_TIME(&thisImu); double dt = (lastImuT_imu 0) ? (1.0 / 500.0) : ..

2024.10.21_1fl 데이터 LIO-SAM 테스트 (자이로값 수정)

LIO-SAM 알고리즘 테스트를 하기위해 myAHRS+ IMU 센서를 사용하고 있다.그런데, 움직이지 않아도 계속 한쪽 방향으로 흐르는 경향이 있어 IMU 값이 문제가 있는것 같아imuPreintegration.cpp 파일에서 IMU 값을 사용하는 부분을 변경해 봤다.(odometryHandler() 함수 처리 부분)   imuIntegratorImu_->integrateMeasurement(          gtsam::Vector3(thisImu->linear_acceleration.x, thisImu->linear_acceleration.y, thisImu->linear_acceleration.z),          gtsam::Vector3(0.0, thisImu->angular_velocity...

IMU Preintegration 문서 정리

LIO-SAM 알고리즘을 분석하는 중이다. LIO-SAM 코드에서 IMU 센서 값을 가장 먼저 처리하는 노드의 클래스는 imuPreintegration.cpp 파일인데,대강의 흐름은 알겠는데, 코드를 수정해보려고 하니 imuPreintegration 이 뭔지 정확히 알아야 할 필요가 있겠다 싶다. imuPreintegration에 대해 잘 정리된 블로그가 있어, 블로그 내용을 워드로 정리해 봤다. 출처는 문서에 작성해 두었다.