일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 오블완
- U-blox
- GPS
- Puck LITE
- ROS
- ZED2
- Simulation
- Jetson
- 자율탐사
- 로봇
- turtlesim
- C++
- 터틀심
- ubuntu
- 젯슨
- Gazebo
- WSL2
- 티스토리챌린지
- WSL
- 자율주행
- turtlebot3
- QT
- ROS2
- GUI
- Visual SLAM
- 강화학습
- 인공지능
- 아두이노
- SLAM
- RTK
- Today
- Total
목록분류 전체보기 (136)
직관적인느낌
로보틱스, 컴퓨터 비전, 3D 데이터 처리 등 다양한 분야에서 데이터를 정확하게 처리하고 분석하기 위해 다양한 알고리즘이 개발되어 왔습니다. 그 중에서도 RANSAC(Random Sample Consensus)과 ICP(Iterative Closest Point)는 데이터 정합 및 모델 추정에서 매우 중요한 역할을 합니다. 이 글에서는 RANSAC과 ICP의 기본 개념, 적용 영역, 장단점 등을 비교하면서, 두 알고리즘의 특성과 활용 방안을 자세히 살펴보겠습니다.RANSAC(Random Sample Consensus)란?RANSAC은 데이터 세트에 노이즈나 외란(아웃라이어)이 다수 포함되어 있을 때, 강건하게 모델 파라미터를 추정하기 위해 고안된 통계적 방법론입니다. 주로 컴퓨터 비전, 로보틱스, 영상 ..
C++에서 객체를 생성하는 방법은 크게 두 가지가 있습니다. 바로 스택(Stack)과 힙(Heap) 메모리를 사용하는 방식인데요. 각각의 방식은 메모리 관리 방식, 성능, 유연성에서 차이를 보입니다. 이번 포스팅에서는 두 방식의 특징과 차이를 알아보고, 어떤 경우에 어떤 방식을 선택해야 할지에 대해 설명드리겠습니다.---1. 스택(Stack) 할당으로 객체 생성스택 할당이란?객체를 스택 메모리에 생성하는 방식입니다.객체가 선언된 함수나 코드 블록의 스코프가 끝나면 자동으로 메모리가 해제됩니다.프로그래머가 메모리를 수동으로 관리할 필요가 없기 때문에 간단하고 안전합니다.장점1. 빠른 메모리 관리: 스택은 고정된 크기로 빠르게 할당 및 해제됩니다.2. 자동 해제: 스코프를 벗어나면 메모리가 자동으로 해제됩니..
1. 자율탐사 (Autonomous Exploration)목적미지의 환경을 탐색하여 로봇이 스스로 지도를 생성하고 환경을 파악합니다.목표는 완전한 맵을 구축하여 로봇이 주변 환경을 이해하고 활용할 수 있도록 하는 것입니다.작동 방식1. 탐사 알고리즘:Frontier-based Exploration: 알려진 영역과 미지의 영역의 경계(프론티어)를 찾아 이동합니다.Sampling-based Exploration: 특정 기준에 따라 후보 지점을 선택하고 탐사 경로를 계획합니다.2. 센서 활용:라이다(LiDAR), 카메라, 초음파 센서 등을 사용하여 주변 환경 정보를 수집합니다.3. SLAM 통합:실시간으로 수집한 데이터를 바탕으로 맵을 생성하고 로봇의 위치를 추정합니다.특징계획된 경로 탐색: 효율적인 경로를 ..
포인트 클라우드 데이터를 처리하면서 CSV 포맷을 사용하고 계셨다면, LAS 또는 LAZ 포맷으로의 전환을 고려해보시는 것이 좋습니다. 이 글에서는 CSV 포맷의 문제점과 LAS/LAZ 포맷의 이점, 그리고 기존 코드를 어떻게 수정해야 하는지에 대해 정리해보겠습니다.CSV 포맷의 문제점CSV는 단순하고 범용적인 텍스트 기반 포맷으로 작은 규모의 데이터 저장에는 적합하지만, 포인트 클라우드와 같은 대용량 3D 공간 데이터를 다룰 때는 여러 가지 한계가 있습니다:파일 크기 증가: 텍스트 기반이기 때문에 동일한 데이터를 바이너리 포맷으로 저장하는 것보다 파일 크기가 훨씬 큽니다. 이는 저장 공간의 비효율적인 사용과 파일 전송 시간 증가로 이어집니다.느린 입출력 속도: 대용량 데이터를 처리할 때 읽기와 쓰기 속..
단순화된 프론티어 기반 탐사는 기존의 프론티어 기반 탐사 알고리즘을 간소화하여 구현의 복잡성을 줄이고, 필요한 계산량을 낮춘 버전입니다. 이는 2D LiDAR와 같은 제한된 센서를 사용하는 로봇에서도 효율적인 자율 탐사를 가능하게 합니다.이번 글에서는 단순화된 프론티어 기반 탐사의 원리, 구현 방법, 그리고 실제 적용 시 고려해야 할 사항에 대해 자세히 알아보겠습니다. 목차프론티어 기반 탐사의 기본 개념단순화된 프론티어 기반 탐사의 원리구현 방법3.1 환경 표현3.2 프론티어 식별3.3 목표 프론티어 선택3.4 경로 계획 및 이동3.5 지도 업데이트알고리즘 흐름도구현 예시 및 코드고려 사항6.1 센서 데이터 처리6.2 실시간성 확보6.3 충돌 방지 및 안전성한계점 및 개선 방안결론참고 문헌1. 프론티어 ..
1. 스마트팜 환경에서의 로봇 자동 매핑1.1 환경 특성규칙적인 구조: 작물 배치가 규칙적이고 통로가 일정한 폭으로 존재합니다.장애물의 예측 가능성: 주요 장애물은 고정되어 있으며, 환경 변화가 적습니다.평탄한 지면: 대부분의 스마트팜은 평탄한 지면으로 구성되어 있어 로봇 이동에 유리합니다.1.2 적용 가능한 자율 탐사 방법1.2.1 단순화된 프론티어 기반 탐사구현 방법:로봇이 현재 위치에서 가장 가까운 미탐사 영역을 찾아 이동합니다.스마트팜의 통로 구조를 활용하여 프론티어 식별을 간소화할 수 있습니다.장점:통로를 따라 이동하므로 탐사 경로가 예측 가능하고 효율적입니다.복잡한 알고리즘 없이도 전체 영역을 빠르게 매핑할 수 있습니다.1.2.2 벽면 추종(Wall Following)구현 방법:로봇이 작물 베..
자율 탐사 알고리즘과 Wall Following의 차이점질문: 자율 탐사 알고리즘과 Wall Following은 어떻게 다른가요?답변: 자율 탐사 알고리즘과 Wall Following은 로봇이 미지의 환경을 탐색하고 지도를 생성하는 데 사용되는 두 가지 다른 접근 방식입니다. 이 둘은 탐색 방법, 활용하는 정보, 효율성 등 여러 면에서 차이가 있습니다. 아래에서 각 방법의 원리와 특징, 그리고 차이점을 자세히 설명하겠습니다.1. Wall Following이란?1.1 원리Wall Following은 로봇이 벽이나 장애물의 표면을 따라 이동하는 간단한 탐색 방법입니다. 주로 다음과 같은 방식을 따릅니다:벽 감지: 로봇은 센서를 이용하여 근처의 벽이나 장애물을 감지합니다.접근 및 유지: 일정한 거리를 유지하면..
자율 탐사 알고리즘의 심층 분석자율 탐사(Autonomous Exploration) 알고리즘은 로봇이 미지의 환경을 스스로 탐색하고 지도를 생성할 수 있도록 하는 핵심 기술입니다. 이러한 알고리즘은 로봇이 효율적으로 환경을 탐색하고, 충돌을 방지하며, 최대한의 정보를 수집할 수 있도록 설계됩니다. 이번 글에서는 자율 탐사 알고리즘의 다양한 종류와 그 동작 원리, 구현 방법 등에 대해 자세히 알아보겠습니다.목차자율 탐사의 필요성과 개요프론티어 기반 탐사2.1 원리2.2 구현 방법2.3 장단점정보 이득 기반 탐사3.1 Next Best View 알고리즘3.2 정보 이론 적용커버리지 패스 플래닝4.1 개념4.2 알고리즘랜덤 탐사 및 기타 방법5.1 랜덤 워크5.2 강화 학습 적용실제 구현 시 고려 사항6.1 ..
## 거버 파일을 만들기 위한 최고의 PCB 설계 프로그램 6가지 PCB 설계에서 중요한 단계 중 하나는 제조를 위해 거버(Gerber) 파일을 생성하는 것입니다. 거버 파일은 기판의 각 레이어와 드릴 홀 위치 등 필요한 정보를 포함해 제조사에 전달되는 표준 포맷이죠. 그렇다면 어떤 PCB 설계 소프트웨어를 사용해야 할까요? 오늘은 초보자부터 전문가까지 누구나 사용할 수 있는 **최고의 PCB 설계 프로그램 6가지**를 소개합니다. 1. KiCAD - **특징**: 무료이면서도 강력한 오픈소스 소프트웨어 - **장점**: 스키매틱 캡처, PCB 설계, 3D 보기 등 다양한 기능을 제공하여 초보자부터 전문가까지 사용 가능 - **링크**: [KiCAD 공식 홈페이지](https://www.kicad.or..
장애물과 부딪히지 않으며 로봇 맵핑하기: 라이다 기반 자동 맵핑 기법로봇이 환경을 탐색하고 맵을 생성하는 과정에서 가장 큰 과제 중 하나는 **장애물 회피(Obstacle Avoidance)**입니다. 특히 로봇 청소기와 같은 자율 이동 로봇의 경우, 주변의 장애물을 피하면서 실시간으로 맵을 만들어야 합니다. 이번 포스팅에서는 2D 라이다(LiDAR)와 엔코더만을 사용해 로봇이 장애물과 충돌하지 않고 안전하게 맵을 생성하는 방법에 대해 설명드리겠습니다.라이다와 엔코더를 이용한 맵핑의 기본 원리로봇이 실내나 실외의 환경을 자동으로 탐색하면서 맵을 만드는 것을 **SLAM (Simultaneous Localization and Mapping)**이라고 합니다. SLAM은 로봇이 자신의 위치를 파악하면서 주변..