FDT Use Cases (beyond device configuration)
Motivation for this presentation FDT is more than… … uploads and downloads device parameters ... a Frame Application that … … has a Tree View on left hand side that shows hierachical ordered network topology … opens DTM user interfaces for offline or online parameterization
Scenarios Data exchange between Frame Applications Kapitel 1 - Überblick FDT Standard Data exchange between Frame Applications Reporting / Documentation Audit Trail Alternative Communication Paths Bus Master Configuration Control System Configuration Bus Master without Gateway capabilities Process Monitoring Network Management Update and Replacement
Data exchange between Frame Applications Scenario Data exchange between different Frame Applications e.g. Data exchange between a stand-alone Service Tool and a Control System FDT Definition Definition of standard topology data exchange format Frame Application generates or reads XML files according FDTTopologyImportExportSchema FDTTopologyImportExportSchema defines Exchange of topology information Exchange of DTM/BTM and device/block type information Exchange of DTM/BTM instance data (Stream or PropertyBag)
Data exchange between Frame Applications Example XML Communication DTM Gateway DTM Gateway DTM Device DTM Device DTM
Data exchange between Frame Applications Example: System Engineering Tool Service Tool 3. Check-out single device data set or sub-network from database and export to XML file 7. Synchronize single device data set or sub-network with data in XML file and check-in to database Data Sharing XML File Vendor A: System Engineering Tool 4. Import data from XML file 6. Export data to XML file Both Frame Applications use same DTM type and load it with shared device data 2. Parameterization via device specific DTM 1. Load data from database 5. Maintenance via device specific DTM
Data exchange between Frame Applications Example: System Engineering Tool PDA 3. Check-out single device data set or sub-network from database and export to XML file 7. Synchronize single device data set or sub-network with data in XML file and check-in to database Data Sharing XML File Vendor A: System Engineering Tool 4. Import data from XML file 6. Export data to XML file Frame Applications use different, but compatible DTM types and load it with shared device data 2. Parameterization via device specific DTM 1. Load data from database Vendor C: Pocket Tool 5. Maintenance via device specific DTM
Scenarios Data exchange between Frame Applications Kapitel 1 - Überblick FDT Standard Data exchange between Frame Applications Reporting / Documentation Audit Trail Alternative Communication Paths Bus Master Configuration Control System Configuration Bus Master without Gateway capabilities Process Monitoring Network Management Update and Replacement
Reporting & Documentation Kapitel 2 - Technologieübersicht Scenario Generation of device configuration & parameterization reports Print out of reports FDT Definition DTM interface (IDtmDocumentation) called to request report information for specific data (e.g. device configuration, offline or online configuration etc.) Definition of documentation data format - DTMDocumenationSchema.xml Data transformation to HTML reports
Reporting & Documentation Example: Print of Device Settings (Frame Application Style) Kapitel 2 - Technologieübersicht IDtmDocumentation: GetDocumentation() DTM
Reporting & Documentation Example: Print of Device Settings (DTM Style) Kapitel 2 - Technologieübersicht IDtmDocumentation: GetDocumentation() DTM
Scenarios Data exchange between Frame Applications Kapitel 1 - Überblick FDT Standard Data exchange between Frame Applications Reporting / Documentation Audit Trail Alternative Communication Paths Bus Master Configuration Control System Configuration Bus Master without Gateway capabilities Process Monitoring Network Management Update and Replacement
Audit Trail Scenario FDT Definition Kapitel 2 - Technologieübersicht Scenario Record data changes (what has been changed by who) Example: - Device parameter XYZ changed from 0815 to 4711 by user Operator - Function Device Reset executed by user Operater at 10.30pm - 2004-02-04 - … Change history documentation FDT Definition Frame Application interface IDtmAuditTrailEvents that is called by DTM whenever Device Parameter is changed Device Status changes Device related operation is executed
Audit Trail Example: Change History Recording Frame Application Save Get DTM Data Change Some Parameters IDtmAuditTrailEvents:OnAuditTrailEvent()
Scenarios Data exchange between Frame Applications Kapitel 1 - Überblick FDT Standard Data exchange between Frame Applications Reporting / Documentation Audit Trail Alternative Communication Paths Bus Master Configuration Control System Configuration Bus Master without Gateway capabilities Process Monitoring Network Management Update and Replacement
Alternative Communication Paths Scenario Device has multiple physical communication interfaces field bus network (e.g. Profibus, FF, Modbus etc.) vendor specific service interface (e.g. RS 232, IrDA, Bluetooth etc) User wants to select path to use FDT Definition Device DTM supports multiple protocols DTM Information XML contains multiple „required“ protocols Device DTM is assigned to muliple Communication or Gateway DTMs
Alternative Communication Paths SetCommunication (null) DTM 1 DTM 2 SetCommunication (DTM 1) SetCommunication(DTM 2) DTM 3 SetCommunication (DTM 3) ReleaseCommunication () DTM 4
Scenarios Data exchange between Frame Applications Kapitel 1 - Überblick FDT Standard Data exchange between Frame Applications Reporting / Documentation Audit Trail Alternative Communication Paths Bus Master Configuration Control System Configuration Bus Master without Gateway capabilities Process Monitoring Network Management Update and Replacement
Bus Master Configuration Kapitel 2 - Technologieübersicht Scenario Configuration of communication master Setup of cyclic communication FDT Definition Master Configuration Data in DTM Parameter for a slave device XML according DTMParameterSchema) e.g. for Profibus: BusMasterConfigurationPart + GSD information
Bus Master Configuration Example: Profibus Master Configuration Functionality is typically realized by a PLC specific Bus Master Configuration Tool. Configure Bus Master and setup cyclic communication PLC DTM DTM representing PLC Bus Master (Module) DTM DTM representing Bus Master Module plugged into PLC Read GSD and BusMasterConfigurationPart from Parameter XML IDtmParameter: GetParameter() Slave DTM 1 GSD + BusMaster ConfigPart Slave DTM 2 Slave DTM 3
Scenarios Data exchange between Frame Applications Kapitel 1 - Überblick FDT Standard Data exchange between Frame Applications Reporting / Documentation Audit Trail Alternative Communication Paths Bus Master Configuration Control System Configuration Bus Master without Gateway capabilities Process Monitoring Network Management Update and Replacement
Control System Configuration Kapitel 2 - Technologieübersicht Scenario Devices connected to a field bus must be made known to the control system Device input and output signals must be create and integrated into functional control system planning - e.g. mapping of device input / output to PLC variables FDT Definition DTM (Process) Channels IFdtChannel interface Channel Parameter XMLs according protocol specific FDT Annex Schema
Control System Configuration Role of Process Channels Kapitel 2 - Technologieübersicht Process Channel Parameter typically contain following process variable information: - Name, Tag, ID - Data type - Singnal type (input / output) - Information type (Semantic ID) - Address information (e.g. position / length) - Flag indicating that it is in use by control system (protectedByChannelAssignment) PLC DTM Bus Master (Module) DTM Cyclic data exchange IFdtChannel:GetParameters() IFdtChannel:GetParameters() Process Channels describe variables exchanged between the device and the PLC Process Var 1 Process Var 2 Process Var 3 Device DTM Process Ch 3 Process Ch 2 Process Ch 1
Control System Configuration Process Channel Variable Mapping Kapitel 2 - Technologieübersicht Functionalitiy is typically realized by a Control System specific Programming Suite. Symbolic variable names are used for Control System programming PLC DTM Symbolic names are applied to variables Bus Master (Module) DTM Process Channel information is mapped to PLC Module variables Device DTM Process Ch 3 Process Ch 2 Process Ch 1
Control System Configuration PLC Program Download PLC DTM Program is downloaded to PLC Bus Master module maps process values into PLC variables in memory. The PLC variables are used in program running in the PLC to control the system. Process Var 1 Process Var 2 Process Var 3 Cyclic data exchange PLC program
Scenarios Data exchange between Frame Applications Kapitel 1 - Überblick FDT Standard Data exchange between Frame Applications Reporting / Documentation Audit Trail Alternative Communication Paths Bus Master Configuration Control System Configuration Bus Master without Gateway capabilities Process Monitoring Network Management Update and Replacement
Bus Master without Gateway capabilities Kapitel 2 - Technologieübersicht Scenario Bus Master in a PLC doesn’t have Gateway capabilities Device DTMs can’t connect to its device through PLC FDT Definition Nothing special! Master DTM only supports services to access cyclic data (e.g. Profibus DPVO) Master DTM Device DTM Device DTM needs acyclic services (e.g. Profibus DPV1) for configuration & parameterization
Bus Master without Gateway capabilities Example: PLC with Profibus Master Module Parallel Profibus Class 2 Master Configure Bus Master and setup cyclic communication Read GSD + BusMasterConfigurationPart Cyclic services are used for observation Acyclic services are used for configuration & parameterization Communication DTM Master DTM Cyclic data exchange Device DTM
Scenarios Data exchange between Frame Applications Kapitel 1 - Überblick FDT Standard Data exchange between Frame Applications Reporting / Documentation Audit Trail Alternative Communication Paths Bus Master Configuration Control System Configuration Bus Master without Gateway capabilities Process Monitoring Network Management Update and Replacement
Process Monitoring Scenarios FDT Definition Process Visualization Kapitel 2 - Technologieübersicht Scenarios Process Visualization Condition Monitoring - Device status Gathering of asset management related information Health / predictive maintenance information Operation counters etc. FDT Definition DTM (Process) Channels IFdtChannel interfaceChannel Parameter XMLs according protocol specific FDT Annex Schema Single Device Data Access IDtmSingleDeviceDataAccess interface Data XML according DTM Item Schema (protocol independent) Semantic IDs
Process Monitoring Role of Process Channels Kapitel 2 - Technologieübersicht Process Channel Parameter contain information how to request process variables directly from the device, e.g. via Profibus DPV1 Comm DTM Device DTM Process Ch 6 Process Ch 5 Process Ch 4 Process Channel Parameter can also contain information about alarms and ranges Process Var 4 Process Var 5 Process Var 6 Process Channels describe variables that are exchanged via parallel (acyclic) communication path IFdtChannel:GetParameters()
Process Monitoring Process Value Reading Kapitel 2 - Technologieübersicht Process Monitoring Frame Application uses Communication or Gateway DTM communication interface to directly connect to devices and read process variables. Comm DTM IFdtCommunication: TransactionRequest() Process Var 4 Process variable address information from Process Channel Parameter Process variable value read from the device. Returned byte stream must be converted to data type described in Process Channel Parameter
Process Monitoring Process Value Reading via OPC Server (1/2) Kapitel 2 - Technologieübersicht Comm DTM If OPC Server acts as a FDT Frame Application it even can use the Communication or Gateway DTMs, so it becomes independent from used hardware. Device DTM Process Ch 6 Process Ch 5 Process Ch 4 Frame Application reads Process Channel Parameters and feeds OPC Server with information IFdtChannel:GetParameters() OPC Server Configuration interface OPC Server Process Monitoring Application uses protocol independent OPC interface to read process variables Process Var 4 Process Var 5 Process Var 6
Process Monitoring Drawback of Process Channel Kapitel 2 - Technologieübersicht Information is protocol dependent XML Schemas defined by FDT Protocol Annex Frame Application must be prepared for every protocol Mechnismus doesn’t work for new introduced or vendor specific protocols! Solution: Single Device Data Access interface Provides protocol independent way to access process variables
Process Monitoring Role of Single Device Data Access interface Comm DTM IDtmSingleDeviceData::GetItemLisl IDtmSingleDeviceDataAccess:Read() Process Var 4 Process Var 5 Process Var 6 GetItemList() and DTM Process Channels may contain redundant information. Both describing the process variables. Device DTM Process Ch 6 Process Ch 5 Process Ch 4
Process Monitoring Process Value Reading via OPC Server (2/2) Kapitel 2 - Technologieübersicht OPC Server Comm DTM Device DTM Process Var 4 Process Var 5 Process Var 6 OPC Server starts Device DTM and uses Single Device Data Access interface if protocol is unknown or no Process Channel is provided for the process variable.
Process Monitoring Drawback of Single Device Data Access Interface Kapitel 2 - Technologieübersicht All Device DTMs must be started / shut-downed Start / shutdown of DTM is time consuming DTMs take much memory Lower performance than Process Channel mechanism
Scenarios Data exchange between Frame Applications Kapitel 1 - Überblick FDT Standard Data exchange between Frame Applications Reporting / Documentation Audit Trail Alternative Communication Paths Bus Master Configuration Control System Configuration Bus Master without Gateway capabilities Process Monitoring Network Management Update and Replacement
Network Management Scenarios FDT Definition Kapitel 2 - Technologieübersicht Scenarios Automatic creation of network topology Verification if manual engineered network topology maps to field bus network Address Management FDT Definition DTM information about supported hardware XML according FDT<protocol>DeviceTypeIdentSchema IDtmInformation2 interface to request information Scan of field bus and information about connected devices XML according FDT<protocol>ScanIdentSchema IFdtChannelScan:ScanRequest to perform scanning Address setting mechanism - IFdtChannelSubTopology2 to trigger address setting
Network Management DTM / Device Catalog Kapitel 2 - Technologieübersicht Start all found DTMs and request DTM and hardware information (IDtmInformation / IDtmInformation2) Scan Windows-Registry for installed DTMs FDT-Category DTM FDT_DTM Store information regarding DTM Store information regarding hardware (pyhsical devices) which are supported by the DTM Device Types. Store information regarding DTM Device Types Drivers representing the devices in the software Store protocol information MMDTM.ExampleDevices … … … XYDTM.XYZDevices Windows-Registry
Network Management Scan Field Bus and Create Network Topology (1/2) Kapitel 2 - Technologieübersicht IFdtChannelScan:: ScanRequest(protocolId); Scan field bus Comm DTM IDtmScanEvents:: OnScanResponse() Bus Address 1 Manufacturer ID = 1234 Device ID = 1 Hardware Vers = 2.3.1.2 Software Vers = 3.12.4 Bus Address 3 Manufacturer ID = 1234 Device ID = 2 Hardware Vers = 2.4.1.2 Software Vers = 3.00.4 Search for corresponding entry in Hardware Info Table Bus Address = 1 Bus Address = 3 Manufacturer ID = 1234 Device ID = 1 Hardware Vers = 2.3.1.2 Software Vers = 3.12.4 Manufacturer ID = 1234 Device ID = 2 Hardware Vers = 2.4.1.2 Software Vers = 3.00.4
Network Management Scan Field Bus and Create Network Topology (2/2) Kapitel 2 - Technologieübersicht IFdtChannelSubTopology2: SetChildrenAddresses() Trigger bus address setting at Communication DTM for the newly added Device DTMs Comm DTM IDtmScanEvents:: OnScanResponse() Bus Address 1 Manufacturer ID = 1234 Device ID = 1 Hardware Vers = 2.3.1.2 Software Vers = 3.12.4 Bus Address 3 Manufacturer ID = 1234 Device ID = 2 Hardware Vers = 2.4.1.2 Software Vers = 3.00.4 Set bus addresses in DTM Parameter XML Bus Address = 1 Bus Adress = 3 Device DTM Device DTM Manufacturer ID = 1234 Device ID = 1 Hardware Vers = 2.3.1.2 Software Vers = 3.12.4 Manufacturer ID = 1234 Device ID = 2 Hardware Vers = 2.4.1.2 Software Vers = 3.00.4
Network Management Bus Address Management in User Interface Kapitel 2 - Technologieübersicht IFdtChannelSubTopology2: SetBusAddresses(withGUI) Trigger bus address setting to change address in Comm DTM ActiveX control Comm DTM Open ActiveX control Set bus addresses in DTM Parameter XML Bus Address = 1 Bus Address = 3 Device DTM Device DTM Manufacturer ID = 1234 Device ID = 1 Hardware Vers = 2.3.1.2 Software Vers = 3.12.4 Manufacturer ID = 1234 Device ID = 2 Hardware Vers = 2.4.1.2 Software Vers = 3.00.4
Scenarios Data exchange between Frame Applications Kapitel 1 - Überblick FDT Standard Data exchange between Frame Applications Reporting / Documentation Audit Trail Alternative Communication Paths Bus Master Configuration Control System Configuration Bus Master without Gateway capabilities Process Monitoring Network Management Update and Replacement
Update & Replacement Scenarios FDT Definition Kapitel 2 - Technologieübersicht Scenarios Device is replaced by another instance of the same type Device is replaced by another device of the same classification, but from another manufacturer FDT Definition Dataset Format IDs DTM Parameter access DTM Parameter XML (IDtmParameter interface) DTM Item XML (IDtmSingleInstanceDataAccess interface) Semantic IDs
Update & Replacement Scenario: Update (1/4) Kapitel 2 - Technologieübersicht Device is replaced by another instance of the same type New instance has new firmware version that is not supported by the installed DTM DTM must be upgraded New DTM uses different data set format, but can load old data set format
Update & Replacement Scenario: Update (2/4) Kapitel 2 - Technologieübersicht 1. Save Old DTM 2. DTM stores binary data in Frame Application database + binary data format information (used and supported) Vendor specific identifier that specifies format of DTM data set.
Update & Replacement Scenario: Update (3/4) Kapitel 2 - Technologieübersicht 4. Install new DTM and register in Windows-Registry 5. Update DTM / Device Catalog and store information about new installed DTM (IDtmInformation / IDtmInformation2) 3. Replace old device with new device DTM Store dataset formats that are supported Windows-Registry FDT-Category FDT_DTM MMDTM.ExampleDevices XYDTM.XYZDevices … Scan Windows-Registry for installed DTMs
Update & Replacement Scenario: Update (4/4) Kapitel 2 - Technologieübersicht New installed DTM Frame Application uses dataset format stored together with DTM binary data to search for DTM supporting this format 7. New installed DTM loads „old“ dataset and converts it to new format
Update & Replacement Scenario: Replacement (1/2) Kapitel 2 - Technologieübersicht Device is replaced by another device of the same classification, but from another manufacturer DTM must be replaced by another DTM Data set is incompatible Data exchange between two totally different DTM provided by different vendors
Update & Replacement Scenario: Replacement (2/2) Kapitel 2 - Technologieübersicht DTM for new device Old DTM DTM for device that must be replaced New DTM IDtmParameter:GetParameter() OR IDtmSingleInstanceDataAcess:Read() IDtmParameter:SetParameter() OR IDtmSingleInstanceDataAcess:Write() Frame Application reads parameter values from „old“ DTM and sets it in „new“ DTM. The mapping between parameters in the DTMs is done by Semantic IDs. Only common defined parameters, e.g. defined by a profile or by a field bus specification, are exchanged.
Discussion / Questions
Thank you for your attention M&M Software Thank you for your attention
Version: 1.1 Author: Andreas Börngen, Frank Schmid Description of the Version: general revision Date: 18 September 2007 Responsible person for this presentation: Andreas Börngen / Frank Schmid
M&M Software GmbH reserves all rights for its documents and printed information. These documents and information material may be used internally for the designated purpose. But this material, either completely or in parts, may not be passed on to third parties, especially to competitors of the M&M Software GmbH, and it may not be duplicated. These documents and information material contain confidential information and you are therefore requested to keep it strictly confidential. You are also requested to commit your staff that is using these documents and information, to the confidentiality obligation. Thank you.