Delta Tau GEO BRICK DRIVE Benutzerhandbuch

Seite von 294
 Geo Brick Drive User Manual 
Drive Structure and Troubleshooting 
 267 
Reading IGBT Temperature and Bus Voltage 
IGBT Temperature reading: 
The baseline IGBT temperature is set at 25°C (77°F), with ADC bits [11-4] value of $21 (Hexadecimal). 
Above  the  baseline  temperature,  every  additional  2.13°C  (3.834°F)  correspond  to  $1  hexadecimal  ADC 
count.  The  maximum  IGBT  temperature  for  the  Geo  Brick  Drive  is  about  125°C  (257°F),  or  $5B 
Hexadecimal ADC counts. 
          
Bus Voltage reading: 
Every ADC $1 Hexadecimal count corresponds to 5.875 Volts DC. See electrical specifications for over-
voltage, shunt resistor turn-on,  
   
The following, is an example PLC that updates the DC Bus Voltage (converted to AC) every 3 seconds, 
and Axis-1 IGBT temperature in degree Celsius every 30 seconds:  
End Gat 
Del Gat 
Close 
 
// Substitutions and definitions 
#define IC0StrobeWord   
I7006  ; Servo IC#0 ADC Strobe Word  
#define Mtr1ADCB 
 
M7050  ; Motor 1 ADC Phase B 
#define ACBusVoltage   
M7051  ;  
#define LastIC0Strobe   
P7050  ;  
#define CS1Timer1 
 
I5111  ; Coordinate System &10 Countdown Timer 1 
#define CS1Timer2 
 
I5112  ; Coordinate System &10 Countdown Timer 2 
#define IGBTAxis1Temp   
M7054  ;  
#define BaselineTemp   
P7052  ; 
#define TempConstant   
P7053  ; 
 
 
#define AmbientTemp 
 
P7054  ; 
 
Mtr1ADCB->Y:$78006,4,8  
; Channel 1 ADC Phase B   
ACBusVoltage->* 
 
; Self-referenced M-variable to store Bus Voltage reading 
IGBTAxis1Temp->* 
 
; Self-referenced M-variable to store IGBT Temperature reading  
LastIC0Strobe= 0 
 
; 0 at download 
IGBTAxis1Temp= 0 
 
; 0 at download 
BaselineTemp= 33 
 
; $21 at 25 Degree Celsius 
TempConstant= 2.13 
 
; 2.13 Degrees C for each additional Hex Count 
AmbientTemp= 25 
 
; Ambient at 25 degrees Celsius 
 
// This PLC example updates AC Bus Voltage reading (M7051) every 3 seconds and 
// Axis-1 IGBT Temperature reading (M7054) in degree Celsius every 30 seconds 
Open plc 1 clear 
 
 
If (CS1Timer2<0) 
 
; Read IGBT Temperature 
 
 
  
 IC0StrobeWord = $300FFF 
; Set Strobe Word for Enhanced Mode, IGBT Temperature 
 CS1Timer2=50*8388608/I10 While(CS1Timer2>0) Endw ; 50 msec Delay 
 IGBTAxis1Temp=(Mtr1ADCB-BaselineTemp)* TempConstant+ AmbientTemp 
 CS1Timer2=30000*8388608/I10  ; 30 sec IGBT Temperature Update 
EndIF 
// AC Bus Voltage (M7051) 
If (LastIC0Strobe != IC0StrobeWord) 
 
IC0StrobeWord = $301FFF; Set ADC Strobe Word for Enhanced Mode, Bus Voltage 
 
LastIC0Strobe = IC0StrobeWord 
 
CS1Timer1= 50*8388608/I10 While(CS1Timer1>0) Endw ; 50 msec Delay 
EndIf 
ACBusVoltage=(Mtr1ADCB*5.875)/sqrt(2)  
 
 
; Convert to AC 
 
CS1Timer1= 3000*8388608/I10 While(CS1Timer1>0) Endw  ; 3 sec Bus Voltage update   
Close 
 
 
Note 
Toggling  the  ADC  Strobe  Word  at  a  very  fast  rate  is  not  desirable. 
Handshaking  between  the  PMAC  and  the  amplifier  processor  may 
take to up to 50 milliseconds.