Hi guys,
First of all, I've bought into the plan of waiting until
MP_Heli is
more stable before converting it over to the newer codebase, so
please
don't take this as pressure of any kind. :) It's just my
ramblings
on how I would go about updating MP_Heli to the new codebase
whenever
we all decide to do that.
The first task before converting it
over will be to figure out the svn
revision number of the MP code that
MP_Heli is based upon, and then
running a big diff from that old revision to
the current state of
MP_Heli, to see a complete set of changes that make up
the heli
modifications.
Then we can figure out which changes apply to
the code that is now
MatrixPilot, and which set of changes apply to the code
that is now in
the libUDB and libDCM libraries.
Then we can figure out
how to add the necessary new functionality to
the libraries. Since
MatrixPilot and MP_Heli will share the same copy
of the library code, we'll
have to decide which of these changes we
want to apply to both apps, and
which changes should be optional, and
only enabled by the heli
code.
After that, we'll just make a copy of the current MatrixPilot
app,
call it MatrixPilot-Heli or any other name you chose, and merge
all
the remaining changes into that app.
How does that sound to you
guys as a future integration roadmap?
Ben
On Mon, Dec 20,
2010 at 2:53 PM, Marcus Fahlén <
marcus...@gmail.com>
wrote:
> John,
> We found out that there is is some fundamental
faults in the calculations of
> centripetal forces, or the conversion of
the coordinate systems used. As I
> pointed out; I'm rather "fresh" on
this subject but I'll do my best to
> learn.
> I can cantact Ben and
hear how much he is willing to help me (as a beginner)
> to get going with
a migration. That doesn't mean that the current MP-H
> development has to
stop, but we could build a code base to try to make the
> "big leap" at a
later point in time.
> I am as I mentioned retired, due to injuries and
side effects of these. I
> have a lot of time to spend, but not much money
to buy hardware I'm afraid .
> (Luckily I have a "sample account" at
Microchip so I can get the basic CPU's
> for different projects for free.)
I just got ten dsPIC30F4011 in DIL
> packaging meant for building a
"HILSIM UDB-clone" so that I don't have to
> use my (later) flying UDB as
bench test equipment which tends to ruin them
> rather
quickly.
>
> Talk to you later!
>
> My best
regards
>
> / Marc
> On Mon, Dec 20, 2010 at 7:25 AM, John
McClelland <
mcclell...@gmail.com>
>
wrote:
>>
>> Hi Marcus
>>
>> Just a VERY
short history of the development of MP-H...
>>
>> Yes it
started with Aileron Assist (this was a while back). I wrote some
>>
code to control the swash and few a few other things to get started.
Bill
>> and I then got a version that should work for my TREX 450. I
started
>> testing and immediately found that the gyros on the Red
Board were too
>> sensitive to vibrations and would always saturate. We
tried various
>> filtering and vibration isolation, but nothing really
worked. Bill sent me
>> a Green Board with gyros with better vibration
sensitivity, but limited rate
>> characteristics. It wasn't until we
got the Invensense gyros did things
>> start to
work.
>>
>> Once we got pitch and roll stabilization to work I
had some discussions
>> with Ben and Bill about trying to integrate
with the mainstream MatrixPilot
>> development. There were pluses and
minuses, but in the end I jumped in the
>> deep end and got the (then)
current version of MP 2.0 converted to helis.
>> This is basically
MP-H.
>>
>> As MP continued to develop, I had more discussions
with Bill and Ben and
>> we decided that we had a lot of work on MP-H
to catch up with even 2.0 since
>> we still had to impliment yaw
stabilization, heading hold, and navigation.
>> So trying to fully
integrate MP-H with MP did not seem like the best
>> investment in time
and effort at this point.
>>
>> It has always been my
intention to make the jump to fully integrated MP
>> once we had all
the basics in place. We have made a lot of progress, but
>> much
remains. The heading hold work turned out to be a huge effort and
>>
still isn't 100%. We are hoping that some of the residual problems
are
>> related to the glitching reported on the extra output channels
(which we use
>> for yaw). I haven't had time to get that patch in so
don't really know if
>> that is it or not.
>>
>> So
the heli guys talk to the MP guys, but I'm sure we can do better.
Bill
>> was a major contributor to both.
>>
>> I
haven't looked at what it takes to convert to the 3.x structure. I'm
>>
sure Ben can tell us what is involved since it should be whatever diffs
have
>> been made between 2.0 and 3.x.
>>
>> If Ben
and Peter (and/or others in the MP dev team) are willing to help, I
>>
am willing to put in the effort...but it's just me right now with a
long
>> TODO list.
>>
>> Back to the original
question, I take it that HIL sim doesn't work
>> yet....even if we were
to convert to 3.x if I understand you correctly.
>> Maybe at some
point.
>>
>> Best
>> John
>>
>>
----- Original Message -----
>> From: Marcus Fahlén
>> To:
uavhel...@googlegroups.com>> Sent: Sunday, December 19,
2010 10:56 PM
>> Subject: Re: Heli and Quad Users shout out
>>
John,
>> My intentions with the X-Plane and HIL-simulation was from the
beginning
>> to use it for helicopter simulations since I had a few
nasty surprises that
>> cost me a lot of cash that I really couldn't
afford to fix. Now when the
>> helicopter is in flying condition again
I wanted a simulation environment to
>> test all aspects of the code
and hardware before trying to get it airborne
>> again with the UDB in
the cockpit.
>> When I started to ask around a little among the people
that has written
>> the plugin used for interfacing MatrixPilot to
X-Plane I was told to first
>> migrate the code base to the "new"
standard that we have called "the 3.X"
>> for a while. (It's the one
that is built on the libUDB and libDCM libraries.
>> This should do the
work much easier and would open the doors for using some
>> of the
other great stuff that has been developed by the MP dev. crew. I
>>
started to look at it using the guidelines given to me by Ben Levit
>>
(studying the migration of the RollPitchYaw demo for UDB.) I was
rather
>> surprised when I realized that this wasn't the common goal
for the rest of
>> the heli community, and I then understood that there
is no real cooperation
>> between the MP development team and the MP-H
development (team?). I was of
>> the impression that you had been
"pushed" in that direction before, but were
>> unwilling to go that
route.
>> When I couldn't get any help in developing anything for the
"old" code
>> base I concentrated on learning as much as I could about
the plugin,
>> datarefs and the "MP3.X" code base. I have since then
been busy "debugging"
>> MP3.X and the HIL-plugin. That is; I have used
100's of hours to find and
>> point out faults in the plugin that
wasn't so obvious at the first glance.
>> Now there is said to be work
going on to rectify the HIL plugin so that it
>> works as it is
supposed to, but I have no idea about the progress here. It's
>> only a
few weeks since I got my complaints classified as an "issue" or
>>
"issues" with the HILSIM plugin for X.Plane.
>> My understanding is
that you have been busy with the magnetometer part of
>> the project
which is vital to the further development of working rotor wing
>> code
for the UDB. For a while it looked to me as there were several guys
>>
that were working on horizontal translation algorithms, but it has been
dead
>> silent in the "uavheliboard" for a long time now. My guess was
that all came
>> down to working magnetometer for control of the nose
attitude, which I
>> believe is the base for the work on translational
algorithms in combination
>> with altimeters with greater accuracy then
a standard GPS. (barometric
>> altimeters in combination with
ultrasound or anyting else with millimeter
>> resolution and
accuracy.
>> I have had my ideas about how this should work, but since
I'm not a
>> programmer I can only speculate and do "pseudo code" for
manipulating a
>> rotor wing drone. (I was thinking vector math based
on accelerometer and
>> gyro inputs.) As I have understood the
"original" Mahony papers is dealing
>> more with vertical (helicopter
type) drones with counter rotating rotors
>> than airplanes. This was
also a discussion among the MP devs to do a more
>> "Mahonyish" code
base.
>> I have no idea about what this really means to us, but I
guessed that the
>> "new" (3.X) code base was a step in that
direction.
>> Then I don't understand (based on my knowledge level) why
the heli code
>> shouldn't migrate to the same code base?
>>
Isn't it a "relative" easy task to port the MP-Hv2 code to the 3.X
code
>> base? On Ben it sounded like even I with my VERY limited
C-skills should be
>> able to pull it off (with some help and guidance
from him).
>> I Have not had the energy to study all the different
versions of the heli
>> code since my health is deteriorating rapidly,
but my guess is that it is
>> originally based on the "Aileron Assist".
Am I right?
>> Would it be a monstrous task to do this "porting" so
that the helicopter
>> specific control routines can use the libDCM and
libUDB libraries?
>> If we were able to do this there is so much more
to "leach" from the MP3.X
>> There is virtually new functions and
options coming each day. I hardly keep
>> up with trying all the new
development code being produced these days. In
>> the last few weeks we
have had added support for PPM input (8ch in and 8ch
>> out), camera
targeting that works wonderfully, Matt's CAN-Bus co-processor
>> board
that opens for some interesting possibilities, support for a bunch
of
>> telemetry protocols which of MAVINK seems to be the most sensible
since it's
>> binary, and now last we have "bumped" the speed of the
telemetry UART to
>> ridiculous speeds by using the internal (fast)
clock and a 8x multiplier.
>> (I'm currently running my telemetry at
57600 baud and had it running at
>> 230400 just for test.
>> I
really can't see why we shouldn't do a move towards the 3.X code base
so
>> I would be very glad if you could describe the hurdles (in a very
short
>> format and understandable way so that even an old soldier can
get an idea of
>> what's the catch). Just point out the main problems
that hides from my
>> un-experienced point of view, so I could get a
better picture of what's
>> going on and which path is the most
sensible to take.
>> My whole involvement in this project is to learn C
programming and to
>> create a new base for a source of living for the
future.
>> I have some ideas that have been growing in my head for the
last 10
>> years... Now it looks like they might become a reality in my
lifetime. (A
>> small, cheap drone that's available to almost anyone,
but more importantly;
>> a drone that actually can do some useful
work.)
>> I'm thinking SAR (Search And Rescue) since this is what I
have been dong
>> for the last 10 years on the side of my ordinary work
as a computer network
>> engineer.
>> My understanding of the
MP-H is that it's your "brain child". I will no
>> try to convince you
to do this or that. My knowledge in this area is much to
>> modest for
that, and it's not my kind of being to try to "push" peole in
>>
directions against their will. I just want an (short) explanation to why
the
>> roadmap doesn't include migration of the MP-H to MP3.X code
base.
>> My very best wishes for a merry Christmas and a happy new year
to you and
>> your family.
>> Talk to you later
>> /
Marcus
>>
>>
>> On Mon, Dec 20, 2010 at 1:18 AM, John
McClelland
>> <
mcclell...@gmail.com>
wrote:
>>>
>>> Hi Marc
>>>
>>>
Will be good to have you flying again.
>>>
>>> I'm very
interested in your HIL sim work. Do you have it working for our
>>>
MP-H code? I am putting together some ideas on navigation and flight
states
>>> and trying them out on the simulator would help a
lot.
>>>
>>> Best
>>>
John
>>>
>>> ----- Original Message
-----
>>> From: Marcus Fahlén
>>> To:
uavhel...@googlegroups.com>>> Sent: Sunday, December
19, 2010 5:15 PM
>>> Subject: Re: Heli and Quad Users shout
out
>>> Hi John,
>>> Yes, I'm still with
you...
>>> I have a defect UDB that will not be flying my helicopter
anymore before
>>> it at least get's it's daughter board
replaced.
>>> I have been promised a new one by Sparkfun. After I
have changed the gyro
>>> board I will continue where I left (doing
initial tests on a .50 nitro). In
>>> the meantime I have been busy
studying the MP3.X code and done quite a lot
>>> of HIL simulations
using X-Plane to help develop the MP3.X I have also
>>> written code
for supporting the 868 PRO XBee (extended range XBee's with a
>>>
pesky duty cycle of 10%). These are ideal for long range telemetry
(80km),
>>> but with only 10% duty cycle (10 minutes of active
transmission per hour).
>>> This problem has kept me occupied but
now it's solved.
>>> Cheers!
>>> /Marc