본문 바로가기

전체 글210

으어 이제 끝이 보인다. 이것저것 자잘한 실수들 수습하고 수정하고 기능 추가하고... 이제 각도 제어만 추가하면 거의 끝난다고 보면 된다. 근데 사실 드론이고 뭐고 복학한다는 사실에 몹시 분개하는 중. 과제 많이 내지 말아 주세요. 제발ㅜ 2021. 9. 1.
[STM32 HAL] dma priority 2021. 8. 26.
[공유] [Project] MPU9250으로 AHRS만들기 [Project] MPU9250으로 AHRS만들기 AHRS란? 자세방위시스템을 말하며 Attitude, Heading Reference System의 약자이다. 주로 IMU센... blog.naver.com 내용이 좋아서 공유 겸 메모해둔다. 필터 구현 내용은 자세하게 설명되어있지 않아서 아쉽긴 하다. 포스팅 내용 AHRS용 센서 설명 MPU9250 레지스터 설명 MPU9250 라이브러리 코드 설명 - 센서 데이터 업데이트 - 매드윅이나 상보 필터를 적용하여 센서 융합 - 필터로 계산된 롤, 피치, 요 업데이트 2021. 8. 24.
[C] 4x4 역행렬 계산 #include #include // 역행렬 계산 때문에 실수 자료형을 사용. typedef float matrix; // 4x4 행렬 출력 함수 void print_matrix_4x4(matrix a[][4]); // 4x4 행렬 곱셈, 역행렬 함수 검증을 위해 쓰임. void mult_matrix_4x4(matrix a[][4], matrix b[][4], matrix result[][4]); // 4x4 역행렬 계산 함수 bool inverse_matrix_4x4(matrix a[][4], matrix result[][4]); int main() { int flag = 0; matrix a[4][4] = { {1, 3, 5, 7}, {4, 7, 1, 2}, {3, 4, 5, 6}, {4, 7, 5,.. 2021. 8. 21.
[C] 4x4 전치행렬 #include void transpose_matrix_4x4(float first[][4], float result[][4]) { for (int j = 0; j < 4; j++) { for (int i = 0; i < 4; i++) { result[i][j] = first[j][i]; } } } int main() { int a[4][4] = { {1, 3, 5, 7}, {4, 7, 1, 2}, {3, 4, 5, 6}, {4, 7, 5, 7} }; int result[4][4] = { 0, }; transpose_matrix_4x4(a, result); for (int i = 0; i < 4; i++) { for (int j = 0; j < 4; j++) { printf("%d ", a[i][j]);.. 2021. 8. 20.
[C] 4x4 행렬 곱셈 #include void multiply_matrix_4x4(int first[][4], int second[][4], int result[][4]) { for (int k = 0; k < 4; k++) { for (int j = 0; j < 4; j++) { for (int i = 0; i < 4; i++) { result[k][j] += first[k][i] * second[i][j]; } } } } int main() { int a[4][4] = { {1, 3, 5, 7}, {4, 7, 1, 2}, {3, 4, 5, 6}, {4, 7, 5, 7} }; int b[4][4] = { {2, 4, 6, 8}, {1, 3, 5, 7}, {1, 2, 2, 9}, {1, 9, 9 ,8} }; int resul.. 2021. 8. 19.