3 분 소요

우분투를 또다시? 설치하다!|

대신 해당

예선 1차 관련 미팅

이전에 있었던 회의내용들을 브리핑했다.

그리고 현재 실제 차량에서 autoware를 제어하고 있는 내용에 대해 현상황을 공유받았다.

WINWORD_hf2hqifFYV

WINWORD_J4LAVKYWzK

어찌저찌 해서 다시 우분투를 한번더 설치했다.

일단 우분투 설치후 한글키 입력을 먹히게 하려고 해당 링크의 블로그를 참고했다.

sudo apt update
sudo apt upgrade ibus-hangul
reboot

위와 같이 업데이트하고 재부팅을 하니 기존에 인식되었던 듀얼모니터가 갑자기 인식되지 않는 이슈가 발생했다.

따라서 해당 링크를 참고했다.

1.화면에 맞지 않는 해상도, 듀얼모니터 인식이 안되는 경우

아래 솔루션을 참고했다.

# 사용가능한 드라이버 버전 확인
ubuntu-drivers devices 
# 위의 결과중에서 원하는 버전 다운 (보통 가장 높은 숫자 또는 두번째로 높은 숫자가 좋음)
sudo apt install nvidia-driver-535  


sudo apt update
sudo apt upgrade
# 재부팅까지 완료 하면 문제 해결됨.
sudo reboot 

# 만약 다른 driver version을 깔고싶을 때
sudo apt-get remove --purge nvidia-*      # 기존 설치된거 삭제
sudo apt-get autoremove           # 깨끗하게 삭제
sudo apt-get update               # 업데이트 후, 맨 위부터 다시 진행

Result>

jacksmith@jacksmith-desktop:~$ ubuntu-drivers devices
== /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 ==
modalias : pci:v000010DEd00001E84sv000010DEsd0000139Fbc03sc00i00
vendor   : NVIDIA Corporation
model    : TU104 [GeForce RTX 2070 SUPER]
driver   : nvidia-driver-535-server - distro non-free
driver   : nvidia-driver-535 - distro non-free recommended
driver   : nvidia-driver-545 - distro non-free
driver   : nvidia-driver-450-server - distro non-free
driver   : nvidia-driver-470-server - distro non-free
driver   : nvidia-driver-535-open - distro non-free
driver   : nvidia-driver-535-server-open - distro non-free
driver   : nvidia-driver-470 - distro non-free
driver   : nvidia-driver-545-open - distro non-free
driver   : xserver-xorg-video-nouveau - distro free builtin

재부팅 이후 다시 듀얼모니티로 돌아왔다.

2.한국어가 입력되지 않은 경우

=한국어 자판 및 언어설정이 되어 있지 않은 경우를 뜻한다.

# 한국어 ibus 키보드 프로그램 설치
sudo apt install ibus-hangul      
# 재부팅
sudo reboot                       
# 재부팅 후
ibus-setup           

# ibus-setup 창이 뜨면,
# setup창에서 해야할 것
# 1) Input Method에 korean-hangul 추가
# 2) 리스트에서 korean > Preferences 클릭
# 3) Toggle Key는 모두 삭제
# 4) Toggle Key를 눌러서 원하는 단축키 설정 후 ADD (보통 ALT-R = 한영키 자리 키보드 클릭)
# 5) 완료. 창종료 후,

# 또 한번 재부팅
sudo reboot        

세번째 재부팅후,

Settings > Keyboard > Input Sources에서 Korean>Korean(Hangul)을 선택, 이후 기존에 있던 English는 삭제.

(참고로 Region & Language는 건드릴 필요없음. 다른 블로그에서는 건드리라 나와있는데 최근에 GUI상 설정이 Keyboard로 옮겨갔음)


Autoware를 재설치하다.

(여기서는 Kipia트랙을 정상적으로 시뮬레이션 하는 환경스택을 구축하는 것을 목표로 한다)

1.쿠다 설치하기(저자는 555버전을 설치했음)

※설치 명령어가 있는 링크(here)

# 알아서 자동으로 호환성을 고려하여 버전에 맞는 쿠다를 설치해주는 명령어
sudo apt-get install -y cuda-drivers

2.도커 설치하기

# 1.우분투 시스템 패키지 업데이트
sudo apt-get update

# 2.필요한 패키지 설치
sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

# 3.Docker의 공식 GPG키 추가
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

# 4.Docker의 공식 apt저장소를 추가
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

# 5.시스템 패키지 업데이트
sudo apt-get update

# 6.Docker 설치
sudo apt-get install docker-ce docker-ce-cli containerd.io
  1. Docker 설치 확인
