목록분류 전체보기 (59)
이우의 개발일지
DP, 다이나믹 프로그래밍이란? -> 하나의 문제를 단 한번만 풀도록 하는 알고리즘 설계 기법입니다. Why DP를 사용할까?그냥 사용하면 사실 재귀방식과 똑같이 사용할 수 있다. 하지만, 일반적인 코딩테스트 같은 경우 시간제한이 걸려있기 때문에 동일한 작은 문제를 여러번 풀면 무조건적으로 시간초과가 뜨게 된다. 예를 들어, 피보나치 수열을 그 예로 들 수 있다.#include int dp(int x){ if( x == 1) return 1; if( x == 2) return 1; return dp(x - 1) + dp ( x - 2); } 위 처럼 코딩을 하게 된다면, 50번째만 가도 굉장히 오래 걸리게 된다. #include int d[100];int dp(int x){ ..
다이나믹셀 XM430 제어 및 통신 오류 발생 원인 분석현재 제어하고 있는 다이나믹셀 XM430 시리즈는 편리한 SDK와 Wizard 소프트웨어 툴을 통해 상태를 확인하고 컨트롤할 수 있다는 장점이 있는 모터다. 평소 안정적으로 작동해왔으나, 최근 제어 명령을 전달하는 과정에서 처음 보는 오류가 발생하여 원인 분석과 해결을 시도하게 되었다. 오류가 떴던 부분들Failed to send profile velocity values[ID:001] groupSyncWriteVelocity addParam failed 이 오류는 다이나믹셀에 속도 관련 명령을 전송할 때 발생하며, 정상적으로 명령이 수신되면 COMM_SUCCESS라는 메시지가 반환되도록 설정되어 있다. 그러나 이 메시지가 반환되지 않을 경우 오류로..
C++에서 TTS/ STT 기능 구현하기 현재 연구하는 모듈 중 C++ 환경에서 코드의 유기성을 위해 파이썬을 사용하지 않고 STT(Speech to Text)와 TTS(Text to Speech) 기능을 구현할려 했다. 방법은 오디오 데이터를 Base 64로 인코딩을 한 후 libcurl 라이브러리를 이용해서 Google Cloud API에 HTTP 요청을 할려했다. 하지만, 이 과정에서 파이썬은 간단하게 라이브러리 함수를 사용하면 모든게 편하지만 C++에서 할려면 인증, 데이터 인코딩, 요청 형식 등의 세부 설정을 해줘야했다... json 파일을 만들어서 Google Cloud에 인증을 Key와 ID 등을 다 입력하고, curl을 통해 HTTP 요청을 했지만..... 실패...! 결론적으로는 403..