XL220CL
4.89.0
3/17/2023

When the Dual Line Encoder option is enabled our recomendaion is to run on the Entry(2) encoder until tailout before switching to the Exit(1) encoder. To encourage our recomendation the default setting for Main Encoder has been changed to Entry(2).

When the Dual Encoder option is used the Part Queue targets are calculated using the resolution of the Main Encoder. If the Main Encoder changes, the Part Queue targets are no longer valid.

The software has been changed to Clear the Queue and display an error message indicating that the Part Queue has been cleared when the Main Encoder setting has been changed.

After a memory clear, during powerup, setup parameters receive default values. Calculations are made in some settings that rely on calculations made in other settings. If any of those calculations involve division, protections must be made to prevent divide by zero errors.

The top three lines window does a lot of periodic low priority functions. One of those functions is to update a persistent footage totalizer. The Footage totalizer is stored in feet, which requires conversion from counts, which requires division, which requires a constant that gets calculated after a memory clear on power-up.

There is a bit of timing involved as to which thing happens first, the calculations for the constant or the calculations that require the constant. It is unclear how this problem has not shown up until now, at least ten years since the footage totalizer was added.

The software has been modified to delay the footage totalizer calculations until they can be safely performed.

Certain software needs to be disabled during the Powerup sequence. Clearing memory is part of the Powerup sequence. There is a flag that is active during powerup that is used to disable software. Clearing memory involves a certain amount of initialization after the memory has been cleared. Some of that initialization code runs both during and after powerup and uses the powerup flag to disable portions of it.

The bug that is being fixed here is that the Memory Clear also cleared out the powerup flag, allowing software that was intended to be disabled, to run. In the specific instance that led to this discovery it caused the 0x8006095B task error. However, it is unpredictable what other sorts of errors this could or has been causing.

When the Dual Line Encoder option is enabled and the Tail Out Configuration is set to Single encoder, the Main encoder is supposed to be used all the time. Setting the Main Encoder to Exit(1) would not work, only the Entry (2) encoder was being used. This was resolved.

Some other changes were made related to tailing out and tailing in, based on which encoder is being used.

When the Main Encoder is set to Entry (2):

  1. Tail out is immediate.
  2. Thread up uses the Shear to Encoder Distance 2 to set the encoder
  3. Tail out uses the Shear to Encoder Distance 2 to calculate scrap.

When the Main Encoder is set to Exit (1)

  1. Tail out is delayed until the Shear Tail out Distance.
  2. Thread up uses the Shear Tail out Distance to set the encoder.
  1. Tail out uses the Shear Tail out Distance to calculate scrap.

A 0xC0000000 task error is caused by a divide by zero attempt. The Dual Line Encoder option can Auto Correct the Auxiliary Encoder. If the Auxiliary Encoder is not getting counts, a divide by zero error can occur.

This has been resolved. Auto correction of the Auxiliary encoder is prevented unless both encoders have encoder counts greater than zero.

Setting the Tail Out Configuration to Single was mistakenly hiding the Shear Tail Out Distance and Shear Encoder Switchover distance parameters.

Stopping targets and stationary Die Accelerator targets that can be fired at the same time will now do so rather than be fired seqeuntially as has been done in the past.

This issue is possible due to SCN 4655 - XL2CL; Position the Die early when delaying for a stationary shear or punch.

On the first part after a Queue clear, SCN 4655 can cause the die to rapidly pre-position itself for a stationary target that results in the die out running the leading edge of the material. When this happens, the material drops out of the die, which can cause a jam up when the material catches back up to the die.

The software was changed to test if the resulting die position places the die beyond the current location of the material leading edge. If it does, the pre-positioning is disabled and the die will wait for the material to stop before it is positioned for the stationary target.

We have added a selection for the Keyence MK-G1000 part printer. This and the Keyence MK-U6000 printer selection select the exact same driver behind the scenes. The new selection makes it clear that the MK-G1000 printer is supported and avoids the confusion of having to select a driver that does not match the printer model.

The Closed Loop Feed to Stop controllers have a Slow Run input to help reduce Scrap when threading a new coil. It also helps for Material pit control.

Up until this point Open Loop controllers or controllers that have Open Loop Material motion control have handled with these things with external logic. However, if the material speed is controlled using the Analog feature of the controller, external logic is not sufficient.

This change adds an extended IO input (MODBUS) on input 52 or 50 for Open Loop Slow Run control. If the controller has Open Loop Material motion control, this input will be available.

HVAC Controllers use input 50.

All other controllers use input 52.

The Coast Mode Timeout setting was added for lines that take longer than the 3 second value that was hard coded at the time. It was only really intended to be left alone or used to compensate for lines that have longer coast times.

Customers have felt the need to adjust it down to the minimum of 1 second. This can create Missed Target scenarios where targets could have been hit wile coasting but were limited by the shortened coast time.

The Minimum Limit on this setting has now been changed to the default setting of 3 seconds.