# 7-1)도커 실행상태 확인
sudo systemctl status docker

# 7-2)도커 실행
sudo docker run hello-world
  1. Docker에 계정권한 부여하기
# 도커를 사용하는데 있어 root권한이 필요하다는 comment가 뜬다면, docker에 계정권한을 부여해줄 필요가 있다.
# 8-1) 도커 관련 계정 권한 부여
sudo usermod -aG docker $USER

# 8-2) 도커 서비스 재시작
sudo service docker restart

# 8-3) 도커 서비스 상태 확인
sudo service docker status

3.autoware 레포지토리 다운받기

기존에는 당연히 autoware.git의 URL에 git clone을 때렸으나, 팀원들간의 버전 호환성을 고려하여 다음과 같이 (MS 에서 제공하는)파일공유서버[SharePoint]에 있는 고유한 버전을 다운받는다.

POWERPNT_enZ3HcgIW6

(위에서 플랫폼에 해당하는 autoware와 그 플랫폼에서 가져온 맵데이터인 Kiapi를 다운로드 받는다.)

다운로드 받은 파일들을 가지고 아래와 같이 구조를 설계해준다.

POWERPNT_eGrJIeTuB3

위 그림에서 autoware를 열고 들어가면 다음과 같은 디렉토리가 존재할 것이다.

1.ansible

2.build

3.install

4.docker

등이 있다.

여기서 build 디렉토리와 install 디렉토리를 삭제해준다. 나중에 빌드를 통해 만들어지는 build 디렉토리와 install 디렉토리를 사용할 예정이다.

4.쿠다 컨테이너 툴킷 설치하기

# 1.NVIDIA Container Toolkit GPG 키 다운로드 및 설치:
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg

# 2.NVIDIA Container Toolkit 패키지 소스 리스트 설정:
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

# 3.엔비디아 컨테이너 툴킷의 실험용 저장소를 활성화하기
sed -i -e '/experimental/ s/^#//g' /etc/apt/sources.list.d/nvidia-container-toolkit.list

# 4.패키지 업데이트하기
sudo apt-get update

# 5.엔비디아 컨테이너 툴킷 설치하기
sudo apt-get install -y nvidia-container-toolkit

# 6.도커 재시작하기
sudo systemctl restart docker

5.본격적인 설치 작업하기

# 1.autoware로 이동
jacksmith@jacksmith-desktop:~/playground/auto-workspace$ cd autoware

# 2.의존성 설치하기
jacksmith@jacksmith-desktop:~/playground/auto-workspace/autoware$ sudo install python-rosdep
jacksmith@jacksmith-desktop:~/playground/auto-workspace/autoware$ ./setup-dev-env.sh -y --download-artifacts docker
  1. SharePoint에서 autoware-humble.24.01.tar파일 다운로드 받기

brave_QwJzuWx0g3

# 4.tar파일로부터 도커 이미지 로드하기
docker load -i /home/jacksmith/Downloads/autoware-humble-24.01.tar

# 5.도커 이미지 리스트 확인하기, 제대로 이미지가 등록되었는지 확인하자
docker images 

# 6.도커 이미지 실행하기
docker run -i -t 2c78ac889f9a
# 의존성 업데이트하기
jacksmith@jacksmith-desktop:~/playground/auto-workspace/autoware$ sudo apt update

jacksmith@jacksmith-desktop:~/playground/auto-workspace/autoware$ rosdep update

jacksmith@jacksmith-desktop:~/playground/auto-workspace/autoware$ rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO

#워크스페이스 빌드하기
jacksmith@jacksmith-desktop:~/playground/auto-workspace/autoware$ colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release

비로소 아래 명령어를 통해 손쉽게 autoware를 제어할 수 있게 되었다.

# 1. 로커 컨테이너 실행
rocker --network=host -e RMW_IMPLEMENTATION=rmw_cyclonedds_cpp -e \
    LIBGL_ALWAYS_SOFTWARE=1 --x11 --nvidia --volume \
    /home/jacksmith/playground/auto-workspace/ -- 2c78ac889f9a

# 2.마운트 경로로 이동
cd /home/jacksmith/playground/auto-workspace/autoware

# 3.셋업파일 실행
source install/setup.bash

# 4. ros2로 autoware Rviz 실행하기
ros2 launch autoware_launch planning_simulator.launch.xml \
    map_path:=/home/jacksmith/playground/auto-workspace/map/Kiapi \
    vehicle_model:=sample_vehicle sensor_model:=sample_sensor_kit

언어:

카테고리:

업데이트:

댓글남기기