no image
[용어 정리]Multi-Modal Neural Radiance Field for Monocular Dense SLAM with a Light-Weight ToF Sensor
Implicit scene representation3차원 공간에서 시각적인 장면을 표현하는 방법 중 하나.주어진 공간 내의 표면을 명시적으로 정의하는 대신, 해당 표면을 설명하는 함수를 사용.일반적인 상황에서 implicit scene representation은 표면이나 객체의 경계가 명확하게 정의되지 않는다.대신, 함수는 특정 좌표가 표면 내부에 있는지 외부에 있는지를 나타내는 값을 반환한다.예를들어 SDF(Signed Distance Function)은 implicit scene reprsentation의 한 형태로 다음과 같이 정의되는데SDF(p) : 점 p에서의 Signed Distance Function 값을 나타낸다.Surface : 3차원 모델의 표면을 나타내는 공간이다.|| p - q ..
2023.10.10
no image
AWS와 카카오톡 채널을 이용하여 학식알리미 챗봇 만들기
제작 배경 우리는 정보가 많은 시대에 살고 있다. 하지만 어딘가에 고립된 정보는 사용자가 쉽게 접근하기 불편하다. 학교 식단의 경우 사이트에 주간별로 게시된다. 그러다보니 매일 학교 식당의 식단 정보를 얻기 위해 인터넷으로 검색하여 홈페이지에 접근하는 불필요한 행위가 반복된다. 따라서 이 프로젝트에서는 정보의 접근성을 높여 사용자의 서비스 만족도를 높이고 식단 정보를 매주 업로드하는 수고로움을 동시에 해결할 방법을 고안하고자 한다. 목표 언제 어디서든 학교 식단과 학교 식당의 운영 정보를 확인할 수 있게 한다. 또한 매주 식단을 업로드하는 수고로움을 덜고자 식단을 한 달에 한 번만 서버에 업로드하여 효율성을 높이고자 한다. 또한 제작한 서비스가 실질적으로 사용이 가능하도록 한다. 개발 내용 사용자의 접근..
2023.06.28
[18] 모바일 베이스와 매니퓰레이터 기능 통합
https://www.youtube.com/watch?v=kgyu9tLndqo&t=66s&ab_channel=RoboticsLAB
2023.05.29
no image
6-DOF Manipulator Using PSO Algorithm
https://www.youtube.com/watch?v=uHHGWq__U_s&ab_channel=RoboticsLAB 매니퓰레이터 DH Table D1, D2는 Dummy Frame이다.
2023.05.29
[17] Navigation Using Nav2
https://youtu.be/cqKsZHMePQ4
2023.05.29
no image
[16] Odometry 구성하기
OdometryOdometry는 각종 센서의 데이터를 사용해서 시간의 경과에 따른 로봇의 위치 변화를 추정하는 것이다. 3차원 공간상에서 로봇의 위치를 추정하긴 어렵다. 눈에 보이지 않는 곳에서는 어느 정도 시각정보를 바탕으로 추정 가능하지만 그렇지 않은 곳에서라면? 사고가 난 곳에 로봇을 투입해야 한다면? 그리고 로봇의 위치를 추정해야 SLAM과 Navigation이 가능해진다. 로봇의 위치를 알지 못하는데 어떤걸 기준으로 로봇을 움직일 수 있을까. 그래서 정확한 Odometry를 구성하는것은 중요하다. 센서에만 의존하여 점점 오차는 누적되기 때문에, 애초에 조금의 오차라도 덜 생기면 좋을 것이다. 특히 전방향 이동이 가능한 Mecanum OmniDirectional 구동 방식은 Odometry 구현이..
2023.05.22
no image
[15] Robot Static Publisher와 Robot Joint Publisher로 TF시각화
로봇 시각화 ROS에서 로봇을 시각화 하는데 쓰이는 대표적인 툴이 Rviz와 Gazebo이다. Rviz는 센서 데이터등을 자유롭게 다루고 시각화 하기에 좋다. Gazebo는 동역학 시뮬레이션을 구성하고 테스트하기에 좋다. 각각의 장단점이 있고 Rviz를 이용한 로봇 시각화를 한다. 로봇 시각화를 위해서 필요한 것은 아래와 같다. 1. 로봇의 URDF파일 단순히 URDF파일만 있으면 TF2에 있는 패키지로 로봇의 각 조인트, 링크구조를 시각화 하고 모델을 띄울 수 있다. 주의할점은 robot_state_publisher는 로봇의 링크로 정의한 파트만 시각화를 해준다. 바퀴같이 Joint 특성으로 지정해준 경우에는 joint_state_publisher로 불러와야 모든 구조가 불러와진다. Launch파일로 ..
2023.05.22
[NAV2] AMCL 파라미터
AMCL Monte Carlo Localization 알고리즘을 기반하여 로봇의 위치 추정 라이다센서의 데이터를 사용하여 로봇의 위치를 추정. 라이다 파티클로 주변의 장애물에 대한 거리 및 방향정보로 위치를 추정. 파티클 필터는 가상 파티클을 만들어 위치 확률 분포를 추정. 현재의 센서 데이터와 비교해서 가장 일치하는 파티클로 로봇의 위치를 추정. AMCL Parameter alpha1: 로봇의 회전 운동 모델에 대한 노이즈. 로봇이 회전할 때 예측 오차. 값이 높을수록 노이즈 큼. alpha2: 로봇의 직진 운동 모델이 대한 노이즈. 로봇이 직진할 때 예측 오차. 값이 높을수록 노이즈 큼. alpha3: 로봇의 회전 운동 모델에 대한 노이즈. 로봇이 회전할 때 측정된 회전량에 대한 오차. 값이 클수록 ..
2023.05.18
ROS
[아두이노] 부팅할 때마다 스케치를 업로드 해줘야 하는 경우 (Ubuntu)
설명이 안 되는 현상 젯슨 나노를 부팅해 줄 때마다 업로드 되어있던 코드가 실행되어야 하는데 그렇지 않는 현상이 발생하였다. /dev의 권한이 문제인지 어떠한 이유로 시리얼 통신이 먹통이 되어버린다. 재부팅을 할 때마다 업로드 하는건 여간 힘들다. 왜냐하면 젯슨나노에 모니터를 연결해야하고 연결했다 하더라도 아두이노 프로그램을 실행하고 클릭을 몇 변 해야하기 때문이다. 해결법 이렇게 원인을 알 수 없을때는 우회하는 방법을 생각해야 하는 것 같다. 해결책을 위해 사용한 것은 arduino-cli이다. CLI환경에서 아두이노 작업을 가능하게 해준다. CLI에서 아두이노에 명령을 내릴 수 있다면 쉘 스크립트로 자동화도 된다는 뜻이며, 더 나아가 부팅을 할 때도 자동실행되게 할 수 있다. arduino-cli를 ..
2023.05.10