Как я могу отправлять команды 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(...).