Extbase Variable Dump
TYPO3\CMS\Extbase\Persistence\Generic\QueryResultprototypeobject (1 items)
   0 => Aritso\Art3jquery\Domain\Model\JQueryWidgetprototypepersistent entity (uid=26, pid=227)
      title => protected'Tabs Product Details' (20 chars)
      widgetType => protected1 (integer)
      cssClass => protected'' (0 chars)
      widgetOptions => protected'' (0 chars)
      jQueryWidgetElement => protectedTYPO3\CMS\Extbase\Persistence\Generic\LazyObjectStorageprototypeobject (4 items)
         000000001a3db08c0000000049ec4180 => Aritso\Art3jquery\Domain\Model\JQueryWidgetElementprototypepersistent entity (uid=93, pid=227)
            title => protected'Details' (7 chars)
            subtitle => protected'' (0 chars)
            useimagefortabs => protectedFALSE
            tabimageactive => protected'' (0 chars)
            tabimageinactive => protected'' (0 chars)
            cssClass => protected'' (0 chars)
            content => protectedTYPO3\CMS\Extbase\Persistence\Generic\LazyObjectStorageprototypeobject (3 items)
               000000001a3db1980000000049ec4180 => Aritso\Art3jquery\Domain\Model\Contentprototypepersistent entity (uid=1100, pid=227)
                  uid => protected1100 (integer)
                  pid => protected227 (integer)
                  sorting => protected1 (integer)
                  header => protected'Supported OPC UA Services' (25 chars)
                  headerLink => protected'' (0 chars)
                  bodytext => protected'<ul><li>Discovery Service Set: FindServers, GetEndpoints</li><li>Secure Chan
                     nel Service Set: OpenSecureChannel, CloseSecureChannel</li><li>Session Servi
                     ce Set: CreateSession, ActivateSession, CloseSession</li><li>View Service Se
                     t: Browse, BrowseNext, TranslateBrowsePathToNodeIds, RegisterNodes, Unregist
                     erNodes</li><li>Attribute Service Set: Read, Write</li><li>Method Service Se
                     t: Call</li><li>MonitoredItem Service Set: CreateMonitoredItems, ModifyMonit
                     oredItems, DeleteMonitoredItems, SetMonitoringMode</li><li>Subscription Serv
                     ice Set: CreateSubscription, ModifySubscription, DeleteSubscription, SetPubl
                     ishingMode, Publish, Republish</li></ul>
' (648 chars) image => protected'0' (1 chars) imageLink => protectedNULL colPos => protected0 (integer) jqueryslick => protected0 (integer) l18nParent => protected0 (integer) jquerywidgetelement => protected93 (integer) _localizedUid => protected1100 (integer)modified _languageUid => protected0 (integer)modified _versionedUid => protected1100 (integer)modified
000000001a3db1920000000049ec4180 => Aritso\Art3jquery\Domain\Model\Contentprototypepersistent entity (uid=1101, pid=227) uid => protected1101 (integer) pid => protected227 (integer) sorting => protected2 (integer) header => protected'Product Variants' (16 chars) headerLink => protected'' (0 chars) bodytext => protected'<table class="showBorders"><tbody><tr><td>Editions</td><td>Source Code</td><
                     /tr><tr><td>License Types</td><td><a href="t3://page?uid=180#1099" title="Op
                     ens internal link in current window" class="internal-link">Product Developme
                     nt &amp; Distribution License (single product)</a>, <a href="t3://page?uid=1
                     80#341" title="Opens internal link in current window" class="internal-link">
                     Evaluation License</a></td></tr><tr><td>Target Platforms</td><td>Windows, Li
                     nux</td></tr><tr><td>Development</td><td><a href="http://www.cmake.org/" tit
                     le="Opens external link in new window" class="external-link-new-window">CMak
                     e</a> cross compile build environment <br />(can generate project for Visual
                      Studio, Eclipse, Makefiles …)</td></tr></tbody></table> <p>Read the comp
                     lete <a href="http://license.unified-automation.com/SLA/latest/" title="Exte
                     rnal Link to Unified Autation’s Software License Agreement" class="externa
                     l-link-new-window">software license agreement</a>.</p>
