Hello Tom,
Scratch that last one,I had a bad axis map.
I am a little confused about the ArcFeed function args.
I have never seen arcs defined using this nomenclature, so I'm not sure what to do with it:
(double DesiredFeedRate_in_per_sec, int plane,
double first_end, double second_end,
double first_axis, double second_axis, int rotation,
double axis_end_point, double a, double b, double c, int sequence_number, int ID)
IS there a manual I am overlooking?
Thanks,
-Brad Murry
--- In
DynoMotion@yahoogroups.com, "bradodarb" <bradodarb@...> wrote:
>
> Hello Tom,
>
> I may have claimed victory a little soon.
>
> I am able to make the calls, but now it just 'hang's at that point in
code.
>
> It set my console app come to the foreground, so I thought it was happy, but once I hooked it up to my test rig and got no motion I paused the debugger to see it was stuck on a call to StraightFeed.
>
>
>
> Thinking that I may have so weak of a motion profile, I played around with the Motion Parameters and set accels/speeds way high, but no change.
>
>
> Interesting to note that on StraightTraverse it does not move either, though it does sucessfully return from that function.
>
>
>
>
> I should also state that I only have one motor hooked up to my rig.
>
>
> -Brad Murry
>
> --- In
DynoMotion@yahoogroups.com, "bradodarb" <bradodarb@> wrote:
>
>
> >
> > Excellent Tom,
> >
> > I now have CoordMotion wrapped up and ready for beta.
> >
> >
> > Thanks so much,
> >
> > Brad
> > --- In
DynoMotion@yahoogroups.com, Tom Kerekes <tk@> wrote:
> > >
> > > Hi Brad,
> > > Â
> > > Yes I see the issue. The TrajectoryPlanner is not ever being initialized. As a temporary workaround try adding:
> > > Â
> > > CM.SetAbort();
> > > CM.ClearAbort();
> > > Â
> > > Before making any calls that would add trajectory. This will be fixed in the next version.
> > > Â
> > >
Thanks
> > > TK
> > >
> > >
> > > --- On Fri, 7/8/11, bradodarb <bradodarb@> wrote:
> > >
> > >
> > > From: bradodarb <bradodarb@>
> > > Subject: [DynoMotion] Re: Object access
> > > To:
DynoMotion@yahoogroups.com> > > Date: Friday, July 8, 2011, 8:28 AM
> > >
> > >
> > > Â
> > >
> > >
> > >
> > > I also wanted to follow up that I can call StraightTraverse to any position without issues.
> > >
> > > _______________________________________
> > >
> > > I can consistently produce the access violation exception with the
following methods:
> > >
> > > A.
> > > 1) Call StraightTraverse to all zero/ Or call do not call Straight feed at all.
> > > 2) Call StraightFeed or ArcFeed with any of the position params not equal to zero.
> > >
> > > B.
> > > 1) Call StraightTraverse to a non-zero position.
> > > 2) Call StraightFeed or ArcFeed with all of the position params equal to zero.
> > >
> > > I can make calls to all the methods without exceptions or errors if I do the following:
> > >
> > > C.
> > > 1) Call StraightTraverse to all zero/ Or call do not call Straight feed at all.
> > > 2) Call StraightFeed or ArcFeed with all of the position params equal to zero.
> > >
> > > -Brad Murry
> > >
> > > --- In
DynoMotion@yahoogroups.com, "bradodarb" <bradodarb@> wrote:
> > > >
> > > > Hello,
> > > >
> > > >
> > > > I am testing the coordinated motion API that I have wrapped in c#. It seems that I can manipulate public members fairly well.
> > > >
> > > > There is a problem I have with ArcFeed and StraightFeed.
> > > >
> > > > If I pass in all the position parameters as 0.00's everything is happy, I get no errors from the kflop nor the debugger.
> > > >
> > > > When I pass in values that would actually produce motion
> > > > (I am trying the exact positions as in the Simple CoordMotion C++ example)
> > >
>
> > > > I get an access violation exception.
> > > >
> > > >
> > > >
> > > > I am wondering if I am instantiating the CoordMotion class poorly on the C++ side.
> > > >
> > > >
> > > >
> > > >
> > > > When I instatiate a new CoordMotion it calls this in my c++ export DLL:
> > > >
> > > > dllexportmethod(args)
> > > > {
> > > > CCoordMotion *CM
> > > > CM = new CCoordMotion;
> > > > *handle = (long)CM;
> > > > CM->m_board = boardnum;
> > > > }
> > > > the handle was an Intptr in c# that was passed by reference
> > > > and I now use the handle to ref the CCoordMotion instance
> > > > in subsequent calls to the coordmotion object
so it follows this pattern:
> > > >
> > > >
> > > >
> > > > CCoordMotion *CM = (CCoordMotion *)handle;
> > > >
> > > > CM->[CCoordMotion Function call here]();
> > > >
> > > >
> > > >
> > > >
> > > > Again this works fine with most members and I only get an exception when commanding actual motion( no probs sending all zeroes )
> > > >
> > > > Is it OK for CKMotionDLL class and CCoordMotion class to exist simultaneously? Are the fighting over the board?
> > > >
> > > >
> > > > hmm... maybe I am not enabling all the motors - but I get an error from the board if I do that from KMotionDLL, and here I get no errors other than the exception.
> > > >
> > > >
> > >
> Thanks,
> > > >
> > > > Brad Murry
> > > >
> > >
> >
>