Linux cnc recomnded for beginners?

More
01 Nov 2018 12:56 #119758 by Gio 45
Hello to all ,
I´am Gio and new in this forum.
I have a project that I like to realise and for this new machine I would like to switch to linux cnc.
My question is if linux cnc is good for a beginner like me. I got no Idea in Hal programming. Yes I could learn, but how easy is it to learn ...are there tutorials how you start programming and so on?

I´am very interested in linux cnc but dont want to stand infront a wall after. I have to invest money and want realy move away from mach3 ,but I dont want to get frustrated at the end.
I plan my machine (3 axis) with servos and linear encoder for closed loop.
There are many of vids on youtube but couldn´t find a tutorial that shows the language of Hal.

Or do I think to complicated and it´s easier than that?

For all hints and advises will be gratful.

Thank you all in advance and excuse my not so good english.

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

More
01 Nov 2018 15:07 #119760 by andypugh
My first ever foray into CNC was LinuxCNC, so it was OK for me as a beginner.

What type of machine do you intend to build?
The following user(s) said Thank You: Gio 45

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

More
01 Nov 2018 15:09 #119761 by tommylight
Salve Gio,
Linuxcnc is very easy and very complicated, depending on what you want or need to do.
For setting up and using for a normal 3 axis machine it takes about 10 minutes to have it running properly, but for having a 5 ton machine running 3KW servos, that takes much more time and effort.
For what you need it, you can have both of the above situations: if your drives take step and direction commands, it is easy but if you want the loop closed in Linuxcnc you will need to do a bit of editing and testing and tuning.
The following user(s) said Thank You: Gio 45

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

More
01 Nov 2018 17:48 - 01 Nov 2018 17:51 #119773 by Gio 45
Hello and thanx for your replys.

My worrys are about the programming of Hal . Can´t figure out if there are some presetted programms or if I have to programm the complete HAl by my own.

The machine I go to build is a 3 Axis with aprox 3-400Kg. It will be made of concrete and will fit linear guides and ballscrew.
The idea is to add the linear encoder on each axis for closed loop. So I have less trouble with backlashes of the mechanics.
I wish to use the Mesa card 7i76E and the 7i85 for the encoders.Therefor Linuxcnc.
Want to start and stop the spindle and set the rpm in my g code... after that I wish to tap with an encoder on the spindle.
Thats all :-)

From what I have seen till now , Linux cnc is pretty professional stuff. my thought is that with a lidlebit trail and error I will achieve something. And its all about learning. But if I have to learn a programming language , don´t know if it´s not to much for me.
Last edit: 01 Nov 2018 17:51 by Gio 45.

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

More
01 Nov 2018 18:05 #119775 by andypugh
For most conventional machines the HAL will be written for you by either the stepconf or pncconf wizards.
You only need to hand-edit HAL for customisation and special purposes.
The following user(s) said Thank You: Gio 45

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

More
01 Nov 2018 20:06 #119785 by rodw
I would not call HAL a programming language. It is more about connecting the logical pins (or signals) to each other. It comes with many building blocks called components to do certain things just like you might use a discrete electronics component. Sometimes its used to connect a physical pin on your 7i76e to Linuxcnc and sometimes its the other way. You want to connect the linuxcnc internal signals to your hardware output.

At it simplest level it is about naming a signal (eg max-y in this instance)
net max-y     <=  hm2_7i76e.0.7i76.0.0.input-05
and connecting it to LinuxCNC internals (maximum limit switch for joint 2)
net max-y     =>  joint.2.pos-lim-sw-in

So in 2 simple lines, you have told Linuxcnc a name for the input pin on your 7i76e and to use this pin as your max limit switch for joint 2 (where every joint is a motor which in turn often drives an axis).

You can do this all on one line but it makes it harder to read and maintain so always use the 2 line format I've shown.

Sometimes, you might go the other way from linuxcnc to your hardware. eg to tell Linuxcnc which output to trigger when you want to turn the spindle on
net spindle-on <= motion.spindle-on
net spindle-on => hm2_7i76e.0.7i76.0.0.output-04

shown here on one line
net spindle-on motion.spindle-on => hm2_7i76e.0.7i76.0.0.output-04

PNCCONF will make a working 7i76e config in a graphical GUI, I find it more efficient to get it working once this way and edit by hand. There is a complete working example in the Hal examples section of this forum I posted for the 7i76e. eg. a working minimalist config for master branch for a joint axis gantry machine.
The following user(s) said Thank You: Gio 45

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

Time to create page: 0.114 seconds
Powered by Kunena Forum