' (966 chars) image => protected'0' (1 chars) imageLink => protectedNULL colPos => protected0 (integer) jqueryslick => protected0 (integer) l18nParent => protected0 (integer) jquerywidgetelement => protected93 (integer) _localizedUid => protected1101 (integer)modified _languageUid => protected0 (integer)modified _versionedUid => protected1101 (integer)modified
000000001a3db19b0000000049ec4180 => Aritso\Art3jquery\Domain\Model\Contentprototypepersistent entity (uid=1102, pid=227) uid => protected1102 (integer) pid => protected227 (integer) sorting => protected3 (integer) header => protected'Supported Features and Profiles' (31 chars) headerLink => protected'' (0 chars) bodytext => protected'<ul><li>Data Access</li><li>Methods</li></ul> More detailed information can
                      be found on the next tab.
' (102 chars) image => protected'0' (1 chars) imageLink => protectedNULL colPos => protected0 (integer) jqueryslick => protected0 (integer) l18nParent => protected0 (integer) jquerywidgetelement => protected93 (integer) _localizedUid => protected1102 (integer)modified _languageUid => protected0 (integer)modified _versionedUid => protected1102 (integer)modified
location => protectedNULL uid => protected93 (integer) _localizedUid => protected93 (integer)modified _languageUid => protected0 (integer)modified _versionedUid => protected93 (integer)modified pid => protected227 (integer)
000000001a3db06c0000000049ec4180 => Aritso\Art3jquery\Domain\Model\JQueryWidgetElementprototypepersistent entity (uid=94, pid=227) title => protected'OPC UA Features and Profiles' (28 chars) subtitle => protected'' (0 chars) useimagefortabs => protectedFALSE tabimageactive => protected'' (0 chars) tabimageinactive => protected'' (0 chars) cssClass => protected'' (0 chars) content => protectedTYPO3\CMS\Extbase\Persistence\Generic\LazyObjectStorageprototypeobject (1 items) 000000001a3db1940000000049ec4180 => Aritso\Art3jquery\Domain\Model\Contentprototypepersistent entity (uid=1103, pid=227) uid => protected1103 (integer) pid => protected227 (integer) sorting => protected1 (integer) header => protected'' (0 chars) headerLink => protected'' (0 chars) bodytext => protected'<table class="showBorders"><tbody><tr><td>General</td><td> Nano Embedded Dev
                     ice Server Profile, Micro Embedded Device Server Profile</td></tr><tr><td>Da
                     ta Access</td><td>DataAccess Server Facet, ComplexType Server Facet</td></tr
                     ><tr><td>Events</td><td>supported since V1.2</td></tr><tr><td>Methods</td><t
                     d>Method Server Facet</td></tr><tr><td>Alarms &amp; Conditions</td><td>plann
                     ed</td></tr><tr><td>Historical Access</td><td>planned</td></tr></tbody></tab
                     le>
' (459 chars) image => protected'0' (1 chars) imageLink => protectedNULL colPos => protected0 (integer) jqueryslick => protected0 (integer) l18nParent => protected0 (integer) jquerywidgetelement => protected94 (integer) _localizedUid => protected1103 (integer)modified _languageUid => protected0 (integer)modified _versionedUid => protected1103 (integer)modified
location => protectedNULL uid => protected94 (integer) _localizedUid => protected94 (integer)modified _languageUid => protected4 (integer)modified _versionedUid => protected94 (integer)modified pid => protected227 (integer)
000000001a3db06f0000000049ec4180 => Aritso\Art3jquery\Domain\Model\JQueryWidgetElementprototypepersistent entity (uid=95, pid=227) title => protected'Scope of Supply' (15 chars) subtitle => protected'' (0 chars) useimagefortabs => protectedFALSE tabimageactive => protected'' (0 chars) tabimageinactive => protected'' (0 chars) cssClass => protected'' (0 chars) content => protectedTYPO3\CMS\Extbase\Persistence\Generic\LazyObjectStorageprototypeobject (1 items) 000000001a3db14d0000000049ec4180 => Aritso\Art3jquery\Domain\Model\Contentprototypepersistent entity (uid=1104, pid=227) uid => protected1104 (integer) pid => protected227 (integer) sorting => protected1 (integer) header => protected'' (0 chars) headerLink => protected'' (0 chars) bodytext => protected'<ul><li>OPC UA Server SDK</li><li>Information model XML file to binary file
                     converter</li><li>Information model XML file to C code converter</li><li>IPC
                      framework</li><li>Unit test framework</li><li>Unit test suite to support po
                     rting the SDK</li><li>CMake build files</li><li>API documentation, examples
                     and tutorials</li><li>three years maintenance and support</li><li>one UaMode
                     ler runtime license</li></ul>
