Tnx U4eake!,
Die code laat meteen een probleem zien waar ik nog helemaal geen rekening mee had gehouden

, namelijk dat als de quad schuin gaat om te bewegen de sensor schuin staat en een hele andere waarde zal laten zien (doel van mijn eerste versie is gelukkig ook alleen nog maar recht stabiel opstijgen en landen, dus was ook nog niet zover).
Boven de 6 meter blijf ik wel raar vinden. Stel dat ik hem instel om op 10 meter hoogte te gaan vliegen, hij komt daar dan aan, maar ineens geeft de baro waarde aan dat hij nog maar op 8 meter zit. Zou hij dus meteen weer 2 meter willen klimmen. En dan 10 sec later bedenkt de barometer ineens dat hij toch weer op 12 meter zit, knalt hij weer 2 meter naar beneden. Op die manier lijkt het mij haast onmogelijk om hem "stabiel" op een hoogte >6 meter te houden.
Maar erg hulpvolle info, tnx!
De tilt code is voor de sonar, je hebt natuurlijk een ander echo profiel (zelfs verschoven) wanneer je tilted bent.
De baro is perfect te gebruiken, maar niet opzichzelf. Ten eerste zijn er nogal wat barometric sensoren te verkrijgen die een verschillende resolutie hebben. De bmp085 is kost effectief perfect maar nogal lastig met externe invloeden zoals temperatuur en een 'schone' voeding.
De nieuwere sensoren zoals de ms5611 hebben zelf al een temperatuur compensatie en een hogere resolutie.
Maar dan je punt van 'jumpen'. Ja klopt, het beste werkt ook de baro samen laten werken met de andere sensoren, vooral op de 'z' as.
Als de accelerometer een z versnelling detecteerd is dat sneller dan de baro, je kan dan in de PiD loop of kalman filter deze mixen.
Samen met een magnetometer en een GPS in een goed filter kan je een resolutie krijgen van 5-15 cm.
Ik heb in een andere thread een voorbeeld filmpje laten zien hoe een nauwkeurig een barometrische hoogtemeting op een quad kan zijn, ook in windkracht 6.
Een multicopter heeft ook voordeel van een hogere pwm frequentie richting de esc's. Hoe sneller de motoren gestuurd kunnen worden, des te sneller de compensatie.
De huidige plush regelaars kunnen tot 400hz werken (ultrapwm), maar als je nog oudere of andere kan vinden met een atmega mcu in de regelaar zijn er alternatieve firmwares te flashen (rcgroups) die een nog hogere pwm toestaan en de regelloops eruit slopen. De regelaars zijn namelijk gemaakt voor vliegtuigen of single rotor heli's en niet voor multicopters die eigenlijk een zo lineair mogelijke aansturing willen.
Over enkele maanden zal je 'vallen' over de 32 bits regelaars van verschillende projecten die dit fenomeen 'aanpakken'

en speciaal voor multirotors ontworpen zijn.
Veel succes, je neemt letterlijk de lastigste weg en dat kan fantastische resultaten geven, in ieder geval de meest leerzame.
Wel ben ik het met andere eens dat doornemen van alternatieve projecten die al die obstakels al genomen hebben ook leerzaam kan zijn.
Zoals arducopter, (of megapirates), multiwii en openpilot.
Denk dat multiwii een mooi voorbeeld is voor multisensor support en goede uitleg en ardu een mooi voorbeeld van een framework met de verschillende atitude / navigatie codes
Menno