수행기록퀘스트5
Quest 5 수행결과를 제출합니다.
2022. 9. 25 (일) 23:44
최종수정 2022. 9. 26 (월) 00:00
Godeureum
조회 529
좋아요 1
스크랩 1
댓글 0
1. 학습 모델을 C언어로 변환하는 툴의 버전차이로 인한 문제의 해결
Anaconda.Navigator에서 Python 3.6과 Keras 2.2.4을 기반으로하는 환경을 빌드하고 해당환경을 베이스로 하여 Pycharm을 실행합니다.
2. Keras 기반의 새로운 Neural Network Model 을 생성합니다.
Quest4에서 수집한 데이터를 HAR의 하위 폴더인 Log_data에 넣고, shell에서
> python RunMe.py --dataDir=Log_data 명령를 통하여 모델을 생성합니다.
이때, 여러 모듈들이 설치되어 있지 않아서 ">pip install pandas" 등의 명령을 통하여 필요한 모듈을 설치해 줍니다.
이때 설치한 모듈은 pandas, matplotlib, tqdm, sklearn 등입니다.
Accuracy가 각각 Jogging : 94.72 %, Stationary: 98.24 %, Stairs: 75.85 %, Walking:82.16 %로 나왔습니다.
결과 모델인 har_ign모델은 HAR하위 폴더인 results에 생성됩니다.
3. 생성된 har_ign 모델을 STM32CubeMX에서 C언어 코드로 생성합니다.
이때, Build 문제가 발생하지 않도록 X-CUBE_AI softwarepack의버전을 5.0.0으로 설정하고, har_ign 모델을 import 한 후 GENERATE CODE 버튼을 눌러 코드를 생성합니다.
4. 빈 프로젝트에서 생성된 코드 파일을 FP-AI-SENSING1 프로젝트로 옮겨 Build하여 Binary code를 생성합니다.
이때, 옮겨지는 코드 파일은 har_ign.c, har_ign.h, har_ign_data.c, har_ign_data.h 등 4개 파일이며, FP-AI-SENSING1 프로젝트의 기존의 파일을 대체합니다.
생성된4개의 파일은 X-CUBE-AI\App 폴더에 존재하며, 복사하여 FP-AI-SENSING1 프로젝트의 Src폴더dhk, Inc 폴더의 C코드와 H코드 형식이 각 코드를 대체합니다.
4개의파일을 복사 대체한 이후 STM32CubeIDE에서 FP-AI-SENSING1 프로젝트를 로딩하여 Build하여 Binary 코드를 생성합니다.
5. Binary code를 보드에 라이팅합니다.
PC와 B-L475E-IOT01A 보드를 USB로 ST-link에 연결한 후, SENSING1\STM32CubeIDE폴더의 CleanSENSING1.bat를 실행하여 보드를 초기화 한 후 STM32CubeProgrammer를 사용하여 Applications\SENSING1\Binary 의 경로에 부트로더 바이너리 “SENSING1_BL.bin” 파일을 라이팅합니다.
6. 휴대폰의 ST BLE SENSOR 앱과 B-L475E-IOT01A 보드를 Bluetooth로 연결하여 Activity Recognition을 실행하여 AI프로젝트가 잘 동작되는지 결과를 확인합니다.
보드에 전원을 공급할 보조배터리와 B-L475E-IOT01A 보드를 수납한 작은 가방을 허리띠를 사용하여 허리에 차고, 실제로 걷고 달리고 멈추면서 보드의 AI 동작을 확인하였습니다.
7. Human Activity Recognition의 결과를 영상을 통하여 제출합니다.
- 첨부파일
- 20220925-154109_ST BLE Sensor.mp4 다운로드
로그인 후
참가 상태를 확인할 수 있습니다.