' (409 chars) image => protected'0' (1 chars) imageLink => protectedNULL colPos => protected0 (integer) jqueryslick => protected0 (integer) l18nParent => protected0 (integer) jquerywidgetelement => protected95 (integer) _localizedUid => protected1104 (integer)modified _languageUid => protected0 (integer)modified _versionedUid => protected1104 (integer)modified
location => protectedNULL uid => protected95 (integer) _localizedUid => protected95 (integer)modified _languageUid => protected0 (integer)modified _versionedUid => protected95 (integer)modified pid => protected227 (integer)
000000001a3db08d0000000049ec4180 => Aritso\Art3jquery\Domain\Model\JQueryWidgetElementprototypepersistent entity (uid=96, pid=227) title => protected'Related Products and Services' (29 chars) subtitle => protected'' (0 chars) useimagefortabs => protectedFALSE tabimageactive => protected'' (0 chars) tabimageinactive => protected'' (0 chars) cssClass => protected'' (0 chars) content => protectedTYPO3\CMS\Extbase\Persistence\Generic\LazyObjectStorageprototypeobject (3 items) 000000001a3db14c0000000049ec4180 => Aritso\Art3jquery\Domain\Model\Contentprototypepersistent entity (uid=1105, pid=227) uid => protected1105 (integer) pid => protected227 (integer) sorting => protected1 (integer) header => protected'UaGateway' (9 chars) headerLink => protected'' (0 chars) bodytext => protected'The <a class="internal-link" title="Opens internal link in current window" h
                     ref="t3://page?uid=189">UaGateway</a> is designed to integrate “classic”
                      OPC products into OPC UA Environments. Its main features are connecting UA
                     clients to COM/DCOM Servers (Wrapper), accessing UA Servers with COM/DCOM cl
                     ients (Proxy), and tunneling COM/DCOM through a secure UA connection. Please
                      refer to the <a class="internal-link" title="Opens internal link in current
                      window" href="t3://page?uid=189">UaGateway</a> product page for further inf
                     ormation.
' (541 chars) image => protected'0' (1 chars) imageLink => protectedNULL colPos => protected0 (integer) jqueryslick => protected0 (integer) l18nParent => protected0 (integer) jquerywidgetelement => protected96 (integer) _localizedUid => protected1105 (integer)modified _languageUid => protected0 (integer)modified _versionedUid => protected1105 (integer)modified
000000001a3db1a80000000049ec4180 => Aritso\Art3jquery\Domain\Model\Contentprototypepersistent entity (uid=1106, pid=227) uid => protected1106 (integer) pid => protected227 (integer) sorting => protected2 (integer) header => protected'OPC UA Training' (15 chars) headerLink => protected'' (0 chars) bodytext => protected'Unified Automation offers seminars, workshop, and hands-on classes to help y
                     ou getting started with OPC UA and our SDK Products. Please refer to the fol
                     lowing pages for more information. <ul><li><a class="internal-link" title="
                     Opens internal link in current window" href="t3://page?uid=149">Introduction
                      to OPC UA</a></li><li><a class="internal-link" title="Opens internal link i
                     n current window" href="t3://page?uid=150">Development of Applications for O
                     PC UA</a></li><li><a class="internal-link" title="Opens internal link in cur
                     rent window" href="t3://page?uid=154">full training schedule and registratio
                     n</a></li></ul> It is also possible to book <a class="internal-link" title=
                     "Opens internal link in current window" href="t3://page?uid=153">in-house tr
                     aining</a> tailored to your company’s reqirements.
