-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Emergency landing tumbled crash? -- inav 6.1.1 #9184
Comments
This looks like the same issue as #8950. The Emergency Landing starts at 00:44:235. The same issue as above happens at 00:44:288, Attitude values drop to 0, PIDS go crazy ... although the motor outputs look wrong even before that. |
I received a notice about this topic. I want to say that I closed the topic, because. landing after returning home suited me and I was tired of thinking about this problem for 3 months. I do not have enough data to analyze the situation and my assumptions can only get in the way. I dealt with more pressing issues that I had. I've also verified that the flow optics don't work on most surfaces, as it does on your grass video. Lidar works fine up to 1.5 meters, but without flow optics, most likely the drone will not be able to land on the grass in such conditions. Although nothing prevents inva team from trying, the inav policy is contrary to solving these problems =) (for example, another problem, remove the compass when you return home - the team has no time to try, or fix the camera power settings - I don’t understand why this hard to fix) Also, all these tests are hindered by the fact that during this time, after several crashes, the barometer was broke. I am now waiting for a new part. Without a barometer, nothing in hold mode also works. The GPS works great though. I in turn figured out how to test all the landing algorithms using STM debugging, pulled out the SWD wires and will soon try to write tests inside the inav code. But since I am not the developer of the inav code, this is just a personal challenge and only my efforts will be directed to finding a problem that most likely will not give anything, but will only give pleasure from fiddling with the code. I still believe that the algorithm that landing the drone at a height of up to 1.5 meters does not work correctly due to various problems caused by incorrect optics data or one of the spatial regulators. Indirect observation - with certain filter settings - I can’t say which ones, because changed a lot. The behavior of the copter in the configurator (first tab) becomes similar to what happened then during the accident. For unknown reasons, the copter began to spin where it is displayed in confgurator. While I fly with the return home mode, I only worry about the compass =). Lidar and Optic flow is my goal. I would like to make it so that the drone can hang several of these sensors and it can fly around obstacles at a slow speed, such as a ceiling or a door frame. P.S. Sorry for a lot of irrelevant text, but I covered everything in one place, what I think on this topic. |
Looking at the PID numbers they suddenly jump in the space of 1 loop from reasonable values to values that indicate an issue with a 32 bit overflow: Why it happens during a FS Emergency Landing is a bit of a mystery. It doesn't happen with a manually triggered Emergency Landing with no FS. This is nothing to do with rcCommand values because, with the exception of the Throttle, they remain 0 throughout, which is as expected. |
Ah~~~ discusion here ! OK @breadoven I have read #8950 It's closed by @fermiums22, but I didn't get the point of "Inav 6.1.0 Landing after RTH work is good". Maybe @fermiums22 was using RTH to land! (Well, I now know the answer, @fermiums22 Thanks.) What if in my case (gps glitch), oh no~~~ Two issues have a similar data trend(just forget about vibration of my quad): It was found in the log that the gyro raw data is inconsistent with gyro filtered data in the same situation(#8950 & #9184), which you (@breadoven ) have mentioned data consistency in #8950 |
Humm... PID numbers and gyro are both strange data. Memory out of bounds or pointer issues??? In my case, it's 100% replicable.
@breadoven What do you mean by "manually triggered Emergency Landing"? I think RC channel switch for FAILSAFE (configured to land) should be called manual trigger, is there any ohter way? |
You can manually trigger an Emergency Landing by rapidly toggling the PosHold mode switch 5 times. Really just intended as a last resort function. Still needs to be mentioned somewhere in the documentation. I'd reduce the default value of |
Thanks @breadoven . I get 5 times posHold for triggering emergency landing in I found there is no big difference between poshold/failsafe triggering emergency landing, so I don't want to do emergency landing test any more, unless we have found some clues. Currently, following fw version has been tested, I'm NOT sure if it's fw version related (API data type, such as double/float/int32 etc.).
PS: I hope there is a tutorial (which I didn't notice before) for RealFlight SITL simulation setup? #9187 . |
Sorry, I don’t quite understand where this request came from, I somehow collected an inav for a f405 controller, but I didn't push it to git, it’s some kind of error(> * Mar 26 INAV 6.0.0 ([7e7efe4]) =)
|
This is from your log file. Since tumbled crash of emergency landing is 100% replicable issue in my case. I suspect the issue is due to some git code changes. @breadoven Which version did you use for manul emergency landing? |
I also noticed a behavior when GPS and RC signal lost in #8673
sometimes are only 2 motors are spinning (in normal flight will be flip). GPS lost + RC link fail triggered motor spin issue (sometimes 2 motors???). |
Are you able to test multirotors with SITL @shota3527 ? Any chance of checking failsafe emergency landing if you can ? Be interesting to see if it's possible replicate this issue with SITL, try and work out what's happening. |
Yeah! @shota3527 Is there any reference about how to setup sitl for multicopter? Since @breadoven has checked in plane, #9167 (comment) Hope there is some guide for #9187 |
Yes, I am able to test the multi rotor in sitl with realflight. I figured out how to test multi rotor in sitl by my self and I have to say the instructions is not enough now. First download the archive/model from here: |
INAV_7.0.0_cli_SIMQUAD_20230807_222925.txt I will share my cli file for a quickest setup |
@shota3527 Thanks for the time and effort, and quick response.
Good news for locating the issue.
Please if you have time. I think a 101 lessons or step by step commands will be more than enough. If you don't have time, just kick in commands here then I'll try.
Is this the steps to simulate? a) First download the archive/model from here: https://github.com/ArduPilot/SITL_Models/tree/master/RealFlight Any further steps that we should do? |
@lida2003 @breadoven |
Hi everyone , Edit..... If you need any additional information , please tell me to post them. Thanks |
Can you provide a Diff file @Diver6691. So this happened when there was no failsafe active ? Was it using surface terrain following by any chance ? I did test emergency landing using the Poshold switch and also triggering it using the Multifunction trigger (not yet merged) and it seemed to work OK ... certainly didn't end up in a death spin which is what seems to happen when it goes wrong. In my case the motors dropped in speed to start the descent (similar to start of RTH landing) and controlled normally thereafter. Not obvious why this seems to only affect emergency landing and not other modes. Edit: I just found the DVR video of the Emergency Landing test from march of this year. Emergency Landing was started using the Multifunction trigger and it behaved as expected, descending at 1m/s and also held position. |
INAV_6.1.1_cli_CHIMERA_7_20230809_141140.txt It was triggered manually , no surface terrain following. Is it possible that the changes in custom firmware caused this ? |
The problem as mentioned before seems to be related to the filtered gyro rates changing abruptly to strange values that don't seem to correlate to the raw gyro values as can be seen in the following BB screenshot for the log given above: Filtered gyro values jump from single figures to 37 degs/s when the throttle drops to 0, then shoot up to nonsense values of 1780 deg/s shortly after the throttle increases up to 57% before they drop back down to single figures again ... causing PID meltdown. This doesn't happen when switching into Althold even though throttle behaviour is the same, drops to 0 before shooting back up to 57% as shown in following screenshot. Bit baffling as to why Emergency Landing causes problems with the filtered gyro values compared to Althold given there's no obvious connection. @DzikuVx ? There are differences in filter related settings between the quad I used to test Emergency Landing in March this year and those for @Diver6691 and @lida2003 so maybe something here is causing an issue. My quad used defaults for these settings and has MPU6000 hardware. Diver6691 and lida2003 settings: |
Well I did find one "bug", if you want to call it that, related to #7845. This changed the calculation reference for Still doesn't explain why this might be a problem during an Emergency Landing rather than Althold but needs fixing anyway. |
With my settings, I haven't yet been able to replicate this issue, even with MC Cruise mode. I was wonder how |
@Jetrell interesting... there is no |
The quad was indeed using |
OK, I did the math, dynlpf in such case fucks up filtering. I will make a fix to master |
@DzikuVx Thanks for the fix. I think the only way to test the |
It's been about half a year since my first crash on this issue. After dynamic filter bug fix, did the fix "mixer stile landing" problem or have not been able to test yet? Is it possible to further work in the landing code using lidar? |
@fermiums22 Sit tight and keep tuned, I think the latest stable version is NOT good for us. And there is a progress of the bug, which have been verified by developer and they are working on this. I hope 7.0 stable release will include this. I have switched to Ardupilot for long range fly, which is safe. |
I have saw discussion in Multirotor course hold/cruise mode #9213. Well, I don't know details about the code, thought discussion I have found desciptions like below:
So I wanna ask if we have found the root case for this issue, and if "Add constrain for DynLPF computation #9242" ultimate solve the "Emergency landing tumbled crash? -- inav 6.1.1#9184 "? |
It would appear that it has been fixed, from limited testing... I haven't personally experienced it with the Dynamic LPF turned on.. But that may not be totally conclusive.. I know this may not be the answer you were looking for.. But the more tests that can be done, the better. Because not all quads are built equal.. With some requiring more filtering than others.. Which in turn made the landing bug more pronounced on less than perfect builds. |
@Jetrell OK, thanks for the reply. Now is the Asian Games, during which all aircraft are prohibited from flying. If possible, could you help me confirm which patches based on 6.1.1 can be tested? I estimate that the relevant verification can be conducted after October 29th. PS: Currently, I'm stuck using TX12 RC contorller "How to confiugre TX12 (openTx 2.3.11)". I hope that I can do simulation(realflight) before October 29th. --
|
I did TX12 configuration and got Quadcopter(Classic) fly fine. When I switch to Quadcopter(Flight Axis)
inav_6.1.1_SITL: 192.168.68.53
Any thing I have missed here? BTW, I can't see any movement in receiver tab, when I operate sticks. PS: Configure OSD later. |
Discussed in #9183
Originally posted by lida2003 July 21, 2023
There are quite a lot of discussions about my crash in What will happen, when RC & GPS signal lost? -- inav 6.1.1 #9167
And Thanks for @Jetrell @breadoven patience , I think I have got much more info than before.
Due to our discussion about what will happen in emergency landing when fail throttle set to 1000 with airmode enabled? #9181, I think it'll be really not that easy to talk about this crash, as:
failsafe_throttle
= 1000 ( what I think it should probably write before airmode is implemented )So I decided to do an emergency landing test.
And It crashed, crashed, crashed!!!
Preset:
failsafe_throttle
= 1150PS: detailed steps, please consult: https://blog.csdn.net/lida2003/article/details/131849539
Result:
Video: https://www.bilibili.com/video/BV1tu411V7JY?p=1
Log: blackbox_log_2023-07-21_070855.TXT
I'm NOT sure about exact order of the crash. But it seems has something to do with gyro and logic.
Any ideas, please kindly let me know!
The text was updated successfully, but these errors were encountered: