Нет, не де'жавю.
С тех пор вопрос остался открытым.
Со временем проблемы. Выкроил немного и решил снова взяться.
Добавлено after 6 minutes 5 seconds:а где можно скачать стандартную библиотеку ? если нет желания ее использовать - то можно в конце концов в нее подсматривать и писать свою
ArduPilotMega тут:
https://mavlink.io/en/messages/ardupilotmega.htmlО-о!!!
Я, кажется, нашел! тут:
https://mavlink.io/en/messages/common.htmlРассмотрим нужный мне пакет MAVLink:FE 1C E2 01 01 1E EE 3B 00 00 A0 10 57 3B 75 F5 10 BD 4B D0 21 40 59 95 94 B9 DC 80 4B BA 9E C7 8A B9 7B 1D
FE = начало пакета ( стартовый байт )
1C = 28 байт в полезной нагрузке
E2 = 226 порядковый номер сообщения
01 = ID автопилота ( у нас один автопилот, по умолчанию единица )
01 = ID компонента ( у нас всего один компонент - автопилот )
1E = 30 ( табличный номер ATTITUDE #30 )
EE 3B 00 00 A0 10 57 3B 75 F5 10 BD 4B D0 21 40 59 95 94 B9 DC 80 4B BA 9E C7 8A B9 = полезная нагрузка ( 28 байт )
7B 1D = контрольная сумма
Теперь нужно расшифровать полезную нагрузкуEE 3B 00 00 A0 10 57 3B 75 F5 10 BD 4B D0 21 40 59 95 94 B9 DC 80 4B BA 9E C7 8A B9
вот что должно поучится:time_boot_ms = uint32_t = ms
roll ======== float=== rad
pitch ======= float=== rad
yaw ======= float=== rad
rollspeed ==== float=== rad/s
pitchspeed === float === rad/s
yawspeed === float === rad/s
Так как каждый параметр по 4 байта получаем такое сообщение:hex-> EE3B0000 A010573B 75F510BD 4BD02140 599594B9 DC804BBA 9EC78AB9
Теперь это нужно перевести в понятный человеку вид ( в десятичный )float переводим тут:
http://floatingpoint.ru/online/float2dec.phpEE3B0000 - HEX-to-DEC 3996844032 милисекунд
A010573B - 1.12766206264495849609375 ( 64,61 градусов по roll )
75F510BD - 1.91457331180572509765625 ( 109,7 градусов по pitch )
4BD02140 - 1.62601470947265625 ( 93,16 градусов по yaw )
599594B9 - 1.16860115528106689453125 ( 66,96 градуса в секунду по rol )
DC804BBA - 1.0023109912872314453125 ( 57,43 градуса в секунду по pitch )
9EC78AB9 - 1.55892097949981689453125 ( 89,32 градуса в секунду по yaw )
ПС: автопилот лежал неподвижно
rollspeed, pitchspeed и yawspeed должны быть равны нулю, или близки к нулю..
Возможно какой то дрейф, например дрейф самих датчиков или из за того что GPS сквозь бетон не ловит...
Но судя по тому что получилось, дрейф слишком велик, либо вычисления кривые
ППС: Извините, что я тут сам с собой разговариваю...