Hello there,
I am excited to announced that i've build my first ArduCopter. But i am twice much upset to let you know that it needs a Doctor. :) LOL
Successfully, i updated the APM2 with the ArduCopter 2.7. However, i am have lot of issues with the quad. I know that Quad is not gonna be as still as the log,(for now) of course. But It seems like Quad wants to just flip over. When i give throttle (Around 1/3) and let go my hand, it slowly increases the throttle by itself and tries to tilt forward. Sometime it also tried to spin to the left. I am not sure if i have to adjust the Yaw PID or something.
I checked couple of times, but I couldn't see any loose connection. Motors are fit tightly to the arms. Battery has juice. I am not sure whats wrong with the quad.
I have attached the Parameter file to this post. I am not sure how to get the log file. If it necessary to troubleshoot this issue. Please let me know how and from where i can get the log file. I will be happy to provide all the necessary information. Thank you in Adv.
Quad Specs:
X Setup
APM2 with ArduCopter 2.7
HackerStyle Outrunner 20-22L Motors
Turnigy TY-P1 25Amp HEXFET Brushless ESCs
FlightMax 4000mAh 20C 3Cell 11.1V Battery
G450 Integrated PCB frame
Tags: 1/3, 2.7, ArduCopter, Forward, Kur, MrAeroKey, Throttle, Tilts
Kur,
Right..sorry...you should reduce the rate roll and rate pitch P values from 0.18 to something like 0.14. Vernon's advice is all good. He's obviously been down this road before.
Permalink Reply by Kur on July 28, 2012 at 8:53pm Alright. I have reduced the rate roll P value to 0.13 (0.01 lower than the default since i have little higher rpm motor).
And what do you think about the throttle IMAX value (180)? Does it look ok to you?
I think the IMAX of 180 for the throttle is ok. That's only used for altitude hold in any case. It's much higher than the other IMAX values but it's also in different units. The roll-pitch IMAX values are in degrees while this one is in pwm values. i.e. a servo value can go from roughly 1000~2000...so an IMAX of 180 means the altitude hold controller will at maximum move the base throttle required to maintain a hover by about 20% of your full stick movement. probably more than required but it should be fine.
Permalink Reply by Kur on July 28, 2012 at 8:48pm @Vernon, You mentioned about the in-flight tuning with CH6. If you don't mind, Would you please tell me how do i do that?
{Again, i am using Spektrum DX7 with AR7000. I have connected 6 channels to the APM2. But i am not using Channel 5 and Channel 6. Channel #5 is labeled as Gear on the RX and Channel #6 as AUX1).
Permalink Reply by Vernon Barry on July 29, 2012 at 3:12am I'm sorry, I've never done in flight tuning, just adjusting the P values for my frame from mission planner.I actually just posted the link to tuning and quoted the non-in-flight method, but yes, it was on that page.
EDIT: I just saw the DX 7 doesn't have the knob on the right top of the TX like a DX8 so in flight tuning is not possible without modding your TX to change the aux switch to a potentiometer with knob that is easy to adjust. I other words, you need a variabe channel and your TX extra channels are currently switches only? I don't have a DX7 so not sure, but a quick web look said your TX didn't.
That said, the concept is really simple. You use an aux channel on the TX with a knob not a switch. This channel at the RX must be connnected to CH6 at the APM. Verify this in the setup screen of mission planner by turing the knob and watching channel 6 move up and down. Once you have the hardware side setup, then follow these directions.One thing is does call for is at the TX, you set the endpoints or travel to limit that channel to 25% travel. This helps spread out the travel and not make the knob so sensitive. You'll have to read your DX7 manual to set up the radio side.
You can tweak parameters in flight from Mission planner (needs a telemetry link) or with the Transmitter (Tx) Channel 6 knob or lever.
Method: (See also Experimental below)
Select the "OLD ArduCopter Configuration" tab in the Mission Planner, choose the CH6 option you'd like to tune. e.g. CH6_RATE_KP.
From MP v1.1.44+ these high and low values can be adjusted in boxes just below the CH6 options. Alternatively you can also adjust TUNE_HIGH and TUNE_LOW in the left hand pane.
Input the high and low limit of the parameter you'd like to tune, choose a value of + and - around 30-40% of default, (so for CH6_RATE_KP set 'low' to 0.100 and 'high' to 0.180 from the default of 0.140)
Then click 'Write Params'. To check the values click 'Refresh Params', your high and low values should be correct in both the Parameter List tab (under TUNE_HIGH & TUNE_LOW) and in the adjustment boxes. If not enter them again.
To test that the values are changing: move the lever or knob then click 'Refresh Params', the value should be displayed in the center pane in the respective box, move it again and click 'Refresh Params' again, the value should've changed. Alternatively select the Terminal tab, type 'test' and then 'tune' and your value will scroll down in the window, adjust the knob or lever to see the values change.
Now set your CH6 knob or lever to between 0 and 25% on your transmitter, then carefully test fly, land and tune the parameter with the knob or lever, test fly again.
To read your final parameter, leave the knob or lever on your Tx in your chosen position, connect to the MP then click 'Refresh Params', the value should be displayed in the in the respective box in the Parameter List tab (under TUNE_HIGH & TUNE_LOW). Alternatively select the Terminal tab again, type 'test' and then 'tune' and your value will scroll down in the window. Enter this value into the correct position in the Configuration tab. Tune another parameter or, if you're finished, set the parameter to CH6_NONE (important!)
The main value to tune is your Rate_KP value. This value adjusts whether your copter is:
Here are all the parameters one can tune:
CH6_NONE 0
---Attitude
CH6_STABILIZE_KP 1
CH6_STABILIZE_KI 2
CH6_STABILIZE_KD 29 // duplicate with CH6_DAMP
CH6_YAW_KP 3
CH6_YAW_KI 24
---Rate
CH6_ACRO_KP 25
CH6_RATE_KP 4
CH6_RATE_KI 5
CH6_RATE_KD 21
CH6_YAW_RATE_KP 6
CH6_YAW_RATE_KD 26
---Altitude rate controller
CH6_THROTTLE_KP 7
---Extras
CH6_TOP_BOTTOM_RATIO 8
CH6_RELAY 9
---Navigation
CH6_TRAVERSE_SPEED 10 // maximum speed to next way point
CH6_NAV_KP 11
CH6_LOITER_KP 12
CH6_LOITER_KI 27
---Trad Heli specific
CH6_HELI_EXTERNAL_GYRO 13
---altitude controller
CH6_THR_HOLD_KP 14
CH6_Z_GAIN 15
CH6_DAMP 16 // duplicate with CH6_YAW_RATE_KD
---optical flow controller
CH6_OPTFLOW_KP 17
CH6_OPTFLOW_KI 18
CH6_OPTFLOW_KD 19
CH6_NAV_I 20
CH6_LOITER_RATE_KP 22
CH6_LOITER_RATE_KI 28
CH6_LOITER_RATE_KD 23
CH6_AHRS_YAW_KP 30
Experimental Attitude Tuning with CH6:
This assumes that the 'copter is fairly flyable/controllable and that the pilot is experienced enough to easily keep the 'copter at eye level and in the same place for at least 30-60 secs.
You need an extra free channel controlled by a knob or slider on your transmitter(Tx) to use the CH6 fine-tuning function, you can use any free channel on your Tx but it must be plugged in to the CH6 option on APM. So CHx on Tx > CH6 position on APM. Once plugged correctly you setup the option as explained in Method 1 above and then use that to tune your 'copter while it is actually flying or just after it has landed.
Do Rate_P first, choose a value of + and - around 30% of default, (so for Rate_P set 'low' to 0.100 and 'high' to 0.180 from the default of 0.140.
Hover at about 1.5m (5ft) and bank the quad briefly left and right, then either land and turn the knob/lever that controls the channel or if you can fly and move it then do so, turn it up and down, note the differences and choose the flying style which "feels" best to you. Higher values might cause oscillations so back off a little until it flies without oscillations but isn't too sluggish.
To read your final parameter, leave the knob or lever on your Tx in your chosen position, connect to the MP then click 'Refresh Params', the value should be displayed in the center pane in the respective box. Alternatively select the Terminal tab again, type 'test' and then 'tune' and your value will scroll down in the window. Enter this value into the correct position in the Configuration tab.
Then do Stabilize_P, then Rate_I, then Stabilize_I. (Set xxx_I values generally low, eg 0.000-0.100.)
Permalink Reply by Vernon Barry on July 29, 2012 at 3:49am I should add, one reason why I've never used in-flight tuning via that method is that it's darn hard for me to turn that knob on the top of the TX while flying. Maybe if you adjust while in loiter and then you have some ability to let go of one of the sticks and not feel like you are about to crash. I would do this in a very large open space with plenty of room so as to worry about the tuning and not running into something.
Honestly, I think it is a great idea, just not as pratical with my TX as I would like.Basically, it's a remote pot, which has a million uses from a software perspective. I'm glad the DEV team gave us this feature.
Maybe you were talking about auto tune? I don't know explicitly that I've used that feature either, both my hex and my quad worked without ever even touching a single setting, but helping others and also working with some industrial servo drives on CNCs, I understand tuning a PID pretty well. The basic method is to start with a low P value and raise it while the system is in operation until you get oscilation and then back off the P value a tiny bit. You then slam the system with fast and slow moves to see if you need to lower the value just a tiny bit more. Then I do the exact same thing with I and D (This works great on Gecko servo drives).
Basically, at low values the sensor feedback does very little to the system and increasing P makes it feel stiff or more stabilized. THe P term is instantaneous and proportional to the difference between sensed and set position.
The I term is about heavy mass error. The math behind it is that the longer the sensed position is away from the target position, the value or rate keeps increasing power to the motor.Think of it like cruise control in a car towing a heavy load going up hill. At the start of the hill you slow down and P adds throttle. However, rate P is not enough to brign the vehicle back to set speed. This is where I rate kicks in and so every second you are not at set speed, it keeps increasing throttle past what the proportional P rate says the difference between set and current speed.
Basically, P is gain in the simplest form, I is gain based on time of the error, and finally D is just to dampen the oscilations and make the system even more steady. P and I are adjusted very carefully then D is last as it has the least effect. P is the most important followed by I and remember I can throw off a good P value as it's additive making it look like P is too high.
Permalink Reply by Kur on July 30, 2012 at 9:07am Hi everyone,
Sorry i took little longer to reply. I wanted to reply with the video link so everyone can see the improvement by tweaking around the Rate Roll P value (By default Rate Roll P & Rate Pitch P values are locked. So if you change Roll P value, Pitch P value changes by automatically. Rate Roll P = Rate Pitch P). And believe it or not i am pretty happy with the results (But still there are few minor problems). :)
Here is the link: Video
Few quick questions.
1). Why do all my motors heat up so quickly? As you can see in the video i hardly flew for two mins but during that time all motors got very hot. I am not sure why. Does anyone have the same issue with their motors(Specially, hackerStyle 20-22L)? I would like your suggestions to keep them cool.
2). Why my quad always go straight (Forward direction) when i take off? As soon as i give little throttle it just takes off and goes in the forward direction. Is there any parameter i have to change?
Thank you so much for all your help.
Cheers,
Kur
Permalink Reply by Vernon Barry on July 30, 2012 at 12:45pm We need logs from the APM flight to better help you with issues such as a yaw on takeoff. The reason is that we need to see what the sensors are telling the APM.
One thought is that since your motors are getting hot, we know you are drawing heavy current from the battery and thus any wiring next to the APM makes a strong magnetic field throwing off the magnetometer. You calibrated with the motors off (no magnetic field) and then when you take off, the magnetic field throws off the sensor. We can verify this in the logs. The fix is to get all motor and battery wiring (the thick wires) as far away from the APM as possible. Even a tiny distance further away helps. Twisting the power wires to the ESC and even the battery also helps counteract the magnetic field generated.
As to motors getting hot-well that's what happens when you use motors out of spec and possible prop mismatch. Going to a smaller prop lets the motor rev into it's designed RPM. This will also help most of your other problems.
Based on a couple of web sea
Permalink Reply by Kur on July 31, 2012 at 5:09pm I am not sure, how to get the logs file. Can you please guide me? I will be more than happy to provide you the logs so we can nail this issue down.
And I believe, i am not using motors out of specs or over powering them. I am using HackerStyle 20-22L with 10*4.5 props. The suggested props are 11*4.5 but i think, using lower diam. props won't an issue. I might be wrong.
Permalink Reply by Vernon Barry on July 31, 2012 at 6:22pm Sorry, I should clarify my statement. 3DR and Jdrones are selling as the standard kit 850kv 28mmx30mm motors. The alternate motor is the 880kv 28x36mm . The spec i saw on your motor are in the 920kv range with the not entirely different diameter and length. What is comes down to is the quality and size of the magnets in the rotor. Let's look at the facts:
Your motors run hot, but are also prooducing enough power that you had to modify the PID values. Hence my terminology of "out of spec" which is why you had to change the PIDS and further, why they run hot. It's not that they don't work, you just had to make some adjustments and they run hot because they are not optimal.
or over powering them.
Motors conduct current or in other terms, draw power. the only way to "over power" a motor is to supply higher battery voltage than rated. It's basic Ohm's Law. I meant your motors have a higher than the kit motor kv rating. Some will argue it's not that much of a difference but the fact you had to change the PIDs is telling.
This is the problem with the project. Guys like you buy parts someone else used that are not the same as the kit sold. When you stray, the default firmware values are wrong along with the host of other issues such as heat. It's also probably hard on your batteries and you seem to be experiencing problem that that much power throws off the magnetometer. One single decison changes lots of things in the system.
I'm not trying to bust on you, but just make others who read this post and are in the buying stage to re-think straying from the "standard" config. I bought the exact same motors 2836-9 (AKA 880KV) from RCtimer for a lot less so I'm not saying you must buy from 3DR or Jdrones, just a similiar spec motor (rotor diam and length, weight, and windings) is a good choice for a beginner because thats what the default firmware values work best with and generally, it's well matched without heat and thus also long flight times.
That said, here is how to download the logs:
http://code.google.com/p/arducopter/wiki/AC2_Logs
Kur,
Here is a wiki page that will get you started on how to download logs.
Re your quad flying forward on take-off...I guess you can temporarily resolve this by changing the trim on your radio although this isn't a good long-term solution because when it comes time for you to start playing with loiter, you will find that having trim on the radio means the loiter code thinks you want to override the loiter position so it won't work.
A better solution is to either use channel 7 to level your quad while flying (must be in a wind free environment) or perhaps when you do the level command in the mission planner's "Arducopter Level" screen just lean the copter back a bit (i.e. put a magazine under it's front legs).
Permalink Reply by Kur on August 1, 2012 at 8:32pm I have attached a zip file which contains all logs files. Hope these files help to search out if there is some bugs in the code (ArduCopter Software) or something else.
I am still trying to make modifications to the quad. I am trying to move all the wire as far as i can so that their magnetic field won't interfere with the APM.
Season Two of the Trust Time Trial (T3) Contest has now begun. The fourth round is an accuracy round for multicopters, which requires contestants to fly a cube. The deadline is April 14th.131 members
47 members
51 members
24 members
1297 members
© 2013 Created by Chris Anderson.
Powered by
