Trying to read current from the PDP

Hello,

I am trying to read current for individual channels (and all channels) on the PDP and keep getting garbage numbers. They don’t change and make no sense. Some of them say over an amp and don’t even have a breaker installed. The Voltage appears to be correct. My code is very simply GetPDP Currents VI. Do I have to open it somewhere? Does it need an updated firmware? The currents also appear the same in the Web Interface. The Voltage appears correct.

Changes were made to the PDP firmware late in beta to fix the current measurements for low values. Instructions for updating the firmware are here: http://wpilib.screenstepslive.com/s/4485/m/13503/l/216217-updating-and-configuring-pneumatics-control-module-and-power-distribution-panel

Awesome, Thank you

Where can you download the actual firmware update?

The PDP/PCM/TalonSRX firmware is in C:\Users\Public\Documents\FRC.

That’s doc’d in…
http://wpilib.screenstepslive.com/s/4485/m/24166/l/216217-updating-and-configuring-pneumatics-control-module-and-power-distribution-panel
…jump to the “Select New Firmware” part.

PDP firmware 1.37 is what’s intended to be used for now. We will have a public update later but for now that’s what teams should be using. 1.37 will take care of your channels not zero-ing on boot.

We’re having a similar problem with three separate PDPs, all with firmware version 1.37. Even the RoboRIO web page Self Test for the PDP only shows all zeroes for all 16 channels. At firmware version 1.30, we were seeing values between 1 and 2 on all channels (even those with no breakers installed), but now it’s just zeroes. Does anyone have any ideas?

I’ve tried connecting the PDP CAN directly to the RoboRIO, or with the PCM in between them, with the terminating resistor in the ON and OFF positions, and nothing seems to make a difference.

Additionally, on the PDP Self Test screen from the RoboRIO web page, the voltage seems to just go between 11.85 and 11.89 volts, with the temperature mainly jumping between 21.97 and 23.01.

Frank

How are you applying a load to the PDP channels?

We are running a motor at half speed through a Talon. And the motor runs fine.

So just to be clear, the actual problem is that you’re applying a load (robot is enabled and motor is spinning) and the reported current is zero. Is that true on all channels or just one? I mean if you move the load to another channel do you see the same problem.

The reason it was reading 1-2A before is because that is the raw output of the current-sense. It needs biasing (just like a gyro). The latest firmware zeroes it on boot (also like a gyro). But with either firmware, there should be a change in current, unless the current load is too small to measure. A free spinning motor with no load may draw 2A or less (which is in the noise floor). Remember this device is meant to handle/measure large loads (40A and up).

Are you using a Talon SR or SRX?

What kind of motor, and what is it driving?

It is a CIM motor driving nothing. So it could be that there’s simply not enough draw to register, and I can believe that. I don’t have access to it right now, but once I do, I’ll put a load on the motor and also try moving the leads to a different channel.

Thanks a lot for the reply!

It does work now, mainly. Putting a load on the motor (with a finger) does get some different values returned. We just do still have some values coming from channels that aren’t used. Oh well. This is just the test rig. Once we’re on the robot, we’ll be able to look at the data and throw out erroneous values (hopefully).

Thanks for your help.

Frank

I saw in the most recent update that there’s a 1.40 version of code for the PDP and for the Talon SRX as well. You can get those updates from the Cross The Road Electronics website.

I think you’ll want to upgrade. The PDP documentation says: “Power and energy signals were not computed correctly in firmware versions earlier than 1.40. Updating to 1.40 will ensure Power and Energy signals are updated correctly.”

Awesome. Thanks!