MiniMonster V1.0 machine | planning the control

More
22 Jun 2024 23:17 - 22 Jun 2024 23:19 #303576 by ihavenofish
So, The hardware portion of my minimonster (datron wannabe) mill is ready, and I now need to lay out the control "for real".

First up, I need to decide on the system. I want to stay with linuxcnc at this point for cost and flexibility, and with renewed work on jerk control it seems like a good plan. Anything "better" would add several thousand to the machine and lock me into their system.

So, lets see what we need

1: axis drives. Planning on using Delta B3 drives. There are pulse versions, and then there are ethercat versions. Is ethercat in linuxcnc at a stage where it "just works" yet? Can it read an absolute encoder to remove the need for homing? Related: what lower cost options are there for ethercat IO?

2: spindle drive. Is there a way to track rpm/bogging down at the control lever on a spindle with no encoder? Maybe something optical? Do we gain anything by not using tradition analogue control? I think the drive has modbus/rs485 (delta ms300).

3: ATC magazine. My atc will be spin by a small 24v ac servo. I expect I would run it as an axis, but I need some safety and inteligence. Anyone ever implement a system that not only check the mag position, but also actively knows if a tool is in it? Is this something best done in an MCU than then sends out more simple responses to linuxcnc?

4: Active chatter control. Anyone got any thoughts one this? The principle is you bond an accelerometer to the spindle nose, and if chatter builds up, you can respond in several ways. 1 is to pause the program. Another is to modulate feeds or spindle speeds. Superficially seems an easy feature to add but I have never seen it done yet.

5: 3d tool measuring. I am looking at a little laser tool setter and it can in theory measure both the length and the diam of the cutter. Do the available probing cycles in linuxcnc/probe basic allow for such a thing?

6: Limit swapping. My ATC and tool setter live outside the cutting volume. We had the same issue on the brothers. Did someone figure out a simple easy way to "switch envelopes"? Move soft limits, ignore limit switches etc?

That's kinda the core of what I'd like that I am unsure of right now. Any thoughts on any of these are welcome. The rest is relatively straight forward.

 

Some clips of the prototype version running if you haven't already seen them.





Attachments:
Last edit: 22 Jun 2024 23:19 by ihavenofish.
The following user(s) said Thank You: tommylight

Please Log in or Create an account to join the conversation.

More
23 Jun 2024 02:33 #303590 by rodw
I can't answer all your questions but:

1. Ethercat has always just worked. It just how much work there is between just and works has reduced :) . If your drives are CIA402 compatible, its easy as there is now a generic driver here at the official driver repo github.com/linuxcnc-ethercat/linuxcnc-ethercat/tree/master

1.a Some people have used absolute encoders. Homing might be a work in progress. I am waiting for a bit of hardware to test my repo github.com/rodw-au/cia402_homecomp home_offsets and gantries are not supported at this stage.

2. My modbus spindle shows accurate RPM and also load. Finding an affordable encoder input is problematic outside of beckhoff.
This one www.icp-australia.com.au/product/ecat-2074a/
And this Chinese one is interesting  and would cover your IO too.But you would need to build a generic driver for it. www.icp-australia.com.au/product/ecat-2074a/

For cheap I/O, Rtelligent has one I use that includes some PWM outputs (16 in, 16 out). There is also one by Deiwu. I have built generic drivers for both. XML are in here github.com/rodw-au/linuxcnc-cia402

Limits and home switches (if needed) can be attached to the drives and then you home internally so IO will be limited don't discount Beckhoff.

Please Log in or Create an account to join the conversation.

More
23 Jun 2024 02:45 #303591 by jimmyrig
4. That one would be easy enough, either mcu that reads values and hits a pause button, a python script that does the same. Sure you could make a half component do that as well.

3. Figure a simple induction or ultrasonic sensor could read if the tool is occupied. Don't think this one would be easier with an mcu.

5. Should work fine. Don't think probing cares what the tool setter is. But don't have much experience here

