Two retrofitted machines ready for doing some work

12 Oct 2022 10:30 #254014 by fsabbatini
Hi Everyone,
just finished two more retrofitting, Burgmaster milling machine and Promecor lathe

hope you like them 
The following user(s) said Thank You: RotarySMP, tjtr33, arvidb, tommylight, Clive S, rodw, silopolis, my1987toyota, spumco

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

12 Oct 2022 12:25 #254019 by RotarySMP
Nice clean control panels. Do you use Gmoccapy?

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

13 Oct 2022 10:48 #254061 by fsabbatini
No, not at all,
Take a look

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

14 Oct 2022 02:28 #254094 by spumco
You're killing me with the teasers...

I've watched your videos multiple times, and I'm curious about your implementation of a 'proper' single-block function.  As I understand it, LCNC trajectory planner sends motion 'blocks' or 'groups' to the motion handler.  I'm sure I'm butchering the terminology, someone can correct me.

This results in a step mode where more than one line of gcode will be executed if there are non-movement lines after a movement line.  This function has been described to me as 'in the deepest depths of LCNC code' and is unlikely to be changed.

As you're aware, every industrial CNC control I've seen (or heard of) has a single-block mode and not a 'step' function.  Turn single-block mode on, and cycle start will execute one line of code only, no matter what.  Older Fanuc controls even require two cycle start presses during a G28 G91 X0Y0Z0 in single-block.

You've hinted in the videos and other forum responses that you've edited the LCNC code.  Is that the case with your single-block improvement?  Have you created a true single-block mode in the LCNC code, or is what you've done more of a workaround like some folks (including myself) have done using Classic Ladder?

And another thing...I've got cash with your name on it as soon as you're ready to release that screen set.  The macro parameters page alone is worth bank, and I'm not smart enough or have enough time to do the crazy-cool stuff you and the other really smart folks here cook up.

The following user(s) said Thank You: tommylight

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

15 Oct 2022 02:04 #254147 by fsabbatini
Hi Ralph!

So let's start from the beggining.
I work for a machine tool builder company and i am in charge of integrating industrial CNC
controllers to the machines, mostly Siemens and Fanuc, from its low end to high end range.
Also we do service for fixing and retroffiting machinery from all around the world, from simple
lathes to really complex machines like liebher's hobbing machines, skiving machines, etc.
This experience i gained over the years let me modify LCNC from where it is (mostly hobbie oriented)
to what is used in industry. For example what i did not like the way it was is:

1. single block non existent (step mode is a lcnc invention, dont like it at all), more later
2. feed override hmi based (whaaat?!) it should be in cnc cycle
3. hmi MUST be independent of control cycle. Now it is but as soon as you close your hmi,
lcnc stops working
4. tool manager almost non existent. What i mean is that it must be able to handle all kind
of tool changers (random and non random, turrets, manual tool change), sort as it does, BUT
also it must allow for more than one edge on a tool, sister tools, tool life management,
offsets (it has it) and wear, etc. Actually tool management is a whole chapter on the book
5. Macro variables (R parameters in siemens) should be seen somewhere
6. Backplot has a lot of glitches in actual production machines (for example infite loop would
freeze the hmi), so i changed it to a Simulation mode as most controllers do (working on it)
7. Fine corrections on offsets with built in calculator
8. G2/G3 should check limits before movement as linear G1 and G0 do
10. M functions, max 5 at same block with ability to specify if it should be motion synch,
after motion, before motion or not motion synchronized. Also specify it is needs ack from the
PLC or not at all
11. More than one channel (siemens) or path (fanuc), with ability to sych each channel,
for example on siemens you get the WAITM for waiting the other channel SET a specific flag. This
would allow to run, for example, twin turrent lathes and lots of complex machineries within
same controller
12. Classic ladder (i am thinking on change it for another more powerful plc) was modified to
accept %A (alarms), %G (CNC->PLC) and %F (PLC->CNC) addresses for accomplish what i said before
13. Block search! (this is fantastic)

Back to your question:
Yes, single block is single block, once you activated it, no matter what it will just execute one
MOTION block. All math and logic will still be processed at once. This is what siemens calls
"Single block type 1" (interpolation stops but decoding continue). I was thinking on optional
"single block type 2" (decoding stops at each block for debugging logic) but i have hardly ever
used it so it does not make much sense for now
Example 1: cycle start->machine moves->in middle of movement you activate single block->it stops
when block move is finished (before blending, of course, as path is not modified by sbl)
Example 2: machine is stopped->activate sbl->hit start->one move is executed
Example 3: machine is moving->SBL is active but you deactivate it on middle of motion block->machine just continues

As you noticed, STEP is not needed any more and it has lots of flaws, the biggest one i found
is that if you put feedrate at 0 and then hit STEP 5 times and then you open the feedrate,
5 blocks will be executed because every step command you give just queue one more movement
into the motion queue, NOT GOOD! because you are expecting it to finish at the end of the movement...

Let me finish some more cool stuff and i will try to upload all my work with donations based
system to help me develop it further!

Best regards,
The following user(s) said Thank You: tjtr33, silopolis, SupplySergeant, spumco

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

16 Oct 2022 05:22 #254205 by spumco

