Mapping CIP to OPC UAHistory
2018•The Common Industrial Cloud Infrastructure SIG was formed to enableinteractions between CIP devices and Cloud applications

2019•

OPC UA was chosen as the mechanism to interface with the cloud••

CICI SIG documents use cases/user stories
OPC Foundation and ODVA form a Joint Workgroup••

CICI SIG writes requirements for OPC UA Companion Specification
JWG writes first draft of OPC UA Companion Specification

2020
2021

Technical Track© 2022 ODVA, Inc.

2022 Industry Conference & 21st Annual Meeting
All rights reserved.

www.odva.org

2

What is OPC UA•••

Open set of standards designed as a universal communication protocol.
Uses standard internet technologies (e.g., TCP/IP, HTTP, and Web Sockets).
Defines set of core services and a basic information model framework.

•

That framework allows information to be exposed in a standard way using
metadata (i.e., servers expose their type system)
OPC UA Clients can discover and use information without prior knowledge•Technical Track© 2022 ODVA, Inc.

2022 Industry Conference & 21st Annual Meeting
All rights reserved.

www.odva.org

3

What is an OPC UA Companion Specification•••

Uses OPC UA’s information modeling framework to describe common information
found in an industry vertical (e.g., Plastics and Rubber) or type of machine (e.g.,Pumps and Vacuum Pumps).
These specifications attempt to harmonize the representation of the informationin that vertical or machine by defining objects, variables, data types, methods andreferences specific to their operation.
Companion specifications present an information model that defines a common
interface that can be supported in any instantiation of that model.

Technical Track© 2022 ODVA, Inc.

2022 Industry Conference & 21st Annual Meeting
All rights reserved.

www.odva.org

4

Why Write a CIP Companion Specification
OPC UA Client Application

Millions of existing CIP
products can be exposed tonew, protocol independent
applications via OPC UAController with OPC
UA Server

Modular IO SystemH
A I I
R O O
TNetwork Switch

APL
OPC UA <-> CIP Gateway

EtherNet/IP Network

HART Sensor

Block IO

Process Instrument

IO-Link Sensor

Technical Track© 2022 ODVA, Inc.

2022 Industry Conference & 21st Annual Meeting
All rights reserved.

www.odva.org

5

Translation
OPC
ComponentType
Property
DataType
DeviceString
RevisionCIP
Mapping
Identity Object
Attribute DatatypeRevision Struct of: Convert the USINTs to “Major.Minor”
USINTsManufactur StringerUriVendor
URISTRING

Product
InstanceUri

N/AN/A

Technical Track© 2022 ODVA, Inc.

StringIf the Vendor URI is not supported, a client or gateway
shall report a value of“www.odva.org/vendor_id_NNNNN”, where NNNNN isthe value of the Vendor ID attribute in decimal withleading zeroes.
Gateway will concatenate the VendorUri and Serial
Number from the device inserting a forward slash
between them.
Example: www.odva.org/vendor_id_NNNNN/12345678

2022 Industry Conference & 21st Annual Meeting
All rights reserved.

www.odva.org

6

OPC UA Information Modeling - Graphical•

UML-like graphical representation of information
Indicates a type

Inheritance
DrillPressType is a subtypeof BaseObjectType

Component: Object

BaseObjectType

DrillPressType
MotorType:
DrillPressMotor

Manufacturer
DeviceRevision

Properties

Technical Track© 2022 ODVA, Inc.

Interfaces abstract
functionality
Reference indicates
relationship

HasInterface

Interfaces
VariableIVendorNameplateType

StartStop

Component: Method

SpeedDirection
HeightComponent: Variable

2022 Industry Conference & 21st Annual Meeting
All rights reserved.

www.odva.org

7

OPC UA Information Modeling - Tabular
Attribute
BrowseName
References

Value
DrillPressType
NodeClassBrowseName

DataType

Subtype of the BaseObjectType defined in OPC 10000-5
0:HasComponent Object
DrillPressMotor

TypeDefinition

Other

2:MotorType

M

0:HasComponent

Variable

Speed

0:Int32

0:PropertyType O

0:HasComponent

Variable

Direction

0:Boolean

0:PropertyType M

0:HasComponent

MethodStartStop

Defined in x.y.z

M

0:HasInterface

ObjectType

1:IVendorNameplateType

Applied from IVendorNameplateType (defined in OPC 10000-100)
0:HasProperty1:Manufacturer
0:LocalizedText
Variable
0:HasProperty
1:DeviceRevision
0:String
Variable

0:PropertyType M

Technical Track© 2022 ODVA, Inc.

2022 Industry Conference & 21st Annual Meeting
All rights reserved.

www.odva.org

0:PropertyType M
8Modeling CIP Devices

1. Identity
2. Network Interface
3. Application

Technical Track© 2022 ODVA, Inc.

2022 Industry Conference & 21st Annual Meeting
All rights reserved.

www.odva.org

9

Identity Model
BaseObjectType

BaseInterfaceType

CipIdentityType

ICipIdentityType

BaseInterfaceType

ICipIdObjectIoLinkAttributesType

Vendor ID

Vendor ID

Device Type

Device Type