2. Might be able to get rpm with a simple 1 point sensor,. If not find a vfd that has closed loop control such as SV (Sensorless vector) which monitors the rpm with extra circuitry (gs20)

1. If everything is ethercat then go that route. I bet you could figure out a wauly to use the IO of the servo drives. Most have 3-4 of em.

If not then mesa and step dir is hard to beat from a simplicity and reliability side.

6. Not sure on this one

Please Log in or Create an account to join the conversation.

More
23 Jun 2024 03:14 #303593 by ihavenofish
Thanks!

Servos will be delta adsa-b3. I need to read all the specs now.

The spindle itself has no encoder, and no easy facility to add one. Will need to see what it possible to cook up. Its really only for a safety shut down. (program 60k, see the spindle has bogged to 50k, you know something is wrong, shut down). Spindle load is not always a precise indicator on these high speed spindles it seems (see my steel cutting video where it is varying between about 18000rpm and 14000rpm)

Good point on the IO. I have an ek100 here somewhere. that plus one 16 in and one 8 out might be all that's needed and only $300 or so and open to easy expansion. also beckhoff has a local rep that's visited me before, so easy support.

Please Log in or Create an account to join the conversation.

More
23 Jun 2024 03:21 #303594 by ihavenofish
Thanks

The gs20 is the same as the ms300. I'm using a GS10 on this spindle right now.
Problem is they are not fast enough. I need 1000hz. I can find very few 1000hz drives at all (nuclear proliferation sanctions) and the ones I do find are only V/F - like the delta MS300HS.

On the atc mag sensors. that gave me a thought. i just need 2 sensors with a trigger at each station. one trigger is "on station", and the other senses the shaft somehow below the shank. would need to have 5-10mm range to not get hit by anything.

Please Log in or Create an account to join the conversation.

More
23 Jun 2024 03:50 #303598 by ihavenofish
ooh, i wonder if the chatter control sensor can measure speed. 1000hz x 3 flute will make a distinct 3khz vibration. hmmmm.

Please Log in or Create an account to join the conversation.

More
23 Jun 2024 04:01 #303599 by jimmyrig
Exactly, id use an induction sensor. something like this might work. LJ18A3-8-Z/BX

They make bigger ones and smaller ones. The bigger they are the longer the detection distance.

Those are cheap ones, they make nice industrial ones as well.

Well if the vfds you can find are open loop why not single point encoder. You could use a sensor like the one above, they make some that work off reflective tape as well. (Check out laser tachometers for the idea)

Interesting idea on the chatter vs speed. Not sure how easy it would translate to rpm. Easy way to test though......just don't enter the wrong flute number

Please Log in or Create an account to join the conversation.

More
23 Jun 2024 04:09 #303600 by ihavenofish
there is no way to add any form of encoder to the spindle.

When i analyse the audio track form my steel cutting video i can see the motor frequency quite clearly, distinct from the "teeth" hitting frequency (which is stronger because its louder).

Seems worth trying. Accelerometer vs piezo sensor, etc.

Please Log in or Create an account to join the conversation.

More
23 Jun 2024 05:26 #303607 by rodw

there is no way to add any form of encoder to the spindle.
 

I installed one of these encoders www.masso.com.au/product/optical-encoder/
But I still have not got anything to read it.

Thread mills are a nifty way to cut threads without encoders and rigid tapping.

Had a quick look at accelerometers. The one I saw had 3 analog outputs so you might be able to read the frequency in a realtime component. I have a routine that does a moving average in a comp. If the frequency exceeded the moving average it might be because of chatter!

Please Log in or Create an account to join the conversation.

More
23 Jun 2024 05:27 #303608 by ihavenofish
Weird, so the ms300 has an "actual speed" display, however in a cut that is clearly bogging down 15-20%, it is claiming a fixed frequency dead on the programmed one. Seems not to be an accurate speed... OR the audio is deceptive.

Please Log in or Create an account to join the conversation.

Time to create page: 0.099 seconds
Powered by Kunena Forum