Press Brake CNC Control & G-Code
19 Apr 2017 09:48 #91626
by bymccoy
Replied by bymccoy on topic Press Brake CNC Control & G-Code
In typical bodging fashion, I ended up commenting out the lines it moaned about until I had the UI running. Seemed to be around an option ("coordinates=zac") for the kinematics module and a couple of joint IO unrecognised in the HAL files.
Importantly, got the UI open, and able to play with it to get an understanding of how integration will work.
So next question; in order to modify the base UI, how is that done? For example, the "startup" tab would work better having the machine's HMI mapped onto it (ie hydraulic pump start/stop, safety status etc) and the existing controls (coolant, spindle etc) removed. I also want to change the look/feel of the UI, and a shopping list of other changes. If I understand correctly, I need to modify the installed UI apps?
Is there a way I can fork/clone a UI app, shove it in a Git repo in /opt, and run it symlinked from there?
My first task is to simplify the UI to just being an HMI screen coupled with a multi-axis DRO. Which then leads to a 3rd question; are the axes in the UI configured via the INI file or via the UI? In other words, if I add 9 axis in the INI file, are the UI designed/built to show them dynamically? Any design patterns or recommended approaches as to how bespoke a UI should be versus it being able to work dynamically with the INI files/core config?
Thanks!
Importantly, got the UI open, and able to play with it to get an understanding of how integration will work.
So next question; in order to modify the base UI, how is that done? For example, the "startup" tab would work better having the machine's HMI mapped onto it (ie hydraulic pump start/stop, safety status etc) and the existing controls (coolant, spindle etc) removed. I also want to change the look/feel of the UI, and a shopping list of other changes. If I understand correctly, I need to modify the installed UI apps?
Is there a way I can fork/clone a UI app, shove it in a Git repo in /opt, and run it symlinked from there?
My first task is to simplify the UI to just being an HMI screen coupled with a multi-axis DRO. Which then leads to a 3rd question; are the axes in the UI configured via the INI file or via the UI? In other words, if I add 9 axis in the INI file, are the UI designed/built to show them dynamically? Any design patterns or recommended approaches as to how bespoke a UI should be versus it being able to work dynamically with the INI files/core config?
Thanks!
Please Log in or Create an account to join the conversation.
19 Apr 2017 11:45 #91629
by andypugh
Touchy, Gscreen and Gmoccapy are designed with the Glade editor. The Axis layout is defined in Tcl.
For a custom GUI Gscreen is probably the best starting point, it was specifically designed to be configurable.
Or you could start from scratch, as there are many parts of the typical GUI you don't need, for example loading G-code.
GladeVCP has widgets that are pre-configured to do most of the basic UI functions.
linuxcnc.org/docs/2.7/html/gui/gladevcp....on_widgets_reference
Replied by andypugh on topic Press Brake CNC Control & G-Code
So next question; in order to modify the base UI, how is that done? For example, the "startup" tab would work better having the machine's HMI mapped onto it
Touchy, Gscreen and Gmoccapy are designed with the Glade editor. The Axis layout is defined in Tcl.
For a custom GUI Gscreen is probably the best starting point, it was specifically designed to be configurable.
Or you could start from scratch, as there are many parts of the typical GUI you don't need, for example loading G-code.
GladeVCP has widgets that are pre-configured to do most of the basic UI functions.
linuxcnc.org/docs/2.7/html/gui/gladevcp....on_widgets_reference
Please Log in or Create an account to join the conversation.
07 Jun 2017 09:24 #94218
by bymccoy
Replied by bymccoy on topic Press Brake CNC Control & G-Code
I'm now I the process of setting up LinuxCNC with the MESA boards and configuring the axis...
Now, one of the axis is a read only positional axis "Y0", that has set points along it. The idea is that Y0 shows the actual position of the beam, and in turn when the beam reaches certain positions or is in certain ranges, then certain outputs need to be operated. The plan I think is to use G-code or something similar to set these positions (as these positions may need to change in a bend sequence), so I need to set registers (that may be defaulted at startup) that are compared with the actual feedback position. So big question is how?! What mechanism should I be using to set these comparative set points (these need to be greater than/less than, not equals).
Is there also any way for me to use the label "Y0" through defining in the config files, or do I really have to recompile? It looks like axis are defined from 0...9, but the axis label looks to be defined in the config files? Down the line I'll have additional axis like X1/X2, Z1/Z2, so if I can define labels accordingly, it'd be a big help, rather than hacking them in the UI.
Also, I need logic to interlock two axis, as they share the same VSD for powering their motors - when/how should I implement that logic too?
Thanks!
Now, one of the axis is a read only positional axis "Y0", that has set points along it. The idea is that Y0 shows the actual position of the beam, and in turn when the beam reaches certain positions or is in certain ranges, then certain outputs need to be operated. The plan I think is to use G-code or something similar to set these positions (as these positions may need to change in a bend sequence), so I need to set registers (that may be defaulted at startup) that are compared with the actual feedback position. So big question is how?! What mechanism should I be using to set these comparative set points (these need to be greater than/less than, not equals).
Is there also any way for me to use the label "Y0" through defining in the config files, or do I really have to recompile? It looks like axis are defined from 0...9, but the axis label looks to be defined in the config files? Down the line I'll have additional axis like X1/X2, Z1/Z2, so if I can define labels accordingly, it'd be a big help, rather than hacking them in the UI.
Also, I need logic to interlock two axis, as they share the same VSD for powering their motors - when/how should I implement that logic too?
Thanks!
Please Log in or Create an account to join the conversation.
07 Jun 2017 13:15 #94228
by andypugh
Replied by andypugh on topic Press Brake CNC Control & G-Code
Wcomp components in HAL with their thresholds set from G-code analogue outputs ought to work.
Please Log in or Create an account to join the conversation.
- MachineMfg
- Offline
- New Member
-
Less
More
- Posts: 5
- Thank you received: 0
08 Jan 2018 03:41 #104144
by MachineMfg
Replied by MachineMfg on topic Press Brake CNC Control & G-Code
Here you can find various press brake controller manual, hope this can solve your problem:
machinemfg.com/press-brake-ultimate-guide/
machinemfg.com/press-brake-ultimate-guide/
Please Log in or Create an account to join the conversation.
13 Apr 2018 03:43 #108926
by Methier
Replied by Methier on topic Press Brake CNC Control & G-Code
Hi, how is your press brake retrofit going?
We have a CNC press brake here and the controller died, so, perhaps we will go for a retrofit.
And it will good to know how was your experience with that.
Regards
We have a CNC press brake here and the controller died, so, perhaps we will go for a retrofit.
And it will good to know how was your experience with that.
Regards
Please Log in or Create an account to join the conversation.
13 Apr 2018 06:47 #108933
by bymccoy
Replied by bymccoy on topic Press Brake CNC Control & G-Code
Hi,
It’s gone very well... we still have a wish list of things we want to do and add, and the beauty is that we can do these things (including integration into our ERP/production planning systems). We’ve run it steadily since last summer; it’s a big job and it took quite a while to get it right.
We’ve built a customised PyVCP interface, but the plan is to build a more complex Gtk based UI, where we can add a richer UI.
We have fine control of X and Y axis, Y0 axis positioning and control of the hydraulics.
We did have to rip out all of the existing control gear (even the wiring and terminal blocks) and started from and empty cabinet. We have a PLC controlling the dangerous things, LinuxCNC controlling positions axis directly, and the two interface to bring it all together. We have light beam safety, the usual chains of E-Stops, a hand pendant, foot control and an on-panel HMI for monitoring the machine operation and easy control of PLC options (like the auto-return, hydraulic pressure etc - all can be set and read in the UI of course).
We originally thought the LinuxCNC part should be easily bypassed if it doesn’t work, and we needed to use the machine manually. In retrospect, it doesn’t need this. We’ve even removed the functionality, so without LinuxCNC running, the machine is a brick - this ensures the calibration and offsets are never lost (saving lots of time).
Don’t forget to document everything as you go along!
Where are you based?
It’s gone very well... we still have a wish list of things we want to do and add, and the beauty is that we can do these things (including integration into our ERP/production planning systems). We’ve run it steadily since last summer; it’s a big job and it took quite a while to get it right.
We’ve built a customised PyVCP interface, but the plan is to build a more complex Gtk based UI, where we can add a richer UI.
We have fine control of X and Y axis, Y0 axis positioning and control of the hydraulics.
We did have to rip out all of the existing control gear (even the wiring and terminal blocks) and started from and empty cabinet. We have a PLC controlling the dangerous things, LinuxCNC controlling positions axis directly, and the two interface to bring it all together. We have light beam safety, the usual chains of E-Stops, a hand pendant, foot control and an on-panel HMI for monitoring the machine operation and easy control of PLC options (like the auto-return, hydraulic pressure etc - all can be set and read in the UI of course).
We originally thought the LinuxCNC part should be easily bypassed if it doesn’t work, and we needed to use the machine manually. In retrospect, it doesn’t need this. We’ve even removed the functionality, so without LinuxCNC running, the machine is a brick - this ensures the calibration and offsets are never lost (saving lots of time).
Don’t forget to document everything as you go along!
Where are you based?
Please Log in or Create an account to join the conversation.
13 Apr 2018 07:04 #108935
by Methier
Replied by Methier on topic Press Brake CNC Control & G-Code
By based you mean, the machine? the kind of machine?
English is not my first language.
English is not my first language.
Please Log in or Create an account to join the conversation.
13 Apr 2018 09:52 #108937
by bymccoy
Replied by bymccoy on topic Press Brake CNC Control & G-Code
What country are you in? Was wondering if close enough.
Please Log in or Create an account to join the conversation.
13 Apr 2018 14:17 #108948
by Methier
Replied by Methier on topic Press Brake CNC Control & G-Code
México, Sonora.
Please Log in or Create an account to join the conversation.
Moderators: cncbasher
Time to create page: 0.163 seconds