Attention: Answers.ros.org is deprecated as of August the 11th, 2023. Please visit robotics.stackexchange.com to ask a new question. This site will remain online in read-only mode during the transition and into the foreseeable future. Selected questions and answers have been migrated, and redirects have been put in place to direct users to the corresponding questions on Robotics Stack Exchange. Additional details are available here.
I'm assuming you're using ROS, then you can use http://wiki.ros.org/apriltag_ros pkg for detecting and getting pose of the April tag.
On px4 you can use the offboard mode(The vehicle obeys a position, velocity, or attitude setpoint provided over MAVLink(API)), Here is an example of its implementation https://dev.px4.io/master/en/ros/mavros_offboard.html
Now you can give the April tag's pose to offboard mode for landing.
I hope this helps.