Code Monkey home page Code Monkey logo

iot-edge-opc-client's Introduction

page_type description languages products urlFragment
sample
Industrial IoT - OPC UA client able to run OPC operations on an OPC UA server
csharp
azure
azure-iot-hub
azure-iot-opc-client

OPC UA client

OPC UA client able to run OPC operations on an OPC UA server.

Features

The client allows run single or recurring operations targeting an OPC UA server to:

  • test connectivity by reading the current time node
  • read node values

By default opc-client is testing the connectivity to opc.tcp://opcplc:50000. This can be disabled or changed to a different endpoint via command line.

Getting Started

Prerequisites

The implementation is based on .NET Core so it is cross-platform and recommended hosting environment is docker.

Installation

There is no installation required.

Quickstart

A docker container of the component is hosted in the Microsoft Container Registry and can be pulled by:

docker pull mcr.microsoft.com/iotedge/opc-client

The tags of the container match the tags of this repository and the containers are available for Windows amd64, Linux amd64 and Linux ARM32.

Demo

The OpcPlc is an OPC UA server, which is the default target OPC UA server.

Please check out the github repository https://github.com/Azure-Samples/iot-edge-industrial-configs for sample configurations showing usage of this OPC UA client implementation.

Notes

X.509 certificates releated:

  • Running on Windows natively, you can not use an application certificate store of type Directory, since the access to the private key fails. Please use the option --at X509Store in this case.
  • Running as Linux docker container, you can map the certificate stores to the host file system by using the docker run option -v <hostdirectory>:/appdata. This will make the certificate persistent over starts.
  • Running as Linux docker container and want to use an X509Store for the application certificate, you need to use the docker run option -v x509certstores:/root/.dotnet/corefx/cryptography/x509stores and the application option --at X509Store

Resources

iot-edge-opc-client's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

iot-edge-opc-client's Issues

OpcUaNodeId value is not set

Please provide us with the following information:

This issue is for a: (mark with an x)

- [x ] bug report -> please search issues before submitting
- [ ] feature request
- [ ] documentation issue or request
- [ ] regression (a behavior that used to work and stopped in a new release)

Minimal steps to reproduce

Try to read a value from any OPC UA tag

Any log messages given by the failure

Server returns BadNodeIdUnknown every time
Result (ActionId: 000 ActionType: 'OpcReadAction', Endpoint: 'opc.tcp://{server}:{port}/' Node '{NodeId}'): BadNodeIdUnknown

Expected/desired behavior

The value read from the OPC Server

OS and Version?

Windows 7, 8 or 10. Linux (which distribution). macOS (Yosemite? El Capitan? Sierra?)
Windows 10

Versions

Mention any other details that might be useful

In the OpcAction constructor, the OpcUaNodeId is set to null. if this is give the same value as the OpcNodeId it works perfectly.


Thanks! We'll be in touch soon.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.