' (812 chars) image => protected'0' (1 chars) imageLink => protectedNULL colPos => protected0 (integer) jqueryslick => protected0 (integer) l18nParent => protected0 (integer) jquerywidgetelement => protected96 (integer) _localizedUid => protected1106 (integer)modified _languageUid => protected0 (integer)modified _versionedUid => protected1106 (integer)modified
000000001a3db1a90000000049ec4180 => Aritso\Art3jquery\Domain\Model\Contentprototypepersistent entity (uid=1107, pid=227) uid => protected1107 (integer) pid => protected227 (integer) sorting => protected3 (integer) header => protected'OPC UA Book' (11 chars) headerLink => protected'' (0 chars) bodytext => protected'<a class="external-link-new-window" title="Link to Amazon" href="http://www.
                     amazon.com/OPC-Unified-Architecture-Wolfgang-Mahnke/dp/3540688986/ref=sr_1_1
                     ?ie=UTF8&amp;s=books&amp;qid=1209506074&amp;sr=8-1"><img style="padding-righ
                     t: 10px; padding-bottom: 10px; float: left;" src="fileadmin/user_upload/imag
                     es/unified/uabook.jpg" data-htmlarea-file-uid="300" data-htmlarea-file-table
                     ="sys_file" height="115" width="77" alt="" /></a>The book “OPC Unified Arc
                     hitecture” is written by Wolfgang Mahnke, Stefan-Helmut Leitner, and Matth
                     ias Damm, one of the trainers of Unified Automation. “This book provides
                      you a solid foundation to learn everything you could ever want to know abou
                     t developing world-class products for multi-vendor interoperability based on
                      OPC UA”, says Tom Burke, President of the OPC Foundation
' (819 chars) image => protected'0' (1 chars) imageLink => protectedNULL colPos => protected0 (integer) jqueryslick => protected0 (integer) l18nParent => protected0 (integer) jquerywidgetelement => protected96 (integer) _localizedUid => protected1107 (integer)modified _languageUid => protected0 (integer)modified _versionedUid => protected1107 (integer)modified
location => protectedNULL uid => protected96 (integer) _localizedUid => protected96 (integer)modified _languageUid => protected0 (integer)modified _versionedUid => protected96 (integer)modified pid => protected227 (integer)
uid => protected26 (integer) _localizedUid => protected26 (integer)modified _languageUid => protected0 (integer)modified _versionedUid => protected26 (integer)modified pid => protected227 (integer)
High Performance OPC UA Server SDK - Unified Automation

Evaluation Download

Download a time-limited evaluation version of our SDKs.

High Performance OPC UA Server SDK

As the leading supplier in OPC UA Technology we have analyzed the issues and bottlenecks of today’s OPC UA implementations. We came to the conclusion that only a complete redesign can solve the issues to improve the performance, improve the scalability, and increase the security of OPC UA. This makes OPC UA usable in smallest devices and thus “IoT Ready”, and furthermore guarantees improved performance for high end servers, which must be able to handle thousands of connections in parallel.

With a new software architecture and new implementation from scratch we have achieved all these goals. Of course, the new implementation is still wire-compatible with the original OPC Foundation Stacks.

Parallelism Revisited

One problem of many network applications is bad multi-threaded design. Too many threads are created without a clear concept, which lead to enormous waste of resources, bad performance due to locking problems, and trashed CPU caches. Some implementations even create one thread per connection, which is the worst design in a sense of scalability.
With the new SDK, we have designed a set of OPC UA components which can work in parallel, independently of each other, and thus achieve superior performance on multi-core CPUs without interference. In addition, this architecture allows to drive the components from a single threaded main loop in smallest micro controllers.

Sandboxing

The component design allows to run components like the network encoder/decoder in a separate process. This not only can improve performance, it also allows to benefit from sandboxing mechanisms like Linux Secure Computing Mode. This allows to disable any operating system calls for this process. In the case of a bug which could lead to an exploit, the process is terminated by the OS as soon as an attacker tries to access a forbidden operating system function. The master process detects this and can restart the terminated process.

Asynchronous Network API

The new OPC UA implementation is based on a completely asynchronous network API as an OS abstraction layer. The different network backends allow to benefit from modern OS specific APIs like POSIX AIO, Linux epoll, BSD kqueue or Windows Completion Port APIs. These APIs don’t suffer from scalability problems like the ancient Berkeley Socket APIs and are the enabler for high performance server applications. The usage of these APIs allows to reduce the number of context switches and copy operations which improves the performance when scaling to thousands of connections.
With this new API we also have introduced solutions for non-blocking domain name resolution, which we have identified as a big design problem in today’s implementations.

