Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: detail machine state for timeline #53

Merged
merged 4 commits into from
May 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/linter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ jobs:
# Run Linter against code base #
################################
- name: Lint Code Base
uses: github/super-linter@v5.0.0
uses: super-linter/super-linter@v6.5.0
env:
VALIDATE_ALL_CODEBASE: false
DEFAULT_BRANCH: main
Expand Down
32 changes: 16 additions & 16 deletions Specs/MachineTool.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,15 +25,15 @@ To fill the demo dashboard machine page with the most content the variables mark

| **Attribute** | **Value** | | | | |
| --- | --- | --- | --- | --- | --- |
| BrowseName | MachineIdentificationType |
| IsAbstract | False |
| Description | Contains information about the identification and nameplate of a machine |
| BrowseName | MachineIdentificationType | | | | |
| IsAbstract | False | | | | |
| Description | Contains information about the identification and nameplate of a machine | | | | |
| | | | | | |
| **References** | **NodeClass** | **BrowseName** | **DataType** | **TypeDefinition** | **Other** |
| Subtype of the 2:FunctionalGroupType defined in OPC 10000-100, i.e. inheriting the InstanceDeclarations of that Node. |
| Subtype of the 2:FunctionalGroupType defined in OPC 10000-100, i.e. inheriting the InstanceDeclarations of that Node. | | | | | |
| 0:HasProperty | Variable | 0:DefaultInstanceBrowseName | 0:QualifiedName | 0:PropertyType | |
| 0:HasInterface | ObjectType | IMachineVendorNameplateType |
| 0:HasInterface | ObjectType | IMachineTagNameplateType |
| 0:HasInterface | ObjectType | IMachineVendorNameplateType | | | |
| 0:HasInterface | ObjectType | IMachineTagNameplateType | | | |
| Applied from IMachineVendorNameplateType | | | | | |
| 0:HasProperty | Variable | 2:ProductInstanceUri | 0:String | 0:PropertyType | M, RO |
| 0:HasProperty | Variable | 2:Manufacturer | 0:LocalizedText | 0:PropertyType | M, RO |
Expand Down Expand Up @@ -63,7 +63,7 @@ The instance _Location_ property is evaluated according to the special requireme

`http://www.<MANUFACTURERDOMAIN>/example`

- The rules for creating a URI can be found online. Please follow [this link](https://en.wikipedia.org/wiki/Uniform_Resource_Identifier). In the case of a website as a URI, it is not necessary that the website actually exists, it only identifies the machine uniquely. In order to simplify debugging it is recommended to choose a URI which allows an identification of the machine also for third persons, e.g. by including the company name.
- The rules for creating a URI can be found online. Please follow [this link](https://en.wikipedia.org/wiki/Uniform_Resource_Identifier). In the case of a URL as a URI, it is not necessary that the site actually exists, it only identifies the machine uniquely. In order to simplify debugging it is recommended to choose a URI which allows an identification of the machine also for third persons, e.g. by including the company name.

- The machine will get a unique NamespaceURI after being integrated to the datahub by addition of a suffix to ensure unique namespaces.

Expand All @@ -75,18 +75,18 @@ The instance _Location_ property is evaluated according to the special requireme

### Active Program Statusbar

For the status overview in the dashboard, the _State_ of the _ProductionActiveProgramType_ is stored and plotted over time. The status bar **does NOT relate to the stacklight** status!
For the status overview in the dashboard, the _StateNumber_ of the _ProductionActiveProgramType.State.CurrentState.Number_ is stored and plotted over time. The status bar **does NOT relate to the stacklight** status!

Each status is assigned to a color, the color scheme is here (subject to change):

| State | Color |
| --- | --- |
| Initializing | &#9898; Gray |
| Running | &#128994; Green |
| Ended | &#128309; Cyan |
| Interrupted | &#128992; Orange |
| Aborted | &#128308; Red |
| Any other (unspecified) state | &#9899; Black |
| State |Number | Color |
| --- | --- | --- |
| Initializing |0| &#9898; Grey |
| Running |1| &#128994; Green |
| Ended |2| &#128309; Cyan |
| Interrupted |3| &#128992; Orange |
| Aborted |4| &#128308; Red |
| Any other (unspecified) state | | &#9899; Black |

A gap is left for periods of time in which no data was recorded (e.g. machine offline). An exemplary timeline is shown above.

Expand Down
Binary file modified img/MachineTool/MT-ActiveProgram.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified img/MachineTool/MT-Overview.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading