Difference between revisions of "CNC Bender v11-20091201"

From ATTWiki
Jump to: navigation, search
(25px ENHANCED- Internal Offset of Axes to Prevent Accidental Negative Motion)
(25px CHANGE- CNC Processor Does Not Check for Collision Errors During Home Process)
 
(14 intermediate revisions by one user not shown)
Line 68: Line 68:
  
  
===[[image:Check.jpg|25px]] ENHANCED- Internal Offset of Axes to Prevent Accidental Negative Motion===
+
===[[image:Check.jpg|25px]] ENHANCED- Internal Offset of Axis Datums Prevents Unexpected Negative Motion===
 
<table>
 
<table>
 
<tr valign=top>
 
<tr valign=top>
 
<td width=300>
 
<td width=300>
I2T servo modules choose an absolute move DIRECTION based on whether the axis is in the negative region or positive region.  When the axis is in the negative region, the axis chooses to move in reverse to the absolute position.<br><br>
+
 
 +
I2T servo modules choose an absolute move DIRECTION based on whether the axis '''starts''' in the negative region or positive region.  When the axis is in the negative region, the axis chooses to move in reverse to the absolute position.<br><br>
  
 
This behavior creates a problem where an axis that should only move one direction away from zero, may move in the wrong direction if it is starting in the negative region.<br><br>
 
This behavior creates a problem where an axis that should only move one direction away from zero, may move in the wrong direction if it is starting in the negative region.<br><br>
Line 78: Line 79:
 
To overcome this possibility, we no longer allow these axes to get anywhere near true zero in position internally.<br><br>
 
To overcome this possibility, we no longer allow these axes to get anywhere near true zero in position internally.<br><br>
  
</td>
 
 
<td>
 
 
The main.axislist file now has the new property "Zero Position Is Offset To".  Set this value to the new internal offset for zero.<br><br>
 
The main.axislist file now has the new property "Zero Position Is Offset To".  Set this value to the new internal offset for zero.<br><br>
 +
<pre>
 +
Zero Position Is Offset To=1000
 +
</pre>
  
For any axis that has a rollover value of 10000 or greater, we will use 1000 mm as the new internal datum.<br><br>
+
<br><br>
 +
'''Follow These Guidelines To Set The Zero Position Offset'''<br><br>
  
For any axis that has a rollover value of 360 (like the bend arm), we will default to 10 degrees as the new internal datum.<br><br>
+
* For any axis that has a rollover value of 10000 or greater, we will use 1000 mm as the new internal datum.<br><br>
  
Immediately after the home process for each axis, it is now also necessary to reset the axes after home to the same value used in the main.axislist file.<br><br>
+
* For any axis that has a rollover value of 360 (like the bend arm), we will default to 10 degrees as the new internal datum.<br><br>
  
In the main.axislist, set the property for each axis like this.  Follow the rules described on the left to choose an appropriate value.<br>
+
* Immediately after the home process is completed for each axis, it is also necessary to reset the axes after home to the same value used in the main.axislist file.<br><br>
<pre>
+
Zero Position Is Offset To=1000
+
</pre>
+
  
In the HOME processlist, each axis that uses a Zero Position offset that is not greater than ZERO, should also use a Reset Position comdef like this:<br>
+
* In the HOME processlist, each axis that uses a Zero Position offset that is not greater than ZERO, should also use a Reset Position comdef like this:<br>
 
<pre>
 
<pre>
 
[display] HOME PROCESS - Home Bend Axis
 
[display] HOME PROCESS - Home Bend Axis
Line 102: Line 101:
 
ResetBendArmPosition = pos0:10
 
ResetBendArmPosition = pos0:10
 
</pre>
 
</pre>
 +
 +