Product Code

ICipIdObjectHartAttributesType

RevisionStatus

StatusSerial Number

Serial Number

Product Name

Product Name

IO-Link FunctionID“M”

HART Extended ID Info“M”

Product CodeRevision

Technical Track© 2022 ODVA, Inc.

IO-Link Protocol Revision ID“M”

HART Status“O”

IO-Link Serial Number“M”
Extended IO-Link ID Info
“M”

ICipIdObjectModBusAttributesType2022 Industry Conference & 21st Annual Meeting
All rights reserved.

ModBus Identity Info“M”

www.odva.org

10Network Interface Model
BaseObjectType

BaseInterfaceType

Interfaces
IIetfBaseNetworkInterfaceType
VariableHasInterface
HasInterface

HasInterface

CipDeviceNetNetworkType

Interfaces

HasInterface

CipEthernetNetworkType

Interfaces
Variable
IDeviceNetType

IIeeeBaseEthernetPortType
Variable
IIeeeAutoNegotiationStatusType

Interfaces
HasInterface

Technical Track© 2022 ODVA, Inc.

IEthernetLinkType
Variable
ITcpIpInterfaceType2022 Industry Conference & 21st Annual Meeting
All rights reserved.

Newly-defined types for theCIP Companion Specificationwww.odva.org

11

Defining a CIP Device Type
BaseObjectType

OPC UA defines the Base type
TopologyElementType

ComponentType

HasInterface

ITagNameplateType

CipDeviceTypeCipIdentityType

Adopted from
ComponentType,but changed toMandatory

Manufacturer
ManufacturerUri
DeviceClass
DeviceRevision
SerialNumber
Model
ProductInstanceUriTechnical Track© 2022 ODVA, Inc.

Devices defines the ComponentTypeand some Interfaces containing
identification information

Interfaces
IVendorNameplateType
Variable

The CIP CS defines a device typethat inherits from ComponentType

Interfaces
ICipIdCommonAttributesType
HasInterface

ICipIdUncommonAttributesType
Variable
ICipIdObjectIoLinkAttributesType
ICipIdObjectModBusAttributesType
ICipIdObjectHartAttributesType2022 Industry Conference & 21st Annual Meeting
All rights reserved.

•••

It adds the CipIdentityType
Uses interfaces for optional ID
attributes
Makes certain properties fromthe Devices interfaces mandatory
to align with PA-DIM.

www.odva.org

12Full Device Model

OPC UA Part 5

BaseObjectType

OPC UA Part 22Interfaces
IIeeeBaseEthernetPortType
VariableInterfaces
Variable
IIetfBaseNetworkInterfaceType

IIeeeAutoNegotiationStatusType
HasInterface

HasInterface

OPC UA Part 100

TopologyElementType

ComponentType

HasInterface

CipDeviceType
HasInterface
CipIdentityType

Adopted from
ComponentType,and changed toMandatory

Technical Track© 2022 ODVA, Inc.

Manufacturer
ManufacturerUri
DeviceClass
DeviceRevision
SerialNumber
Model
ProductInstanceUriInterfaces
IVendorNameplateType
Variable
ITagNameplateType

Interfaces

Interfaces

ICipIdCommonAttributesType
Variable
ICipIdUncommonAttributesType

IEthernetLinkType
Variable
ITcpIpInterfaceType

CIP CS

EthernetIpDeviceType

CipEthernetNetworkType
Optional Placeholder

2022 Industry Conference & 21st Annual Meeting
All rights reserved.

HasInterface

TBDBNM
BNMcomponents
components
TBD
CIP Objects

www.odva.org

13

Application Objects
MyCipDeviceType

HasComponent

Create GenericCipObjectType
GenericCipObjectType:CIP Class 8

HasProperty

CIP Class 8
Attribute 1
HasProperty

HasComponent

GenericCipObjectType:CIP Class 8 Instance 1
HasProperty
HasProperty

HasComponent

GenericCipObjectType:CIP Class 8 Instance 2
HasProperty

HasComponent

Technical Track© 2022 ODVA, Inc.

GenericCipObjectType:CIP Class 2 Instance 1

HasProperty

CIP Class 8 Instance 1
Attribute 3

Instances of this type can benested to represent multiple CIP
instances

CIP Class 8 Instance 1
Attribute 4
CIP Class 8 Instance 2
Attribute 3
CIP Class 8 Instance 2
Attribute 4

CIP Class 2 Instance 1
Attribute 12022 Industry Conference & 21st Annual Meeting
All rights reserved.

www.odva.org

14

Next Steps & Conclusion•The material we have today provides good coverage for many asset management
functions and will provide immediate benefit when released as a first version•

There are still many challenges that need to be addressed•

These issues still need to be investigated to achieve a feature rich solution that satisfies
all the use cases we envision––––––

Offline and online representation of all the data a device has to offerAggregated representation of devices by a gateway
Metadata that fully describes CIP objects
Handling of complex data and services
Generic handling of any CIP object
Security (particularly for anything other than getting data)

Technical Track© 2022 ODVA, Inc.

2022 Industry Conference & 21st Annual Meeting
All rights reserved.

www.odva.org

15