Mapping for PackML MachineryItemState & MachineryOperationMode|OPC UA Companion Standards|Forum|OPC Foundation

Avatar
Search
Forum Scope


Match



Forum Options



Minimum search word length is 3 characters - maximum search word length is 84 characters
Lost password?
sp_Feed sp_PrintTopic sp_TopicIcon
Mapping for PackML MachineryItemState & MachineryOperationMode
Avatar
Patrick Berger
Member
Members
Forum Posts: 4
Member Since:
02/22/2022
sp_UserOfflineSmall Offline
1
08/30/2024 - 04:46
sp_Permalink sp_Print

Hi

Currently I'm struggling with creating a mapping to enable customers to calculate KPIs with different companion specifications (because they have different machines form different vendors at the shop floor)...

  • Is it possible to mapp PackML-States to MachineryItemStates or should this solved with a combination of MachineryItemStates & MachineryOperationMode?
  • MachineryOperationMode mode is extremley wide and unclear (should this be the intention of a standard?) - possible interpretatons are
    • production mode like automatic / manual (e.g. single step) / maintenance (e.g. limitted speed, re-calibrate axis positions...)
    • defined from a operation mode switch with impact to safety (e.g. SLS)

 

My fist idea was something like this

  • PackML-Wait-States
    (MachineryItemState = OutOfService) & (MachineryOperationMode = None) -> ABORTED
    (MachineryItemState = OutOfService) & (MachineryOperationMode = Maintenance) -> HELD
    (MachineryItemState = NotExecuting) & (MachineryOperationMode = None) -> STOPPED, IDLE, COMPLETE
    (MachineryItemState = NotExecuting) & (MachineryOperationMode = Processing) -> SUSPENDED
  • PackML-Acting-States
    (MachineryItemState = Executing) & (MachineryOperationMode = Setup) -> RESETING, STARTING, COMPLETING, UNSUSPENDING, UNHOLDING, CLEARING, STOPPING
    (MachineryItemState = Executing) & (MachineryOperationMode = None) -> ABORTING
    (MachineryItemState = Executing) & (MachineryOperationMode = Processing) -> EXECUTE, HOLDING, SUSPENDING

But the guidline for OEE with PackML defines something like this:

Time machine is producing product (EXECUTE + HOLDING + SUSPENDING)

HOLDING and SUPENDING because bringing the machine to a controlled stop with not creating scrap (so there could be partial produced goods inside the machine).

 

Time machine is in faliure (HELD + STOPPED + ABORDET)

This is strange:

  • STOPPED isn't defined as error-state
  • HOLDING and ABORTING are acting states from a Hold or Abort command - in general there will be an Error to trigger this transition. so why are they not used for "time machine is in failure"? (this would have an impact to my mapping).

this would change the mapping to something like this

(MachineryItemState = Executing) & (MachineryOperationMode = Maintenance) -> HOLDING
(MachineryItemState = Executing) & (MachineryOperationMode = Processing) -> EXECUTE, SUSPENDING

 

what do you think? what would be the more appropriate interpretation? or am I completely wrong?

 

Best regards

Patrick

Avatar
Heiko Herden
New Member
Members
Forum Posts: 1
Member Since:
08/15/2019
sp_UserOfflineSmall Offline
2
09/18/2024 - 06:18
sp_Permalink sp_Print

Hi,

in general these state machines express different things. The State Machines in OPC UA for Machinery Part 1 express the state and operation modes of the machine (or component). These state machines are kept very generic, so that every domain can use them. It is up to the domains to use it like this or to add deeper information in Substate Machines. Examples for that can be found in OPC 40084-1 Chapter 7.4.1 or in OPC 40501 Chapter 8.3.10.

The State Machine in PackML rather expresses state of the production. Therefore it does not make sense from my point of view to map this with OPC UA for Machinery Part 1 without taking other information into account.

But furthermore there is the State Machine for the Job State in OPC 10031-4 OPC UA for ISA 95 Job Control (see figure 5). This state machine can be used alone or combined with OPC UA for Machinery. With the consideration of both you can combine the Machine Status and the status of the current job, which leads to a similar expression of the production as is done in Pack ML.

I hope this is helpful.

Best wishes

Heiko

Forum Timezone: America/Phoenix
Most Users Ever Online: 510
Currently Online:
Guest(s) 39
Currently Browsing this Page:
1 Guest(s)
Top Posters:
Forum Stats:
Groups: 2
Forums: 10
Topics: 1435
Posts: 4855