Skip to content

Conversation

@jaspervanderhoek
Copy link
Owner

Added Known limitation section
Started updating first set of chapters (up to chapter 3.2.2.)

Added Known limitation section
Started updating first set of chapters (up to chapter 3.2.2.)
Add OPC UA subscription terminology
Refactored chapter: subscription, pages: overview,new/edit,troubleshoot
Added wording for ASU & BSD microflow
Added limitation
@MarkvanMents
Copy link

MarkvanMents commented Mar 4, 2021

Hi Jasper @jaspervanderhoek ,
The changes look great and add a lot of depth and background which was missing. Thanks.
Let me know when it is ready to be reviewed properly.

I notice that there has been an accidental :%s/us/UA/g - if you still have it open in an editor perhaps that would be the easiest place to undo it with a ^z rather than reverting the whole commit or reversing it by hand?

I look forward to hearing from you when this is ready to review, and let me know if there is anything I can help you with.
Mark

@jaspervanderhoek
Copy link
Owner Author

I notice that there has been an accidental :%s/us/UA/g - if you still have it open in an editor perhaps that would be the easiest place to undo it with a ^z rather than reverting the whole commit or reversing it by hand?

Unfortunately I made that change a while ago (I had some typos where I typed OPC US instead of UA) apparently I forgot to check the case sensitive option with the find/replace.

I think I fixed all mistakes though.

@MarkvanMents
Copy link

Thanks for resolving so quickly! Looks fine now.

@MarkvanMents
Copy link

Hi Jasper, @jaspervanderhoek
Is this ready to be reviewed and merged, or is there more work you need to do on it?

@jaspervanderhoek
Copy link
Owner Author

Hi @MarkvanMents , yes it's ready to be merged. There are just 2 todo's left in the document, we need a new screenshot of the module in the project explorer. And I added a todo to do an in-page link to another chapter, I don't know how you write those links for our doc pages.

Copy link

@MarkvanMents MarkvanMents left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Jasper, @jaspervanderhoek
I've made suggestions which add in the links which were in your todos.
When you are ready, can you accept these (if you are happy) and remove the Draft status of the PR. Then I can merge it.
Then I can do a final review - it will be easier as I will be able to update the files directly instead of having to make suggestions.


Once you have set up the server configuration, you can perform the following actions in your microflows.

#### 3.2.1 **Browse** a List of Nodes

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
#### 3.2.1 **Browse** a List of Nodes
#### 3.2.1 **Browse** a List of Nodes{#browse}

