For the 4500's, 6500'sand 7600 I use 1.3.6.1.4.1.9.9.13.1.5.1.3 ciscoEnvMonSupplyState
I don't have any 3500s to test with.
When you create your UnDP, use MIB value Type "Raw Value", SNMP Get Type "Get Table", and Format "Enumeration".
My Enumerations are mapped to:
1 normal
2 WARNING
3 CRITICAL
4 SHUTDOWN
5 notPresent
6 notFuncitoning
If you want some reports from that OID, I've got a couple here:
Cisco Catalyst Chassis Abnormal Power Supply Status
Cisco Catalyst Chassis Power Supply Status
These were written on NPM 10.1, but still working on 10.3. Haven't moved to 10.4 or 10.5 yet