|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
OPC Tools and TechniquesOPC Platforms OPC Development
Access Mechanisms OPC PlatformsEmbedded OPCWindows CE allows for embedded OPC, from version 3.0 onwards. In addition, Wind River Systems' Wind River OPC supports embedded OPC without Windows. Wind River OPC uses Wind River's own DCOM implementation and runs on their market-leading VxWorks real-time operating system. See also Wind River's white paper: OPC from Factory Floor Embedded Controllers to Enterprise System-Level Applications (Acrobat PDF document). OPC on Linux/UNIX
Technosoftware now offers both client and server DA toolkits for Linux and UNIX. The client toolkit also supports Alarms & Events, while a separate AE server toolkit is available. Technosoftware's OPC on Linux is implemented using Software AG's EntireX DCOM on Linux, which is available separately as a free download. A further option for non-Microsoft platforms is to use OPC XML-DA, which is not reliant on Microsoft COM. For example, Kassl offers the dOPC Kylix Client Toolkit for XML-DA client development on Linux. See our Delphi page for more on Kassl's dOPC Client Toolkits. OPC for Symbian OSWapice reportedly offers an OPC Client for the Symbian platform. This software allows mobile phones to operate as OPC clients, and is compatible with certain Nokia Communicator models. OPC DevelopmentCustom OPC Servers with No Programming NeededThese products allow custom serial and/or TCP/IP protocols to be supported in a Data Access server with no need for programming skills:
OPC Client Programming with JavaThis content is now found on our new dedicated Java page. OPC Programming with PerlMartin Tomes of Eurotherm has put together a Perl module for use with the OPC Data Access Automation interfaces. The objective is to simplify client development, particularly for the production of test scripts; Perl gurus will know that this is one of the language's great strengths. The module is available from the CPAN archive, the main distribution point for anything associated with Perl. For your convenience, we've extracted the primary reference documentation - the CPAN download also includes a number of sample scripts. The module was last updated, to version 1.01, in July 2004. Requirements:
Simplified OPC access from Visual Basic and scripting environmentsVB Sample CodePerhaps the best source of Visual Basic sample code is Takebishi's page at http://www.faweb.net/us/opc/sample_index.html. This code relies on there being an installed OPC Data Access Automation server capability. ActiveX Controls for OPC Data BindingOur Components page includes a number of ActiveX control products aimed specifically at Visual Basic developers. Some of these provide simpler alternatives to the OPC Data Access Automation DLL. Others go further, e.g. by allowing code-free binding of OPC items to any properties of any controls on a Visual Basic form. QuickOPCQuickOPC comes from OPC Labs. This product was formerly known as EasyOPC. QuickOPC presents an interface consisting of just four properties and three methods. Creation and lifetime of server and group objects is managed behind the scenes using an "advanced algorithm". This means that client code is entirely stateless, and therefore less likely to contain errors. QuickOPC clients may be written in any language or environment supporting Windows Scripting or Automation, including VBScript and ASP (for which the stateless nature of client code makes it especially suitable). QuickOPC is also available for Windows CE and Pocket PC. A trial version may be downloaded. This allows complete solutions to be developed, with runtimes being time-limited until the product is registered. QuickOPC is also marketed by Software Toolbox, using the product name OPC Web Client. Debugging OPC with MatrikonOPC SnifferMatrikonOPC Sniffer is a free download which all OPC developers will want to have in their toolbox, though most will use it rarely. Sniffer is a troubleshooting tool which monitors and logs all client/server traffic on the standard OPC Data Access interfaces. All calls are logged to file, as well as being optionally displayed in a console window; logging options are controlled via a textual configuration file. Usage is straightforward: the client program connects directly to Sniffer rather than the 'true' server, at which point Sniffer uses a dialog box to prompt for the real OPC server. From that point on, operation is almost completely transparent, except that all OPC traffic is logged for later analysis. As far as we know, MatrikonOPC Sniffer is the only freely available OPC debugging tool which provides reporting at the raw message level. It will therefore prove uniquely valuable in some scenarios, such as when client and server rely on subtly different interpretations of the OPC specification. Other excellent OPC diagnostic tools are listed on our Free Stuff page. Among these are ICONICS' OPC DataSpy, Visual OPCTest by Terravic, and WinTECH's OPC Client. MatrikonOPC Redundancy BrokerLike MatrikonOPC Sniffer, MatrikonOPC Redundancy Broker (ORB), also acts as an intermediary between client and server. The purpose of the ORB (also a free download), is to automatically redirect OPC traffic to a standby server in the event of a failure. MatrikonOPC claims that redundancy may even be easily retrofitted into existing OPC systems, regardless of the server vendor. Access MechanismsThin Client TechniquesWhat do we mean by 'thin client'? An OPC thin client is a consumer of data from one or more OPC servers, which does not rely on the full OPC infrastructure being installed locally. This OPC infrastructure would normally comprise the COM subsystem, OPC proxy DLLs, etc. The most common type of thin client is an application contained within (or launched from) a web browser. The number of front-end technologies which can support an OPC thin client continues to grow. The list includes Dynamic HTML (DHTML), Macromedia Flash, Scalable Vector Graphics (SVG), Java, ActiveX controls and .NET objects. There will certainly be others. Flash vs. SVGMany web users will have observed the increasing usage of Flash and (more recently) SVG. Each of these approaches allows graphically rich, dynamic user interfaces to be delivered via a web browser with minimal network loading. A useful comparison of Flash and SVG is available here. OPC Programmers' Connection reader Jay Nick, of WPS Energy Services, has put together a demo which uses SVG to display data from an OPC server. You should follow the 'OPC Web Server' link, but please be aware that Jay may not be able to keep this operating full time. The server side application is coded in VB, and uses GE Fanuc's OPCDATA ActiveX control. Jay also has another intriguing page of SVG demos (not using OPC). OPC into Microsoft OfficeOPC data can be brought into Microsoft Office applications using Office's built-in VBA language to drive an OPC Automation server. Likewise, some of the other tools and techniques available to Visual Basic programmers may equally be used by Office developers. However, OPC Office Link from Rensen Information Services simplifies this to a single copy/paste operation. It also offers a number of other powerful features such as OPC writes using a single VBA function call, and OPC data sampling directly into Access database tables. A time-limited evaluation copy may be freely downloaded. WinTECH's OPCxchg utility allows easy linking of Excel to OPC items via DDE. No coding is necessary, and a demo download is available. Resolvica's OPCEx Excel Add-In allows users to browse, read and write data items, and makes creation of Excel charts straightforward by allowing sequences of values to be inserted into consecutive cells. Reports may be sent via email, published as web pages, or printed. A free trial download is available. |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||