I have just bought the ArduPilot Mega 2560 Full Kit... plus the Triple Axis Magnetometer HMC5883L. I should have it built over the weekend.. then i'm off to a my mates machine shop, and i'll make the splitter plate for the lower frame onto which i am going to fit the Ardupilot. the magnetometer i'll put on the tail as suggested. I am going to use my X-cell Razor 600E. For those that dont know its around the 50 size nitro heli.
Do i need to buy any other sensors i.e. the Sonar... i can fly a helicopter all day long but this is my first time flying one with stabilisation so any tips would be gratefully appreciated.
If this works well then i am going to try and use it on my x-cell gasser. i can get up to 20 minute flights with this. But i think for the time being a battery 600 is the way to go.
i'll post some pictures when i have it all together.
To overcome the problems I have with the scaling and trim function, I just combined the code of 2.1 version from the download section with the heli.pde from version 1.0.49 (before scaling was introduced).
I got some errors during compiling because the angle boost function was missing in that old heli.pde.
So I added the throttle boost funtion and as well following lines:
// calculate throttle mid point
heli_throttle_mid = (g.heli_coll_mid-g.heli_coll_min)*(1000.0/(g.heli_coll_max-g.heli_coll_min));
The code works now without scaling. The other problem with limited pitch and roll movements at the max and min positions of collective pitch is solved as well by this.
Randy: You as trad heli coding expert. Did I miss out anything by using the old heli.pde from version 1.0.49 and adding angle boost as well as above lines?
On the bench it looks like as everything works fine now and I think I could go back test flying again. I only have the impression, that in stabilize mode the swash moves slightly up and down as if any alt hold or auto throttle function tries to control the collective pitch.
@Robert, i can compile it as a quad but when i change it to HELI_FRAME
#define FRAME_CONFIG QUAD_FRAME
I get errors.
Crap, you're right. I had done the #define Heli_Frame before, but must have undone it at some point.
I'll work on this and hopefully be able to test it myself today.
Could you send me your modified code? or attach it here? My email is rmackay9 _at_ yahoo.com.
I think one thing that will be missing is that the throttle scaling helps you control the throttle more accurately. Without it you'll find that if you limit your collective pitch's min or max that the top and bottom of your radio won't cause any up-down movement in the swash so you're throwing away some of the radio range.
More importantly, doing it in the radio you lose the ability to arm/disarm (and thus set home position for RTL) as well as go up and down in Alt_Hold.
Randy, have you looked at my changes? I think it might work, I'm just having number type conflicts. Currently trying to fix it by random permutations, which isn't a great way to go.
Malcolm, try this one.
I went back to square one. This one uses swash_min and max set at 1100 and 1900 which you can change if you want. So, the swash movement will be completely unrestrained. coll_max and coll_min still exist, but should be ineffective.
It's already got #define heli_frame in it, and it compiles. You should be able to reuse this one with your old parameter setup I think.
Ok, I found the problem with the original project change. I went back to square 1 and stepped through it one change at a time and found 3 mistakes. It compiles now. I went back and fixed the same 3 mistakes in Rob Mod 1 and it compiles too now. So I think this is it.
This is the full fix. Now I'll go downstairs and set up my APM again and test it.
***DO NOT FLY THIS***
@ Robert... thankyou for working on it. I'm at work at the moment but i'l try it as soon as i get home :)
Hi everyone - a little advice needed on the Gyro function in the latest code:
Finally got around to flight testing this morning - am running the latest Mission Planner download (.29) and updated to the latest firmware.
On the bench, everything works as expected in terms of collective pitch, cyclic movement and stabilisation. GPS links nicely, magnetometer loaded with correct dec, showing expected heading etc.
I did notice that, with the APM gyro enabled, the movement of the tail servo from the rudder stick input is almost imperceptible - but its in the right direction. I selected the manual throw setting, and got the full range of travel in the correct direction. I then selected Save and the rudder input response reverted to almost imperceptible again.
On picking up the tail and moving it smartly through 90 degrees, which is the way I test my Futaba GY401 setups, the servo responds with the sort of movement range expected, but the direction seems wrong.
I then tried reversing the throw in the setup tab in MP, but all this does is reverse the sense of the stick input. No help there.
So I proceeded somewhat gingerly to the flight test - the heli, a TRex500, is fitted with a huge pair of Morley inflatable floats (which kinda shows my age!), so I figured no harm done if I go careful with the tests.
The heli spooled up nicely, and the control reactions in terms of cyclic were as expected. However, on reaching the head spped where she went light on her floats, it became clear that the inbuilt APM gyro wasn't coping - further gentle exploring indicated that the gyro was trying to respond in the opposite direction and thus exacerbate the torque-spin.
Manual input to counteract the torque was completely ineffective - I think that the output from a manual input was wholly inadequate.
I'm going to set up an external gyro so that I can at least carry on with the flight testing, in terms of stabilise, alt hold and loiter modes. But it seems to me that I can't progress to the Nav modes using WayPoints and RTL unless and until I can get the APM gyro to work
Does anyone have any advice or experience to offer on how I can rectify the problems I'm having with the APM gyro functions. I've checked the forums and my setup thoroughly, and swapped out the servo (a digital HX jobbie) to no effect - I don't suspect the rudder servo being at fault as it works full travel when manually setting the travel in setup
Hi david as soon as i get home from work, i'll grab my machine and do a quick work through for you, should be home in a couple of hours.
I believe the problem is your Rate Yaw P or Rate Yaw Stabilize are too low. That is what is causing it not to respond to stick movements. I use Stabilize P 2.0 and Rate P 0.4
When you say that you reversed the direction of the servo in the Setup tab, do you mean the Radio Input setup tab, or the AC2 Heli tab? It needs to be done in the AC2 Heli Tab.
I'll have a look at your changes re the swash range and hopefully check in a fix tomorrow for the if all goes well. thanks.