* Axes that can go in either direction without colliding with the machine - like the ROTATE axis, can safely use a ZERO offset.  (Don't bother to offset the internal zero position.)
 +
 +
 +
 +
</td>
 +
 +
<td>
 +
[[image:feedaxis_icon.jpg]]<br><br>
 
</td>
 
</td>
 
</tr>
 
</tr>
  
 +
 +
 +
</table>
 +
 +
<br><br>
 +
 +
===[[image:Check.jpg|25px]] CHANGE- Remove Obsolete Properties from the Main.axislist===
 +
<table>
 +
<tr valign=top>
 +
<td width=300>
 +
These properties are removed from the main.axislist because they are obsolete:
 +
<br><br>
 +
* Position Offset<br>
 +
* Position Offset Speed<br>
 +
* Datum Offset<br><br>
 +
 +
If any of this properties are left in the main.axislist file, they will be ignored from this version forward.
 +
 +
</td>
 +
 +
<td>
 +
 +
</td>
 +
</tr>
 +
 +
 +
 +
</table>
 +
 +
<br><br>
 +
 +
 +
===[[image:Check.jpg|25px]] CHANGE- CNC Processor Does Not Check for Collision Errors During Home Process===
 +
<table>
 +
<tr valign=top>
 +
<td width=300>
 +
The CNC Processor no longer checks for collision errors during the home process.  This allows CNC Bender the necessary flexibility for different situations in which the bender may find itself during the home process.
 +
</td>
 +
 +
<td>
 +
 +
</td>
 +
</tr>
 
</table>
 
</table>
  

Latest revision as of 21:20, 7 December 2009

Cncbender logo pushbending.png

Type of Upgrade: FLEXIBILITY

The changes in this version are changes to CNC Bender for better flexibility.

Operatorstation model.jpg



Check.jpg NEW- Logic Allows Push Buttons to Toggle States

  • CNC Bender now allows logic to make a physical momentary push-button into a toggle switch. For example, push the button to switch a state on, then push it again to switch the state off.

  • For example, it is possible to use logic in the Constant Run processlist to switch a End Cycle ON and OFF using a push button.

  • It is also possible to illuminate the button according to the current End Cycle state.



Redmomentarypushbutton.jpg

Remoteoperatorstation toggle endcycle.jpg



Check.jpg ENHANCED- Edge Triggerized [IF] Parameters Optimization

  • Edge triggers now reset properly when repeating the same inputs in multiple [IF] and [IFNOT] commands in the list of commands.

  • If an edge triggerized input is true in an IF line, then the edge trigger is CLEARED - UNLESS the entire set of logic in that parameter line returns FALSE as a whole. In that case the edge trigger is set back to TRUE (it is SET).

  • This allows for same edge triggered input to be used in several different [IF] and [IFNOT] blocks in the same processlist.




Check.jpg ENHANCED- Internal Offset of Axis Datums Prevents Unexpected Negative Motion

I2T servo modules choose an absolute move DIRECTION based on whether the axis starts in the negative region or positive region. When the axis is in the negative region, the axis chooses to move in reverse to the absolute position.

This behavior creates a problem where an axis that should only move one direction away from zero, may move in the wrong direction if it is starting in the negative region.

To overcome this possibility, we no longer allow these axes to get anywhere near true zero in position internally.

The main.axislist file now has the new property "Zero Position Is Offset To". Set this value to the new internal offset for zero.

Zero Position Is Offset To=1000



Follow These Guidelines To Set The Zero Position Offset

  • For any axis that has a rollover value of 10000 or greater, we will use 1000 mm as the new internal datum.

  • For any axis that has a rollover value of 360 (like the bend arm), we will default to 10 degrees as the new internal datum.

  • Immediately after the home process is completed for each axis, it is also necessary to reset the axes after home to the same value used in the main.axislist file.

  • In the HOME processlist, each axis that uses a Zero Position offset that is not greater than ZERO, should also use a Reset Position comdef like this:
[display] HOME PROCESS - Home Bend Axis
HomeBendAxis= vel0:20.0, cto:60000

[display] HOME PROCESS - Assign new Bend Zero
ResetBendArmPosition = pos0:10
  • Axes that can go in either direction without colliding with the machine - like the ROTATE axis, can safely use a ZERO offset. (Don't bother to offset the internal zero position.)


Feedaxis icon.jpg



Check.jpg CHANGE- Remove Obsolete Properties from the Main.axislist

These properties are removed from the main.axislist because they are obsolete:

  • Position Offset
  • Position Offset Speed
  • Datum Offset

If any of this properties are left in the main.axislist file, they will be ignored from this version forward.




Check.jpg CHANGE- CNC Processor Does Not Check for Collision Errors During Home Process

The CNC Processor no longer checks for collision errors during the home process. This allows CNC Bender the necessary flexibility for different situations in which the bender may find itself during the home process.



Other Pages