FixUpdate
This commit is contained in:
parent
2e9f5f0699
commit
e3beb244f0
51
README.md
51
README.md
@ -1,50 +1,21 @@
|
||||
# OPC UA Simulator – fixed v2
|
||||
|
||||
Dieser Stand behebt die Fehler aus der ZIP-Version:
|
||||
|
||||
- Top-Level-Objekte behalten jetzt eine stabile, konsistente NodeId-Zuordnung. Views verweisen nicht mehr auf nicht vorhandene Nodes.
|
||||
- Der Server legt Parent-Forward- und Child-Inverse-Referenzen mit dem ReferenceType aus dem Export an (`Organizes`, `HasComponent`, `HasProperty`, ...).
|
||||
- Doppelte Nodes im Export werden nur einmal erzeugt und mehrfach verlinkt. Dadurch fehlen StateCondition-/Method-/Property-Bereiche nicht mehr durch Duplicate-Node-Fehler.
|
||||
- Variablen werden mit `AccessLevel` und `UserAccessLevel` erzeugt, damit OPC-UA-Clients Werte schreiben können.
|
||||
- GUI-Änderungen setzen Werte live in-place, ohne Nodes zu löschen und View-Referenzen zu zerstören.
|
||||
- Über **+ Rootelement** kann unabhängig von der aktuellen Markierung direkt unter `Objects` ein neues oberstes Objekt angelegt werden.
|
||||
- Die Anzeige **Aktueller Wert** wird während des Serverlaufs automatisch aus dem laufenden Node aktualisiert; Hintergrund-Simulation und Client-Writes sind ohne erneutes Selektieren sichtbar.
|
||||
- Beim Serverstart wird der aktuelle GUI-Baum verwendet. Vor dem Start hinzugefügte Nodes werden dadurch ebenfalls publiziert.
|
||||
|
||||
## Voraussetzungen
|
||||
|
||||
**OPC UA Simulator **
|
||||
**Voraussetzungen**
|
||||
- JDK 17 oder neuer
|
||||
- Maven 3.9 oder neuer
|
||||
|
||||
## CLI starten
|
||||
|
||||
```bash
|
||||
**CLI starten**
|
||||
mvn -q exec:java -Dexec.args="examples/opcua-export-1775161283402.json 4840 /"
|
||||
```
|
||||
|
||||
|
||||
Dann verbinden mit:
|
||||
|
||||
```text
|
||||
opc.tcp://localhost:4840/
|
||||
```
|
||||
|
||||
|
||||
Anonyme Anmeldung ist aktiv. Zusätzlich existieren Benutzer:
|
||||
|
||||
```text
|
||||
user / password1
|
||||
admin / password2
|
||||
```
|
||||
|
||||
## GUI starten
|
||||
|
||||
```bash
|
||||
admin / password2
|
||||
|
||||
**GUI starten**
|
||||
mvn javafx:run
|
||||
```
|
||||
|
||||
|
||||
In der GUI zuerst den JSON-Export laden, danach den Server starten.
|
||||
|
||||
## Hinweise zur NodeId-Zuordnung
|
||||
|
||||
Der Export enthält mehrere Custom-Namespace-Indizes (`ns=1` bis `ns=7`). Ein einzelner Milo `ManagedNamespace` liefert aber nur eine Namespace aus. Deshalb werden Custom-Namespaces intern konsistent auf die Simulator-Namespace gemappt. String-NodeIds wie `AirConditioner_1.Temperature` bleiben als Identifier erhalten, numerische Custom-IDs werden kollisionsfrei als String-Identifier gespeichert, z. B. `ns=3;i=5000`.
|
||||
|
||||
**Hinweise zur NodeId-Zuordnung**
|
||||
Der Export enthält mehrere Custom-Namespace-Indizes (ns=1 bis ns=7). Ein einzelner Milo ManagedNamespace liefert aber nur eine Namespace aus. Deshalb werden Custom-Namespaces intern konsistent auf die Simulator-Namespace gemappt. String-NodeIds wie AirConditioner_1.Temperature bleiben als Identifier erhalten, numerische Custom-IDs werden kollisionsfrei als String-Identifier gespeichert, z. B. ns=3;i=5000.
|
||||
Im OPC-UA-Client immer die NodeIds verwenden, die der Simulator beim Browsen tatsächlich anzeigt.
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user