Ursviken Pullmax Optima 130 press brake retrofit with 4 axis backgage

More
11 Dec 2025 18:58 - 11 Dec 2025 21:10 #339979 by NWE
Found my AND8 hal component again! Will post it here for reference.
Attachments:
Last edit: 11 Dec 2025 21:10 by NWE.
The following user(s) said Thank You: tommylight

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

More
12 Dec 2025 19:52 - 12 Dec 2025 21:34 #340014 by NWE
I might start a separate thread for the project of writing up a complete reusable custom single axis hal component. I think it would have a lot of uses.

At the moment I am preparing to drive Y axis up/down with the footpedal. This is what I've been able to learn so far:

1: The proportional valve sets the tonnage, and also provides the open-center? flow from the fixed displacement pump back to the tank. If there was any tonnage feedback originally, it had to be measured from the coil's armature position by analyzing the a.c. component of the coil drive pwm, I think. I see no other electronic connection to that hydraulic circuit. If I end up needing tonnage feedback, I will use a pressure sensor.

2: The servo valves provide directional variable speed control of the left and right side independently

3: 4.0 and 5.0 are labeled 'servo valve', 8.4 is labeled 'proportional valve' The valve bank also has 6 spool valves (listed in the order shown in the manual.  They are only numbered but appear to be common spool valves with 24VDC coils.) I label the servo valves with polarity markings. The book displays up and down pointers instead, so I'm guessing at polarity.

They operate in combinations to produce these hydraulic 'modes':

| Motion                   | Valves Active                                  |
|-|-|
| high speed down   | 9.1, 10.1, 6.1, 7.1, -4.0, -5.0           |
| press speed down | 8.5, 8.1, 8.4, -4.0, -5.0                    |
| pressure holding   | 8.5, 8.1, 8.4, -4.0, +4.0, -5.0, +5.0 |
| pressure relief       | 8.1, +4.0, +5.0                               |
| creep up                | 8.1, 8.4, +4.0, +5.0                        |
| high speed up       | 9.1, 10.1, 8.4, +4.0, +5.0               |

I see I do not need to individually power every single solenoid; some are connected to the same control relays; I list only the 24VDC solenoids here with their relays; the pwm controlled valves do not have relays, they have a power disconnect (e-stop circuit) contactor right after the 24VDC power supply unit:

| Relay | Solenoids |
|-|-|
| 200   | 9.1, 10.1  |
| 201   | 6.1, 7.1    |
| 202   | 8.5           |
| 203   | 8.1           |

For the pwm driving the coils, after some studying, it appears all three need essentially the same kind of power to activate them. (except the proportional is not reversible) PWM is listed as 300HZ, but from what I found so far, higher is totally fine. The important gotcha is for accurate control, it needs to dither by nn% at maybe 30Hz. So I think instead of superimposing a slow pwm on the fast hardware pwmgens, I will use a software siggen running at 30HZ and the offset component to superimpose dither upon my hardware pwmgen.value command.
Last edit: 12 Dec 2025 21:34 by NWE. Reason: table markdown

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

More
12 Dec 2025 23:56 - 12 Dec 2025 23:59 #340027 by NWE
Just tried out my 7i54 pwm output for the first time. Something's not right somewhere. Encoders are correctly counting on each axis when I nudge them. The motor power connector gets 24VDC, but the pwm outputs to the 3 valve coils remain at 0V.

This is using my custom firmware PIN_SV10_7I36_7I54_NWE_72.vhd on a 7i80hdt. PCW helped me a bit with that.

I have yet to determine whether the problem is with my hal config or the firmware. Everything on the 7i36 seems to just work.

LED CR5 illuminates when motor power is applied, and CR2 is illuminated while P5 receives 5V power.

7i54 Jumpers
W4 is down to select external 5V power
W1,2,3,6,8,10,11,12,13,15,17,19 are up to select current mode
W5,7,9,14,16,18 are down to select 1 amp max output per motor
W21,22,24,25,27,28,30,31,33,34,36,37 are to the right to select differential encoder input
W20,23,26,29,32,35 are to the left to select single ended encoder input.
Checked again, I think I got them all straight. Everything is backwards because the location in the cabinet wanted the board upside down.

The servo valve for Y1 is connected to 7i54 connector P4 pins 18, 19 (Motor0) The coil is rated /-15V 0-300mA and measures 30 ohms
The servo valve for Y2 is connected to 7i54 connector P4 pins 22, 23 (Motor1) The coil is rated /-15V 0-300mA and measures 30 ohms
The above two solenoids actually consist of two 60 ohm coils each that can be wired series/parallel. The above numbers are with the original configuration of parallel connection.
The proportional valve for Y is connected to 7i54 connector P3 pins 18, 19 (Motor2) The coil is rated 24V 0-700mA and measures 22 ohms

