강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

Keun Jae Oh님의 프로필 이미지
Keun Jae Oh

작성한 질문수

바닥부터 시작하는 STM32 드론 개발의 모든 것

9-1. 센서 연결상태 및 PID게인 로드상태 검사

9-1. 게인 로드 실패

작성

·

280

0

코드 오류로  Counldnt load gain이 나올 수 있는지 궁금합니다. GCS로는 게인 요청, 입력이 잘 되는데  초기 while문 진입전에 요청된 게인은 로드가 안된다고 하네요..전원을 껐다 켜면 게인이 모두 0으로 초기화 되고요..

퀴즈

드론 비행 전 센서 연결 및 PID 게인 로드 상태를 검사하는 가장 중요한 이유는 무엇인가요?

드론의 외관 상태를 확인하기 위해

비행 제어를 위해 센서 데이터가 필요하고 안전한 비행 성능을 보장하기 위해

배터리 잔량을 확인하기 위해

조종기 연결 상태를 확인하기 위해

답변 3

1

Keun Jae Oh님의 프로필 이미지
Keun Jae Oh
질문자

읽기는 되나 쓰기가 안되는 것을 확인한 후 쓰기 동작 함수를 전수 검사했습니다. 결과는 라이브러리 작성 과정에서 오타였네요. 시퀀스 다시 한번 알려주셔서 감사합니다. 공부는,...확실히 됐네요... ㅠㅠ 새해복 많이 받으세요 ㅎㅎ

1

ChrisP님의 프로필 이미지
ChrisP
지식공유자

안녕하세요! 네 코드를 잘 못 작성하면 그런 결과가 나올때도 있습니다.

게인을 저장하고 로드하기 위해 몇가지 과정이 필요한데,

[게인을 저장하기 위해]

1. GCS에서 PID 게인 송신

2. GCS로부터 수신된 데이터 패킷의 GS 프로토콜 및 체크섬 검사 

3. EEPROM에 EP 프로토콜대로 게인 저장

[게인을 로드하기 위해]

4. EEPROM으로부터 EP 프로토콜대로 읽어들인 후 체크섬 검사

5. 읽어들인 게인을 GS 프로토콜대로 GCS에 송신

이 과정들이 필요합니다.

이 중에 한 가지라도 코드가 제대로 작성되어있지 않다면 문제가 발생할 수 있습니다.

제 생각엔 전원을 껐다켰을때 게인이 모두 초기화 된다면 아마 EEPROM에 데이터가 제대로 저장되지 않은 것 같습니다.

우선 EEPROM에 데이터가 잘 저장되어있는지부터 확인해보시고 문제가 없다면 위에 설명드린 1~5번까지의 코드 내용을 하나씩 확인해보시는게 좋을 것 같습니다.

그리고 해당 코드 작성하실때 코드 복/붙 하셨다면 그 과정에서 문제가 자주 발생하니 한번 꼼꼼히 확인해보세요!

2021년 한 해 원하시는 모든 일 이뤄지기 바랍니다!

0

ChrisP님의 프로필 이미지
ChrisP
지식공유자

아 문제 금방 찾아서 잘 해결하셨다니 다행입니다. 공부가 되는게 중요한거죠~ 실수하고 문제찾는 과정에서 많이 배우는게 좋습니다. 새해 복 많이 받으시고 앞으로도 재밌는 드론개발 하셔서 꼭 완성하시기 바랍니다~ 감사합니다.

Keun Jae Oh님의 프로필 이미지
Keun Jae Oh

작성한 질문수

질문하기