The OPC Commands specification defines a set of interfaces that enable OPC clients and servers to identify, send, and monitor control commands that execute on a device. The OPC Foundation is responsible for defining and maintaining the OPC Commands specification.
Automation devices (like numerical controllers) often define certain features via commands. In comparison with variables (items), commands have a much more complex behavior:
OPC Commands Servers can be implemented stand-alone, or in process with different types of OPC Servers like Data Access, Alarms & Events or Batch.
The purpose of this specification is to provide a common base for definition of commands. Based on this specification it will be possible to use generic clients for execution and control of commands. That is why this specification has a strong emphasis on how to discover commands and the associated execution state machine.
In this context a command is seen as an "atomic" method that is triggered on the server by one invocation call. If the application requires a more complex set/sequence of methods, it is expected that a number of commands will be defined to control the sequence.
OPC Commands is a standalone specification in that Commands Servers and Clients can be implemented without using any other OPC-defined interfaces (like Data Access or Alarms &Events).
Visit the OPC Foundation website for more detailed information about the OPC Batch specification.