Powerflex 753 on Devicenet With SLC505

asterof

Member
Join Date
May 2007
Location
Califonia
Posts
554
I am having to replace an old saftronics VFD node 15 on Devicenet
connected to a SLC505 with a Powerflex 753 and a 20 COMM D
module.

I have added the drive FRM VER 10 to the DeviceNet
and mapped the input and output as normal. Now normally I am
used to seeing the assigned control word points from the device
inside the node its self.
Now what I am concerned about is the produced / consumed I see
in the module. I also am concerned on how the control data
gets mapped.
See attached
Any help would be appreciated.

PF753.jpg
 
Because the PowerFlex 750 series drives were built contemporaneously with the 32-bit ControlLogix family, they use 32-bit Command/Status words as well as 32-bit Reference/Feedback data.

So it's the same general principle as the 16-bit PowerFlex 40 connections, where the first word is Command and the second word is Reference. It's just that they are 32-bit DINTs instead of 16-bit INTs.

In the SLC-500 you'll find some logic that copies the M0 and M1 files to and from the 1747-SDN. Follow that logic to figure out exactly where in SLC-500 data memory this PowerFlex 753 is mapped.

The first question you need to figure out is how the older drive handled its discrete stop/start/jog control, and then figure out how the older drive expressed the Reference.

Some drives use a range of values, like 0-32767 = Min Hz to Max Hz. Some send a value in units of 1/10 of RPM, or 1/100 of Hz.
 
See atached picture

the mapping is done using 4 16 bit words
4 x 16 = 2 x 32 or 64 bits
See the attached screen shot

The worry is the indication of produced / consumed
indication in the mapping

So if were using 4 16 bit words
we have High 16 bit, Low 16 bit
to equal one 32 bit wword
and High 16 bit, Low 16 bit
of the second word.

Now the question is were is the control word map
I have looked at the 20 COMM D manual
and have not found it.
Any ideas
 
SLC-500 plus 20-COMM-D plus PowerFlex 753 is a set of devices that are technically compatible but aren't frequently used together so it takes some digging to get all the information you need.

The 32-bit Command and Status DWORDs can be found in the PowerFlex 750 series Programming Manual, Publication 750-PM01, in Appendix B starting on page 402.

You'll see in that chapter, as well as in several other citations, that you can only access the lower 16 bits of the Command and Status DINTS when you're using a 20-COMM-D module. If you need the Commands or Status that are part of the upper 16 bits you can get them via a DataLink connection.

The PowerFlex 750 series Reference Value is always a Floating Point value, usually the Output Frequency in Hz. If you copy a Floating Point value from an SLC "F8:x" data table element to the upper two words of the 20-COMM-D output connection, that floating point value will be the output frequency in Hz.
 
lets address the conversion

I think this will read the MO files and convert it to a float
made a boo boo on the third COP should have been #M1:1.32 then #M1:1.33
but you get the idea

LOGIC.PNG
 
Last edited:
The PowerFlex 750 series Reference Value is always a Floating Point value, usually the Output Frequency in Hz. If you copy a Floating Point value from an SLC "F8:x" data table element to the upper two words of the 20-COMM-D output connection, that floating point value will be the output frequency in Hz.


Are you sure about that, this is from one of the docs i have




The Reference/Feedback value is Hz x 1000 or RPM x 1000. Drive
parameter 300 - [Speed Units] determines whether the scaling is Hz or
RPM. The default scaling is Hz, where 0…60,000 equates to 0…60.000 Hz.
When parameter 300 is set to RPM, then 0…1,765,000 equates to
0…1765.000 RPM.
For 16-bit processors, such as PLC-5 and SLC 500 controllers, the data
requires manipulation to set a speed Reference above 32767 or below
-32767. Please see the PowerFlex 700S AC Drives Phase II Control
Reference Manual, publication PFLEX-RM003, in the Chapter 1
‘Communications’ section. Then go to the ‘PLC 5 or SLC System’
subsection and see the ‘Reference/Feedback Programming’ sub-subsection.
 
Manual

My manual does not show that on 402
750-PM001J-EN-P - October 2014
it has 544 pages and I do not see what word bits to what
 
additional confusion

The reference is scaled so that base motor speed = 32767. The PLC can only
handle 16-bit integers, so the reference has to be handled differently to account
for references above 32767 or below -32768. The following example shows how
to transmit references more than base motor speed and less than twice base motor
speed.
The feedback is also scaled so that base motor speed = 32767. The PLC can only
handle 16-bit integers, so the feedback has to be handled differently to account
for references above 32767 or below -32768. The following example shows how
to read feedback values more than base motor speed and less than twice base
motor speed.

