Welcome on the Ocf Client (Ocf Api)’s Cheat Sheet. This post will help you to get started Ocf Client.
You can also get the PDF here.
Here is the contents:
- Ocf Clients for Embedded
- Create a client for embedded system (UDP)
- Create a client for embedded system (COM)
- Ocf Clients for .NET
- Create a native client for .NET application
- Create a secure native client for .NET application (communication with AES encryption)
- Ocf Clients for ADS PLC
- Create an ADS client for PLC application
- Retrieve data thanks to Ocf
- Register the licenses
Let’s begin!
Ocf Clients for Embedded
Create a client for embedded system (UDP)
Prototype : public static dynamic CreateOcfEmbeddedUdpClient(string hostName, int port, int timeout); Sample : dynamic client = OcfApi.CreateOcfWcfClient("127.0.0.1", 10000, 200);
Create a client for embedded system (COM)
Prototype : public static dynamic CreateOcfEmbeddedComClient(string portName, SerialDataBaudRate rate, int timeout, SerialDataLength length = SerialDataLength.DL8, Handshake handShake = Handshake.None, Parity parity = Parity.None, StopBits stopBits = StopBits.One); Sample : dynamic client = OcfApi.CreateOcfEmbeddedComClient("COM5", SerialDataBaudRate.BR19200, 1000);
Ocf Clients for .NET
Create a native client for .NET application
Prototype (Udp) : public static dynamic CreateOcfNativeUdpClient(string hostName, int port, int timeout); Prototype (Tcp) : public static dynamic CreateOcfNativeTcpClient(string hostName, int port, int timeout);
Create a secure native client for .NET application (communication with AES encryption)
Prototype (Udp) : public static dynamic CreateOcfNativeUdpEncryptedClient( string hostName, int port, string passphrase, int timeout); Prototype (Tcp) : public static dynamic CreateOcfNativeTcpEncryptedClient( string hostName, int port, string passphrase, int timeout);
Ocf Clients for ADS PLC
Create an ADS client for PLC application
Prototype (ADS) : public static dynamic CreateOcfAdsClient(string netId, int port, int timeout = DefaultTimeOut); Sample : dynamic client = OcfApi. CreateOcfAdsClient( "192.168.10.12.1.1", 801);
Retrieve data thanks to Ocf
Get a child of the remote object model
dynamic axisX = client.Robot.AxisX;
Reach a property of the remote object model
In C#: Console.WriteLine("AxisX :", client.Robot.AxisX.Position); client.Robot.AxisX.Position = 100; In Xaml : <GroupBox Header="{Binding Client.Name}" Margin="5">
Invoke a method of the remote object model
client.PowerEnable();
Manage communication errors with Ocf
Define handler on unhandled exceptions : Application.Current.DispatcherUnhandledException += CurrentDispatcherUnhandledException; Manage OcfException globally : private void CurrentDomainUnhandledException(object sender, UnhandledExceptionEventArgs e) { if (e.Exception is OcfException) ShowException(e.Exception as Exception); }
Register the licenses
Register a license to create a server/client Ocf
Prototype : public static void RegisterLicense(string companyName, string key) Sample : OcfApi.RegisterLicense("CompanyName", "XXXX-XXXX-XXXX-XXXX");