I am attempting to make my AR drone follow a marker in the X, Y, and Z, directions. I am making the drone go in a direction with a low speed until it reaches the center point of the marker, at which point I want it to stop. My issue is that once the drone reaches the center point in one direction (but not the others) I set the movement in that direction to 0, but the movement in the other directions is > 0. eg: drone.move(0, 0.2, 0.23, 0). Now the drone continues to glide at the last speed in the same direction, moving the drone from the center point.
Is there a way to halt movement on a certain axis while still allowing movement on the others?
Thanks,
J.S
Last edit: John Sno 2016-11-30
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
by setting the “speed” for a movement you set actually the thrust to move to a direction. To be exact, you regulate the drone’s tilt angle with speed, but this is becoming to complicated now :-)
So, if you set the thrust to 0.0, the drone will glide, as you described, because of its kinetic energy. I gave some hints about that on http://www.playsheep.de/drone/tut3Movement.html
Anyway, I suggest a short stop() (about one second) when reaching the target position as it is the most convenient way. You can also work with a counter-thrust, depending on the estimated speed (drone.NavData["demo"][4][0]) of the drone, for a smoother behavior.
A while ago, I also did a waypoint-project like you and used a PID control system to reach the marker and hold the drone’s position in front of it.
Hope the cameras of the more recent drones have become better, it was a big problem to detect markers using 2012s AR.Drones 2.0
Best wishes,
Philipp
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thank you for the quick response. The camera on the drone is passable. Im not sure if it was improved since the 2012 version (mine is from this year), but it seems to have no problem detecting an oriented roundel from ten or fifteen feet with good lighting.
J.S
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi,
I am attempting to make my AR drone follow a marker in the X, Y, and Z, directions. I am making the drone go in a direction with a low speed until it reaches the center point of the marker, at which point I want it to stop. My issue is that once the drone reaches the center point in one direction (but not the others) I set the movement in that direction to 0, but the movement in the other directions is > 0. eg: drone.move(0, 0.2, 0.23, 0). Now the drone continues to glide at the last speed in the same direction, moving the drone from the center point.
Is there a way to halt movement on a certain axis while still allowing movement on the others?
Thanks,
J.S
Last edit: John Sno 2016-11-30
Hi John,
by setting the “speed” for a movement you set actually the thrust to move to a direction. To be exact, you regulate the drone’s tilt angle with speed, but this is becoming to complicated now :-)
So, if you set the thrust to 0.0, the drone will glide, as you described, because of its kinetic energy. I gave some hints about that on http://www.playsheep.de/drone/tut3Movement.html
Anyway, I suggest a short stop() (about one second) when reaching the target position as it is the most convenient way. You can also work with a counter-thrust, depending on the estimated speed (drone.NavData["demo"] [4][0]) of the drone, for a smoother behavior.
A while ago, I also did a waypoint-project like you and used a PID control system to reach the marker and hold the drone’s position in front of it.
Hope the cameras of the more recent drones have become better, it was a big problem to detect markers using 2012s AR.Drones 2.0
Best wishes,
Philipp
Hi Philipp,
Thank you for the quick response. The camera on the drone is passable. Im not sure if it was improved since the 2012 version (mine is from this year), but it seems to have no problem detecting an oriented roundel from ten or fifteen feet with good lighting.
J.S