Precision Land ArduCopter

Did some test flights this weekend for my precision landing program(A detailed explanation of this project can be found here.). They were short due to the cold conditions and battery life but beneficial. I was able to attempt the landing four times. All attempts went well in that the Copter didn't crash and held its position using vision. Only one attempt succeeded. Two had to be aborted due to low battery and poorly secured landing mat. One missed the target. I think it was because of wind.

Next I plan to implement a more robust controls strategy which should increase accuracy.

Daniel 

E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones

Comments

  • The key benefit of solution by http://marvelmind.com/ is that even if the visual target for landing is lost from the camera view, the system still knows where the copter is. Thus, the system can provide data to guide the copter back to the landing target

  • You can use a precise (+-2cm) Indoor "GPS": http://marvelmind.com/.

    Here a couple of demos:

  • @Daniel thanks for your reply. Yes, Randy was very helpful and now the altitude control looks perfect, very reactive!

  • @Tiziano sorry for the late response but it looks like you got help from Randy on your cross-post. Good luck! 

  • @Daniel: I am doing something similar, AC 3.3.2, dronekit not updated, is the release of August 2015. As soon as I send velocity commands through set_position_target_local_ned_encode, the horizontal flight is perfect, while the vertical control is a mess. Actually the reference altitude is properly updated (I can see from the data flash log), but the throttle keeps oscillating and the vehicle bumps up and down. Have you ever happened before?

    Here is the function I am using. I tried different update rates, still I have the same issue

    msg = vehicle.message_factory.set_position_target_local_ned_encode(
    0, # time_boot_ms (not used)
    0, 0, # target system, target component
    mavutil.mavlink.MAV_FRAME_LOCAL_NED, # frame
    # 0b0000111111000111, # type_mask (only speeds enabled)
    0x01C7, # type_mask (ignore pos | ignore acc)
    0, 0, 0, # x, y, z positions (not used)
    velocity_x, velocity_y, velocity_z, # x, y, z velocity in m/s
    0, 0, 0, # x, y, z acceleration (not used)
    0, 0) # yaw, yaw_rate (not used)
    # send command to vehicle
    vehicle.send_mavlink(msg)
    vehicle.flush()

    See my comment in this post: http://diydrones.com/forum/topics/althold-inaccurate-altitude-estim...

  • This is awesome - nice work!

  • Great! I like the wind stats. The video alone never does justice to how difficult the wind can make things. :)

  • Developer

    love it!

  • Thanks everyone!
    @Hein
    It is actually preferred for vision applications. However, I am just using a regular webcam with a permanent lens. So not with this specific camera.

    @Marcus
    There is currently just a P controller on the XY axis. That should be enough. The sloppiness comes from the Z axis controller. It only has two modes(descend with XY control and descend without XY control).The next step is to integrate it tighter with the XY controller so it descends at the appropriate times.
  • Can you use a PID loop in the X and Y direction?  Just curious if this could help with errors.  

This reply was deleted.