Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Detecting motor over temperature
#1
We are using 3U081 and 3U042 amplifiers with motors that have integrated PTC. Two questions:

1) For the 3U042, we used a potentiometer and determined the amp detects over temp at about 300 Ohms, which is 90 degrees C on the motor PTC. The 3U042 manual states that a PLC should monitor the ADC A register bits 11:4 for the '06' status. What PMAC data element is the ADC A register, and is there a helper data element available for the specific bits?

2) For the 3U081, the connected motor is rated for 100 degrees C, which corresponds to 1K resistance. However testing at 1K resistance with a potentiometer we do not see the amp detect over temp. What is the threshold of the over temp circuit on the 3U081 amp?
Reply
#2
(02-26-2015, 04:39 PM)andyf Wrote: 2) For the 3U081, the connected motor is rated for 100 degrees C, which corresponds to 1K resistance. However testing at 1K resistance with a potentiometer we do not see the amp detect over temp. What is the threshold of the over temp circuit on the 3U081 amp?


Update, with a larger potentiometer we were able to trigger the over temp at 1.2K.
Reply
#3
Hi,

There is no predefined pointer to those bits, but you can create one. The manual was written for Turbo PMAC and states that these are bits 11:4 in the current feedback, so you can read them in bits 19:12 of the register used for phase B's current feedback, which is typically Gate3[i].Chan[j].AdcAmp[1] if you are using an ACC24E3, or Gate1[i].Chan[j].Adc[1] if ACC24E2. To assign a pointer, you have to compute the address of this register. This can be done like in the following example for motor 1 and channel 0 of the lowest-numbered Gate3 card in the rack:

p1 = Gate3[0].Chan[0].AdcAmp[0].a - sys.piom

Then, read p1. Convert to hex. We get $900020, where the $ indicates a hex value.

To assign a pointer to this, put this command into a global header:

ptr EnhancedModeBits->u.io:$900020.12.8

As for your second question, there is no set number in our documentation, but it should be around 2k Ohms.

EDIT: There was a typo in the ptr assignment.
Reply
#4
We are using ACC24E3. I tried your suggestion out using the 3U042, and what I see is when the motor is running the value of those 8 bits toggles between $F0 and $FF, then when the over temp occurs it toggles between $00 and $0F. This is different than what I expected, since the 3U042 manual states it will write a "06" to the register. Am I missing something, or is the manual wrong and I should simply monitor for the top 4 bits to be $0?

p1 = acc24e3[1].chan[0].adcamp[0].a - sys.piom
p1 = 9453600 = $904020

ptr EnhancedModeBits->u.io:$904020.12.8


I also noticed in your post you first referenced using AdcAmp[1] but in the example used AdcAmp[0]. I tried both, and only saw non-zero values when using AdcAmp[0].
Reply
#5
The value in the B-phase is the temperature of the IGBT in the drive - it is not connected to the thermal PTC input for the motor. The PTC input is a simple switch closure/opening detection.
Reply
#6
(03-04-2015, 02:49 PM)steve.milici Wrote: The value in the B-phase is the temperature of the IGBT in the drive - it is not connected to the thermal PTC input for the motor. The PTC input is a simple switch closure/opening detection.

That's good to know. However I am only interested in how to detect the PTC input state. Is that also in these 8 bits of the B-phase?
Reply
#7
Your methodology is correct to read the failure code value of 6 in ADC-A. I just tried this on my UMAC demo box and it works. Make certain you are using the correct channel number for the motor in question - your code above would access the second ACC-24E3 channel 1. As a test leave the input for the Motor OT open and issue a #nj/. Put the following in a watch window and you'll see the 4th hex digit change from 0 to 6:
Sys.Uhex[1] = Gate3[1].Chan[0].AdcAmp[0] Sys.Uhex[1]
Reply
#8
I am using a 3U042 on the second ACC24E3 card in our Power UMAC, first channel (acc24e3[1].chan[0]). I tried this with the jumper pulled out as you suggested. The amp display switches to 1E6, but I still do not see a 6 written to the 4th hex digit in the watch window. What I do see is an F written to the fifth hex digit, but then cleared to 0.

Sys.Uhex[1]=acc24e3[1].chan[0].adcampa[0] Sys.Uhex[1]

The values I am seeing are 0x00X000X0 where the X hex digits are rapidly changing.
When the OT trips I am seeing: 0x00XF00X0 for a second, then back to 0x00X000X0

I even waited 60 seconds until the amp faulted but I still did not see to 6 written.
Reply
#9
Has this power UMAC been properly setup to phase and close the loop on the motor in question?
Reply
#10
No resolution found at this time. I have been told older model 3U042 amps do not support this. Out amps were purchased between 2011 and 2014. We will send serial numbers to DT support to confirm feature set.
Reply
#11
I have looked closer into this issue and even the older version of this drive (until about 2005) has this feature although the code is different ($05 instead of $06). The later version started at about 2006. In all probability your drives are the current version. It was the other model numbers of the drives that don’t have this feature. The documentation on the website was incorrectly titled.

Maybe there is something in your setup that is causing the lower 12 bit to incorrectly read. Since this is not part of the drive operation it may not be apparent. Send me your most recent pp_save.cfg to inspect.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)