On Sunday 16 December 2012 18:48:56 andy pugh did opine:

> On 16 December 2012 22:36, Gene Heskett <[email protected]> wrote:
> > Now, hopefully, I can go back to figuring out how to deal with a motor
> > controller whose input sensitivity curve is a Cast Iron Bitch.
> 
> Is it definitely the controller and not the PWM to voltage stage?
> 
> It wouldn't be all that hard to make a linearisation curve component.
> 
> I am in the middle of something else at the moment, but if you don't
> fancy writing C code yourself then I might be able to find the time
> later in the week.

Hang on Andy, I have an idea or 2 to explore yet now that its running 
again.  My first idea was to square the velocity before handing it to the 
pid.0.feedback, but that was just as crazy in the other direction.  With it 
squared, I could adjust to motion rps=1 was 1 rps, but then motion-rps=10, 
the spindle was only about 1.6 rps.  Not practical. :)

So now I have a scale pair, with scale.0 sending a fraction of enc.velocity 
to a sum2.

Then a scale.1 is sending a fraction of enc.velocity to both inputs of a 
mult2, and its output to the 2nd input of the sum2, with its output --> 
pid.feedback.  By adjusting the gains and offsets of the scale's, I should 
be able to arrive at a better matching curve.  I think, I have not graphed 
it out yet.

It was while trying to set that up that I had the machine crash that 
fubarred the vars & position files & has caused a whole days finger 
twiddling.  And probably Michael several hours of staring at code looking 
for something that would give the error output verse I was getting.  At 
this point I have no clue which of the two files was the problem.  If it 
was the empty position.txt file, it strikes me that situation should be 
treated the same as if it was missing and just re-create it.  Much the same 
situation vis-a-vis bad data in the vars file.  As to how to detect fubar 
data in the vars file, I would think that anything beyond the set limits 
should either be clipped at the limits, or tossed until rewritten by 
current data on the next exit cleanup.

As to doing that, I haven't a clue since I have never built LinuxCNC from a 
tarball.  I'll leave that up to the guys here that actually grok python or 
whatever the prime language is under the hood.  I can carve code in 
assembly or in the C we have on a 6309 or 6809 cpu running Nitros9, and 
have published some in the last month but that is a very far cry from doing 
that on the X86 stuffs.  I know just enough C to be dangerous.  So what I 
write on linux, is done in bash.  That makes me very grateful that there 
are folks here that CAN grok x86, and it looks like a lot of ARM of late is 
being investigated too.  I think thats great but the best I can do is stand 
on the sidelines and cheer, saying thank you as best I can.

Hip hip hoorayy!

Cheers, Gene
-- 
"There are four boxes to be used in defense of liberty:
 soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
My web page: <http://coyoteden.dyndns-free.com:85/gene> is up!
You enjoy the company of other people.
I was taught to respect my elders, but its getting 
harder and harder to find any...

------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
Emc-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to