Giter Site home page Giter Site logo

Comments (13)

szebedy avatar szebedy commented on July 18, 2024

Hi @aomezzine

I used the flashing script from intel. See: https://github.com/intel-aero/meta-intel-aero/wiki/02-Initial-setup#flashing-the-flight-controller-rtf-only
I think you can stick to the recommended version, but v1.8.2 should work as well.

from autonomous-drone.

aomezzine avatar aomezzine commented on July 18, 2024

Hi @szebedy
Thank you for the reply.
The intel script install the version 1.6.5. Did you use the px4 version 1.6.5 ? Is it able to support visual odometry SVO ?
Because when I try your code on the intel aero with v1.6.5 as PX4 version (and after tuning parameters in qgroundcontrol to enable vision position), the topic “/mavros/local_position/pose” became empty and did not show any values.

from autonomous-drone.

szebedy avatar szebedy commented on July 18, 2024

Yeah I had that problem too. You need SVO running to have the position estimates. But the drone needs to be in the air 1.5 meters above the ground (or whatever you set in ~/svo_ws/src/rpg_svo_example/svo_ros/intel_aero_imu.yaml -> map_scale) in order to initialize SVO. How do you break this vicious circle? Well what I did is I held the drone in front of my chest with one hand, while starting SVO through SSH on my laptop with the other hand. You need to measure the 1.5 meters, since if you're not holding it precisely it will oscillate during the flight (due to the scaling error). Once SVO was running I started all other nodes including offboard control with the launch file. As soon as the propellers start rotating you can slowly let go of the drone. Have fun!

from autonomous-drone.

aomezzine avatar aomezzine commented on July 18, 2024

Thank you @szebedy.
OK, I thought it was a version problem.
In my case, I want first to test SVO and its precision for an indoor localization. Therefore, what I do is to hold the drone in my hand and try to move it without arming the motors (without propellers) and I examine the /svo/pose_imu (or /mavros/vision_pose/pose). Concerning the localization, I got a satisfactory result BUT the problem is that position is not shown in the mavros/local_position/pose.
So, do you think I have to arm the motors and activate the offboard mode in order to get information on that topic (mavros/local_position/pose)?

from autonomous-drone.

szebedy avatar szebedy commented on July 18, 2024

I'm assuming you set EKF2_AID_MASK to 24 (vision position fusion + vision yaw fusion). If I remember correctly as soon as you start sending the vision position estimates to px4 through mavros (topic /mavros/vision_pose/pose), the local position (topic /mavros/local_position/pose) will appear. My ROS node called "offboard control" does this here:

ros_client_->vision_pos_pub_.publish(vision_pos_ENU_);

I don't think you need to or can arm the motors before the local position appears.

from autonomous-drone.

aomezzine avatar aomezzine commented on July 18, 2024

Yes I set the EKF2_AID_MASK to 24 via qgroundControl v3.4.4
Also, I verify that I got information through /mavros/vision_pose/pose. BUT, no information in /mavros/local_position/pose.
When I modify the EKF2_AID_MASK to the default value, the /mavros/local_position/pose shows information.

from autonomous-drone.

szebedy avatar szebedy commented on July 18, 2024

That's weird, maybe EKF doesn't like the estimates (rejects them because of inconsistency), but it's probably something else... Let me know if you figured it out.

from autonomous-drone.

aomezzine avatar aomezzine commented on July 18, 2024

Hi,
The ekf2_hgt_mode should be set to Barometric pressure in order to see information in mavros/local_position/pose (I set it to vision at the beginning). Did you set it to barometric pressure too ?

But I still have a big problem, the information in the topic (/mavros/local_position/pose) does not match with the topic (/mavros/vision_pose/pose). (I think that vision pose is not taken into consideration)

Are there additional parameters that must be changed ?

from autonomous-drone.

szebedy avatar szebedy commented on July 18, 2024

what is your map_scale (in ~/svo_ws/src/rpg_svo_example/svo_ros/intel_aero_imu.yaml)? Do you initialize SVO with the drone at that height?

from autonomous-drone.

aomezzine avatar aomezzine commented on July 18, 2024

map_scale=1.0
I tried to initialize the svo with drone at 1m from the ground. In fact, I notice that /mavros/vision_pose/pose match the mouvement of the drone. But /mavros/local_position/pose still in 0, 0 in x and y even if I move the drone.

from autonomous-drone.

szebedy avatar szebedy commented on July 18, 2024

I set EKF2_HGT_MODE​ to 3 and EKF2_ASP_DELAY​ to 200. Also I did not use IMU data, only vision. You might have to search for a solution in the PX4 issues.

from autonomous-drone.

aomezzine avatar aomezzine commented on July 18, 2024

Thank you for your help. The topic /mavros/local_position/pose still empty when I set ekf2_hgt_mode to 3. May be I should change other parameters for EKF2.

from autonomous-drone.

aomezzine avatar aomezzine commented on July 18, 2024

I solve the problem of the empty topic (/mavros/local_position_pose) by updating the px4 firmware v1.8.2.
Thank you @szebedy for your help.

from autonomous-drone.

Related Issues (18)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.