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.
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.
This is the modified version I am using. It is all original 2.1.0r just the the heli.pde is modified.
Without the scaling I still have enough accuracy on the throttle. I do not miss the arming ability, as I do not change the lower end point. I only modify the high end point of my radio at max pitch to get more accuracy.
@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.
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 :)
Meh, it's not working yet. I've got my APM setup so at least I can play with it. I'll report back when I get it.
Programming by random permutation continues....
This is WAY more complicated than I thought it was.
I think that it would work properly if I could get it to set up. But I can't even get it to set up properly. Weird values coming out. Not sure I'll be able to figure it out. Hopefully Randy can see the spirit of what I was trying to do and fix it.
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