Blame | Last modification | View Log | Download
;************************ COMPANY INFORMATION **************************;* *;* PROCENTEC B.V. *;* www.procentec.com *;* *;* *;******************** DEVICE and FILE INFORMATION **********************;* *;* FILE NAME: PROC6970.gsd *;* DEVICE TYPE: Diagnostic ProfiHub *;* DEVICE INFORMATION: ProfiHub with embedded diagnostics device *;* *;* *;* IDENTIFIER FORMAT: Extended *;* *;********************** GSD REVISION INFORMATION ***********************;* $Revision: 2.0 $ *;* $Date: 3-9-2018 $ *;* *;* *;* DATE d-m-y | NAME | VERSION | COMMENT *;* -----------+------+---------+---------------------------------------*;* 15-7-2014 | VVG | 1.0 | Release of gsd *;* 3-9-2018 | DVC | 2.0 | ComBricks can read diag slave *;***********************************************************************#Profibus_DP;**************************** General DP Keywords **********************GSD_Revision = 5Vendor_Name = "PROCENTEC"Model_Name = "ProfiHub B5+RD (diagnostics)"Revision = "1.0"Ident_Number = 0x6970Protocol_Ident = 0Station_Type = 0FMS_supp = 0Hardware_Release = "1.3"Software_Release = "2.0"9.6_supp = 119.2_supp = 145.45_supp = 193.75_supp = 1187.5_supp = 1500_supp = 11.5M_supp = 13M_supp = 16M_supp = 112M_supp = 1MaxTsdr_9.6 = 60MaxTsdr_19.2 = 60MaxTsdr_45.45 = 60MaxTsdr_93.75 = 60MaxTsdr_187.5 = 60MaxTsdr_500 = 100MaxTsdr_1.5M = 150MaxTsdr_3M = 250MaxTsdr_6M = 450MaxTsdr_12M = 800Repeater_Ctrl_Sig = 2Implementation_Type ="PROCENTEC FPGA DEVICE-IP"Bitmap_Device ="PRO6970N"Bitmap_Diag ="PRO6970D"Bitmap_SF ="PRO6970S";********* Additional Keywords For Different Physical Interfaces ********;***************** DP Master (Class 1) Related Keywords *****************;********* Additional Master Related Keywords For DP Extensions *********;******************** Basic DP-Device Related Keywords ******************Freeze_Mode_supp = 1Sync_Mode_supp = 1Auto_Baud_supp = 1Set_Slave_Add_Supp = 1Min_Slave_Intervall = 6Modular_Station = 1Max_Module = 10Max_Input_len = 85Max_Output_len = 5Max_Data_len = 90Max_Diag_Data_Len = 32 ;6 mand., 11 device rel., 1 rev. number, 14 res.Slave_Family = 0Max_User_Prm_Data_Len = 24 ;12 reserved for future use;******************** Parameter related items *******************PrmText = 1Text(0) = "Disabled"Text(1) = "Enabled"EndPrmText; Diagnostics enable flags (offset 3, bits 0-7)ExtUserPrmData = 1 "Diag. on LiveList change"Bit(0) 1 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 2 "Diag. on Baudrate status"Bit(1) 1 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 3 "Diag. on Relay active"Bit(2) 1 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 4 "Diag. on Power status"Bit(3) 1 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 5 "Diag. on Redundancy status"Bit(4) 1 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 6 "Diag. on Termination change"Bit(5) 1 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 7 "Diag. on Channel change"Bit(6) 1 0-1Prm_Text_Ref = 1EndExtUserPrmData; Statistics diagnostics, mask flags (offset 4, bits 0-7)ExtUserPrmData = 10 "STATISTIC: LOST CHANGED"Bit(0) 1 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 11 "STATISTIC: SYNC CHANGED"Bit(1) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 12 "STATISTIC: REPEATS TOTAL CHANGED"Bit(2) 1 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 13 "STATISTIC: REPEATS MAX. CHANGED"Bit(3) 1 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 14 "STATISTIC: ILLEGALS CHANGED"Bit(4) 1 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 15 "Statistic: Int. Diag changed"Bit(5) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 16 "Statistic: Ext. Diag changed"Bit(6) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 17 "Statistic: Diag in DX changed"Bit(7) 0 0-1Prm_Text_Ref = 1EndExtUserPrmData; Ext. diag, enable flags (offset 5, bits 0-7)ExtUserPrmData = 20 "ExtDiag. on LiveList change"Bit(0) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 21 "ExtDiag. on Baudrate status"Bit(1) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 22 "ExtDiag. on Power error"Bit(2) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 23 "ExtDiag. on Redundancy error"Bit(3) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 24 "ExtDiag. on Termination change"Bit(4) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 25 "ExtDiag. on Channel change"Bit(5) 0 0-1Prm_Text_Ref = 1EndExtUserPrmData; ExtDiag on statistics, mask flags (offset 6, bits 0-7)ExtUserPrmData = 30 "ExtDiagStat: Lost changed"Bit(0) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 31 "ExtDiagStat: Sync changed"Bit(1) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 32 "ExtDiagStat: Reps. total changed"Bit(2) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 33 "ExtDiagStat: Reps. max. changed"Bit(3) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 34 "ExtDiagStat: Illegals changed"Bit(4) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 35 "ExtDiagStat: Int. Diag changed"Bit(5) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 36 "ExtDiagStat: Ext. Diag changed"Bit(6) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 37 "ExtDiagStat: Diag in DX changed"Bit(7) 0 0-1Prm_Text_Ref = 1EndExtUserPrmData; Relay, enable flags (offset 5, bits 0-7)ExtUserPrmData = 40 "Relay on LiveList Change"Bit(0) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 41 "Relay on Baudrate error"Bit(1) 1 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 42 "Relay on Power error"Bit(2) 1 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 43 "Relay on Redundancy error"Bit(3) 1 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 44 "Relay on Termination change"Bit(4) 1 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 45 "Relay on Channel lost"Bit(5) 1 0-1Prm_Text_Ref = 1EndExtUserPrmData; Relay on statistics, mask flags (offset 6, bits 0-7)ExtUserPrmData = 50 "RelayOnStat: Lost changed"Bit(0) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 51 "RelayOnStat: Sync changed"Bit(1) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 52 "RelayOnStat: Reps. total changed"Bit(2) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 53 "RelayOnStat: Reps. max. changed"Bit(3) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 54 "RelayOnStat: Illegals changed"Bit(4) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 55 "RelayOnStat: Int. Diag changed"Bit(5) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 56 "RelayOnStat: Ext. Diag changed"Bit(6) 0 0-1Prm_Text_Ref = 1EndExtUserPrmDataExtUserPrmData = 57 "RelayOnStat: Diag in DX changed"Bit(7) 0 0-1Prm_Text_Ref = 1EndExtUserPrmData;Reserved for DPV1_Status1..3Ext_User_Prm_Data_Const(0) = 0x00, 0x00, 0x00;Default values for parametersExt_User_Prm_Data_Const(3) = 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ;usedExt_User_Prm_Data_Const(12) = 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \0x00,0x00,0x00 ;reserved for future use; Diagnostics enable flags (offset 3, bits 0-7)Ext_User_Prm_Data_Ref(3) = 1Ext_User_Prm_Data_Ref(3) = 2Ext_User_Prm_Data_Ref(3) = 3Ext_User_Prm_Data_Ref(3) = 4Ext_User_Prm_Data_Ref(3) = 5Ext_User_Prm_Data_Ref(3) = 6Ext_User_Prm_Data_Ref(3) = 7; Statistics diagnostics, mask flags (offset 4, bits 0-7)Ext_User_Prm_Data_Ref(4) = 10Ext_User_Prm_Data_Ref(4) = 11Ext_User_Prm_Data_Ref(4) = 12Ext_User_Prm_Data_Ref(4) = 13Ext_User_Prm_Data_Ref(4) = 14Ext_User_Prm_Data_Ref(4) = 15Ext_User_Prm_Data_Ref(4) = 16Ext_User_Prm_Data_Ref(4) = 17; Ext. diag, enable flags (offset 5, bits 0-7)Ext_User_Prm_Data_Ref(5) = 20Ext_User_Prm_Data_Ref(5) = 21Ext_User_Prm_Data_Ref(5) = 22Ext_User_Prm_Data_Ref(5) = 23Ext_User_Prm_Data_Ref(5) = 24Ext_User_Prm_Data_Ref(5) = 25; ExtDiag on statistics, mask flags (offset 6, bits 0-7)Ext_User_Prm_Data_Ref(6) = 30Ext_User_Prm_Data_Ref(6) = 31Ext_User_Prm_Data_Ref(6) = 32Ext_User_Prm_Data_Ref(6) = 33Ext_User_Prm_Data_Ref(6) = 34Ext_User_Prm_Data_Ref(6) = 35Ext_User_Prm_Data_Ref(6) = 36Ext_User_Prm_Data_Ref(6) = 37; Relay, enable flags (offset 7, bits 0-7)Ext_User_Prm_Data_Ref(7) = 40Ext_User_Prm_Data_Ref(7) = 41Ext_User_Prm_Data_Ref(7) = 42Ext_User_Prm_Data_Ref(7) = 43Ext_User_Prm_Data_Ref(7) = 44Ext_User_Prm_Data_Ref(7) = 45; Relay on statistics, mask flags (offset 6, bits 0-7)Ext_User_Prm_Data_Ref(8) = 50Ext_User_Prm_Data_Ref(8) = 51Ext_User_Prm_Data_Ref(8) = 52Ext_User_Prm_Data_Ref(8) = 53Ext_User_Prm_Data_Ref(8) = 54Ext_User_Prm_Data_Ref(8) = 55Ext_User_Prm_Data_Ref(8) = 56Ext_User_Prm_Data_Ref(8) = 57; Diag change timeout, prmdata & prm data refExtUserPrmData = 60 "Diag change timeout (x 100msec)"Unsigned8 10 0-255EndExtUserPrmDataExt_User_Prm_Data_Ref(9) = 60; Device lost timeout, prmdata & prm data refExtUserPrmData = 70 "Device lost timeout (x 1sec)"Unsigned8 5 0-255EndExtUserPrmDataExt_User_Prm_Data_Ref(10) = 70; data format, prmdata & prm data refPrmText = 2Text(0) = "Intel, low-high-byte"Text(1) = "Motorola, high-low-byte"EndPrmTextExtUserPrmData = 80 "Data format of 16/32 bits values"Bit(0) 1 0-1Prm_Text_Ref = 2EndExtUserPrmDataExt_User_Prm_Data_Ref(11) = 80;******************** Diagnostics related items *******************Unit_Diag_Bit(0) = "Diag. Live list change enabled"Unit_Diag_Bit(1) = "Diag. Baudrate status enabled"Unit_Diag_Bit(2) = "Diag. Relay active enabled"Unit_Diag_Bit(3) = "Diag. Power status enabled"Unit_Diag_Bit(4) = "Diag. Redundancy status enabled"Unit_Diag_Bit(5) = "Diag. Termination change enabled"Unit_Diag_Bit(6) = "Diag. Channel change enabled"Unit_Diag_Bit(7) = "Diag. Statistics change enabled";Live list changeUnit_Diag_Bit(8) = "Device added"Unit_Diag_Bit(9) = "Device removed";Statistics changeUnit_Diag_Bit(16) = "LOST CHANGED"Unit_Diag_Bit(17) = "SYNCS CHANGED"Unit_Diag_Bit(18) = "REPEATS TOTAL CHANGED"Unit_Diag_Bit(19) = "REPEATS MAX. CHANGED"Unit_Diag_Bit(20) = "ILLEGALS CHANGED"Unit_Diag_Bit(21) = "Int.Diag. changed"Unit_Diag_Bit(22) = "Ext.Diag. changed"Unit_Diag_Bit(23) = "Diag while in DX changed";BaudrateUnit_Diag_Area = 24-27Value(1) = "No Baudrate detected"Value(2) = "9.6 kbps"Value(3) = "19.2 kbps"Value(4) = "45.45 kbps"Value(5) = "93.75 kbps"Value(6) = "187.5 kbps"Value(7) = "500 kbps"Value(8) = "1.5 Mbps"Value(9) = "3 Mbps"Value(10) = "6 Mbps"Value(11)= "12 Mbps"Unit_Diag_Area_EndUnit_Diag_Bit(31) = "Baudrate status changed";Relay statusUnit_Diag_Bit(32) = "Relay active";Power statusUnit_Diag_Area = 40-41Value(1) = "Power 1 connected"Value(2) = "Power 2 connected"Value(3) = "Power 1 & 2 connected"Unit_Diag_Area_EndUnit_Diag_Area = 44-45Value(1) = "Pending alarm Power 1"Value(2) = "Pending alarm Power 2"Value(3) = "Pending alarm Power 1 & 2"Unit_Diag_Area_End;Redundancy statusUnit_Diag_Area = 48-50Value(1) = "Redundancy not used"Value(2) = "Redundancy err. Ch4"Value(3) = "Redundancy err. Ch5"Value(4) = "Redundancy err. Ch4 & Ch5"Value(5) = "Redundancy is ok"Unit_Diag_Area_EndUnit_Diag_Area = 52-54Value(1) = "Pending alarm Red.err. Ch4"Value(2) = "Pending alarm Red.err. Ch5"Value(3) = "Pending alarm Red.err. Ch4 & Ch5"Unit_Diag_Area_End;Termination statusUnit_Diag_Bit(56) = "Termination on main channel"Unit_Diag_Bit(57) = "Termination on channel 1"Unit_Diag_Bit(58) = "Termination on channel 2"Unit_Diag_Bit(59) = "Termination on channel 3"Unit_Diag_Bit(60) = "Termination on channel 4"Unit_Diag_Bit(61) = "Termination on channel 5"Unit_Diag_Bit(63) = "Termination changed";Channel statusUnit_Diag_Bit(64) = "Communication on main channel"Unit_Diag_Bit(65) = "Communication on channel 1"Unit_Diag_Bit(66) = "Communication on channel 2"Unit_Diag_Bit(67) = "Communication on channel 3"Unit_Diag_Bit(68) = "Communication on channel 4"Unit_Diag_Bit(69) = "Communication on channel 5"Unit_Diag_Bit(71) = "Comm. on channels changed";******************** I/O modules *******************Module = "INFO DATA MANDATORY ON 1st SLOT" 0x41, 0x03, 0xDE1; INPUTS Byte 0 : Identifier (0xDE); Byte 1 : Device type; Byte 2 : Version; Byte 3 : Data format; Bit 0 :; 0 : Little endian; 1 : Big endianEndModuleModule = "ALARM CONFIRMATION" 0xC1, 0x00, 0x00, 0x012; INPUTS Byte 0 : Identifier (0x01); OUTPUTS Byte 0 : Relay confirmation; Bit0 : Resets the relayEndModuleModule = "REDUNDANT STATUS" 0x41, 0x81, 0x103; INPUTS Byte 0 : Identifier (0x10); Byte 1 : Status of the cable redundancy; Bit 0..3:; Value 1 : Redundancy not used; Value 2 : Redundancy error left channel; Value 3 : Redundancy error right channel; Value 4 : Redundancy error on both channels; Value 5 : Redundancy OK; Bit 4..7:; Value 1 : Pending alarm: Redundancy error left channel; Value 2 : Pending alarm: Redundancy error right channel; Value 3 : Pending alarm: Redundancy error on both channelsEndModuleModule = "BAUDRATE STATUS" 0x41, 0x81, 0x114; INPUTS Byte 0 : Identifier (0x11); Byte 1 : Baudrate; 1 : No baudrate detected; 2..11 : 9K6..12MbitEndModuleModule = "RELAY STATUS" 0x41, 0x81, 0x125; INPUTS Byte 0 : Identifier (0x12); Byte 1 : Relay status; Value 0 : Relay is off; Value 1 : Relay is on;; OUTPUTS Byte 0 : Bit0 : Resets relayEndModuleModule = "POWER STATUS" 0x41, 0x81, 0x136; INPUTS Byte 0 : Identifier (0x13); Byte 1 : Power status; Bit1 : Power 1 active; Bit2 : Power 2 active; Bit4 : Pending alarm: Power 1 not active; Bit5 : Pending alarm: Power 2 not activeEndModuleModule = "TERMINATION STATUS" 0x41, 0x81, 0x147; INPUTS Byte 0 : Identifier (0x14); Byte 1 : Termination status; Bit0 : Main Channel Termination; Bit1 : Channel 1 Termination; Bit2 : Channel 2 Termination; Bit3 : Channel 3 Termination; Bit4 : Channel 4 Termination; Bit5 : Channel 5 TerminationEndModuleModule = "CHANNEL STATUS" 0x41, 0x81, 0x158; INPUTS Byte 0 : Identifier (0x15); Byte 1 : Channel status; Bit0 : Communication on main channel; Bit1 : Communication on channel 1; Bit2 : Communication on channel 2; Bit3 : Communication on channel 3; Bit4 : Communication on channel 4; Bit5 : Communication on channel 5EndModuleModule = "LIVELIST STATUS" 0xC1, 0x81, 0xA1, 0x209; INPUTS Byte 0 : Identifier (0x20); Byte 1 : Item selection; 0x80 : Main channel; 0x81 : Channel 1; 0x82 : Channel 2; 0x83 : Channel 3; 0x84 : Channel 4; 0x85 : Channel 5; 0x86 : This ProfiHub; 0xFF : All channels (entire network); 32 bytes for the livelist data,; for PROFIBUS address 0 byte0.bit0 and byte0.bit1 are used:;==========================; Device: | Bit1: | Bit0: |; None | 0 | 0 |; Slave | 0 | 1 |; Master | 1 | 0 |; Both | 1 | 1 |;==========================; When a device is found on address 1, byte0.bit2 and byte0.bit3 will be used;; OUTPUTS Byte 0 : Item selection; 0x80 : Main channel; 0x81 : Channel 1; 0x82 : Channel 2; 0x83 : Channel 3; 0x84 : Channel 4; 0x85 : Channel 5; 0x86 : This ProfiHub; 0xFF : All channels (entire network); Byte 1 : Bit0 : Reset the livelistEndModuleModule = "STATISTICS short format" 0xC1, 0x81, 0x91, 0x3010; INPUTS Byte 0 : Identifier (0x30); Byte 1 : Current selection; 0x00..0x7E : Device 0..126; 0x7F : Unidentifiable devices; 0x80 : Main channel; 0x81 : Channel 1; 0x82 : Channel 2; 0x83 : Channel 3; 0x84 : Channel 4; 0x85 : Channel 5; 0x86 : This ProfiHub; 0xFF : All channels (entire network); Byte 2..3 : Lost count; Byte 4..5 : Sync count; Byte 6..7 : Repeats total count; Byte 8..9 : Repeats max count; Byte 10..11 : Illegals count; Byte 12..13 : Int. Diag count; Byte 14..15 : Ext. Diag count; Byte 16..17 : Diag while in DX count;;OUTPUTS Byte 0 : Item selection; 0x00..0x7E : Device 0..126; 0x7F : Unidentifiable devices; 0x80 : Main channel; 0x81 : Channel 1; 0x82 : Channel 2; 0x83 : Channel 3; 0x84 : Channel 4; 0x85 : Channel 5; 0x86 : This ProfiHub; 0xFF : All channels (entire network); Byte 1 : Reset statistics (complete device); Bit0 : Lost; Bit1 : Sync; Bit2 : Repeats total; Bit3 : Repeats max; Bit4 : Illegals; Bit5 : Int. Diag; Bit6 : Ext. Diag; Bit7 : Diag while in DXEndModuleModule = "STATISTICS long format" 0xC1, 0x81, 0xA1, 0x3111; INPUTS Byte 0 : Identifier (0x31); Byte 1 : Current selection; 0x00..0x7E : Device 0..126; 0x7F : Unidentifiable devices; 0x80 : Main channel; 0x81 : Channel 1; 0x82 : Channel 2; 0x83 : Channel 3; 0x84 : Channel 4; 0x85 : Channel 5; 0x86 : This ProfiHub; 0xFF : All channels (entire network); Byte 2..5 : Lost count; Byte 6..9 : Sync count; Byte 10..13 : Repeats total count; Byte 14..15 : Repeats max count; Byte 18..21 : Illegals count; Byte 22..25 : Int. Diag count; Byte 26..29 : Ext. Diag count; Byte 30..33 : Diag while in DX count;;OUTPUTS Byte 0 : Item selection; 0x00..0x7E : Device 0..126; 0x7F : Unidentifiable devices; 0x80 : Main channel; 0x81 : Channel 1; 0x82 : Channel 2; 0x83 : Channel 3; 0x84 : Channel 4; 0x85 : Channel 5; 0x86 : This ProfiHub; 0xFF : All channels (entire network); Byte 1 : Reset statistics (complete device); Bit0 : Lost; Bit1 : Sync; Bit2 : Repeats total; Bit3 : Repeats max; Bit4 : Illegals; Bit5 : Int. Diag; Bit6 : Ext. Diag; Bit7 : Diag while in DXEndModule; Description of the module assignmentSlotDefinitionSlot(1) = "INFO DATA" 1 1Slot(2) = "LIVELIST" 9 2,3,4,5,6,7,8,9,10,11Slot(3) = "STATISTICS" 11 2,3,4,5,6,7,8,9,10,11EndSlotDefinition;******************** DPV1 KEY WORDS **********************DPV1_Slave = 0