APPLICATION NOTE Mapping for acyclic data access from AC500 to a UMC100.3 over Profibus UMC100.3 2CDC135045M0201 With Profibus communication it’s possible to access the data with cyclic and acyclic communication. The cyclic communication transfers command and monitoring telegrams with actual data between the UMC100.3 and the master PLC. Application Note │ Mapping for acyclic data access from AC500 to a UMC100.3 over Profibus The cyclic data contains following command and monitoring data: The acyclic communication has to be started separately and delivers further, specially requested information, which are not available in the cyclic data, for example the Motor operation hours. 2 Application Note │ Mapping for acyclic data access from AC500 to a UMC100.3 over Profibus 3 For acyclic communication a separate function block has to be used. The accessible data can be found in the table on the next page. Each master PLC uses its own method for getting the acyclic data from the UMC100.3. In this document the access of the acyclic data is described for Profibus communication with an AC500 PLC. Slot 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 Index Length 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 AcycCommand0 y word0 AcycMonitoring0 y g word0 Motor Running I>20% AcyclicMonitoring DI0…7 PTC (Ohm) Therm Load (%) Binär I/O Module DX1xx UMC Meßdaten 1 UMC Meßdaten 2 Current Current Max. Current at Startup UMC Basic Data Number of starts UMC Time since PowOn Time since power on (s) Detail Errors Part 0 Detail Errors Part 1 Detail Errors Part 2 Detail Errors Part 3 Detail Warnings Part 0 Detail Warnings Part 1 Detail Warnings Part 2 Detail Warnings Part 3 AcyclicMonitoring AcyclicCommand AcyclicCommand Cyclic Monitoring Data Cyclic Monitoring Data CyclicMonitoring0 y g word 1 CyclicCommand0 y word0 Cyclic Command Data Cyclic Command Data DI UMC / Panel Byte 0 R R R R R R R R R R R AM1 CH1 value AM1 CH1 value Motor stand still hours [s] Current L1 (%) Current L1 (Abs) Current L3 (Abs) AM1 AM2 Wartung UMC interne Daten UMC interne Daten UMC interne Daten reserved Number of Starts >1 Energy [kWh] Permissible Starts VI15x Part4 UMC interne Daten 1 Active power [W] (without power scale factor) VI15x Part3 Current Unbal (%) Line Freq (Hz) Current L2 (%) AM1 CH2 value AM1 CH2 value 1 Start Possible No Start Possible THD L2 [0,1%] Line Freq (Hz) THD L3 [0,1%] do not use! do not use! Time To Restart(s) Current L2 (Abs) Current L3 (%) AM1 CH3 value AM1 CH3 value Current to earth [%] g g g U average L1…L3 [1V] VI15x Status Bit0: Voltage module ready Bit1: Voltage phase loss Bit2: Voltage freq. out of range Bit3: Voltage DIP detected Bit4: Voltage out of range (ADC setting) Bit 5: Wrong phase sequ. do not use! do not use! Wrong Phase Seq. Number emergency starts y word3 y word3 word 4 y word3 y word y 0 Motorstarter Commandstatus Gen. Fault/Warn Byte 6 AM2 temp max value AM1 temp max value apparent power [VA] (without power scale factor) Voltage unbalance [0,1%] do not use! BusAddress do not use! Time To Restart(s) U L3L1 [1V] THD L1 [0,1%] do not use! do not use! Time To Trip (s) g Operating hours Overload trips Current (Abs) y word2 y word2 CyclicMonitoring4 y g word 3 CyclicMonitoring5 Basic DI: Fault Reset Bit0 CEM11 Bit1 Basic DI: Force loc Bit0 Prep.Em.Start B7 y word2 Byte 5 Byte 4 U L2L3 [1V] do not use! do not use! Time To Trip (s) Current Unbal (%) AO0 Number of trips do not use! Power factor [0,01%] g CyclicMonitoring3 CyclicCommand3 UMC-Version low Byte 3 Motor Startup time (100ms) Current (%) y word1 y word1 CyclicMonitoring2 y g word 2 CyclicCommand2 y word1 UMC-Version high Byte 2 Password changed do not use! Therm Load (%) DO0…3 AcycMonitoring1 AcycCommand1 CyclicMonitoring1 CyclicCommand1 DO Byte 1 VI15x Part2 UMC interne Daten ParameterLocked UMC Password WriteAck. Write Password UMC Bus Addr. WriteAck. Write Bus Address Bit 0: Operation hours 1: Number starts 2: Number trips + Nu. Therm trips 3: Nu. Therm trips 4: Nu. Emerg. Starts 5: Energy W Reset Counters U L1L2 [1V] R VI15x Part1 R R R R R W W R R R R R R R R R R R R R R R R R R W W Access Title not used do not use! do not use! Byte 7 not used Nr. ext. Diag UMC-Version 3. Pos. Byte 7 Application Note │ Mapping for acyclic data access from AC500 to a UMC100.3 over Profibus 4 Application Note │ Mapping for acyclic data access from AC500 to a UMC100.3 over Profibus 5 Read acyclic data with ABB AC500 For reading acyclic data with an AC500 PLC the “DPV1_MSAC1_READ” block has to be used: PN IO _ R E A D F U N C T I O N B L O C K Instance Data Type Description EN Input BOOL Enabling of the Function Block processing SLOT Input BYTE Slot (module number) of the Communication Module SLV Input BYTE DPV1 slave address SLV_SLOT Input BYTE Slot number of the data block to be read SLV_IDX Input BYTE Index of the data block to be read LEN Input BYTE Length of the data block to be read DATA Input POINTER TO BYTE Memory address for data block (via ADR operator) DONE Output BOOL Ready message of the block ERR Output BOOL Error message of the Function Block ERNO Output WORD Error number ERNO1 Output Byte Additional error information ERNO2 Output Byte Additional error information DATA_LEN Output WORD Actual length of the read data Application Note │ Mapping for acyclic data access from AC500 to a UMC100.3 over Profibus 6 Example: Reading acyclically the motor operation hours from UMC100.3 with Profibus address 3 1. The in- and outputs will be connected as on the picture below. “DPV1_Read” is the instance of the “DPV1_MSAC1_READ” block. 2. For “Slot” insert the communication slot from the AC500, where the Profibus master is plugged on (in this example slot 1). 3. For “SLV” insert the fieldbus plug address of the UMC100.3 4. For “SLV_SLOT” insert the virtual slot (in the mapping table mentioned below “Slot”). The motor operation hours are in Slot 4 5. “SLV_IDX” is the data index (“Index” in the mapping table). The motor operation hours are stored in Index 61. 6. For the above mentioned mapping table always 8 byte have to be read, so “LEN” has to be at least set to “8”. 7. The “DATA” input has to be connected to the starting address of the array, where the data has to be written to. Application Note │ Mapping for acyclic data access from AC500 to a UMC100.3 over Profibus 7 8. After downloading and starting the application, all data will be available in the “DPV1_READ_DATA” array. In the mapping table the read 8 byte are containing “Time after Startup” and “Motor operation hours”. Both values can be found in the array. The content inside the red box displays the motor operation hours in seconds: 9. For converting the value into the format “hh:mm:ss”, we need the total amount of seconds and can calculate the minutes and hours by division: a. Convert the values to hexadecimal values (34d 22h and 146d 92h). b. Data field “4” of the array is the most significant byte for the motor operation hours. We now connect the hexadecimal values (22h and 92h 2292h) c. And convert it back to decimal (2292h 8850d) d. 8850 is the motor operation hours in seconds (8850s in format hh:mm:ss are 2:27:30 hours) The process for reading other indices are similar to this example. Change only the index in step 5 for the requested index and get the requested data in the data array. Application Note │ Mapping for acyclic data access from AC500 to a UMC100.3 over Profibus 8 Example: Reset acyclically the number of trips from UMC100.3 with Profibus address 3 1. The in- and outputs will be connected as on the picture below. “DPV1_ WRITE” is the instance of the “DPV1_MSAC1_WRITE” block. 2. For “Slot” insert the communication slot from the AC500, where the Profibus master is plugged on (in this example slot 1). 3. For “SLV” insert the fieldbus plug address of the UMC100.3 (in this example 3). 4. For “SLV_SLOT” insert the virtual slot (in the mapping table mentioned below “Slot”). The number of trips are in Slot 4. 5. “SLV_IDX” is the data index (“Index” in the mapping table). The number of trips are stored in Index 108. 6. “LEN” is the amount of bytes which shall be send. For the above mentioned mapping table always 8 byte have to be written. Application Note │ Mapping for acyclic data access from AC500 to a UMC100.3 over Profibus 9 7. The “DATA” input has to be connected to the starting address of the array. In this array the data which shall be written is stored. According to the mapping table bit 2 of byte 0 has to be true for resetting the number of trips. For that we have to save the “16#04” in the first array field (“00000100”; only bit 2 is set). 8. After downloading and starting the application, the number of trips inside the UMC will be “0”. The process for writing other indices are similar to this example. Change only the index in step 5 for the requested index and save the data to be send in the data array. Application Note │ Mapping for acyclic data access from AC500 to a UMC100.3 over Profibus Contact us ABB STOTZ-KONTAKT GmbH Eppelheimer Straße 82 69123 Heidelberg Germany You can find the address of your local sales organization on the ABB home page http://www.abb.com/contacts -> Low Voltage Products and Systems Legal note We reserve the right to make technical changes or modify the contents of this document without prior notice. With regard to purchase orders, the agreed particulars shall prevail. ABB AG does not accept any responsibility whatsoever for potential errors or possible lack of information in this document. We reserve all rights in this document and in the subject matter and illustrations contained therein. Any reproduction, disclosure to third parties or utilization of its contents – in whole or in parts – is forbidden without prior written consent of ABB AG. Copyright© 2017 ABB All rights reserved 10
© Copyright 2026 Paperzz