I am attaching some hal dumps with everything energized expecting output on the pwm.
Last edit: 12 Dec 2025 23:59 by NWE. Reason: newlines vanished

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

More
13 Dec 2025 16:15 - 14 Dec 2025 04:08 #340057 by PCW
is

hm2_7i80.0.pwmgen.00.enable <== j6-amp-enable

true when you expect PWM output?

Your firmware has PWMGEN 0 enabling all 7I54 PWMgens
If this is not desirable you leave the enables as GPIO
bits.
Last edit: 14 Dec 2025 04:08 by PCW.
The following user(s) said Thank You: NWE

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

More
14 Dec 2025 01:24 #340080 by NWE
Thanks so much! I used to know that, but totally forgot it this project. For once I started a project without first reading the mesa manual from cover to cover... my error has come to light.
The following user(s) said Thank You: tommylight

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

More
17 Dec 2025 17:11 #340248 by NWE
Hmm... With that brake on the R-axis I sort of need to enable/disable that Cybelec amp dynamically but still be able to move others.

Got it! I will connect halui.machine.is-on to hm2_7i80.0.pwmgen.00.enable. Then I will use a discrete output to independently enable the R-axis Cybelec servo amp as needed.

I think it should be safe to wire that pwmgen enable to machine.is-on. We have the e-stop circuit cutting power to all servos and hydraulics. Down motion of the RAM goes through a contactor wired to the foot pedal's down position. I don't need to worry about instantaneous motor deceleration overload of the 7i54 H-bridge outputs since it is only powering solenoid coils.

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

More
17 Dec 2025 23:46 - 18 Dec 2025 04:28 #340261 by NWE
Another mystery solved: My 7i54 pwm output to the proportional valve was extremely erratic, like all over its output range. I was ready to blame RFI/EMI interference problems, except only that channel was affected, everything else is very stable. I finally traced it to the snubber circuit on the solenoid coil. I removed that, then it worked fine. Now I have the ram jogging up and down open loop. It appears this rc snubber was messing with the current regulation. Attached a picture of it. It was sandwiched between the connector on the solenoid coil and the Hirschman plug. With that installed, its LED indicator flickered like a candle flame in a breeze whenever pwm output was live. The Ursviken schematics indicate the circuit contains a flyback diode, but I could not find any, neither does it seem to show up when I reverse the h-bridge. The snubber is unnecessary in this instance, I am powering it with an h-bridge designed for DC servo motors. A DC servo motor would not have this additional snubber anyway.

My suspicion has been confirmed: The 2 servo valves set the speed and direction of each ram cylinder. The proportional relief valve sets the tonnage. 0% pwm = no pressure, 100% pwm = max pressure.

I will edit my first post with this info. Once I have a complete working config, that will also be attached to the first post.
Attachments:
Last edit: 18 Dec 2025 04:28 by NWE.

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

More
19 Dec 2025 22:13 - 20 Dec 2025 06:41 #340322 by NWE
Y1 and Y2 are not reading any index for me. I better bring my oscilloscope next time to check what, if anything, is coming in those z and /z wires from the linear scales. Latching hal logic connected to [HMOT](CARD0).encoder.04.input-index and [HMOT](CARD0).encoder.05.input-index does not catch any pulse.

Y1 and Y2 also has reference sensors near the bottom, it'll never reach that position after he installs the punch and the die. I see the book calls them Max Down Left, and Max Down Right. So they are bottom limits. Maybe to avoid overextending the cylinders when no tooling is installed.

edit:
Finally got R1 axis (joint 6) homing to index.
When all else fails, read the instructions! Here is the magic that makes home-to-index work:
net    j6-index-enable        [HMOT](CARD0).encoder.00.index-enable
net    j6-index-enable        joint.6.index-enable
Attachments:
Last edit: 20 Dec 2025 06:41 by NWE.

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

More
23 Dec 2025 18:34 #340430 by NWE
I caught the index signal with my oscilloscope! It is near the top end of the ram travel, a tiny little pulse. I think I still have the ram jogging up/dn too fast the mesa card isn't latching on it, possibly even to fast for the electronics in the sensor itself. I unbolted the sensor from the Y1 ram and moved it slow with my fingers and caught the ~200uS pulse visible in the second screenshot. The ram is still jogging open loop and way too fast for homing. Looks like I'm on track to close the loop, and try tuning it hydraulic servos and all.

Now that I understand how the index-enable signal is read/write and is latching (I disconnected it from joint.3.index-enable to make sure it's not clearing it before I get to see it.) my latching hal AND2 + OR2 wiring the other day was unnecessary.
Attachments:

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

More
23 Dec 2025 20:46 #340437 by PCW
If the encoder counts, its unlikely the index would be missed as the hardware
index processing uses the same digital filter as the A and B signals.
The following user(s) said Thank You: NWE

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

Time to create page: 0.085 seconds
Powered by Kunena Forum