Asynchronous Crypto and PKI APIs

As with network APIs, today’s crypto implementations suffer from synchronous blocking implementations. Our new OPC UA implementation is designed completely asynchronously to solve this issue. Two different backends are supported out of the box: OpenSSL and mbedTLS. More backends can be added over time. This concept also allows to add hardware accelerated cryptography. The asynchronous design now allows to delegate an encryption job to a hardware chip, continue OPC UA communications and later on process the result of the hardware encryption, even in a single-threaded environment.

Improved Performance

As one of the biggest performance bottle-necks we have identified the encoder/decoder component of today’s ANSI C based OPC UA implementation. Even though it is faster than Java and C# based stacks, the whole potential was not reached. With a complete redesign of the encoding procedure we could gain a performance boost by a factor of 10 for the encoding process. This can lead to an overall performance boost of the OPC UA protocol up to a factor of 4, depending on the type of data transferred.

Small Footprint

During the whole design process we kept a focus on small footprint to make the software usable for embedded devices. A modular concept, configurable memory pools, and efficient implementation make it perfectly suitable for smallest devices and for Internet of Things (IoT). On an ARM based demonstration device running Euros Real Time Operating system we were able to integrate an OPC UA server in 300K Codesize including the Operating System. A new table based address space concept allows to integrate huge address spaces with a fraction of the memory required in other SDKs. It also supports read only address space models that completely reside in ROM.

Software Quality

To ensure the best quality from the beginning, we developed a comprehensive test environment. Using this toolset, we are already able to achieve 98% line coverage and 95% branch coverage.

Details

Supported OPC UA Services

  • Discovery Service Set: FindServers, GetEndpoints
  • Secure Channel Service Set: OpenSecureChannel, CloseSecureChannel
  • Session Service Set: CreateSession, ActivateSession, CloseSession
  • View Service Set: Browse, BrowseNext, TranslateBrowsePathToNodeIds, RegisterNodes, UnregisterNodes
  • Attribute Service Set: Read, Write
  • Method Service Set: Call
  • MonitoredItem Service Set: CreateMonitoredItems, ModifyMonitoredItems, DeleteMonitoredItems, SetMonitoringMode
  • Subscription Service Set: CreateSubscription, ModifySubscription, DeleteSubscription, SetPublishingMode, Publish, Republish

Product Variants

EditionsSource Code
License TypesProduct Development & Distribution License (single product), Evaluation License
Target PlatformsWindows, Linux
DevelopmentCMake cross compile build environment
(can generate project for Visual Studio, Eclipse, Makefiles …)

Read the complete software license agreement.

Supported Features and Profiles

  • Data Access
  • Methods

More detailed information can be found on the next tab.

OPC UA Features and Profiles

General Nano Embedded Device Server Profile, Micro Embedded Device Server Profile
Data AccessDataAccess Server Facet, ComplexType Server Facet
Eventssupported since V1.2
MethodsMethod Server Facet
Alarms & Conditionsplanned
Historical Accessplanned

Scope of Supply

  • OPC UA Server SDK
  • Information model XML file to binary file converter
  • Information model XML file to C code converter
  • IPC framework
  • Unit test framework
  • Unit test suite to support porting the SDK
  • CMake build files
  • API documentation, examples and tutorials
  • three years maintenance and support
  • one UaModeler runtime license

Related Products and Services

UaGateway

The UaGateway is designed to integrate “classic” OPC products into OPC UA Environments. Its main features are connecting UA clients to COM/DCOM Servers (Wrapper), accessing UA Servers with COM/DCOM clients (Proxy), and tunneling COM/DCOM through a secure UA connection. Please refer to the UaGateway product page for further information.

OPC UA Training

Unified Automation offers seminars, workshop, and hands-on classes to help you getting started with OPC UA and our SDK Products. Please refer to the following pages for more information.

It is also possible to book in-house training tailored to your company’s reqirements.

OPC UA Book

The book “OPC Unified Architecture” is written by Wolfgang Mahnke, Stefan-Helmut Leitner, and Matthias Damm, one of the trainers of Unified Automation.

“This book provides you a solid foundation to learn everything you could ever want to know about developing world-class products for multi-vendor interoperability based on OPC UA”, says Tom Burke, President of the OPC Foundation