I've been fiddling/struggling with Lcnc GUI's (HMI's) for a while - trying various ones out.  There are some beautiful screens but I wasn't really comfortable with them. I realized a couple days ago what's bugging me about all the LCNC GUI's available...

They all permit motion via the touchscreen or mouse or keyboard.

None of the non-PC based controls I've used (and I'm not a serious expert) allow movement through screen controls.  You can change settings, adjust stuff, enter data, etc... But all of the controls I've used (HAAS, Siemens, Fanuc) prohibit motion except through dedicated physical control buttons or knobs.

Jogging, running a cycle, or even just homing a machine all require a physical button press.

I can think of one exception - Datron - though there may be others.  And certainly there is custom automation equipment with touchscreen HMI panels that let the operator run the machine (I've built one myself that way).  But mainstream g-code based CNC machines generally don't use touchscreens or HMI panels to initiate motion.

Why does using a touchscreen to control a CNC machine bother me?  Personal preference, but touchscreens provide no tactile feedback.  I can't put my finger on the feed-hold lightly - ready to mash it - while running an unproven program.  And trying to do fine adjustments on a touchscreen feed override slider is horrible.

I'm not a trained machinist, or machine tool builder/integrator.  I'm just a semi-pro hobby guy who's built a few cnc machines and had some opportunities to operate a variety of commercial equipment owned by friends.  Plus I own a commercial machine with a Fanuc(ish) controller.

LCNC has been the best PC-based control I've tried (compared to Mach3 & UCCNC), but everything you've described is what's been nagging me when I jump back and forth between commercial controls and PC-based controls.

Some stuff I can fix:  I'm (just) starting to modify an existing GUI to remove all motion-based on-screen control buttons and stick with physical buttons and encoders for all motion-related inputs.  Not sure how to deal with probing routines, but I'll cross that bridge later.

And I'm abandoning my USB-based pendant for a hard-wired one direct to I/O pins (USB latency & glitches are driving me nuts).

But other things on the wishlist are beyond me and I've while I love machining as a hobby and a side income... I'm finding that the computer/control side of things has become a painful hobby itself... and is taking way time away from actually making stuff.

So I think you can see why I'm excited about your LCNC modifications, and why I may have become a bit of a pest: wishlist fulfilled, and I don't have to spend the next few years trying to educate myself on the inner-workings of LCNC, python, and all the other fiddly computer stuff.

Thanks for sharing.


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

16 Oct 2022 05:30 #254206 by fsabbatini
Exactly!Check this out! I have developed a ñam Ethercat card that goes behind the screen made for override reading, mpg handwheel, start stop reset , and any button you want (feedhold for example)
The following user(s) said Thank You: spumco

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

16 Oct 2022 05:36 #254207 by spumco
And another thing...

Staring at a number of existing Lcnc GUI's for a while I realized why most of the available "stock" screens make me uncomfortable - gmoccapy being the exception.  They look great, and are modifiable... but you have to reach across the screen to actuate the controls.

Instead of putting all the menu/tab buttons along one side (or the other) and/or the bottom, the user has to reach across the screen to get to a different menu.  Or even stop/start the motion.

Again, personal preference.  But you don't usually see industrial equipment where the button legend is below the actual button.  It's supposed to be above the button - where a finger or hand doesn't obscure the legend.  Finger on button and you can still read what you're about to press.

Putting on-screen control buttons all over the place means your hand or arm is blocking the screen frequently.  Not bad during data entry, but terrible when commanding the machine to do something.

Rant over...

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

16 Oct 2022 05:50 #254208 by spumco

Exactly!Check this out! I have developed a ñam Ethercat card that goes behind the screen made for override reading, mpg handwheel, start stop reset , and any button you want (feedhold for example)

Very nice.

My plan is similar, but based on existing hardware due to my nonexistant board-development skills...

7i73 with a matrix keypad.  All buttons except cycle start/stop, and feed hold will be run though the 7i73.  Single-block, block skip, axis homing, ATC rotation, etc. all on direct I/O.  MPG will be to the 7i73, as will the usual selector switches for axis & increment.

Cycle start/stop & FH will be direct to a 7i76.

Hoping to incorporate a HAAS-style MPG where the axis selector will also have two additional detents to control FRO & SRO - so the MPG is both a jog wheel and override encoder.  The 100-count MPG should make for good fine-tuning of the feedrate and cut down on operator panel overload.
The following user(s) said Thank You: SupplySergeant

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

16 Oct 2022 14:08 #254223 by fsabbatini
Perfect, that’s exactly what my board does. And it is waaaay simpler than using mesa as wiring is just easy enough for everyone to do.
New version support 1 mpg, axis selector up to 5 axis, increment selector x1,x10,x100. 8 24v pnp inputs for user pushbuttons, 8 24vdc outputs for driving leds of those buttons, feedrate override knob up to 21 positions.
I decided to go this way because I don’t use mesa cards, all Ethercat based si you just go with one wire from pc to board and then to drives and finally to io board. Easy, not a wire mess.
Anyway this board can be expanded for as many io needed. I had a model before with 55 physical buttons but nowadays manufacturer are reducing button count just for motion control and specific always used functions like coolant on/off, chip conveyor on off, etc

I can make a board and send it to you if you like


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

Time to create page: 0.122 seconds
Powered by Kunena Forum