ci-server-engineer/knowledge/manuals/IM36K10E20-01EN.md
cliu b85a65250c R1.05 re-check: installation-security, data-access, equipment
Read-only re-check on the shared R1.05 test server plus a diff of the
R1.03 and R1.05 manual editions.

- installation-security: R1.05 OS list, Defender exceptions, IT security
  2.0/3.0, LAPS, automatic configuration merge (jupgutl), PRM chapter,
  port 34597; setup_check.ps1 gets -Version (default 1.05.00).
- data-access: L45 renumbered (new ch. 4 RESTful API), extended OPC UA
  functions off by default, OPC UA methods (OPCUAC_METHOD_CALL2_DF),
  Information Model Mapper, ServerConfig.xml in %TLS_SAV_PATH%.
- equipment: Modbus unchanged; IEC 104/61850 run as EQT managers
  (eqtdbg, eqtfrcscn), IEC 61850 report control blocks, upgrade steps.
- Issues ISS-076..090; R1.05 notes on ISS-003/008/032/034/061;
  progress and version-differences updated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 18:26:35 +11:00

115 lines
8.5 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
manual: IM 36K10E20-01EN
title: OPC Interface
edition: 4th Edition, Feb. 2026 (R1.05); first summarised from the 2nd Edition, Sep. 2023 (R1.03)
version: R1.05 (first written for R1.03)
status: from docs. R1.03 (2026-10-01): OPC UA point and certificate forms compared with quick load on the test system (user configured a point in the Engineering Module, exported and diffed). R1.05 (2026-10-08, read-only): method and mapper datasets, installed mapper files, AOG method displays and the ServerConfig.xml location checked; forms not opened, nothing configured
---
# OPC Interface (R1.05)
Engineering Module procedures for OPC Classic, OPC UA client, the OPC UA Information Model
Mapper (new in R1.05) and OPC UA PubSub. Concepts, setup files and the OPC servers:
`IM36K10L45-01EN.md`. Client and PubSub objects are under *Configuration → I/O processing →
Equipment → (OPC DA client | OPC A&E client | OPC UA Client | OPC UA PubSub)*. CI Server must be
running. Section numbers refer to the 4th edition (R1.03 §2.2.6 is now §2.3, PubSub moved from
ch. 3 to ch. 4).
## 1. OPC Classic (§1)
- DA: line (equipment node, process name — the manual says it must start with `OPC` for DA and
A&E lines, `OPX` for OPC UA), station (OPC server node and ProgID, status item), group
(deadband, requested update rate, status item), point (external relation, group, OPC tag,
browse). Then connect items to points (Tutorial "Define points").
- A&E: line, station (server, subscription filters; category filter = event category codes of
the A&E server, comma separated), subscribed attributes; to show events in the current alarm
overview, map event sources to items. External names must be unique per station.
## 2. OPC UA client (§2.1)
Order: line → station → subscription → points (→ methods) → alarm components / event type
filters / event nodes / template settings (only when alarms are wanted; no alarms are received
until event nodes are configured, and since R1.04 only with `OPXC_ENABLE_EXTENDED_FUNC = YES`,
see `IM36K10L45-01EN.md` §6).
| Object | Key fields (dataset field) |
|---|---|
| Line | name ≤ 31, equipment node (*None* = this node), **process name starts with `OPX`, ≤ 11 characters** (`EQUIPMENT_MAN`) |
| Station | name ≤ 19; *Host(:port)* + *Discovery* fill session/server name and endpoint, or type the endpoint (`SERVER_01_ENDPOINT`); redundant servers + *Active server item* (0 none, 1 server 1, 2 server 2); *On scan*; *General communication status item* (`STATUS_ITEM`; 4th ed. lists 0 preparing, 1 connected, 2 comm error/reconnecting, 3 connect failed, 4 shutdown received, 5 connection recreated — a Boolean item worked on R1.03, ISS-080); security policy and mode; anonymous or user/password; requested session time-out; alarm tab (request active alarms, store all alarms as SOE, severity → priority mapping) |
| Subscription | publishing interval, lifetime and keep-alive counts, max notifications, priority, publish enabled, status item |
| Point | external relation Input / Output / Input + Output; subscription; *Namespace*, *Node id type*, *Node Id* (or *Browse path*; F5 rebrowses); *Read additional node information* (R1.05; clear it for slow links); read-only *Last value*, *Data type*, *Access level*, *Value rank*; array element; options (own sampling interval, monitoring mode, queue size); conversion (offset, step) |
| Method (§2.1.6) | name (≤ 255), namespace, node ID type, node ID (or browse path); *Options*: parent object node ID set by hand; *Arguments*: input/output argument types set by hand (use the server's types). Dataset `OPCUAC_METHOD_CALL2_DF`. No process areas any more (set them on the method object's `MTD_TRG` signal) |
Alarm event types (§2.1.4): `GeneralModelChangeEventType` and, only with
`OPXC_BASE_MODEL_CHANGE_EVENT` set, `BaseModelChangeEventType`.
Upgrade from R1.03 (§2.1.6): methods with String or Boolean input arguments must be refreshed —
edit any field and Apply (rebrowse), or copy the method, set the arguments, delete the old one
and add the copy. Running a method needs a CI Server object (IM 36K10L45 5th ed. §10.6; skill
`data-access`, `opcua-client.md` §7).
**Observed on R1.03 (2026-10-01)**: in the point form's browse, picking the item itself
(`Objects/<section>/…/<item>`) stores the item **object** (`{"nsid":"<n>"}`), which has no
value: *Last value*/*Data type* stay empty and the point is never monitored (revised sampling
interval 0, item status 13). Expanding the item and picking its `Value` node works
(`{"0":"Value","nsid":"<n>"}`, verified by the user). For quick load type the stable form:
`{"0":"Value","itnm":"<item>"}` (namespace `urn:Yokogawa:CI_SERVER_OPC_UA_SERVER`, type
STRING). The form also fills `OPC_DISPLAY_NAME` and `OPC_TAG_INFO` (browse bookkeeping;
not needed for quick load). ISS-033.
## 3. Certificates (§2.2, §2.3)
*OPC UA Client → Certificates*: **Trusted**, **Rejected** (server certificates arrive here),
**Own certificate**. Trust = open the rejected certificate, tick *Trusted*, Apply; reject =
untick. Restart the Engineering Module to refresh the folders. *Modify* the own certificate
(name, organisation, country, domain or IP, RSA key strength, signature algorithm, validity).
New in R1.05 (§2.2): the client warns in the Historical Alarm Overview and the UMH message log
when its own or the server's certificate is about to expire (lead time = hidden
`OPXC_CERT_EXP_PERIOD_WARN`, 2 months in the installed `epauac_eqp.sup`, verified 2026-10-08).
**CI Server OPC UA client ↔ CI Server OPC UA server (§2.3)**: trust the server certificate
on the client; copy the client's own certificate
(`%TLS_ALLUSERS_PATH%\pki\opxuac\pkiclient\own\certs`) to the server's
`…\pki\opxuas\pkiserver\trusted\certs`; the manual also asks to tick *Use CI Server entity names
for nodeids* in `opxuas.sup` and restart the server. On the R1.03 test system the loopback
worked **without** that option, using `itnm` node IDs (ISS-032).
## 4. OPC UA Information Model Mapper (ch. 3, App. 1; new in R1.05)
From docs; installed parts verified on R1.05 (2026-10-08): dataset `UASERVER_MAPPER_DF`,
`%TLS_WAP_PATH%\cfg\tools\uamapper\` with libraries `UAMapperLibrary_MDIS`, `_None`,
`_Use_model`.
- Purpose: publish CI Server data under a standard OPC UA information model (NodeSet file, e.g.
MDIS or PA-DIM) instead of, or next to, the native CI Server model (server side:
`IM36K10L45-01EN.md` §7).
- Rights: `UA_MAPPER_PROJECT_INSERT`, `_MODIFY`, `_DELETE` (already in `SYSTEM_MANAGER`).
- Workflow (*Tools › OPC UA Information Model Mapper*): **New Mapping** (folder
`%TLS_WAP_PATH%\cfg\tools\uamapper\mapperprojects\<name>`) → **Configure**: NodeSet file (base
models in the same folder) and optional library template → **Edit Rules**: per OPC UA object
type a selection query on CI Server objects or sections (`CLASSNAME = …`, `SECTIONNAME = …`;
SQL keywords in App. 1), then methods → class names, variables → tag names, events → item or
external alarm names → **Build** (results can be exported to / imported from CSV;
`MappingReport.txt`) → **Load** to an OPC UA server process. Removing a mapping does not
unload it from the server (§3.4.6).
- Rule-based mapping needs consistent naming or class/object engineering; otherwise map by CSV.
In enterprise engineering, map on each CI Core. The manual advises trying a mapping on an
extra OPC UA server instance first (§3.4; instance procedure in `IM36K10L45-01EN.md` §7,
`<instance>_ServerConfig.xml` in `%TLS_SAV_PATH%`).
- Dataset `UASERVER_MAPPER_DF`: `NAME`, `DESCRIPTION`, `UA_NAMESPACE`, `UA_MODEL_FILE`,
`LIBRARY_NAME`, `MAPPING_FILE`, `TARGET_UA_SERVER`, `PROJECT_STATE` (INIT, CONFIGURED,
MAPPED, DEPLOYED).
## 5. OPC UA PubSub (ch. 4)
UDP publish/subscribe of Data Access values from the CI Server OPC UA server address space
(OPC visible items). Needs `OPXUAS_ENABLE_EXTENDED_FUNC = YES` since R1.04
(`IM36K10L45-01EN.md` §7). Objects: line, published datasets, station, writer groups + dataset
writers (publisher), reader groups + dataset readers (subscriber), then *Upload dataset
configurations to runtime*. Each extra PubSub line needs its own OPC UA server instance named
like the line's server name (own `<instance>_ServerConfig.xml`, which R1.05 keeps in
`%TLS_SAV_PATH%` — R1.03: `tls\exe`; ISS-081). Limits per line: 4 stations, 8 writer groups,
8 reader groups, 32 dataset writers, 32 dataset readers, 32 published datasets. Status mapping
as for the server (NORMAL → Good; NOT_INIT, UPD_OFF, OFFSCAN, OFFLINE → Uncertain; BAD_VALUE →
Bad). Not practiced (needs a PubSub peer).