The Command Velocity Filter was added for a specific customer who claimed that earlier versions of software performed better on their system.

We were looking for any differences between the "good" version and the latest. One difference was due to a bug that was fixed. The command velocity was being filtered using hard coded constants that did not get adjusted properly when the loop time changed for SERCOS. By adding the Setup, they were able to use the same filtering as was being used prior to fixing the bug.

The default filter rate is 35.8Hz. The effective rate with SERCOS prior to fixing the bug was 17.8Hz.

Recently a different customer was having trouble and we discovered that they had set the filter rate to 1hz. This caused their Die Accelerator to be way behind as it was accelerating. For this reason, we are raising the Lower Limit to something that still allows some adjustment below the default but limits it to a more reasonable range.

The Lower Limit of the Command Velocity Filter is now 10Hz rather than 1Hz.

On a Coil tail-out the tailed coil must be classified as Completely Used, Returned to Inventory or Not Unloaded. There is an Unload Coil Window that requires this classification to occur.

The software was not accounting for the possibility that an operator may turn power off to the machine while the Unload Coil screen is active. The window is displayed as soon as the coil tails out. It is very possible, near the end of a shift, that there may be no more production for the day and the machine gets turned off before threading the next coil. Because the tailed Coil was not classified, it is still considered the current coil. When the new coil is threaded, the software has no reason to prompt for a new coil. All the new coil’s production was getting attributed to the tailed coil.

The result of this scenario is the tailed coil gets double production tracked to it and the new coil gets none. The customers inventory still believes it has the new coil available for use.

To fix this issue, the state of tail-out will now be remembered throughout a power cycle. The Unload Coil screen will be presented after the power-up, requiring the tailed coil to be classified.

When selecting a driver, the RS232 Baud rate is displayed as a read only setup parameter to help in configuring the printer. The 19200 Baud rate is mistakenly displayed as 14400. This has been resolved.

When entering the run mode with a Closed Loop Die Accelerator, stationary cuts are a necessary evil. This change sets to minimize them by eliminating the use of the Shear Die Distance when determining if a stationary cut needs to be made. From now on only targets that are between the Min and Max Die Distances will be considered for stationary cuts.

When halting after a stationary cut, the material is supposed to remain stationary to prevent the material movement from damaging the newly cut part. However, the material was being allowed to feed during the die retract. This has been resolved.

In order to put customers in control of stationary cuts a new setup has been added called Allow Stationary Cut. It only applies to the Shear Press.

The new setup has three settings, Always, Never and Prompt. It defaults to Always to prevent issues with Legacy installs.

Always and Never are self-explanatory.

Prompt will halt the Line and display an Are You Sure window asking if a Stationary Cut Should be allowed.

If No is selected, any further attempt to run, as long as a stationary cut is required, will be prevented with a Missed Shear error. It will be prevented until a flying cut is executed, a Manual Shear is executed or the coil tails out.

If Yes is selected, the stationary cut will be allowed on the next attempt. Stationary cuts will be allowed until a flying cut is executed, a Manual Shear is executed or the coil tails out.

If there was no target, a Closed Loop Die Accelerator was not returning home when entering the run mode.

This is most likely to occur on a Hole Count controller or on the second die of a Dual Die Accelerator system.

A Hole Detect controller does not require a target for the shear die to stay in run.

The second die may or may not have a target.

In most cases the die will already be home but in some cases an operator may have manually jogged it away from home for maintenance or for a manual operation.

This has been resolved.

The 0x00B0002 task error is an indication of memory record corruption It is displayed when the record corruption is detected.

SCN 4716 setup conditions that cause memory corruption when trying to implement a new Queue Record garbage collection scheme.

SCN 4755 attempted to fix it by adding more protection around adding, removing, and deleting records. Customers are still experiencing issues with the new collection scheme, so it has now been re-implemented using a combination of the original method but with a new improvement.

The original method involved each press task removing and immediately deleting their own Queue Records. Deleting the records can be a lengthy process and is undesirable in a high priority press task.

The new solution returns to having each press task remove its own Queue Records but rather than delete them, it adds them to a new queue that a low priority task monitors to do the deletion.

Most prompt windows need to lock the Main Menu to prevent the screen from being changed or prevent the menu options from being selected while the prompt is open.

The Allow Stationary Cut window failed to unlock the Main Menu, preventing the screen or menu options from being changed after it was closed. This has been resolved.

Any window that requires attention from an operator is going to be a Modal Window. A status bit has been added to the Flags in the UART Status Sub-Command to indicate anytime a Modal Window is open.

The intended use for this is to notify a PC application anytime the XL controller needs attention. This allows the XL user interface to be buried and accessible through a KVM Window Application on a PC. In theory this allows an XL to be installed on a system where its only access to the XL display and keyboard is through a KVM interface window. A monitoring application can monitor the status bit and indicate on the computer screen that the XL requires attention.

This bit becomes available with Eclipse UART version 3.61 and higher.