Difference between revisions of "Benderlink for SolidWorks 1.71"

From ATTWiki
Jump to: navigation, search
 
Line 1: Line 1:
[[image:cncbender_logo.jpg|400px]]
+
[[image:Blinkswlogo.jpg|450px]]
 +
[[image:Solidworkslogo.png|right]]
  
 
__NOTOC__
 
__NOTOC__
Line 5: Line 6:
 
<br>
 
<br>
  
=CHANGES to CNC PROCESSLIST BUILDER=
+
=CHANGES =
  
===[[image:Check.jpg|25px]] New - With PD Retract Timer - Ensure Clamp is Home  Before Post Bend Jog Starts (Logic Change) ===
+
===[[image:Check.jpg|25px]] New - Bend Reduction Formula Editor ===
  
The Pressure Die Retract Timer [[COMDEF]] command can open the pressure die a small distance and simultaneously send the [[clamp die]] homeThe command is considered complete when the pressure die has arrived at its timed destination.  The next step is often for a Post Bend Jog (which is a bend die clearance move for non split-die benders).
+
Predicting elongation in a tube shape requires complex mathematics that changes per customer applicationBenderlink for SolidWorks now allows operators to program their Bend Reduction formula into the program.
 
<br>
 
<br>
 
<br>
 
<br>
Because our operator station systems are becoming so fast, it is easily possible for the Feed axis to start the Post Bend Jog without the clamp die arriving completely at home.  Of course, this may cause a tube-to-die collision.  This is a typical process list where this problem can occur:
+
The editor is very powerful because it allows you to enter action Pascal code to define the function that returns the adjusted arc lengths.  This is an example bend reduction program included with Benderlink:
  
 
<pre>
 
<pre>
PressureDieReturnWithTimer_SendClampAndBoostHome = tim2:200, cto:6000
+
var
 +
  BendAllowance: real;
 +
  NewArc: real;
 +
begin
 +
  BendAllowance := 0.64;
 +
  NewArc := ((BendAllowance * blinksw(OD) + (PI/2 * (blinksw(CLR)-0.5 * blinksw(OD) ))) / 90) * blinksw(BENDANGLE);
 +
  //MessageDlg('New Arc Length: ' + floattostr(NewArc), mtInformation, [mbOK], 0);
 +
  result := NewArc;
 +
end;</pre>
  
AllBoostReturn = cto:6000
 
 
FeedPositive = pos0:50.80000000, vel0:900.00000000, ump0:1, cto:60000
 
</pre>
 
 
<br>
 
The '''PressureDieReturnWithTimer_SendClampAndBoostHome''' command works like this:
 
<br><br>
 
 
# It sends the pressure due out a timed duration
 
# It also energizes the clamp home
 
# It also energizes the PD boost home
 
# When the time expires, the COMDEF is considered complete and hands control to the next COMDEF command in the processlist.
 
# The clamp and boost will continue moving home until they arrive at the end of the motion.
 
<br>
 
 
In this case, the process can be so fast that the FeedPositive command (after AllBoostReturn) may be told to start moving before the clamp die and PD boost cylinder returns home.
 
<br><br>
 
To solve the problem, the Processlist Builder inserts the '''ClampHomeComplete''' command in the logic like this:
 
 
<pre>
 
PressureDieReturnWithTimer_SendClampAndBoostHome = tim2:200, cto:6000
 
 
ClampHomeComplete = cto:6000
 
 
AllBoostReturn = cto:6000
 
 
FeedPositive = pos0:50.80000000, vel0:900.00000000, ump0:1, cto:60000
 
</pre>
 
 
<br>
 
The ClampHomeComplete COMDEF command includes a CIO input object that requires the  home input for the clamp to be activated before continuing to the next COMDEF in the process list.
 
  
 
<br>
 
<br>
 
<br>
 
<br>

Revision as of 11:24, 7 March 2008

Blinkswlogo.jpg

Solidworkslogo.png



CHANGES

Check.jpg New - Bend Reduction Formula Editor

Predicting elongation in a tube shape requires complex mathematics that changes per customer application. Benderlink for SolidWorks now allows operators to program their Bend Reduction formula into the program.

The editor is very powerful because it allows you to enter action Pascal code to define the function that returns the adjusted arc lengths. This is an example bend reduction program included with Benderlink:

var
  BendAllowance: real;
  NewArc: real;
begin
  BendAllowance := 0.64;
  NewArc := ((BendAllowance * blinksw(OD) + (PI/2 * (blinksw(CLR)-0.5 * blinksw(OD) ))) / 90) * blinksw(BENDANGLE);
  //MessageDlg('New Arc Length: ' + floattostr(NewArc), mtInformation, [mbOK], 0);
  result := NewArc;
end;