Each application focused on monitoring and control technological processes will probably need to get or to save data from(to) external sources. The source of such values can be for example database, PLC device, disk file, input/output computer card, etc. This chapter describes the cases that are practically eligible and shows how to solve such cases in the PROMOTIC system.
1. Communication with PLC devices or similar devices
See:
By this communication the PROMOTIC application gets data from external devices - PLC devices, intelligent inputs/outputs, etc. The device is the most often connected via Ethernet or via the computer's serial port (on the computer for example over the port
COM1, COM2, etc.). It can be also connected by special card, for example for
PROFIBUS DP Siemens, etc.
Over the
serial line (
RS232/
RS485/
RS422 interface) or
via Ethernet the PLC device can "talk" by its special language, which means by the
communication protocol. For example
-
SAIA PLC device is using the
S-BUS protocol
-
Modicon PLC device (and others) is using the
Modbus protocol, etc.
The PROMOTIC system has ready the set of so-called
communication drivers that can transfer data by the most used protocols. The usage of these PROMOTIC drivers is cheap and very common.
Let' handle the case when a PROMOTIC communication driver does not exist for the external device or the device communicates over another interface than a serial link or Ethernet:
The most standard solution now is to use the
OPC server, which is 3rd party software (usually supplied directly from the manufacturer of such device). The software can communicate with the device and it provides data (that it can interchange with the device) over the
OPC standard interface. Then the PROMOTIC application as the
OPC client co-operates with this
OPC server and it can read/write data from/to the device. For the description of the incorporation into the PROMOTIC application see the
Communication by OPC DA interface.
Now the
DDE server, the already obsolete solution, is used for communication with devices. The principle is practically the same as for the
OPC server. But the
DDE interface is not so quick for transmission of data packets and it doesn't allow such general configuration of the transfer as the
OPC server. The
DDE interface is rather the interface for the data transfer determined for office needs and not for the communication in the real time. For the description of the incorporation into the PROMOTIC application see
Communication by standard interface DDE.
Another practically applied solution is the usage of the
ActiveX technology. Another company in this case provides the software that can communicate with the specified device. This software doesn't provide the data over the standard interface (as the
OPC or
DDE) but the software represents an ActiveX object that can be included into the PROMOTIC application by the
PmaActiveX object. Over this ActiveX object it is possible to call methods (according to the documentation of this object) and thus to get data from/to the device. An example of such communication can be the communication with PLC devices of the
Johnson Controls or
AMiT company.
2. Communication between applications by computer networks
The simplest way how to share data in the network is to share them in the PROMOTIC system by the
XML data. This way is also very general because it communicates by the
HTTP protocol and thus the data can be transferred even in the Internet. The offered data (from the PROMOTIC application) can be very simply used either in another application (e.g. again PROMOTIC), to show them on HTML pages or to browse them directly in the Web browser. For the description of the incorporation into the PROMOTIC application see:
XML data sharing or
Overview of the Web technology in the PROMOTIC system.
Another standard option is to use
Communication drivers. Some drivers can communicate via Ethernet. It is possible to communicate with PLC devices, through the installed networks, that have only the serial link communication available - this can be done by using the serial link/Ethernet converter on the PLC side.
The
PmChar communication driver seems to be interesting, it can be used to transfer the
designer predefined data via
TCP or
UDP protocol.
The obsolete method how to quickly share the data between the PROMOTIC applications in the local networks is the data transfer over
Sockets. But this way of the transfer isn't so transparent as the transmission over the XML and it serves only for the communication between the PROMOTIC applications. For the description of the incorporation into the PROMOTIC application see
Data transfer in the network over Sockets.
For data sharing in the local networks the above mentioned standard interface
OPC or
DDE can be used. These interfaces allow the data transfer even in the network and the following extensions must be installed - for the
DDE it is the
NetDDE and for the
OPC it is the
DCOM. The data transfer in this case is otherwise transparent but demanding more configuration.
3. Communication with input/output cards plugged in the computer where PROMOTIC application runs
In this case the input/output card is plugged in the computer (e.g. in
ISA or
PCI slot) and it scans for example analog or digital inputs/outputs. This information must be shared in the PROMOTIC application.
The normal practice is the usage of
DLL libraries. Practically every manufacturer of such cards (e.g.
AXIOM, MOXA, PCLab, Tedia, Advantech, Neovision, Elcom, National-Instruments cards, etc.) supplies a driver for this card in the form of the DLL library. The DLL library is simply a file where functions that can be called in the PROMOTIC system, are "packed". The DLL functions can be called in the PROMOTIC system by the
PmaDll object. By calling appropriate functions (according to the documentation of the driver) it is possible to share the data between the card and the PROMOTIC application.
For some cards (e.g.
Neovision, National-Instruments, Advantech) the
OPC servers are available. It makes the communication solutions very standard, in fact the same as communication with PLC devices.
4. Data transfer by file or database access
The
data sharing in the file on the disk can be considered as perhaps the "most elemental" communication between applications. Two applications that share data in such way must know the specific file format. The PROMOTIC system allows reading and writing into binary and text files. For the list of the file functions see
Data sharing by files. But the data sharing in this way is relatively slow and it needs an access to disk. Thus it isn't suitable for data sharing in the real time but it is suitable for storing a large volume of data for the later use.
The more standard way of data sharing is an
database access. In the PROMOTIC system the access into databases is handled by the
PmaAdo and
PmaDatabase objects that accesses databases by the general way over the standard
ADO,
ODBC or
DAO interface. These interfaces allow an access into any database that supports this interface (these are practically all common databases). To have an access into the database the PROMOTIC application must only have the appropriate database driver. The PROMOTIC system already contains the drivers for common databases like
Access,
dBase, etc.