Hydraulic press brake control

More
8 years 1 month ago #118015 by microsprintbuilder
Attached is the sketch I used in the arduino. I'd like to be able to call out a angle and push the down switch and have it move down to bend at that angle. That seems like a lot of math to figure out as you have to adjust for different die's punches and material thickness. So I'd be happy with calling out a depth and then executing it when you push the down foot switch. i think I could just call for a G01 move and have the up switch set to just move up to home. I suppose you could even use G code to have it move down dwell for a second then move back up. The way I have the steppers set up is they only move around 60 degrees each way from center to move the spool valves. In the arduino I wrote the code so when you pushed the down switch it called out a stepper position that made the valve's wide open. then it adjusted that number to each stepper to keep the cylinders moving in sync. once you hit the stop switch it would call out stepper position of zero. i you hit the up switch it would output the opposite numbers. I hadn't got to the gui for the arduino yet. I have purchase a Nextion for that as stage two of the project.

Inputs;
up foot switch
down foot switch
l cylinder home
r cylinder home
l cylinder glass scale
r cylinder glass scale
l stepper encoder 200 ppr
r stepper encoder 200 ppr
e-stop
outputs;
l step / dir
r step /dir
hydrulic pump relay

phase 2
inputs
backstop home
outputs
backstop step / dir

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

More
8 years 1 month ago #118021 by Grotius
Hi Steve,

Attached a first beginning of in and output's. You can adapt your signal's if you like it.

Do you want to have a home sensor for cilinder left and right on the top, when press brake is in top position?
If your glas scales value's are alway's good. You can use that. I adapted a glas scale height correction, so you don't
have to worry to place them exactly in height. It can be corrected by input value.

I have to add foot up and down.
Do you want to make the closed loop stepper in the component or outside the component in hal?

It's usefull to make the left and right cilinders perfectly synchronizing while the knife is going down.
This can be done in the component. The synchronize input step can be 0.001 to 10mm resolution. That is nice.

Warning: Spoiler!
The following user(s) said Thank You: David-Diy

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

More
8 years 1 month ago #118049 by andypugh
I made a nearly-working GUI for a tube bender a while ago (similar concept)
forum.linuxcnc.org/38-general-linuxcnc-q...ideas?start=10#82686
But starting from scratch (or Gscreen) might be better.

My point with that was that there is no G-code, the files that would be saved would be a plain-text bend list.

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

More
8 years 1 month ago #118069 by Grotius
Hi Andy,

Starting from Gscreen is a way to achieve Steve's goal. Mr. Morley, founder of Gscreen has done a great job.

I think G-code is not very useful when using a press-brake. For 3d pipe bending it will be more useful to use G-code because
then the bender can directly work from a cad/cam generated output code.

I read in your provided link that loading and saving data in the gui was a little problem at that time. The press brake application can load and read excel based files and also load and read text file's. The data can be directly adapted into a loaded g-code program in therm's off variables, or the loaded or saved data can be used to execute a press brake program with an almost unlimited press brake sequence. A press brake input screen will be adapted to the gui. We could even make a press brake calculator.

When using the external offset branche g-code is not necessary anymore to move the different axis or joint's.
The only value that is needed in basic for moving joint 0 - 8 is a offset value, speed value, etc. So this option make's life easyer
to write a component code. I use also the negative adaptive speed option in all my application's. I am very happy with this option.

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

More
8 years 1 month ago #118070 by andypugh

Grotius wrote: I read in your provided link that loading and saving data in the gui was a little problem at that time.


Not a problem, I just didn't bother implementing it as it was just a demo of what I was suggesting.

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

More
8 years 1 month ago #118073 by Grotius
Hi Andy,

I understand.

What i tested this week was to visualize a press a brake sequence program in the gremlin screen.

I made in the main gui python code a hal pin :
self.g = hal.component("Gcode")
self.g.newpin("X_start", hal.HAL_FLOAT, hal.HAL_OUT)

Then the gui tab screen text input value to set the hal value :
self.entry = self.widgets.X_start
self.x = float(self.entry.get_text())
self.g = self.x

Then in the postgui.hal file make a x_start signal to use in variable g-code later on :
net x_start Gcode.X_start

Then in the gcode file :
#1 = #<_hal[x_start]>
G1 X#1

It will display the press brake sequence program according the excel sheet or gui screen input parameters.
In the end i think this will be a nice solution. The machine does not have to execute the g-code, it's only for displaying the
bending program.

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

Time to create page: 0.249 seconds
Powered by Kunena Forum