20230902 - Bug Fixes and New Features
Version summary
Component | Version |
---|---|
Frontend | 1.111.0 |
Backend | 1.115.1 |
Database | 1.4.0.002 |
Platform | 9.4.0-b49 |
Notable new features
Some major database changes have been made to support the features below
Click to expand
- To the
asset_cycle_data
table:- new columns
cycleCount
- how many cycles each entry represents. Defaults to 1 for all existing records.If two cycles are logged in succession, for the same asset, X, with a cycle count of V, and then Y, then X + V = Y.sourceType
- Where did the cycle entry originate from.NORMAL
AGGREGATED
: stampingGAP
: describes a set of cycles that were artificially generated
- columns that get renamed:
totalCycleNumber
->startCycleNumber
: Cycle number of the asset at the start of the cycle entry.cycleInterval
->cyclesDuration
: How long this entry took, in ms. To retrieve the cycle interval, divide this value to thecycleCount
- For
NORMAL
entries, equal to thecycleInterval
. - For
AGGREGATED
entries, equal to the sumaggregationPeriod
of the cycle events - For
GAP
entries, it's value is equal to the amount of time between when the gap started, and when and estimation of when it finished.GAP
entries always have theartificial
flag set to true
- For
- new columns
- To the
asset_kpi
TABLE:- new columns
trustedCycleCount
- how many "trusted" cycles occurred in this interval. A trusted cycle is defined as being a "NORMAL or "AGGREGATED" cycle source type, and not part of a "GAP".trustedCycleCount <= "endCycleNumber" - "startCycleNumber"
- generated columns that previously used
"endCycleNumber" - "startCycleNumber"
to determine the number of cycles in an interval will now usetrustedCycleCount
. This number will always be `<=- the
performance
formula - all calculations for the
avgCycleTime
- the
- new columns
Major changes to how cycle gaps are processed
Previously, all gaps > 100 cycles would be ignored, and they would not lead to any changes on the tool attached to the monitor. The behaviour is now different.
Gaps are of three kinds:
SMALL
gaps (<100 cycles) will be filled using artificially generated cycles. They will affect KPIs.MEDIUM
gaps (between 100 and 100_000) will be logged as gaps, they won't affect kpis but will lead to an increase of the cycle count on the tool. The duration of the gap is determined as being the time between when the gap started and the time the message with the cycle that ended the gap was received, minus the duration of all other cycles that were received on the same timestamp. This gives us an estimation that is as close to reality as possible, given the available data. The cycles in the gap do not affect KPIs. Gaps of this type to not affect any downstream machines or inserts because we do not know where they occured.LARGE
gaps (>100_000) will be completely ignored.
Additionally, decreased the max size of the unprocessed cycles from 100 to 15. This should make the application receive cycles a bit faster.
Lastly, the maximum possible duration of a cycle used to be restricted to 24 days. It now can be over 2 million years.
Initial stamping support
Initial support for stamping, allowing the server to process stamping messages from v4 gateways. Note that this support still requires more testing as there are major issues that need to be clarified on the format of the data coming from the monitors themselves.
Improvements
improve the favicon of the application and make it look better when using it as a desktop shortcut (#426)
Cycle time report
- Sort the data by timestamp, to work around #461
Show the total cycle count in that report interval. This is useful both for normal tools, but also for stamping dies, that receive multiple aggregated cycles
Molds dashboard
Always show both the tool and press name
show when mold last processed cycle on overview and dashboard also clarify some translations. Note that this is also available on the asset overview page, and as a column in the asset list view.
- tool name and press names are shown on different rows
- icons are used to tell the two apart
- sorting is done by the press display name
- when "out of tolerance first" is enabled, sorting sorting inside the assets with the same tolerance is done by the press name
Other changes
- Replace reverse geocoding api provider to MapTiler and replace the use of
state
toregion
, for a more non-US centric view. - Remove the
@logged
flag from properties since it wasn't really used, and were providing useless load on the database - Add
@indexed
flag on properties that are usually searched usingQueryImplementingThingsOptimized
No longer broken
- PM warnings are now generated when
currentCycleCount > (cycleCountGoal - 5% *pmCycleInterval)
. Previously they were generated atcurrentCycleCount > cycleCountGoal * 95%
. Same logic applies for hour active conditions. This is also reflected on the PM countdown on the dashboard where yellow is used correctlyThe dashboard PM indicator bar now uses the same limits to show green/yellow/red colors. - Resolve issue where logging downtime may fail with a database error
- Don't show the default temperature in UI on the Asset Overview page (don't show -273.15)