분류 전체보기 (8) 썸네일형 리스트형 run carla in Docker 시뮬레이션 실행 2가지 Carla를 처음 접하고 난 뒤 아주 많은 시간을 설치에 공들였다. 언리얼엔진 설치하는데만 어마어마한 시간이 필요하다. 설치가 끝나면 컴파일이 또 어마어마하다. 전체 다 설치가 끝나면 대략 언리얼엔진 용량만 90기가에 육박한다. 패키지로 carla를 단 10초 안에 설치할 수 있다는 사실을 알게된건 언리얼엔진을 설치하는 과정에서 알았다. 그냥 파일 하나만 실행하면 창이 뜨면서 바로 시뮬레이션이 돌아가기 시작한다. 용량 또한 엄청나게 가볍다. 그리고 아주 간편하다. 그럼에도 처음에는 사용하지 않았다. 언리얼엔진의 사용법을 아직 배우지 않아서 언리얼엔진으로 map을 수정하지는 않는다. 그래서 아직은 시뮬레이션 실행하는 용도로만 패키지나 언리얼엔진이나 둘다 사용한다. 굳이 무겁게 언리얼.. readthedocs readthedocs는 documents나 get started에서 많이 나오는 설명서를 만드는 일종의 틀이다. 근데 간단한 설명서를 만드는걸로는 readthedocs의 일부 기능한 사용하는것이며 굳이 이걸 사용할 필요가 없다. 뒤에서 나오는 sphinx나 markdown만 사용해도 목표달성한다. readthedocs는 설명서의 버전을 관리하고 각 버전별로 설명서를 빠르게 전환해서 볼 수 있게 만들어둔 기능에 초점이 맞쳐져있다. 그래서 readthedocs는 다양한 소스버전관리 프로그램들에서 사용이 가능하고 이를 통해서 버전을 관리한다. 일단 기본적으로 설명서가 변경된다는 것은 사용방법이 달라졌다는 의미가 된다는 것에 주목해야한다. 하나의 프로그램은 그 기능이 바뀌고 없어지며 변화하고 추가되면서 그 사용.. carla ros bridge ros를 이용해서 시뮬레이션을 조작할 수 있다. ros는 용도가 다양하고 데이터를 주고 받는 어딘가에서 사용할 수 있도록 만들어져있다. 단순 pc간이나 pc에서 임베디드 단말 등 말이다. ros의 장점은 나열하면 너무 많아서 피곤할 정도로 다양한 곳에서 이용될 수 있다. carla에서도 ros를 통해서 데이터 조작이 가능하다. 노드는 하나의 객체가 되고 객체들간 서로 다양한 방식으로 데이터를 전송한다. 노드는 결국 메세지라는 데이터를 주고 받는데 이러한 데이터를 어떻게 주고 받을지에 대해 토픽에 메세지를 모아두고 publish subscribe service 등으로 정의해두었다. node는 중계기같은 아니면 두 친구사이에서 말을 전달 해주는 친구같은 또는 우체부같은 느낌이다. 그래서 carla에서는 많은.. carla 지도 생성 with roadrunner carla simulator를 빌드하고나면 기본적으로 주어지는 아주 좋은 지도들이 있다. default값으로 Town03을 이용하게 되지만 다른 지도를 불러들여서 사용도 가능하다. 그럼에도 나는 개인적으로 지도를 만들어서 테스트 케이스에 적용하려고 한다. 수많은 교차 환경을 다양하게 만들어두고 각 지점을 통과하는 특별하고도 조금은 복잡한 시스템에서 테스트를 하고 싶다. 그래서 단계별로 난이도별로 지도를 생성해두고 테스트를 거치려 한다. carla에서는 mathworks가 인수한 roadrunner를 통해서 지도를 생성하는 방법을 가이드하고 있다. 프로그램을 통해서 지도를 생성하고 export하고 carla에서 다시 import하는 방법 말이다. roadrunner는 지도를 생성하는데 너무나도 쉬운 조작으.. docker컨테이너에서 debug with webstorm IDE 도커는 사랑이며 희망이며 모든 변화에 시작이다. 그만큼 도커의 개념을 좋아한다. 도커의 장점은 따로 도카에 대해서 포스팅하겠지만 내가 원하는 상태를 이미지로 만들어두고 필요할때고는 언제든지 불러와서 재현할 수 있다는 것이다. dockerfile을 통해서 내가 원하는 구성과 계정, 프로그램, workdirectory, 네트워크 등의 세밀한 부분을 구성이 가능하다. 심지어 이러한 이미지들의 상호작용하는 구성을 한번에 연동시켜두어 docker compose로 바로 재현이 가능하다는 것이다. 그리고 쿠버네티스 수준의 디테일함은 부족하지만 그래도 충분히 좋은 오케스트레이션으로 Swarm이 존재한다. 그리고 개인적으로 좋아하는 부분은 호스트pc가 지저분해지지 않는다는 것이다. 개발에 필요한 다양한 라이브러리를 하나.. carla 0.9.12 매번 새롭게 발표되는 carla simulation (;; 왜 국내에 carla simulator쓰는 사람들은 블로그를 안하시는지... 국내는 정보의 씨가 말라서 없는듯..;;) - Large Maps: Perform simulations on huge maps - Physics Determinism and Improvements: Full determinism, wheel improvements, and telemetry views - Unreal Engine 4.26: New upgrade brings easy off-screen rendering and deprecation of OpenGL - Python Client Library: New options to install the client l.. 모카 실행 반복하면 테스트 실패 API 기능 개발을 진행하는데 특정 URI로 요청했을때 처음 테스트에는 정상적으로 된다. 그러나 코드 테스트 진행 후 재실행하게 되면 원하던 결과가 나오지 않는다. 당연한 결과이다. 처음 POST로 특정데이터를 요청하여 추가가 되었다면 해당 데이터에 대한 response는 status 201로 오게 설계했을터이다. 그런데 그걸 같은 조건으로 요청하면 이미 데이터가 존재하기때문에 response status는 409로 응답을 하게 설계를 했을 것이다. 간단하게 생각하면 테스트 데이터를 추가하고 다시 추가하면 당연히 중복으로 응답이 올것이다. 이를 해결하기 위해서 다양한 방법을 사용할 수 있다. 그 중 하나는 Mocha 기능중에 HOOK를 통해서 처리하는 방법이 있다. beforeEach, afterEach.. webstorm mocha with typescript mocha 사용에서 타입스크립트를 사용하니 ts파일이 아니라 complie 된 js를 찾아야하는데 이러면 ts 파일 수정에도 watch가 안된다. ts-node는 이러한 환경에서 아주 유용하다. mocha는 --require 옵션으로 ts-node 모듈 호출이 가능한데 --require ts-node/register src/*spec.ts --watch --watch-files src/*spec.ts 옵션으로 ts파일 수정/저장시 바로 mocha 재실행 한다. 설정은 이렇게 하면 된다. 끝. 이전 1 다음