Vision failure everytime during takeoff
-
@Dobry-Kolacz The quality reduces to -1% before even taking off everytime
-
Is this a unit direct from ModalAI? If it is, it should be tuned or you could load default parameters from https://gitlab.com/voxl-public/flight-core-px4/px4-parameters/-/tree/master/platforms for your version of PX4 and platform.
Then from there you load a helper through QGroundControl parameters page: https://gitlab.com/voxl-public/flight-core-px4/px4-parameters/-/tree/master/helpers
That should get you close to a decent tune.
If this is a custom drone, you need to configure your extrinsics, calibrate your camera, and validate QVIO first before attempting to fly which it looks like you are attempting to do. The VOXL portal qVIO overlay will show you points selected as well as distance traveled which you can validate against manually moving the drone around prior to any attempts to fly. The camera needs to have areas of contrasting features in view -- so reflective floors or some repetitive patterns can be a challenge for qVIO.
-
I think the 'auto tune' you are talking about is a PX4 feature that came out in PX4 1.13? We at Modal haven't that yet and it's not a feature in the 1.12 based voxl-px4 release at this time, and we don't have documentation calling this out to use anywhere that I'm aware of?
I personally am not great at tuning, it's a skill for sure, but when I have done it I start with very low PID values and guess and check till I get it useable and make small tweaks.
For sure, make sure you can manual flight smoothly before ever attempting throwing it into a computer vision assisted flight!
Without introducing vibrations into the system (e.g. carry vehicle by hand) do you still see this issue?
Can you paste a picture of how you are mounting the hardware?
-
@modaltb The autotune I am talking about is shown here.
By deafult it is enabled, even if I disable it, automatically it gets enabled after restart.
It is not at usable even in manual mode.The hardware setup is here. I am using modal ai voxl2 case only.
-
@modaltb any suggestion ?
-
The way I'd tackle this, and I'd be painfully slow to be honest, is reducing the PID values for roll/pitch/yaw manually, and slowly tweaking, likely taking me a day or two, until I get things usable.
You are using an S500 frame with the VOXL IO board. We have successfully flown this setup ourselves, for reference here's PID values that could be used to start off with, which is where I'd start: https://gitlab.com/voxl-public/flight-core-px4/px4-parameters/-/blob/master/platforms/v1.12/Sentinel/Sentinel_v1_param_rev_C.params#L110
Before any time of autonomous flight, I always do manual flights.
- Have you flown in manual mode yet successfully?
- If not, can you try the PID gain settings from above?
- If not, have you confirmed that the ESC ordering is OK?
- If not, have you tried calibrating your PWM ESCs? https://docs.modalai.com/voxl2-io-user-guide/#pwm-esc-calibration
-
Also, any mechanical looseness will translate into undesired artifacts that may affect flight performance. If the wrong frequencies get into the system, you will see flight issues for sure... Our ME team spends considerable effort in the coupling of the systems.
In the image, I'm not totally familiar with the plastics being used for the mounting, are those custom or maybe painted?
-
@modaltb I am not able to fly it manually. I do not think it is because of PID gains. It is the ESC that is causing the problem. How to be sure that PWM ESCs are getting calibrated with the backdoor calibration method?
The casing is printed with PLA. It is pretty strong and there is no significant vibration because of it. However, any recommendation which material should we use?
In another post https://forum.modalai.com/topic/1490/garbage-attitude-control?_=1667191852345 @Chad-Sweet asked to disable model_esc driver. What is it and how to disable it ? -
I'm actively looking at this and will report what I find, it's my top priority. I don't believe the UART esc to be causing this but regardless for this use case, we will disable it (some users had both UART esc and VOXL2IO, but we haven't fully validated that use case)
-
As far as disabling the driver in the build you have:
/etc/modalai/voxl-px4.confg
You can comment out the last two lines to prevent the UART driver starting.
# ESC driver # We start this even if there is a PX4IO module. If there is # a PX4IO (M0065) module it will be plugged into the RC port # and so this driver will output commands on an empty port. #qshell modalai_esc start #qshell mixer load /dev/uart_esc quad_x.main.mix
I just did a test and this made no difference in flight perf, but in the next release I will be checking for a param and only starting if the param is set:
My first flight I though I was reproducing your error, my Sentinel was flying awful and I had to put it down. I got our flight test team to make some tuning changes around the PID values for roll/pitch/yaw and we were able to fly after that.
So one data point out of this is, the default Sentinel tune is optimized for our UART ESC and doesn't work well with the VOXL IO / PWM escs out of the box likely.....
I will get these off the vehicle when I do some updates here in a bit and can share with you to see if that helps any.
-
@modaltb After diabling it, the quad is able to hover in stabilized mode. but it is going here and there uncontrollably and dangerously without any stick input and a bit of wobbling is still there. Any update?
-
My next step is to share some PX4 params (pid settings, cutoff filters) that got my sentinel stable, but I need my team to validate before sending. I’m not clear if this will solve everything but will at least be a good data point. I’m hoping to get this tested tomorrow and will share
-
@Tamas-Pal-0 ...
I still have nothing to report as far as finding root cause of something, after our tune tweaks I was up and going. I am still testing though for this use case to see if there's some edge case I'm not seeing, I'm just a bit slow with this debugging.
As far as sharing my params that got me flying, I don't even know if my approach here is valid, you have different motor/prop setup, and frames aren't identical, battery type?...
My lawyer told me to tell you "not to use these since we don't have the same setup and the author/developer in the post here isn't really a pilot so...." You've been warned by the lawyer!
# Pitch PID 1 1 MC_PITCH_P 5.5 9 1 1 MC_PITCHRATE_P 0.065 9 1 1 MC_PITCHRATE_I 0.150 9 1 1 MC_PITCHRATE_D 0.002 9 1 1 MC_PITCHRATE_K 1.0 9 # Roll PID 1 1 MC_ROLL_P 5.5 9 1 1 MC_ROLLRATE_P 0.065 9 1 1 MC_ROLLRATE_I 0.150 9 1 1 MC_ROLLRATE_D 0.002 9 1 1 MC_ROLLRATE_K 1.0 9 # Yaw PID 1 1 MC_YAW_P 2.0 9 1 1 MC_YAWRATE_P 0.15 9 1 1 MC_YAWRATE_I 0.10 9 1 1 MC_YAWRATE_D 0.0 9 1 1 MC_YAWRATE_K 1.0 9 ################################################################################ # Noise management ################################################################################ 1 1 MOT_SLEW_MAX 0.0 9 1 1 IMU_DGYRO_CUTOFF 30.0 9 1 1 IMU_ACCEL_CUTOFF 30.0 9 1 1 IMU_GYRO_CUTOFF 30.0 9
Checkout out noise management here... I've had some nasty flights due to cutoff frequencies.
-
@modaltb I have tried with your parameters. It is still the same. I am able to hover it but it is going here and there uncontrollably and a bit of wobbling is still there.
-
Any chance you could post a link to a video of a flight to help us understand the failure mode even more? Sorry to this going, but we're struggling to find a smoking gun.
-
@modaltb I am using your parameters here and disbaled the modalai_esc driver. The video link is here
https://drive.google.com/file/d/1cbBXsEFMLztR7F1_en4i77F1ww4LbQ1t/view?usp=sharing -
OK thanks for the data. This is where I'm at now with my VOXL2 / VOXL2 IO setup sentinel, it's not super clean yet but but flyable for sure:
https://www.youtube.com/watch?v=1INto92k-v0I'm getting our team to do a real tune and early this week and will post info.
-
@modaltb Thanks. which escs are you using for this?
-
Hi @Tamas-Pal-0 ,
These are BLHeli 20A, should be similar/same as the ones from this kit: https://shop.holybro.com/spare-parts-s500-kit_p1251.html
Here's my setup:
-
@modaltb so, the problem is solved for you by tuning only ?