Abonamente făcute cum trebuie
Abonamentele sunt locul în care proiectele OPC UA reușesc sau eșuează pe tăcute. Acest curs separă intervalul de publicare de intervalul de eșantionare, aplică banda moartă și declanșatoarele la sursă, dimensionează cozile astfel încât să nu mai pierdeți eșantioane fără să știți și adaugă heartbeat-ul care vă spune că legătura este vie.
| Lecții | 11 |
|---|---|
| Timp | circa 84 de minute |
| Cerințe prealabile | A3 |
| Cost | Gratuit: lecțiile scrise sunt deschise, video și laboratoarele cer un cont gratuit |
Ce veți fi capabil să faceți
- Puteți explica intervalul de publicare și intervalul de eșantionare fără să le confundați.
- Puteți aplica banda moartă astfel încât zgomotul să nu părăsească serverul.
- Puteți dimensiona o coadă și puteți detecta o depășire care se raportează ca Good.
- Puteți proiecta un set de abonări pentru o fabrică, nu pentru o demonstrație.
- Puteți deosebi „nu s-a schimbat nimic” de „conexiune moartă”.
Programă
-
1
Abonați-vă în loc să interogați6 min
De ce interogarea ciclică a unui server pe temporizator este implicitul greșit și ce se schimbă când serverul împinge datele.
Resursă Un client cu interogare și un client cu abonament citind aceleași noduri, cu ambele urme de rețea
-
2
Separați intervalul de publicare de intervalul de eșantionare9 min
Cea mai greșit înțeleasă pereche din OPC UA. Serverul eșantionează la o rată și livrează la alta, iar confundarea lor produce date care par corecte și nu sunt.
Livrabil Un monitored item la patru combinații de eșantionare/publicare, cu eșantioanele livrate pentru fiecare
-
3
Moșteniți intervalul de publicare când puteți6 min
Un interval de eșantionare de -1 și ce face serverul cu el. Când își merită costul ratele per element.
Resursă Același abonament cu intervale de eșantionare explicite și moștenite, cu valorile revizuite de server
-
4
Citiți valorile revizuite pe care le returnează serverul7 min
Dumneavoastră solicitați; serverul revizuiește. Ignorarea intervalului revizuit este modul în care un client ajunge să creadă că eșantionează de zece ori mai rapid decât o face.
Resursă O cerere și un răspuns CreateSubscription care arată parametrii solicitați față de cei revizuiți
-
5
Eliminați zgomotul cu bandă moartă la sursă9 min
Bandă moartă absolută și procentuală și capcana că banda moartă procentuală nu face nimic, fără să anunțe, dacă nodul nu are EURange.
Livrabil O valoare analogică zgomotoasă fără bandă moartă, cu bandă moartă absolută și cu bandă moartă procentuală, toate trei jurnalizate
-
6
Alegeți un DataChangeTrigger7 min
Status, StatusValue sau StatusValueTimestamp. De ce contoarele au nevoie de un trigger diferit față de mărimile analogice.
Livrabil Un contor care încetează să raporteze sub triggerul implicit și schimbarea de trigger care îl repară
-
7
Dimensionați coada și prindeți depășirea10 min
QueueSize din raportul dintre publicare și eșantionare, discard-oldest și bitul de depășire care se raportează ca Good: exact motivul pentru care apare „datele mele arată bine, dar lipsesc eșantioane”.
Resursă O depășire deliberată a cozii, cu bitul de depășire vizibil în DataValue și eșantioanele pierdute
-
8
Adăugați un heartbeat8 min
Fără unul, un flux tăcut este ambiguu. Cum să faceți distincția între „neschimbat” și „mort” și efectul secundar de SourceTimestamp învechit la care să vă așteptați.
Resursă Un abonament cu heartbeat, care arată valoarea retrimisă și SourceTimestamp-ul ei neschimbat
-
9
Păstrați mic numărul de intervale distincte8 min
Fiecare interval de publicare distinct impune încă un abonament. Un client cu cincizeci de rate are cincizeci de abonamente, iar serverul o va spune în cele din urmă.
Livrabil Un server care își atinge limita de abonări și aceleași date livrate în trei abonări
-
10
Recuperați un abonament după o cădere9 min
TransferSubscriptions înainte de a recrea totul, GoodSubscriptionTransferred și watchdog-ul care observă când un abonament a amuțit pe partea serverului.
Livrabil Un client care supraviețuiește unei reporniri de server cu abonările transferate, cu jurnalul aferent
-
11
Ajustați pentru o fabrică, nu pentru un demo5 min
Toată scara aplicată pe două sute de mașini: intervalul potrivit nevoii consumatorului, banda moartă pe analogice, cozi mărginite, conectări eșalonate și diagnostice oprite dacă nu le citiți.
Resursă O fișă de reglare cu cifre reale pentru o implementare cu 200 de mașini și 12.000 de tag-uri
Laborator
Necesită cont gratuit
Abonați-vă la două valori care se schimbă pe opc.tcp://opcua.umati.app:4840, cu publicare la 1000 ms, apoi provocați intenționat o depășire de coadă și demonstrați din DataValue că ați pierdut eșantioane în timp ce fiecare stare spunea Good.
Deblocați laboratorul →Verificat ultima dată la 7 septembrie 2026 față de OPC UA 1.05.07. OPC UA Connect este o resursă educațională și nu este afiliată cu OPC Foundation.