|
From: | Prof. Dr.-Ing. Heinrich Warmers |
Subject: | Re: [Paparazzi-devel] Changing the main loop frequency on the Tiny |
Date: | Tue, 16 Aug 2011 10:09:29 +0200 |
User-agent: | Mozilla/5.0 (Windows; U; Windows NT 5.0; de-DE; rv:1.4) Gecko/20030619 Netscape/7.1 (ax) |
Hello Andreas, i think differentiating of a rate signal given by a serial protocol is very difficult. You will mix the signal with the protocol rate and perhaps you will make a failure in the opinion of the Shannon Theorem. I think for very high roll rates it is the best way to measure the roll rate direct by a separate gyro with a analogue imput of the processor and then output this value direct to the servo output. This work best for quadrcopters and has not a high compute load. If you design analogue feedback control systems and you want to use them on a computer this topic is very good eximated in Dörrschiedt / Latzel Grundlagen der Regelungstechnik chapter 4. Regards Heinrich Andreas Gaeb schrieb: Hello, Am 15.08.2011 19:46, schrieb Felix Ruess:Of course you can... just depending on what you use you might need to code a bit ;-)I'll try and go ahead... what is the place where the frequency is set? is it somewhere in the makefiles?I assume you are using an imu that you can read with a higher rate? Which one? As a subsystem or module?yes, I'm using an Xsens MTi-G, with the old style module (which by the way needs gps.hmsl copied over to gps.lla_pos.alt in ins_xsens.c:509). I also wrote my own modules for air data sensing, coefficient and thrust calculation, and the PID algorithm. Basically, I need to run all of them at the highest possible rate.For fixedwings you can set the rates of reading imu, propagation and updates: <configure name="PERIODIC_FREQUENCY" value="120"/> <!-- IMU FREQ --> <configure name="AHRS_PROPAGATE_FREQUENCY" value="120"/> <configure name="AHRS_CORRECT_FREQUENCY" value="60"/> Then you can <define name="AHRS_TRIGGERED_ATTITUDE_LOOP"/> to trigger the control loops when a new attitude was computed.this looks interesting, I wasn't aware of these parts of the code before. Will have to dig into this, maybe its possible to realize modules with higher periodic frequencies that way. However, as the Xsens does its own AHRS computations, I don't need to run the estimator on the Tiny and can save the processor power for other things.On Mon, Aug 15, 2011 at 1:49 PM, Prof. Dr.-Ing. Heinrich Warmers wrote:[...] But look to the main time constants. It is only necessary to be about 8 times faster then the lowest time constant in your feedback control system.the control loop is of minor importance for me. Firstly, I need to get the real-time PID to run, even if it is only in manual mode. My problem is that the aircraft's rolling time constant is very small, so I need to sample (and differentiate) roll rate with high frequency to separate roll damping from aileron efficiency. Best regards, _______________________________________________ Paparazzi-devel mailing list address@hidden https://lists.nongnu.org/mailman/listinfo/paparazzi-devel |
[Prev in Thread] | Current Thread | [Next in Thread] |