CleanFlight Ervaringen

yup....danny charpu en anderen hebben 1000-2000[emoji1]
Dan haal je maximale rates pas.

Maar op dx6i moet het toch kunnen? Je kan je servo uitslagen toch instellen.

Het kan wel, maar alleen 1 kant op... knaken ding.

Het is ook mogelijk om het via de mixer te doen, maar dan verlies ik mijn mixer instellingen voor het switchen tussen acro en level.
 
Kan ik mijn reactie niet wijzigen?

ik heb alles +125% gekregen. ik kom nu bij de 1060-1940.

Met een simpele berekening even de rc rate omhoog gegooid. Zal er morgen even mee vliegen, kijken wat hij doet.

1500 - 1000 = 500
1500 - 1060 = 440

(500 / 440) * 1.05 (RC rate Charpu) = 1.19
 
Laatst bewerkt:
Als je de settings kopieert moet je zelf nog de Pitch en roll rates hoger zetten, waarschijnlijk staan ze nu op 0.
Al staat je rc rate hoog zal je nog traag rollen..
Zet je roll en pitch rate eens op 0.50..
 
Laatst bewerkt:
Als je de settings kopieert moet je zelf nog de Pitch en roll rates hoger zetten, waarschijnlijk staan ze nu op 0.
Al staat je rc rate hoog zal je nog traag rollen..

De roll en pitch rates had ik al het zelfde als Charpu (0.56), daarom vond ik het ook zo raar dat die van mij zo "traag" rolls en flips deed.
 
Het kan wel, maar alleen 1 kant op... knaken ding.

Het is ook mogelijk om het via de mixer te doen, maar dan verlies ik mijn mixer instellingen voor het switchen tussen acro en level.
Als ik het me goed herinner moet je de stick bewegen in de richting die je wilt instellen, draait pijltje in het display om en dan klikken met de roller.
 
Iemand enig idee wat dit kan zijn ? Heb de dump van Danny overgenomen en net rondje gevlogen, alles ging prima, op de landing na ;-) Na wat props te hebben vervangen start ik alles weer op en nou draaien motor 4 en 1 niet wanneer ik hem armed. Pas bij wat throttle ( 20%. ) draaien ze weer mee...


 
Laatst bewerkt door een moderator:
Blheli bootloader tool is easy to make without arduino if you have ftdi adapter.... Just one resistor and diode does the trick. I've posted some pictures in this thread before. If you want to use arduino, get a clone from banggod http://www.banggood.com/ATmega328P-Nano-V3-Controller-Board-Compatible-Arduino-p-940937.html

twice as cheap, works the same (with apropriate driver). Arduino you can flash with different programmers (like silabs programming, etc etc)... 4 euro from UK warehouse. Little handy tool.
 
Ok mensen, ik probeer te begrijpen hoe het hele Looptime PWM-rate verhaaltje in elkaar zit. Dit is wat ik tot nu toe bij elkaar verzameld heb aan info..

De Naze32 stuurt een signaal over de motor-pins naar je ESC's. Je ESC's hebben een maximale frequentie die ze hierbij aan kunnen. Mijn ZTW A-Series met de oudere SimonK firmware draaien op maximaal 400Hz van wat ik kan vinden. Ik heb mijn motor_PWM_rate dus ook ingesteld op 400. De Looptime is weer gekoppeld aan de PWM-rate. Hieronder een overzicht welke ik op RC Groups gevonden heb:

3500 - 286Hz
3000 - 333Hz
2500 - 400Hz
2000 - 500Hz
1600 - 600Hz

De Looptime lager zetten dan de maximale frequentie van de ESC's heeft geen effect van wat ik kan vinden.
In mijn geval bij een PWM-rate van 400 heeft het geen nut om lager te gaan dan 2500.

Er is één ding wat ik niet snap. Er wordt ook gezegd dat je de PWM rate niet hoger dan 500 moet zetten, aangezien er dan een geborsteld motor signaal (direct drive) naar je ESC's wordt gestuurd. Toch kom je ESC's met bijvoorbeeld 600Hz tegen. Hoe zit dat dan? Zet je dan toch de motor_PWM_rate op 400 of maximaal 495 bijvoorbeeld?

En wat gebeurt er als je de PWM frequentie hoger zet dan de ESC's aankunnen? Fikken ze er dan uit?