This displays the following data entry fields which can be used to control the tests.
* **Read** executes the Read action {{% todo %}}[Add a link to the read-action chapter]{{% /todo %}}
* **Write** executes the Write action {{% todo %}}[Add a link to the Write-action chapter]{{% /todo %}}
* **Browse** executes the Browse action {{% todo %}}[Add a link to the Browse-action chapter]{{% /todo %}}

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* **Browse** executes the Browse action {{% todo %}}[Add a link to the Browse-action chapter]{{% /todo %}}
* **Browse** executes the [Browse action](#browse)

* Return Variable – The output of this action is the JSON string with all information about the requested nodes. This string can be parsed with the Import Mapping activity.


#### 3.2.2 **Read** the Value of a Node

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
#### 3.2.2 **Read** the Value of a Node
#### 3.2.2 **Read** the Value of a Node{#read}

* **Result** – the resulting JSON string from performing any of the four test actions. This shows the full response from the OPC UA Server, the connector might at relevant details in case of an error.

This displays the following data entry fields which can be used to control the tests.
* **Read** executes the Read action {{% todo %}}[Add a link to the read-action chapter]{{% /todo %}}

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* **Read** executes the Read action {{% todo %}}[Add a link to the read-action chapter]{{% /todo %}}
* **Read** executes the [Read action](#read)

All values are read as strings, you will need to convert them if you need a numeric or date value.
{{% /alert %}}

#### 3.2.3 **Subscribe** to Updates of Data from a Node

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
#### 3.2.3 **Subscribe** to Updates of Data from a Node
#### 3.2.3 **Subscribe** to Updates of Data from a Node{#subscribe}

* **Write** executes the Write action {{% todo %}}[Add a link to the Write-action chapter]{{% /todo %}}
* **Browse** executes the Browse action {{% todo %}}[Add a link to the Browse-action chapter]{{% /todo %}}
* **Subscribe Simple** executes the Subscribe action {{% todo %}}[Add a link to the Subscribe-action chapter]{{% /todo %}}. Process response with microflow: SubscriptionIncomingData_Process_TEST. Check the log or put a breakpoint on this microflow to checkout the response messages.
* **Subscribe w/ Msg** executes the Subscribe action {{% todo %}}[Add a link to the Subscribe-action chapter]{{% /todo %}}. Process response with microflow: SubscriptionIncomingData_Process_wMessage_TEST. Check the log or put a breakpoint on this microflow to checkout the response messages.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* **Subscribe w/ Msg** executes the Subscribe action {{% todo %}}[Add a link to the Subscribe-action chapter]{{% /todo %}}. Process response with microflow: SubscriptionIncomingData_Process_wMessage_TEST. Check the log or put a breakpoint on this microflow to checkout the response messages.
* **Subscribe w/ Msg** executes the [Subscribe action](#subscribe). Process response with microflow: SubscriptionIncomingData_Process_wMessage_TEST. Check the log or put a breakpoint on this microflow to checkout the response messages.

{{% alert type="warning" %}}
Only one of these authentication methods should be enabled for each OPC UA server. This method must be matched by the OPC UA Client connector to ensure it can reach the correct endpoint.
{{% /alert %}}
Only one of the options can be in use any any time, which one will be determined by the OPC UA server that you are connecting too. The password from both the user and certificate are automatically encrypted when saving the server configuration using the Encryption module.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Only one of the options can be in use any any time, which one will be determined by the OPC UA server that you are connecting too. The password from both the user and certificate are automatically encrypted when saving the server configuration using the Encryption module.
Only one of the options can be in use any any time. Which one will be determined by the OPC UA server that you are connecting to. The password from both the user and certificate are automatically encrypted when saving the server configuration using the Encryption module.

* Encryption Module
* An OPC UA server – we assume that you are familiar with OPC UA and your OPC UA server(s), these instructions do not include information on how to set up your servers.

Recommended; Having an external OPC UA Client tool will make setup of the connection a lot easier. A commonly used client is the one from [Unified Automation](https://www.unified-automation.com/downloads/opc-ua-clients.html), with this (non-Mendix) tool you will be able to browse through the server and find the parameters needed to configure your connection.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Recommended; Having an external OPC UA Client tool will make setup of the connection a lot easier. A commonly used client is the one from [Unified Automation](https://www.unified-automation.com/downloads/opc-ua-clients.html), with this (non-Mendix) tool you will be able to browse through the server and find the parameters needed to configure your connection.
Recommended; Having an external OPC UA Client tool will make setup of the connection a lot easier. A commonly-used client is the one from [Unified Automation](https://www.unified-automation.com/downloads/opc-ua-clients.html). With this (non-Mendix) tool you will be able to browse through the server and find the parameters needed to configure your connection.

### 2.1 Configuration:
1. Add the **OpcUaServer_Overview** page to the navigation of the app, either through the **Navigation** settings, or by adding an **Open Page** button to a page which is already in the navigation (for example the home page).

2. Looup the Constant: **UA_ApplicationName** in the **_USE_ME** folder and update these with the information specific to your Client. The application name must be unique to the OPC UA Server, the connector has no requirements to the contents of this constant. If you have a single Mendix application connecting to the server you could choose to leave the default value, if you have multiple Mendix applications connecting to the same server you **must** alter the name to be unique (as per the OPC UA spec).

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
2. Looup the Constant: **UA_ApplicationName** in the **_USE_ME** folder and update these with the information specific to your Client. The application name must be unique to the OPC UA Server, the connector has no requirements to the contents of this constant. If you have a single Mendix application connecting to the server you could choose to leave the default value, if you have multiple Mendix applications connecting to the same server you **must** alter the name to be unique (as per the OPC UA spec).
2. Find the constant: **UA_ApplicationName** in the **_USE_ME** folder and update this with the information specific to your Client. The application name must be unique to the OPC UA Server, the connector has no requirements to the contents of this constant. If you have a single Mendix application connecting to the server you could choose to leave the default value, if you have multiple Mendix applications connecting to the same server you **must** alter the name to be unique (as per the OPC UA spec).

2. Looup the Constant: **UA_ApplicationName** in the **_USE_ME** folder and update these with the information specific to your Client. The application name must be unique to the OPC UA Server, the connector has no requirements to the contents of this constant. If you have a single Mendix application connecting to the server you could choose to leave the default value, if you have multiple Mendix applications connecting to the same server you **must** alter the name to be unique (as per the OPC UA spec).
*See the OPC UA Specification for more details, this setting is only used by the OPC UA Server.*

3. Looup the Constant: **UA_ApplicationURI** in the **_USE_ME** folder and update these with the information specific to your Client. The application URI must be unique to the OPC UA Server, the connector has no requirements to the contents of this constant. If you have a single Mendix application connecting to the server you could choose to leave the default value, if you have multiple Mendix applications connecting to the same server you **must** alter the name to be unique (as per the OPC UA spec).

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
3. Looup the Constant: **UA_ApplicationURI** in the **_USE_ME** folder and update these with the information specific to your Client. The application URI must be unique to the OPC UA Server, the connector has no requirements to the contents of this constant. If you have a single Mendix application connecting to the server you could choose to leave the default value, if you have multiple Mendix applications connecting to the same server you **must** alter the name to be unique (as per the OPC UA spec).
3. Find the constant: **UA_ApplicationURI** in the **_USE_ME** folder and update this with the information specific to your Client. The application URI must be unique to the OPC UA Server, the connector has no requirements to the contents of this constant. If you have a single Mendix application connecting to the server you could choose to leave the default value, if you have multiple Mendix applications connecting to the same server you **must** alter the name to be unique (as per the OPC UA spec).

@MarkvanMents
Copy link

@jaspervanderhoek Jasper, I still can't merge this as you still have it in draft.
Do you have a release date for this module planned, or do I need to talk to Jos/Erno?
Thanks
Mark

@jaspervanderhoek jaspervanderhoek marked this pull request as ready for review April 21, 2021 12:39
@jaspervanderhoek jaspervanderhoek changed the base branch from MvM-OPCUAConnector to development April 21, 2021 14:50
@jaspervanderhoek jaspervanderhoek changed the title Initial update for the latest version of the module Full docs of the OPC UA public beta release Apr 21, 2021
@jaspervanderhoek jaspervanderhoek changed the base branch from development to MvM-OPCUAConnector April 21, 2021 14:57
@jaspervanderhoek jaspervanderhoek merged commit 1384571 into MvM-OPCUAConnector Apr 21, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants