KDev_Cave

이 포스트는 전문적인 탐구를 즐기는 방문자 분들을 위한 안내 자료로서, 차량에 적용된 운전자 보조 시스템(Driver Assistance System)에 사용되는 용어들을 다룹니다. 시간과 기술 발전, 차량 제조사에 따라 여기에 소개된 용어들은 다르게 불릴 수 있습니다. 신차 / 중고차 구입 혹은 관련 기술에 관심이 있는 분들에게 약간의 길잡이가 되었으면 좋겠습니다. 1. 용어의 정의 : 자율주행, 반자율주행, 운전자보조시스템가장 먼저 한 가지 화두를 던지겠습니다. 자율주행은 구현되었는가? 네 연구소에는 있고, 구현되었다 생각합니다. 그러나 아직 연구소 문을 넘어 세상 밖 소비자에게 이르지는 못했습니다. 테슬라 FSD를 보고도 그렇게 말할 수 있는가? 네 그렇습니다. 아직 모든 자동차 업계, 국가,..
발단헤드라이트 중고품을 찾다 보니 차량에 사용되는 SCC 레이더 와 차로이탈방지 카메라를 대략 한 30이면 구할 수 있고, 마침 그 흔치 않은 디젤 중고 계기판이 매물로 올라왔다는 사실을 알게 되었습니다. 계산해 보니 카메라와 레이더를 + 기타 부자재까지 50에서 60 사이면 차량에 차로이탈방지를 달 수 있겠다는 생각이 들었습니다. 이후 이렇게 조금씩 않고 작업을 시작하게 됐습니다. 이 작업은 정말 감사하기도 훼사원 님께서 이미 이 고난의 길을 먼저 걸어주셔서 저도 약간 수월하게 진행할 수 있었습니다. 일단 어떤 작업을 할 것인지, 그리고 그 작업을 어떻게 수행 할 것인지, 작업 절차는 어떻게 되는지, 그 작업 절차에서 필요한 공부와 예상되는 문제점, 그리고 필요한 물품이 뭐가 있는지에 대한 계획을 모..
· Projects
introductionCAN통신을 졸업연구 목적으로 경험하게 되어 이를 공유하고자 합니다. CAN통신은 h/w 셋업이 조금 번거로울 뿐 일단 한 번 준비가 되면 이더넷만큼이나 가벼우면서도 다른 문제와 씨름할 여지가 덜하다는게 큰 장점인듯합니다. 이 글에서는 차량의 CAN bus를 통해 전달되는 데이터를 수신 후 이를 의미있는 결과로 가공해내기 위해 ros에 연동하는것까지 진행해보도록 하겠습니다.C-CAN, B-CAN, M-CAN다른 곳에서도 잘 설명되어있겠지만, 차량 전장에서 통신할 정보가 많아지면서 can bus를 사용 목적에 따라 분리하기 시작했습니다. 차량 구동에 필요한 핵심 데이터(냉각수 온도, 흡기 유량, 구동토크, 등등...) 은 C-CAN(Chassis-CAN), 차량 구동에 큰 영향을 미치..
· Projects
Prerequisite24. 04.30. 라즈베리파이4B+, MCP2515(with VD1050), 테스트 장비 : PEAK Systems IPEH-004022(F/W Ver. 3.2.0 Driver Ver.4.4.2), PCAN-View 사용Linux st 6.6.20+rpt-rpi-v8 #1 SMP PREEMPT Debian 1:6.6.20-1+rpt1 (2024-03-07) aarch64 GNU/Linux*SPI 통신을 지원하는 환경이라면 모두 비슷한 방식으로 동작할 것으로 예상되나, 커널 버전과 보드에 따라 다를 수 있습니다.Introduction차량 CAN 데이터를 얻어오기 위해서는 CAN transceiver가 필요합니다. 요즘은 차량에 flexRay CAN-FD 등등을 사용하여, 전용 tra..
· Review
인두를 사용하다보면 이동환경에서 인두를 사용했을 때 전원을 어떻게 공급할 것이가에 대한 문제에 직면하게 됩니다. 그렇다면 우리는 대략 3가지 옵션을 사용할 수 있습니다. 1. 220V 파워뱅크 구입 --> 너무나 무겁고 파워뱅크를 구입할 만큼 제가 파워뱅크를 사용할 일이 없습니다. 2. 가스 형식의 인두 사용 --> 온도가 충분해서 바람이 부는 야외에서도 온도 손실 없이 사용할 수 있다는 장점이 있으나, 인두를 야외에서 사용하기 위해 인두를 또 구입해야 하고, 온도도 흄이 나올정도로 높이 가열되는데다, 무엇보다 가스를 주기적으로 재충전해줘야합니다. 3. 알리익스프레스에서 판매하는 PD 인두기 구입 --> 가장 깔끔하고 저렴한 솔루션 중 하나지만.... 제가 서브로 사용하는 더 투박한 아래의 T12 인두가..
증상 git clone 혹은 git push 하는동안 별의 별 이유로 업/다운로드에 실패하는데, 이 때 패킷 디코딩 혹은 EOF(End Of File) 발생. 이 에러가 발생하기 전에 속도가 급속도로 떨어짐 해결방법 1. 통신 속도가 원활한지 먼저 체크해야합니다. wifi 환경 / (저의 경우 raspberry 환경에서)에서 이러한 문제가 발생할 가능성이 높으며, 위와 같은 에러가 발생하기 전에 업/다운로드 속도가 현저하게 떨어지다 에러가 발생합니다. 속도가 갑자기 떨어지다가 에러가 발생하는 경우 네트워크 연결이 보다 안정적으로 보장되어야 합니다. 2. 업로드하는 개별 파일의 크기가 큰 경우 등등 이 있는데, 이에 대한 내용은 다음을 참조하시기 바랍니다: [git] RPC failed; curl 92 에..
CSI 카메라는 그냥 웹캠과는 조금 다르게 접근해야 합니다. opencv를 처음 접하실 때 CSI카메라를 사용하는 경우는 대개 MIPI-CSI 커넥터가 있는 Jetson 시리즈 혹은 라즈베리파이와 같은 SBC(Single Board Computer)를 통해 접근하는 경우가 대부분일 것입니다. 그리고 이렇게 접근하시는 분들 중에 CSI가 왜 안돼지? 라고 의문을 품는 경우가 많을텐데요. import cv2 #OpenCV를 사용하기위해 import해줍니다. def main(): camera = cv2.VideoCapture(-1) #카메라를 비디오 입력으로 사용. -1은 기본설정이라는 뜻 camera.set(3,640) #띄울 동영상의 가로사이즈 640픽셀 camera.set(4,480) #세로사이즈 480..
Introduction 이미지 처리 파이프라인을 구축하다보면 성능에 대한 문제에 아주 많이 부딪힙니다. 영상처리라는 작업 자체가 리소스를 많이 활용하다보니, 이를 어떻게 해야 준수한 성능을 내게 만들 수 있을지에 대해 고민을 하게 됩니다. 이 고민에 대한 해결책의 방향은 크게 두 가지가 있습니다. 주어진 자원을 최대한으로 활용하거나, 주어진 자원 자체를 최적화 시키는 것입니다. 여기에서 주어진 자원자체를 최적화 시킨다는 것은 하드웨어 자체에 내장 가속 칩이 존재해서 그 작업을 해당 칩에 위임하는 것을 말합니다. 가장 쉽게 접할수 있는 예가 GPU 혹은 CPU/GPU 내부에 통합된 비디오 가속 칩이 있겠습니다. 난 죽어도 파이썬을 써야겠다. 가장 접근하기 쉬운 것은 자원 자체를 최적화 하는 것입니다. 병렬..
Introduction 젯슨 나노가 출시된지 너무나 오랜 시간이 지났고, 이제는 단종에 이르러 Jetson Orin Nano를 사용해야 하는 상황이지만, 너무나 매력적인 가격에 이를 계속 사용하고자 하는 사람이 많습니다. 저도 그 중 하나로서, Jetson Nano를 23년 현재에도 유효하게 사용할 수 있도록 하기 위한 몇 가지 작업 내용을 공유하고자 합니다. Deprecated Bionic Beaver. Jetson Nano의 하드웨어를 활용하기 위한 드라이버 키트인 JetPack은 우분투 18.04를 기반으로 한 4.6.1 을 마지막으로 더이상 릴리즈되고 있지 않습니다. 따라서 우리는 yolov8 등의 딥러닝 패키지를 사용하기 위한 사전 작업을 몇 가지 해야 합니다. 조금 더 원활한 사용을 위해 젯슨..
· Review
사과농장에 스며들다. 요즘은 펩시 제로 라임 음료에 빠져 있습니다. 하루에 500ml~ 1L정도를 먹으니, 상당히 많이 먹는 편입니다. 사실 355ml 뚱캔 2-3개면 우습게 1L는 마실 수 있을 것만 같습니다. 아무리 아스파탐이 위험물질이니 뭐니 해도, 당장 말초신경 끝을 건드리는 그 청량함을 감히 거부하기란 어렵습니다. 사실 제가 이 음료에 이렇게 중독적이게 된 것은, 운명처럼 한눈에 반해서 이루어진 것이 아닙니다. 한 두 번 맛을 보고, 이후 그 양이 늘어나며 일상에 스며든 것이죠. 그리고, 애플 제품이 제 라이프스타일에 들어온 것도 비슷한 맥락입니다. 천천히 스며들어 어느새 제 삶의 일부를 잠식하게 되었습니다. 물론 저를 비롯한 대부분의 20대 친구들은 트렌드에 따라 아이폰을 구입하고, 아이패드를..
Introduction 업무에 있어 AI 가속이 필요한 작업을 해야 하는 상황이 생겨, 젯슨 나노를 구입했습니다. 현재 시점에서 젯슨 나노 제품은 단종이 되었으며, 대체재로 Jetson Orin Nano가 판매되고 있으나, 가격이 일반 PC에 버금가게 비싸다 보니 선뜻 접근이 어렵습니다. 그렇다보니 출시된지 한참 되었음에도 가격이 오히려 올라가는 이 이상한 보드를 울며 겨자먹기로 사용할 수 밖에 없습니다. 여전히 쓸만한가? 결론부터 말씀드리자면, 그렇습니다. 개인적으로 구입 후 추론작업 진행해본 결과, yolov8, yolov8n weight,640*480 입력 기준 0.06s~0.05s(15fps~20fps)의 성능을 보입니다. 가격이 너무 치사하긴 하지만, 이정도 성능이 나오는 제품은 이 가격대에 없..
· Projects
What is USB? PC의 구조를 조금 이해해 보겠습니다. 조금 극단적으로 말해서 ,아두이노의 Atmega328P가 더 커지고, 기능에 따라 분화되면 우리는 이걸 PC라고 부를 수 있다. SoC 내부의 요소들이 특정 기능에 따라 분화되면 그걸 PC라고도 부를 수 있는 것입니다. 아두이노를 사용해봤다면, 여기에서 주변 기기(peripheral)과 통신할 수 있는 다양한 방법들(TTL, I2C, RS2323/422,485, SPI, PWM) 등이 있다는 것을 알 수 있을 것입니다. MCU 레벨에서는 GPIO를 통해 이런 방식으로 통신한다 하면, PC에서는 이런 역할을 PCI-E 레인을 통해서 수행한다고도 볼 수 있습니다. PCI-E 레인을 통해서 PC는 주변 기기와 통신할 수 있습니다. USB, 그래픽카..
Whiteknight
'분류 전체보기' 카테고리의 글 목록