Nu kun je tegenwoordig gebruik maken van OneShot125. Van wat ik lees heb je dan niets meer met motor_PWM_rate te maken. Kun je die dan gewoon op de standaard 400 laten staan? Of moet je die op '0' zetten?
Het klinkt bij mij alsof OneShot een andere 'taal' is waarmee de Naze32 met de ESC's praat, aangezien PWM rate geen functie meer heeft. Ook de Looptimes kunnen nu lager. Ik zou dus bijvoorbeeld een Looptime van 1400 in kunnen stellen voor mijn ZTW A-Series, terwijl die een maximale frequentie van 400Hz aan kunnen. De koppeling tussen Looptime en PWM rate is er niet meer met OneShot. Of ben je nog steeds gebonden aan de maximale frequentie van je ESC's?

Looptime wordt nu weer beperkt door de processor snelheid van de flight controller. In geval van de Naze32 (rev5) is dit 1200 van wat ik kan vinden.

Dan is het ook nog zo dat je waarschijnlijk de PID's moet bijstellen wanneer je de Looptime wijzigt.
Is dit ook zo bij het hele OneShot gebeuren?

Bij het tunen van de PID's wordt ook geadviseerd om eerst je Looptime af te stellen.
Beginnen met de basis PID's vanuit Cleanflight en dan omlaag met de Looptime. Ik heb alleen werkelijk geen idee waaraan je kunt zien of je Looptime goed is of verkeerd. Helemaal wanneer je PID's waarschijnlijk ook nog niet goed staan.

Ik heb de Looptime en PWM voor mijn B330 overgenomen van anderen, maar wil ook altijd weten waarom ik iets doe. Ik wil het begrijpen. Vandaar het hele verhaal met een aantal vragen hierboven. En met OneShot in het vooruitzicht voor mijn toekomstige Mini-H, wordt ook dat gedeelte steeds interessanter.
 
1. Looptime doesn't matter for PC2... It takes CPU ticks into account. For other controllers (0 and 1 i think), loop time defines how big will be the error and how hard pids need to work to fix that error. So, smaller looptime - smaller pids. Analogy - small hole in the ground you can step over, but bigger one you need jump harder.
2. ZTW 20 (500mhz actually) with Simonk are desincing with pwm rate 500 on hight throttle with CM2208/2000... 488 is a good round mwii number :)
3. PWM rate is just how ofter FC updates ESC for new values. If you have frequency synced with looptime, pretty much most of the times you will have proper value sent to the ESC... If very different, it will accumulate error and sometimes will be not in sync (value from 1 or 2 cycles ago will be sent). Think about it like turn light blinking on your car and car in front of you. If frequency is a bit different, sometimes you have it blinking together (one phase), and after some time in opposite (counter phase).
4. Oneshout value is sent when value is calculated (and different from previous one).. so - less delay, corrections are on time.

Here is a nice picture for Classic and Oneshot logic.

https://github.com/diydrones/ardupilot/issues/1825
 
Ok, you just made it worse.. hahahaha. Gonna read your post for another 3 times tonight!

So you still have to look at the max Hz of your ESC. In my case now 500Hz and 488 will be the best to use.

If I read your text right, you say Looptime does not work..
Or does it work independent form the PID's. They don't react to eachother, but you still have to set Looptime. So if I set my PWM to 488 now, how do you know which Looptime to use?

EDIT:
Just made a grafic of the Looptime/Frequence combination.
The Looptime to use with a PWM of 488 should be around 2052.
 
Laatst bewerkt:
Ok, you just made it worse.. hahahaha. Gonna read your post for another 3 times tonight!

So you still have to look at the max Hz of your ESC. In my case now 500Hz and 488 will be the best to use.

If I read your text right, you say Looptime does not work..
Or does it work independent form the PID's. They don't react to eachother, but you still have to set Looptime. So if I set my PWM to 488 now, how do you know which Looptime to use?

EDIT:
Just made a grafic of the Looptime/Frequence combination.
The Looptime to use with a PWM of 488 should be around 2052.

No need to do graphic.
Looptime = 1000000/pwm_freq

1000000/488=2049,18 which iakes it 2050... Nice and round.

Loop time its time FC makes ONE LOOP... Thats it. If CPU managed to calculate new commands faster then looptime, it will just wait the rest of the looptime.
 
Back
Top