본문 바로가기

트렌드 한눈에 보기

(210)
STM "No Rule to make Target" 오류 해결 방법 "No Rule to make target" error (st.com) "No Rule to make target" error community.st.com After importing a project, how fix *** No rule to make target `all'. error (st.com) After importing a project, how fix *** No rule to make target `all'. error community.st.com STM에서는 참 다양한 문제들이 발생하고, 모르는 사이에 조금씩 조금씩 해결되곤 한다. 왜 해결되는지, 왜 문제가 발생한 것인지 알지 못하고 넘어가게 되니 답답할 따름이다. 한참 삽질을 한 오류 중 하나는 위 글들과 같이 디버깅을 하고자 했..
custom dataset을 활용한 CNN, LSTM 튜토리얼 인터넷에 검색해보면, CNN과 LSTM 튜토리얼은 잔뜩 나온다. 하지만, 죄다 기존의 데이터셋을 활용해서 진행하는 튜토리얼들이다. CNN과 LSTM을 쓸 줄 알게 된다는 점에서 그런 튜토리얼들이 나쁜 것은 아니지만, 결국 실제 사용해보기 위해서는 데이터셋을 구축하는 방법부터 진행해야 한다. 시계열 예측 | TensorFlow Core: 기존 데이터셋을 활용하는 튜토리얼 시계열 예측 | TensorFlow Core 시계열 예측 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 이 튜토리얼에서는 TensorFlow를 사용한 시계열 예측을 소개합니다. Convolutional/Recurrent Neural Network(C www.tensorflow.org custom datase..
MIT, Harry Asada, "Identification Estimation and Learning" 강의 정리 4: Random Variables and Random Processes 4강은 Random Variables에 대한 내용이다. 그간 여실히 들어온 기초 내용이지만, 역시 한번도 제대로 이해한 적이 없다고 생각한다. 하지만 필터링이 무엇인가? 노이즈를 없앤다는 것이다. 여기서 노이즈는 random variables로 정의된다. 뭘 없애야 하는지 명확히 이해해야만 하는 것이다.
MIT, Harry Asada, "Identification Estimation and Learning" 강의 정리 3: Recursive Least Squares with Forgetting Factor Recursive란, 실시간으로 데이터가 들어오는 상황을 의미한다. Linear Regression이라고 하면, 주어진 데이터셋을 최대한으로 설명하는 지표들을 뽑아내는 것을 상상하기 쉬운데, 실제 공학에서는 실시간으로 데이터를 처리해야 하는 때가 수두룩하다. 그럴 때 쓰이는 칼만 필터나, complementary filter나, 모두 recursive algorithm으로 분류가 되고, 특히 칼만 필터는 Least Squares에 바탕을 두고 있음이 지난 강의를 통해 드러났다. 중요하기 짝이 없는 내용이지만, 지난 강의에 비해 집중력이 많이 떨어졌다. 그래도 들었다는 사실을 정리하기 위해 내용을 기록해본다.
MIT, Harry Asada, "Identification Estimation and Learning" 강의 정리 1: Least Squares 대학원 교수님의 지도교수로 여러 일화를 숱하게 들었던 Harry Asada 교수의 영상을 우연히 유튜브에서 찾게 되었다. 제어 관련 이론들을 설명하고 있는 강의를 코로나 기간에 줌으로 찍은 김에 유튜브에 올린 것이다. "와 아직도 현역으로 이론 강의를 하는구나" 싶다가도, 현역 이론강의를 하지 않는 사람은 우리 교수님밖에 없는 것 같아 조금 아쉬웠다. 아무튼, 내게 필요한 강의였기에 듣고 내용을 정리해보기로 했다. 사실 Kalman Filter에 대한 내용을 집중적으로 들어야하지만, 일단 관심이 가는 강좌들을 찬찬히 둘러보는 것도 괜찮은 전략같다. 주말에는 얼마든지 둘러봐도 좋지. 처음에는 찬찬히 둘러봐야지~ 싶었는데, 난데없이 본 목적인 Kalman Filter를 마주치고 말았다. 야생의 전설의 포켓몬..
유저 테스트를 하면서 느끼는 점 마냥 쉬기는 싫고, 일기라도 써야지 하면서 컴퓨터를 켰지만, 너무 피곤하다. 오늘 있었던 유저 테스트 때문이다. 말이 좋아 유저 테스트이지, 개발한 장비를 착용하고 일할 때 어느 정도로 보조 효과를 체감할 수 있는지 측정하는 것이 주 업무였다. 측정에 사용한 장비는 IMU와 심박 센서였다. IMU로 움직임을 측정하여 신체에 어느 정도의 부하가 걸리는지 계산하고, 심박 센서로 어느 정도의 대사량이 사용되는지 확인하는 것이다. 사실 대학원생 때부터 여실히 진행했던 실험이라, 별 특별할 것은 없다. 그럼에도 엄청나게 피곤한 것이다. 왜 그럴까? 오늘의 실험은 찾아가는 서비스였다. 안산의 한 물류센터까지 이동해서는, 작업자들에게 센서를 착용시키고 평소의 업무를 하도록 했다. 사실 작업자들이 이번 실험을 요청한 ..
실전에서 사용하는 딥러닝 - : IMU 활용 속도 추정 (내 딥러닝이 망한 이유) 딥러닝 딥러닝 말로만 들었지, 실생활에서 사용되는 것을 본 적은 거의 없다. 물론 알게모르게 많이들 쓰이고 있을 테지만, 내가 직접 사용하는 일이 없었다는 뜻이다. 그러다가 chatGPT가 나와 내 인식을 바꿔줬다. "딥러닝 참 유용하구나!" 현재로서는 구글보다도 chatGPT에 물어보는 일이 더 많아졌다. 물론 틀린 답을 얻는 비율도 그만큼 늘어났지만... "뭐가 됐든 딥러닝을 써보긴 해야겠다" 싶어 IMU를 활용한 속도 추정에 딥러닝을 활용해보기로 했다. 위 논문은 하나의 IMU를 활용해서 사람의 보행 속도를 추정하는 방법에 관한 것이다. IMU는 가속도와 각속도를 측정하는 센서이다. 지자기 센서가 (나침반 역할) 추가로 들어있지만, 금속이 안들어가는 곳이 없는 우리 생활에서 지자기 센서는 오차를 낳..
STM 보드 고군분투기 - 3. 산업에서 사용하는 STM STM 보드 고군분투기 - 2. STM Cube IDE 가 복잡한 이유 (tistory.com) STM 보드 고군분투기 - 2. STM Cube IDE 가 복잡한 이유 STM을 나에게 추천한 박사님의 감언이설 중 하나는 "실시간으로 디버깅이 가능하다" 라는 것이었다. 음, 아두이노로도 시리얼 모니터로 띄우면 실시간 리딩이 가능하지 않나 - 하는 생각은 당시 mech-literacy.tistory.com STM을 사용하려는 시도를 한 지 1년이 지났다. 그 동안 마스터했냐 하면, 손도 대지 않고 있었다. 그러다가 현업에서 STM을 사용하게 되었다. 뭔가 감개무량하면서도 걱정이 되었던 것은 벌써 몇 주 전이고, 한참 헤매기를 곧바로 몇 주간 하고 있다. 처음 STM을 활용한 업무에 투입되면서 받은 튜토리얼은..
RoNIN: Robust Neural Inertial Navigation, IMU 사용기 명령어: python ronin_lstm_tcn.py test --type tcn --test_list /home/jewoo/WIRobotics/ronin/lists/list_test_unseen.txt --data_dir /media/jewoo/2E5A2A245A29E973/Database/RoNIN/unseen_subjects_test_set/ --out_dir /home/jewoo/WIRobotics/ronin/output/ --model_path /home/jewoo/WIRobotics/ronin/model/ronin_tcn/checkpoints/ronin_tcn_checkpoint.pt 드럽게 복잡하네 명령어 argument 마다 경로를 넣으라고 되어 있던데, 경로가 파일명인지, 파일이 있는 폴..
두 편으로 이해하는 칼만 필터의 역사와 원리 - [원리] 칼만 필터를 이해하기 위해서는 우선 Recurrent filter에 대해 알아야 한다. 한국어로는 재귀 필터라고 한다. 필터를 공부함에 있어 용어가 헷갈리는 순간이 엄청 많은데, 영어로 보아도 한국어로 보아도 헷갈리는 것이 당연하니, 일단은 익숙해지는 것에 초점을 맞추고 넘어가자. Recurrent Filter를 알아야 한다면, 그에 상대되는 필터의 종류도 알아야 한다. Batch Filter라는 것이다. 단순히 말해서, Batch filter는 주어진 전체 데이터를 활용하는 필터를 의미하고, Recurrent Filter는 최근에 입력된 데이터만을 활용하는 필터를 의미한다. 평균값을 구한다고 했을 때, Recurrent Filter와 Batch Filter는 아래와 같이 달라진다. Recurrent f..