This comes from manual PFLEX-RM003E-EN-E - January 2011

So I am confused on what I am going to be getting back and sending to the drive
 
Remember that PowerFlex 4/40/400, 70/700/700S, and 750 family are related but different product lines. Don't mix the documentation.

Your citations in Posts #6 and #8 are for the PowerFlex 700S Phase II, so disregard them for this specific application.

The copy of 750-PM001 I cited was Revision F, September 2012.

I've downloaded Revision J, October 2014 and found that information has been moved out of Appendix B and is instead in Chapter 5, "Embedded Feature and Option Module Parameters", starting on page 240.

When you're using a 750-series drive, you have the option of using Hertz or RPM as the speed units. Choose one using Parameter 300 "Speed Units" (Chapter 3, page 31), and stick with those units for everything.
 
And another note about COP instructions: they are most effective when used on blocks of data.

Copying M1:1.30 to N9:60, Length 4 is a single instruction that will populate N9:60 through N9:63. It's easy because you're copying INT to INT.

A more tricky way to do it would be to copy directly from INT to FLOAT, being aware that INTs are 16 bits and FLOATs are 32 bits.

So COP M1:1.30 to F8:70 Length 2 moves four INTs into two REALs. The Length argument is 2 because Length is always the number of destination elements, not bits or bytes or words.

Another reason to pay attention to your COP instructions when working with SLC-500 network modules is that every reference to M0 or M1 Module Data addresses takes about a millisecond to interrupt the backplane and communicate with the module.

Copying 10 or 20 or 100 words at a time into ordinary Data Table takes a lot less scantime than making 10 or 20 or 100 individual references directly to the Module Data addresses.
 
so here is the update

Could not get speed reference to work
See simple code we used to test
Problem was that using a float COP to either an int or directly
to the MO would cause the speed reference to go crazy after
32000
See code
 
Last edited:
Hmm.

The documentation I can find about the PowerFlex 753 shows that the reference is a Floating Point value that's literally the reference value; for 30 Hz, you put in "30.0", not "30000.0".

But obviously something else is going wrong.

Maybe I got the Least-Significant and Most-Significant Word arrangement wrong for the SLC controller. This is mentioned in the PowerFlex 700S Phase II manual that I was so dismissive of, but I think it could be explained more clearly.

Try this, to "swap" LSW and MSW of the output value before it gets put into the 1747-SDN.

lsw_msw_swap.PNG
 
Hmm.

The documentation I can find about the PowerFlex 753 shows that the reference is a Floating Point value that's literally the reference value; for 30 Hz, you put in "30.0", not "30000.0".

But obviously something else is going wrong.

Maybe I got the Least-Significant and Most-Significant Word arrangement wrong for the SLC controller. This is mentioned in the PowerFlex 700S Phase II manual that I was so dismissive of, but I think it could be explained more clearly.

Try this, to "swap" LSW and MSW of the output value before it gets put into the 1747-SDN.

We did try using 30.0 and it was so small it had no speed reference because when it was put into the MO of course it would end up being 30.



Found this on the KB
Will look into the info

111626 - PowerFlex 750 Series drive: Speed Reference Scaling using a 20-COMM
65712 - Using a 20-COMM legacy module with a PowerFlex Series Drives with a 16-bit controller (PLC5, SLC 500, etc)
 
So I used one of the sample code

Seems odd to me
This is the sample from KB 65712
20COMMR_TO_PF755



NOTE: PLC5 TO PF750 W 20COMMR.RSP has not been verified to work on SLC platform.
20COMMR_TO_PF755.RSP has been verified that is works when converted to SLC platform. (however max is reference is 65536). This example also applies to 700S and PowerFlex DC for 32 bit parameters over datalinks
 

Similar Topics

Hi all I am working on a retrofit project. There is one backup pump with Powerflex 753 drive controlled by 2 different PLCs(one 1756-L63 ,one...
Replies
3
Views
1,500
Hi, I'm trying to add an AB Power Flex 753 drive to an old device-net network, we have 6 different drives (700's) and and 2 I/O adapters, now I...
Replies
3
Views
1,794
Looking for help in configuring explicit messaging in the RSLogix 5000 for devicenet 1336 drive is 16bit and current devicenet is mapped this...
Replies
0
Views
3,201
How to remove faceplate from power flex 753 and not shutting the system down. What parameters should i change?
Replies
1
Views
78
Hi all, I am having a problem with a powerflex 753 we have on site and keep getting input phase loss. The drive has been running for a long...
Replies
7
Views
1,273
Back
Top Bottom