Advanced Search

Search Results (Searched for: )

  • Dudelbert
  • Dudelbert
Today 15:29 - Today 15:33

Considering a Full Rewire on a Working Schaublin 125 CNC

Category: Turning

Today I worked on the variator.

I think I have a nice way to automate it.

The variator is set by an AC motor and has end stops at its extremes, but no way to know the current gear ratio. I have the hardware set up so the two contactors for “Go Faster” and “Go Slower” cannot be on at the same time, and they cannot be active while the corresponding end stop is triggered.

I use one of the analog outputs of the VFD to get the VFD frequency into the 7i84.

My basic idea is to use the variator to try holding the frequency of the spindle motor close to 50 Hz. The spindle PID would not be aware of this, I mean it would see the result, but the variator control and spindle PID are separate systems.

I have trouble getting the spindle PID stable even without introducing this extra error. If anyone has a rule of thumb on how to tune a spindle, I would be all ears. But I wanted to try the variator stuff anyway.

And I think it is working. I built a simple bang-bang controller, setting faster if the frequency is under a threshold and slower if it is over another. Both are reset when they cross over 50 Hz. This seems to work fine.

With how unstable the PID is at the moment, this does not really find its sweet spot, but I think the concept is sound.

I attached my current HAL and INI. This is mostly gathered from various examples. If you find any mistakes or inaccuracies that may bite me later, I would be happy about critique. The variator stuff is at the end of the custom.hal.

Thanks for reading, and happy Easter to you all.
  • ewlsey
  • ewlsey
Today 15:17
Cubic Interpolator was created by ewlsey

Cubic Interpolator

Category: General LinuxCNC Questions

Can someone help me understand how the cubic interpolator works? There doesn't seem to be any documentation explaining what it does. The only things I can find are for the old exact stop trajectory planner. 

As far as I can tell control.c queries the trajectory planner, runs that data through the kinematics, then creates joint->coarse_pos data and adds it to cubic.c, which is the interpolator. It seems to repeat that until the interpolator is full. 

Then it runs cubicInterpolate() which I guess takes joint->coarse_pos and interpolates it into joint->pos_cmd. 

What are the course positions and where do they come from? Are they the beginning and end of a g code move or smaller segments created by the trajectory planner?

What is the interpolator doing? It seems to be trying to create a cubic spline, but what are the way points and were do they come from? How many points does it need? 

On that note, is there something I'm missing that runs faster than the 1ms servo loop that needs position and velocity data from an interpolator?

Hopefully someone knows. The control.c program is full of comments to the effect of "this is how I think it works". 
  • jetbadger
  • jetbadger
Today 14:50
Replied by jetbadger on topic Lathe C axis homing

Lathe C axis homing

Category: General LinuxCNC Questions

I was not able afterall to get the C axis to behave with the previous setup. It would home and reach setpoints very well, but after going into spindle mode and back into Caxis mode it hunts for home position in almost a comical way no matter how much I played around with the PID values for the orient thingy and I couldn't wrap my head around the multiple gains for it.

I will try your config, @spumco. Ended up pretty much copy/pasting your's and atleast on the bench it starts up so I'll see if I can figure it out on the actual machine. 

From what I gather, logic.s0free should be an AND device, so with personality=0x105? Maybe there are other essential things there? I assume SPIN0-xx  signals are distributed in another file?
 
  • ewlsey
  • ewlsey
Today 14:49
Replied by ewlsey on topic LinuxCNC S-Curve Accelerations

LinuxCNC S-Curve Accelerations

Category: General LinuxCNC Questions

Unless I'm not understanding some fundamental concept, isn't that how it already works?

You can't cheat the actual physics. Any corner 90 degrees or less will require a nearly full stop to achieve the P tolerance. The more acute the angle, the smaller the blend radius you can have to satisfy the P tolerance, and the closer to a full stop the machine has to come.

Put another way, centripetal acceleration, jerk, snap, crackle, etc depend only on velocity and radius. If you want to follow a constant radius at a constant velocity, the acceleration, jerk, etc will be constant. Only their direction changes, not their magnitude.

The only way to reduce jerk in a corner is to reduce the velocity or increase the radius.

An option, which has been discussed earlier, is an "egg" shaped corner radius where the jerk increases to a maximum at the middle. That might be preferable since at the midpoint the jerk force is shared by both axes. You could accomplish roughly the same thing by decelerating before the radius, accelerating toward the midpoint and decelerating again before the exit.

Another option would be to permit higher centripetal jerk than straight line jerk. This would be similar to input shaping used in 3D printers.

I don't see how much can be gained here. Fancy blending algorithms will be too slow to benefit the fast machines they are intended to benefit.
  • clayton2ndtry
  • clayton2ndtry
Today 14:22

LinuxCNC not working with new 64-bit desktop and parallel port

Category: General LinuxCNC Questions

Searching for guidance gave me only a sensation that the parallel port might have the wrong address. Supergrok saved the day. It helped me find that the built-in parallel poets are at 0x3F8. This rang a bell from when I wrote a terminate-and-stay-resident PC-DOS (stop laughing) program that intercepted data going to the parallel port and converted Epson control codes to Postscript. It was wonderfully elegant in how it allowed programs with no Postscript support to use Apple LaserWriters

Changing one of the LinuxCNC setup files to talk to the parallel printer at 0xC010 and problem is solved.
  • endian
  • endian's Avatar
Today 13:39
Replied by endian on topic LinuxCNC S-Curve Accelerations

LinuxCNC S-Curve Accelerations

Category: General LinuxCNC Questions

Jerk-Aware Full-Stop Fallback (The "G64.1" Proposal) - is possible solution but what if ...

Path Tolerance Splining (Point Compression): Instead of treating the corner as a "sharp" mathematical point, use the G64 P tolerance to convert the corner into a tiny, high-order polynomial curve (spline). This gives the "train" a physical radius to turn on, spreading the Jerk over several segments even at high speed?.... it should plan for the re-parameterized spline. By doing this, the "junction" disappears, and the Jerk limit is satisfied over a distance (the spline radius) rather than a single 1ms step. - but comp-power consuption will be high

or look-ahead Acceleration Pre-Smoothing...Use the look-ahead buffer to start the direction change "rotation" slightly before the actual vertex. By "bleeding" the X-axis velocity into the Y-axis earlier, you reduce the magnitude of the step-change at the corner. "Bell-shaped acceleration" or "Jerk-limited FIR filtering." - but not actual timing 

or second much faster thread which will handle just calculation to fine result .. as Taylor Series expansion to "fill in the gaps" between those 1ms updates: P(t) = P_0 + V_0 \Delta t + \frac{1}{2} A_0 \Delta t^2 ... This should ensure that the drive receives a perfectly smooth 4kHz or 8kHz stream, effectively making the Jerk "infinite" at the digital level but "finite" and smooth at the physical level ?
  • jschulze
  • jschulze
Today 11:49
Replied by jschulze on topic Pico Systems Servo Controller

Pico Systems Servo Controller

Category: User Exchange

Hi,
Sorry, just saw your reply. I'm happy to send it just for whatever it costs to ship. If you could get me an address I'll try to figure out a shipping cost.
  • andrax
  • andrax's Avatar
Today 10:32
Replied by andrax on topic Ethercat random jitter fix

Ethercat random jitter fix

Category: EtherCAT

I’ve been following this thread with interest all along. What surprises me, though, is that I haven’t experienced the jitter issues described so far. I’d be interested to know what hardware you’re using. Perhaps there’s a correlations 
  • andrax
  • andrax's Avatar
Today 10:24
Replied by andrax on topic Help with Lichuan drives

Help with Lichuan drives

Category: EtherCAT

First, show us what you’ve got and where you’re at. Your XML and ini files. If you’ve got any errors, include the dmesg output as well.I’m sure we can help you
  • Hakan
  • Hakan
Today 09:03
Replied by Hakan on topic Help with Lichuan drives

Help with Lichuan drives

Category: EtherCAT

Don't know where to start.
Here is an example of setup of a cia402 drive, your servo drive is a cia402 drive.
This is a starting point. Change vid and pid and this might work right away.

github.com/dbraun1981/hal-cia402/tree/main/example
  • HansU
  • HansU's Avatar
Today 08:05

LinuxCNC not working with new 64-bit desktop and parallel port

Category: General LinuxCNC Questions

You could first check if your parallel port is properly installed.

The command
lspci
should list a device with LPC Controller or LPT Controller or similar.
  • Sierevello
  • Sierevello
Yesterday 02:49
Gibbscam Post Processor was created by Sierevello

Gibbscam Post Processor

Category: General LinuxCNC Questions

I am converting my machine to Linuxcnc and currently use Gibbscam. Does anyone else here use Gibbscam and is there a current post processer for Gibbscam for use with Linuxcnc.

Thank You,
Steve
  • Lcvette
  • Lcvette's Avatar
Yesterday 23:15
Replied by Lcvette on topic Add Buttons in Probe Basic

Add Buttons in Probe Basic

Category: QtPyVCP

Happy to help, glad you got it sorted!!
  • Lcvette
  • Lcvette's Avatar
Yesterday 23:14
  • Lcvette
  • Lcvette's Avatar
Yesterday 23:13
Replied by Lcvette on topic probe basic m6 error

probe basic m6 error

Category: QtPyVCP

Good catch! Glad you figured it out!
Displaying 1 - 15 out of 284834 results.
Time to create page: 3.574 seconds
Powered by Kunena Forum