Princip vzdáleného přístupu k OPC-DA serveru pomocí DCOM
1) Na
OPC-DA server lze pohlížet jako na obecný ActiveX objekt (viz
Konfigurace DCOM rozhraní pro ActiveX), takže může platit postup, kdy se
OPC-DA server nainstaluje jak na straně serveru, tak na straně klienta.
2) V případě
OPC serveru však existuje jiný doporučovaný, snadnější a lepší postup.
OPC server pak stačí nainstalovat pouze na straně serveru. Na straně klienta je nutno nainstalovat
OPC core components redistribuvatelný balíček (přímo od
OPC Foundation), který umožňuje napojení na libovolný vzdálený
OPC server. Dokonce se doporučuje nainstalovat tento balíček i na serveru (spolu s
OPC serverem), protože tento balíček obsahuje komponentu
OPCEnum.exe (spustitelnou jako služba
Windows nebo jako obyčejný program), která umožňuje vzdáleným klientům listovat nainstalovanými
OPC servery. Redistribuční balíček lze získat buď přímo na stránkách
www.opcfoundation.org nebo ze stránek firmy MICROSYS
https://www.promotic.eu/PmInstall/OPC_CoreComponentsRedistributable.zip. Upozornění! Balíček vyžaduje nainstalovaný
.NET verze 1.1 výše (v jiném případě nelze nainstalovat). Součásti balíčku je totiž i zpřístupnění
DCOM pro
.NET aplikace.
a) Pokud balíček
OPC core components je nainstalován na straně klienta i serveru, pak lze na straně klienta v systému PROMOTIC, tlačítkem v konfigurátoru "
OPC server - CLSID/ProgID", procházet seznam nainstalovaných
OPC serverů na serveru. Počítač serveru je určen v konfigurátoru "
Spustit na počítači".
b) Pokud je balíček OPC core components nainstalován pouze na straně klienta, pak nelze procházet seznam nainstalovaných OPC serverů na serveru, ale je nutno zadat ručně CLSID vzdáleného OPC serveru.
Podmínkou připojení na vzdálený
OPC server (který není lokálně nainstalován) je, že odkaz na
OPC server musí být zadán jako
CLSID (např.
{00000001-0000-11d1-8011-00A024CFCA34}) a nikoliv jako
ProgID (např. "MS.OPCServer.1"). Proto konfigurátor "
OPC server - CLSID/ProgID" objektu
PmaOpcDaClient při výběru vrací
CLSID.
Při nastavování práv
DCOM na serveru (
DCOMCNFG.EXE) je nutno nastavit příslušná práva nejenom pro vlastní
OPC server, ale také pro program
OPCEnum z redistribučního balíčku.
Postup nastavení práv pro
DCOM pro stranu klienta i serveru je například na stránkách
http://www.softwaretoolbox.com/dcom/html/dcom_.html.
Konfigurace vzdáleného přístupu k OPC serveru pomocí DCOM
Ke konfiguraci
DCOM je nutno mít administrátorská práva v OS
Windows. Konfigurace
DCOM serveru a klienta je v podstatě shodná. Na serveru se navíc (k
OPCEnum) konfiguruje i
OPC server.
1) Server a klient: Pokud počítač serveru a klienta není v doméně, pak je nutno vytvořit na serveru uživatele se stejným jménem a heslem, jako bude mít uživatel na počítači klienta (společný uživatel).
2) Server a klient: Pokud je v OS
Windows XP zapnuto zjednodušené sdílení souborů, pak při pokusu o přístup ke vzdálenému
OPC serveru vznikne chyba odmítnutí přístupu (
Access denied). Proto ho vypněte.
Viz
Start > Ovládací panely > Možnosti složky > Zobrazení > Upřesnit nastavení > Použít zjednodušené sdílení souborů (
Start > Control panels > Folder properties > View > Detailed settings > Use simplified file sharing).
3) Server a klient:
Spusťte konzoli
Start > Programy > Nástroje pro správu > Místní zásady zabezpečení (
Start > Programs > Administrative Tools > Local Security Policy).
V konzoli přejděte do
Místní zásady > Možnosti zabezpečení (
Local Policies > Security Options).
Zkontrolujte, zda je nastaveno:
- Přístup k síti: Použít oprávnění účtu Everyone pro anonymní uživatele (Network access: Let Everyone permissions apply to anonymous users) je povoleno
- Přístup k síti: Model sdílení a zabezpečení místních účtů (Network access: Sharing and security model for local accounts) je nastaveno na Klasický (Classic).
4) Server: Nainstalujte
OPC-DA server.
5) Server a klient: Nainstalujte balíček
OPC core components (
OPCEnum).
6) Server a klient: Spusťte konfigurační nástroj
DCOMCNFG.EXE (umístěný v OS
Windows v podsložce
system32), který představuje konzoli pro správu
DCOM.
7) Server a klient: V konzoli přejděte do
Služba komponent > Počítače > Tento počítač (
Component Services > Computers > My Computer) a zobrazte
Vlastnosti (
Properties) (pravým tlačítkem myši). Zde se provádí konfigurace společných částí
COM,
DCOM a výchozích hodnot pro jednotlivé
COM servery.
a) V kartě
"Výchozí vlastnosti" (
Default Properties) zkontrolujte, zda je nastaveno:
- Povolit používání modelu DCOM v tomto počítači (Enable Distributed COM on this computer) je povoleno
- Výchozí úroveň ověřování (Default Authentication Level) je nastaveno na Žádné (None)
- Výchozí úroveň zosobnění (Default Impersonation Level) je nastaveno na Identifikovat (Identify).
b) V kartě
"Zabezpečení COM" (
COM Security) zkontrolujte, zda je nastaveno:
- Přístupová oprávnění > Upravit omezení (Access Permissions > Edit Limits) je pro Everyone povolen Místní přístup (Local Access) a Vzdálený přístup (Remote Access)
- Přístupová oprávnění > Upravit výchozí (Access Permissions > Edit Default) je pro společného uživatele (stejný na straně klienta i serveru) povolen Místní přístup (Local Access) a Vzdálený přístup (Remote Access)
- Spouštěcí a aktivační oprávnění > Upravit omezení (Launch and Activation Permissions > Edit Limits) je pro Everyone povolen Místní spuštění (Local Launch), Vzdálené spuštění (Remote Launch), Místní aktivace (Local Activation) a Vzdálená aktivace (Remote Activation)
- Spouštěcí a aktivační oprávnění > Upravit výchozí (Launch and Activation Permissions > Edit Default) je pro společného uživatele (stejný na straně klienta i serveru) povolen Místní spuštění (Local Launch), Vzdálené spuštění (Remote Launch), Místní aktivace (Local Activation) a Vzdálená aktivace (Remote Activation)
8) Server a klient: Konfigurace
DCOM pro program
OPCEnum z balíčku
OPC core components.
V konzoli přejděte do
Služba komponent > Počítače > Tento počítač > Konfigurace modelu DCOM > OPCEnum (
Component Services > Computers > My Computer > DCOM Config > OPCEnum) a zobrazte
Vlastnosti (
Properties) (pravým tlačítkem myši).
a) V kartě
"Obecné" (
General) zkontrolujte, zda je nastaveno
Úroveň ověřování (
Authentication Level) na
Žádné (
None).
b) V kartě
"Umístění" (
Location) zkontrolujte, zda je nastaveno
Spouštět aplikaci v tomto počítači (
Run application on this computer).
c) V kartě
"Zabezpečení" (
Security) zkontrolujte, zda všechny volby jsou nastaveny na hodnotu
Použít výchozí (
Use Default). Jsou to volby
Spouštěcí a aktivační oprávnění (
Launch and Activation Permissions),
Přístupová oprávnění (
Access Permissions) a
Konfigurační oprávnění (
Configuration Permissions).
d) V kartě
"Identita" (
Identity) zkontrolujte, zda je nastaveno
Systémový účet (
The system account). V případě nastavení jiné komponenty než
OPCEnum, která není služba (např.
OPC server), lze také nastavit přihlašovací údaje konkrétního společného uživatele.
9) Server: Konfigurace
DCOM pro vlastní
OPC-DA server.
V konzoli přejděte do
Služba komponent > Počítače > Tento počítač > Konfigurace modelu DCOM > Jméno OPC serveru (
Component Services > Computers > My Computer > DCOM Config > OPC server name) a zobrazte
Vlastnosti (
Properties) (pravým tlačítkem myši).
Upozornění! Vlastní způsob konfigurace
OPC serveru je shodný s konfigurací
OPCEnum, zopakujte proto kroky
8a do
8d.
Upozornění: Nastavení oprávnění pro PROMOTIC aplikaci je závislé na umístění systému PROMOTIC na disku.
Pokud se zaregistruje PROMOTIC nebo přesune do jiné složky, pak
DCOM přestane fungovat (zbytek systému PROMOTIC může fungovat správně).
Pokud existuje více verzí PROMOTIC na disku a je potřeba se mezi nimi přepínat, pak (z hlediska konfigurace
DCOM) je výhodnější mít právě aktivní verzi systému PROMOTIC vždy ve stejné složce (např.
C:\Promotic\PmActive).