Pretty untimely I know -- but I've been running a benchtop mill with 
closed-loop servo control + cheap chinese (igaging) slides, but took a 
(very) different approach which works well for me :). Haven't updated this 
repo for the past couple of years but for what it's worth -- see below... 
----------------------------------------------------------------------------
linuxcnc / machinekit configuration + miscellaneous setup scripts for 
"Ludd" - a homebrew machinekit + beaglebone-based CNC controller for a 
converted Sieg (aka Grizzly/Harbor Freight, etc mini-mill)

Although there are many CNC conversions to be found on the interwebs, this 
one is unusual in that it's set up for closed-loop/hybrid servo motor 
control + position feedback, using a pragmatic combination of 
cheap/surplus/hobbyist hardware and improvised, soldering-iron friendly 
electronics.

The design employs high quality, analog input / analog feedback AMC motor 
amplifiers (to be found new on ebay for ~ $30 each) driving a set of 
Parker/Parvex PM servo-motors (rescued from the Twin Cities' iconic 
emporium of everything liquidated, imperfect or obsolete - Ax-Man surplus)

LinuxCNC position feedback is provided via a USB/serial stream of absolute 
position values, obtained from a set of arduino-monitored 21-bit capacitive 
scales.

The scales (originally added to provide low-cost DRO) had been thrown in 
for free with the mill when it was obtained for $300 through Craigslist. 
They were adapted to serve for this project by replacing the DRO readouts 
with an Arduino set-up to decode the scale positions (aided by some nifty 
reverse engineering by Yuriy Krushelnytskiy. Viz: 
http://www.yuriystoys.com/2012/01/reading-gtizzly-igaging-scales-with.html )

The position data is supplemented by direct tachometer-driven/analog 
velocity control loops between the motors and amplifiers.

Amplifier input position control is also continuous/analog (+/-10v), 
synthesized from micro-transformer isolated 20khz PWM signals, using a 
salvaged RS232/423 driver chip coupled with a simple low-pass filter.

The position control PWM is generated within the Beaglebone PRU, using the 
(unaltered!) machinekit stepper control driver originally written by 
Charles Steinkuehler.

Code + circuits (again, for what little they are worth), 
at https://github.com/christophermdickson/ludd

Cheers!

Chris
On Friday, January 29, 2021 at 10:06:56 PM UTC-6 god...@gmail.com wrote:

> Hello All:
>
> First of all, I hope that I am making myself clear to everyone. (NOOB 
> here!)
>
> I have a mill setup that is working with LinuxCNC on the mesa 7i43 with 
> both X and y Drives currently. My goal is to implement a DRO readout 
> feedback loop into the FPGA DE0-Nano-Soc with machinekit. I would like to 
> make a type of DRO feedback servo loop with the FPGA in realtime using the 
> FPGA as the counter decoder/resolver functions. After still trying to 
> understand machinekit I am looking for advice to see if this would be the 
> best way to approach this problem.
>
> I have magnetic slide digital readout with no usable output digital 
> signals. But after probing inside the unit (Sony unit with magnetic slides) 
> I can tap off a digital logic chip that creates a square wave in 
> retaliation to another pin on the circuit card. Both signals would move in 
> either direction of the magnetic slide. (basically covering which direction 
> it is moving). The signals would be independent of the DRO itself. (for 
> example, resetting the DRO to zero would not affect the signals into 
> machinekit).
>
> I guess in essence this would be a replacement of the resolver function 
> without all the math of signal processing? If I am correct? Also, having 
> "limited" experience with Verilog HDL, I would be creating a HDL block that 
> would either run separately or be included into the HostMot2 function block 
> in the mkscofpga github Project.
>
> I understand the risks associated with a servo feed back loops such as 
> this. 
> Hence, why I am seeking advice. 
>
> Your thoughts??
>
> Thanks!
> Mike Kennedy
>
>
>

-- 
website: http://www.machinekit.io blog: http://blog.machinekit.io github: 
https://github.com/machinekit
--- 
You received this message because you are subscribed to the Google Groups 
"Machinekit" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to machinekit+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/machinekit/f1141099-1f3a-44ff-a534-47d93cfbbf87n%40googlegroups.com.

Reply via email to