View OAS Pricing for some basic examples.
Visit Request a Quote to request a product quotation.
View OAS Pricing for some basic examples.
Visit Request a Quote to request a product quotation.
Yes, the Microsoft Visual C++ libraries need to be installed. Download from the following.
http://www.microsoft.com/en-us/download/details.aspx?id=5582
Yes, run the following Setup.exe /s /v”/qn”.
All support communications over the Internet, so networking is not a deciding factor.
Windows HMI is a good choice if:
WPF HMI is a good choice if:
Web HMI is a good choice if:
Try running the fix https://support.microsoft.com/kb/290301?wa=wsignin1.0
The .NET Framework 3.5 needs to be enabled.
a) Press “Windows Logo” + “R” keys on the keyboard.
b) Type “appwiz.cpl” in the “Run” command box and press “ENTER”.
c) In the “Programs and Features” window, click on the link “Turn Windows features on or off”.
d) Check if the “.NET Framework 3.5 (includes .NET 2.0 and 3.0)” option is available in it.
e) If yes, then enable it and then click on “OK”.
f) Follow the on-screen instructions to complete the installation and restart the computer, if prompted.
Open Automation Software Tags can be defined to connect directly to devices using the CANBus standard using OAS built in CANBus Driver Interfaces.
The following steps can be used to setup direct communications with controllers using the CANBus standard.
Start Configure OAS application from the program group Open Automation Software.
Select Configure-License and verify that CANBus is one of the available Drivers in the lower left of the form. If you do not CANBus driver available contact support@oasiot.com to update your license.
Note: You will need to be running Open Automation Software Version 8.0.0.10 or greater to support direct CANBus communications. You can download the latest version here.
Select Configure-Drivers.
Select localhost or the remote service you wish to modify with the Select button to the right of the Network Node list.
Note: Optionally select the Live Data Cloud node if you are hosting CANBus data over the Internet with a standard Internet connection.
Enter a meaningful Driver Interface Name that you will refer to this physical connection when defining Tags with a CANBus Data Source.
Define the properties for the desired physical connection.
Note: You may need to Set Default Network Adapter for Driver Interfaces of the operating system.
Note: Set the Driver to CANBus.
Select the Add button in the lower part of the form to add the Driver Interface as an available selection when defining Tags in the next step.
Note: If you need to define several Driver Interfaces you can use the CSV Export and CSV Import on the toolbar in the upper right together with Microsoft Excel.
Select Configure-Tags.
Select localhost or the remote service you wish to modify with the Select button to the right of the Network Node list.
Note: Optionally select the Live Data Cloud node if you are hosting Modbus data over the Internet with a standard Internet connection.
Select to Add a Tag.
Note: You can also add organizational Groups as many levels deep as you prefer and add tags to groups. To do this first add a Group to the root level, then right click on the Group in the right window to add additional Groups or Tags.
Change the Data Source Tag property to CANBus.
Select the correct Driver Interface from the Driver Interface pull down list.
Specify the desired Polling Rate for the Tag.
Specify the Address of the variable to read and write to.
To define multiple tags use the CSV Export and CSV Import on the toolbar in the upper right together with Microsoft Excel.
Note: You can also programmatically define Tags using the free to use OPC Systems component as demonstrated in the Form FormConfigureCSV in the WinForm Example Code application that installs with Open Automation Software in the Program Group Open Automation Software. This component can be used in any .NET application includes Web Services, Windows Services, WPF Applications, and ASP.NET or .NET MVC Web Applications.
Select the Save button on the toolbar at the top.
Create a directory on the local C: drive with the name OPCSystemsDemo.
Save the file DemoTags.tags in the directory C:OPCSystemsDemo.
Under Configure – Options set the Default Tag Configuration File so when the computer restarts the tag file will automatically be loaded.
The following guide demonstrates how to connect to the OAS REST API.
To see how to use the OAS Platform with an external REST API view the Moving Data to an External REST API Use Case.
To use the OAS REST API you must make sure that the OAS HTTP service is listening on the correct port. This is done within the OAS Configuration application.
Open the OAS Configuration application and select Configure > Options, then select the network node (localhost if working on the local machine) and click Select.
Under the Networking tab, locate the field for REST API/WebHMI Port Number. The default is 58725 but can be changed. If you are accessing the server from a remote client, you will also need to make sure your machine and/or company firewalls allow TCP traffic on the selected port.
Using SSL with REST API is fully supported.
Read more about Configuring OAS to use SSL for Web and REST API products.
NOTE: Making any changes to the port numbers in this section of the configuration app will temporarily restart server processes and may cause a brief interruption in data processing.
Install Postman
Navigate to http://restapi.openautomationsoftware.com to open the REST API online documentation.
This documentation illustrates all of the operations available to any REST API client and can be tested using the Postman application client. In the upper right corner of the documentation, you will see a button to Run in Postman, which will install the API documentation into the Postman client for direct execution against any OAS server. Additionally, the documentation can be configured to display code samples in multiple languages including cURL, jQuery, and NodeJS. Feel free to browse the documentation at any time and to refer back to it while developing your applications.
Clicking Run in Postman will pop up a dialog box to import the REST API into an existing installation of Postman, or you can choose to install the app for the first time. Postman is available for Windows and Mac desktops as well as in a Chrome extension.
Test your API installation
Once installed and the API has been downloaded into the app, you will see the following interface, with all operations on the left, organized identically to the online documentation:
The first operation to execute is the Authenticate call, which will generate a REST API session and returns a clientid and token to be used in all subsequent calls to the OAS server.
In the list of operations, expand and select Authenticate and you will see the following on the right side of the app:
This shows that the Authenticate operation is executed as an HTTP POST against the /authenticate URL appended to the base {{url}}. This base URL is defined in your Environment here. Select Manage Environments to add new fields:
Add your server to the Environments list
Click ADD to create a new Environment which will hold environment variables:
Add a name for your environment, then add a key of url with a value of http://localhost:58725/OASREST/v2 and click ADD to create the new environment. You can also use your OAS server’s IP address instead of localhost, if you are connecting to it from a remote workstation.
Next, return to execute the the Authenticate operation.
Now under the Environments dropdown, select your new Environment. You should see the {{url}} turn orange, indicating that the environment variable is being used.
You can now click SEND to execute the post against your server. If successful, you should see a response body similar to the one below, containing the clientid and token fields.
You can then use these fields in the header of all other operations using the Postman app to test your server.
Accessing Tag Values
Once authenticated, you are now able to use the clientid and token in HTTP headers to make calls to configure Tags, access real time and historical Tag data, and even real time and historical Alarm and Trend data. When referencing Tags in any call, you it is assumed that you are accessing them on the OAS server being called in the REST API. However, you can also access remote Tags on any OAS server networked with the target server. Read more about the proper syntax for accessing Tags and Tag Variables.
OAS servers can communicate with each other and pass along tag data. This allows for distributed network load as well as placing OAS servers behind firewalls so they cannot be accessed directly. This allows you to securely issue REST API calls against one server and read/write data within a remote OAS server that cannot be reached directly from the REST API client. This same concept applies whether you are calling the OAS REST API or using the .NET Data Connector for programmatic Tag access and configuration.
Set the url to OAS Engine that the REST API will be hosted from. This is the URL to the Main OAS Engine whether you are accessing tag data on the Main OAS Engine or on a Remote OAS Engine.
Localhost URL : will only work when accessing the Main OAS Engine on the same machine as the client.
http://localhost:58725/OASREST/v2
Explicit URL : use the IP Address or domain name of the Main OAS Engine, allowing you to access it from a remote client. This will also work on the same machine and is the best option for code flexibility.
http://192.168.0.1:58725/OASREST/v2
Main OAS Engine Tag – accessing tag data on the Main OAS Engine only requires referencing the tag path.
{ "tags": [ {"path":"TagName.Value"} ] }
Remote OAS Engine Tag – To monitor real time data from Remote OAS Engines reference the tag path in the form \\<Remote OAS address>\<Tag Path>
. Note in the example below that backslash characters are escaped within strings, changing \ to \\ and \\ to \\\\.
Basic Networking – Static IP or domain name
{ "tags": [ {"path":"\\\\192.168.0.2\\TagName.Value"}, {"path":"\\\\192.168.0.3\\TagName.Value"}, {"path":"\\\\myserver.com\\TagName.Value"} ] }
Live Data Cloud Networking – Dynamic IP
Once you have registered named Live Data Cloud nodes on an OAS server, you can reference them in the form RemoteSCADAHosting.<Node Name>.<Tag Path>
.
{ "tags": [ {"path":"RemoteSCADAHosting.LiveDataCloudNode01.TagName.Value"}, {"path":"RemoteSCADAHosting.LiveDataCloudNode02.TagName.Value"}, {"path":"RemoteSCADAHosting.LiveDataCloudNode03.TagName.Value"} ] }
To execute REST API Tag Configuration calls against Remote OAS Engines, you can use the networknode parameter to reference a static IP or domain name, or the ldc parameter to reference a Live Data Cloud node name. The example below demonstrates calls to the CSV Tag configuration calls using each of these methods.
Basic Networking – Static IP or domain name
http://192.168.0.1:58725/OASREST/v2/csvtags?columns=Tag,Value - Data Type,Value - Value,Last Column&networknode=192.168.0.2
Live Data Cloud Networking – Dynamic IP
http://192.168.0.1:58725/OASREST/v2/csvtags?columns=Tag,Value - Data Type,Value - Value,Last Column&ldc=LiveDataCloudNode01
Because your authentication call is always against the Main OAS Engine, that same credential will be passed to any networked OAS Engine when referencing remote Tags. So it is critical to make sure the same credential (username/password) exists on all networked OAS Engines and has been granted the appropriate access level for the command being executed.
OAS is both an OPC UA Client and OPC UA Server.
Open Automation Software Tags can be defined to connect to OPC UA Servers with the built in OPC UA Driver Interface.
If you want interface OAS with an OPC UA Client please see the Getting Started OPC UA Client guide.
The following steps can be used to setup communications with OPC UA Servers.
Start Configure OAS application from the program group Open Automation Software.
Select Configure-License and verify that OPCUA is one of the available Drivers in the lower left of the form. If you do not see the OPCUA driver update your Open Automation Software to the latest version.
Note: You will need to be running Open Automation Software Version 10.0.0.12 or greater to support OPC UA communications. You can download the latest version from our Open Automation Software Download page.
Select Configure-Drivers.
Select localhost or the remote service you wish to modify with the Select button to the right of the Network Node list.
Note: Optionally select the Live Data Cloud node if you are hosting OPC UA data over the Internet with a standard Internet connection.
Enter a meaningful Driver Interface Name that you will refer to this physical connection when defining Tags with an OPCUA Data Source.
Define the properties for the connection to the OPC UA server.
Set the Driver to OPC UA.
Note: If you enable security the certificate path is C:\ProgramData\OpenAutomationSoftware\pki on Windows and /ConfigFiles/pki/ on Linux.
Optionally define a secondary failover server if the primary server fails with the property Enable Failover.
If both the primary and secondary servers are offline the Return to Online settings determines the retry frequency.
View Driver Interface Failover for more information and and video demonstrating communications failover.
Select the Add button in the lower part of the form to add the Driver Interface as an available selection when defining Tags in the next step.
Note: If you need to define several Driver Interfaces you can use the CSV Export and CSV Import on the toolbar in the upper right together with Microsoft Excel.
Select Configure-Tags.
Select localhost or the remote service you wish to modify with the Select button to the right of the Network Node list.
Note: Optionally select the Live Data Cloud node if you are hosting OPC UA data over the Internet with a standard Internet connection.
Select to Add a Tag.
Note: You can also add organizational Groups as many levels deep as you prefer and add tags to groups. To do this first add a Group to the Tags Group at root level, then right click on the Group in the right window to add additional Groups or Tags.
Change the Data Source Tag property to OPCUA.
If you have more than one OPC UA Server defined in the Driver Interfaces select the desired Driver Interface.
Specify the desired Polling Rate for the Tag.
Use the Browse button to browse the OPC UA Server for the IdType, NodeId, Namespace, and Data Type or manually set them.
Note: If you are unable to connect to the OPC UA Server due to a certificate security error go to C:\ProgramData\OpenAutomationSoftware\pki\ on Windows or the pki sub-directory where the OAS Engine is located on Linux and copy the files in the rejected\certs directory to trusted\certs.
You can also enter the domain name in the Domain Name Override when Use Security is enabled.
To define multiple tags use one of the following optional methods.
Select the Save button on the toolbar at the top.
Create a directory on the local C: drive on Windows or sub folder on Linux with the name OASDemo.
Save the file DemoTags.tags in the directory C:\OASDemo.
Under Configure – Options set the Default Tag Configuration File so when the computer restarts the tag file will automatically be loaded.
The UDP Broadcast feature is used to transfer values through Unidirectional Network Gateway with communication diodes that only allow traffic to go one way.
This networking feature is only needed when bidirectional communications is not allowed. The feature is included for free in all OAS systems.
The feature supports broadcasting data from any tag variable from a the local server or remote servers within the DMZ to unlimited number of receiving servers. Each receiving server can be setup to receive data from multiple broadcast servers providing many to many data transfer.
Use the following steps to setup servers to broadcast data and receiving services to update local and remote tag variables from the broadcasting nodes.
The receiving nodes need to have a fixed IP address, registered domain name, or network node name. The broadcasting nodes do not need to have a fixed IP address.
Start Configure OAS application.
From the data source service select Configure-UDP Broadcast.
Select the Local OAS Service by selecting the Select button next to the Network Node drop down.
Click the Checkbox to Enable UDP Broadcast and enter the Server Port number and Broadcast Rate which is the rate all values from this service will be broadcast to the receiving clients.
Click on Apply Changes.
Click the Add Button and enter each receiving client IP Address and Port Number in the popup window and click OK.
Choose to send all tag values from the local service on each broadcast or uncheck the property Send All Local Tags to define a list of tags from the local system, remote systems, and all variables.
By defining which tags to broadcast has the following benefits over Send All Local Tags.
Select the Save button on the toolbar at the top.
Save the file myUDPBroadcastServer.UDPBroadcast in the directory of your choice.
You can specify for this configuration to load automatically when the Service starts using Configure-Options to specify this default UDP Broadcast file.
From the receiving service select Configure-UDP Receive.
Select the Local OAS Service by selecting the Select button next to the Network Node drop down.
Click the CheckBox to Enable UDP Receive and enter the desired watchdog rate. The watchdog rate is the amount of time it will wait before setting the receiving tags quality to bad without receiving a broadcast.
Click on Apply Changes.
Click the Add Button to add a Port Number to listen on and select OK. You can enter multiple receiving port numbers.
Select the Save button on the toolbar at the top.
Save the file myUDPBroadcastClient.UDPReceive in the directory of your choice.
You can specify for this configuration to load automatically when the Service starts using Configure-Options to specify this default UDP Receive file.
In the receiving node select Configure-Tags. Add Tag’s with the Data Source of UDPClientTag and enter the Tag name of the broadcasting node you want to receive the value from.
Keep in mind you may not be able to browse for the tag name from the broadcast node, so you may have to manually enter it or use Tag CSV Import or programmatic tag setup using .NET or REST API to setup multiple tags.
The Tag defined must match the broadcast tag name defined in Step 5.
Examples:
Save the Tag Configuration file and specify it to load automatically under Configure-Options-Default Files.