4.80.0
11/30/2021
Through our MODBUS PLC integration feature, the ability for a PLC to initiate Quality Audit Triggers has been added.
The PLC must be configured as documented in our XL200 PLC Interface document. The PLC must know the Custom List ID (Return Value) of the Quality Audit that it wishes to trigger. It must then follow the sequence outlined in the XL200 PLC Interface document to use that ID to trigger the Quality Audit.
The Text Entry Custom List records were not properly validating the length of the text string entry.
The length of the text string entry is not supposed to exceed the maximum number of characters specified in Eclipse. Entering more characters than allowed was not generating an error as it should.
When validating against a user field, the entered text string must match the user field.
When not validating against a user field, the text string must be less than or equal to the maximum number of characters specified in the Custom List Record.
A customer pointed out a missing option when unloading a coil. When we see a Tail-Out input it can be for one of four reasons.
- The coil was removed because there are no more orders for it.
- It was completely used up.
- It was just backed out temporarily
- The remaining coil is un-usable and must be scrapped out.
We had options to handle 1-3 but we were missing a way to report option 4.
The unload coil screen now has a button for "Remaining Coil is Scrap". It becomes enabled if the Eclipse UART version is 3.59 or higher. Otherwise it is disabled because the customers version of Eclipse is not able to support the new feature.
If enabled, pressing the button opens a new dialog window that shows the user the coil number and the total footage used on the coil. It also has prompts to allow a scrap code to be entered and the remaining footage to be entered. If the customer has configured Eclipse properly with the initial footage of the coil and they are using Coil Validation, the controller will be able to calculate and pre-populate the remaining footage of the coil. If the initial footage was not provided or the controller calculates there is negative footage remaining it will pre-populate zero instead.
The dialog window has a "Scrap the Coil" button and a "Cancel" button.
Pressing the "Scrap the Coil" button reports the remainder as scrap using the footage and scrap code provided by the operator.
Pressing the "Cancel" button returns back to the original Unload Current Coil window.
A customer complained that the Die Reference mode was moving the die forward no matter what the state of the home sensor. In their case an important clue was that the die position was a large negative number, -21480.860".
A code review of the die reference function revealed the problem. The forward target was 1000.0" and the reverse target was -1000.0". Both of those targets would have resulted in a forward die motion when compared to the current die position.
The code was modified to prevent this condition by calculating the forward and reverse targets using the current die position.
The instance of the task error that is being fixed occurred on a V5 XL200CL and can only occur on the V5 XL200CL. However, the fix impacts all Models, V4, V5 Open and Closed Loop.
The Error is caused when a new timer interrupt has occurred without the prior timer interrupt receiving its return cyclical data from the DSP/ARM. The error was only possible on the CL because the CL is the only project that allows tasks to run between sending cyclical data and receiving it.
There was one command, receiving 16bits of data, that ran outside of the cyclical interrupts. That command was executing with interrupts disabled when the system info screen was displayed or when Eclipse initiated the ‘vE’ command. Just by luck it was sometimes receiving the Word that the ARM sends to initiate the IRQ for the return cyclical data. Reading this data cleared the interrupt.
Interrupts were Off when the ARM filled in its word so the 386 did not see the IRQ. The 386 requested its word but got the word the ARM already had put there. When that word was read the IRQ got cleared and the 386 never saw it, leaving the word the 386 asked for behind. On the V5, all of the ARM communication needs to be in the cyclical interrupts or his can happen. The fix impacts common software for all Models of Closed Loop and Open Loop.
Added four new setups to the list of settings controlled by Eclipse.
The Setups are:
- Auto Delete Done Orders After
- Show User Data - Program Screen
- Show User Data - Status Screen
- Stagger Panel Field
- Set Done Items to Ready
SCN 3970 provides more specific details on Settings of this type.
We had a bug report that the controller was displaying a Missed Shear Target error when it actually should have displayed a Missed Punch Target error. It caused considerable confusion in this particular instance until someone with more experience looked at the customers punch pattern. They had two punch targets too close together. Better error reporting may have saved some time.
The following change is being made to eliminate this issue in the future.
A single function, requiring the press Id will now be used to display this error. This function will check to see if the press Id is zero and if there are gags defined. If there are any gags defined the function will display a Missed Target Error and will display which press has the missed target error. If there are no gags and the press is press 0 a Missed Shear Target error will be displayed.
This change will result in the user always knowing which press to look at when investigating these errors. By still displaying the Missed Shear Target error when we know for sure it is a shear, we minimize the disruption that these sorts of changes sometimes cause.
In order to support data entry for EU countries that use characters in the extended ASCII range the following changes were made to the Virtual Keyboard in the XL.
- The Back key was moved to its traditional location next to the += key. In its place an AltGr key was added. EU keyboards use this key to switch between the traditional standard (Latin) characters and the extended characters used in their languages.
- When Russian is selected, the Radio buttons, Russian and English are still present for backwards usability. However, for all other languages they are replaced with buttons with the text Standard and Extended.
- Both the Radio Buttons and the AltGr button will switch back and forth between the Standard and Extended character sets.
- To avoid creating a new keyboard layout for each language, the EurKey Keyboard Layout is used when displaying the Extended character sets, with the exception of the Russian language. It uses the Windows 1521 keyboard layout.
- With the exception of Russian, we use the ASCII code page 1252 for our fonts. For any characters present on the EurKey layout but not in the 1252 code page font, the standard Latin character is displayed instead. There were a small handful of symbols that fell into this category.
The error message "No material code programmed" displayed on a Multi-Axis machine even though the Order had a material code. After investigating, it was discovered that it was the coil that had no material. It checks the coil material because the material may have been overriden or substituted. We need to use the material properties of the actual coil not what the order calls for when settting up Axes for the machine. What it does is correct but the error message was incomplete and did not direct the user to check the coil material.
If Coil Inventory is turned OFF, the original error message is displayed.
If Coil Inventory is ON a new error message is displayed that directs the user to look at both the Order and Coil material. The reason for this is that the coil material some times getes set based on the Order material.
There were a couple of issues with DIP switch 17 to enable the second line encoder on some of the Closed Loop models.
The SGF, MRE2, HMRE2, and MDA2 models would always report a Memory Configuration Data has changed. Memory will be cleared error when DIP switch 17 was present.
The MDA2 would report DIP Switch 17 as an Invalid DIP Switch setting.
On the hardware Issue 1 hid issue 2. On the PC simulation issue 2 was present due to differences in how the PC simulation starts vs the Hardware.
Each axis in a Multi Axis controller has a Minimum and Maximum Position setting that limits the Axis Position command. For an axis on the negative side of the machine it is easy to mix up what is the maximum value and what is the minimum value. For example -10.000" can look larger than -0.001". Entering the values into the wrong field results in axes seemingly reporting erroneous Position Limit failures.
To prevent this issue the two fields will be checked. If the Maximum Position is less than the Minimum Position, every time the user attempts to leave the configuration screen an error will be displayed until it is resolved.
Re-Factored the Multi-Axis Axis Configuration screens to eliminate duplicate code and to make creating new Axis drivers easier in the future. There should be no detectable differences to the user.
Re-Factored the Multi-Axis Axis Configuration screens to eliminate duplicate code and to make creating new Axis drivers easier in the future. There should be no detectable differences to the user.