Как я могу отправлять команды MAVLink напрямую с помощью Dronkit-Android?

Я пытаюсь заставить его пойти на задание, только установив авто. После некоторых исследований он не может выполнить взлет на миссии, так как для этого нужно запустить дроссель. С большим количеством исследований, чтобы обойти это, я могу использовать MAV_CMD_MISSION_START. Единственная проблема заключается в том, что я искал документы и не могу найти ничего, что бы отправляло сообщение MavLink. В документации есть что-то вроде этого, но я понятия не имею, как правильно его использовать, и мало примеров или документации о том, как его использовать.

Надеялся, что есть какая-нибудь простая команда для отправки команд дрону?

Надеюсь, у кого-то есть опыт в этом.

2 ответа

Эта команда не поддерживается текущей версией APM:Copter (v3.2). Он поддерживается только в версии 3.3 (бета-версия на июль 15 года). Вот почему этой команды еще нет в Dronekit-Android. Но он будет поддерживаться Dronekit-Android примерно через неделю. Вы назовете это так:

MissionApi.getApi(drone).startMission(true, true, new AbstractCommandListener() {
                @Override
                public void onSuccess() {
                    Toast.makeText(getContext(), "success", Toast.LENGTH_LONG).show();
                }

                @Override
                public void onError(int i) {
                    Toast.makeText(getContext(), "failcode: " + i, Toast.LENGTH_LONG).show();
                }

                @Override
                public void onTimeout() {
                    Toast.makeText(getContext(), "timeout", Toast.LENGTH_LONG).show();
                }
            });

Чтобы выполнить вашу задачу, вы можете оформить takeoff подайте команду дрону, как показано в этом руководстве.

После takeoff выдана команда, вы можете переключить режим полета в auto чтобы начать миссию, используя метод Drone#changeVehicleMode(...).

Другие вопросы по тегам