Powerflex 70 with Comm E Module

ellcap

Member
Join Date
Jun 2016
Location
NV
Posts
17
I've been talking with PowerFlex 525 Drives using the Comm C module with a non rockwell controller without any issues.

I went ahead and loaded the EDS File for the 70, thinking similar configuration with the third party ethernet scanner (Opto 22, using the codesys Ethernet IP scanner license) and I can connect to the drive but I'm hit with an adapter configured, open all connections message.

Digging into the EDS files between the two drives I see some clear differences and am wondering, is the 70 capable of third party IO scanner integration?
 
You should be able to message to it just like a SLC 5/05 would. Basically you message to it like it's a PLC 5 and use N file registers:
- Write once to N42:3 for the timeout. I use 500 for 5 seconds.
- Write continuously to N45:0 4 integers for control bit and speed reference.
- Read continuously from N45:0 4 integer for status bits and actual speed feedback.
 
You should be able to message to it just like a SLC 5/05 would. Basically you message to it like it's a PLC 5 and use N file registers:
- Write once to N42:3 for the timeout. I use 500 for 5 seconds.
- Write continuously to N45:0 4 integers for control bit and speed reference.
- Read continuously from N45:0 4 integer for status bits and actual speed feedback.
thank you. after going deeper in the manual I got there and will try this. Fingers crossed.

Thanks again.
 
Thanks again to JaxGTO above. If anybody stumbles across this, I couldn't quite figure out how to address an N file inside Codesys so using a similar approach that was near that solution in the Manual, I did this:

Class Code
Services
Instances
Class Attributes
Instance Attributes
Important: Setting a Register object attribute can be done only when the
Control Timeout (class attribute 100) has been set to a non-zero
value.
Hexadecimal Decimal
0x07 7
Service Code Implemented for: Service Name
Class Instance
0x0E Yes Yes Get_Attribute_Single
0x10 Yes Yes Set_Attribute_Single
Instance Description
1 All I/O data being read from the DPI device (read-only)
2 All I/O data written to the DPI device (read/write)
3 Logic Status and Feedback data (read-only)
4 Logic Command and Reference data (read/write)
5 Datalink A (input data from device to scanner) (read only)
6 Datalink A (output data from scanner to device) (read/write)
7 Datalink B (input data from device to scanner) (read only)
8 Datalink B (output data from scanner to device) (read/write)
9 Datalink C (input data from device to scanner) (read only)
10 Datalink C (output data from scanner to device) (read/write)
11 Datalink D (input data from device to scanner) (read only)
12 Datalink D (output data from scanner to device) (read/write)
13 Logic Status and Feedback Data (read-only)
14 Mask (1) (read/write)
(1) The mask command word is set to the value of the first word of the data where there
are ones in the second word of the data. Command = (word 1 and not word 2) or (word
1 and word 2). This only controls specified bits in the Logic Command data to the DPI
product and does not change the Reference value.
15 Logic Status (read-only)
16 Logic Command (read/write)
17 Feedback (read-only)
18 Reference (read/write)
Attribute ID Access Rule Name Data Type Description
100 Set Control Timeout WORD Control timeout in seconds




I did a write message class level to Attribute 100 to set a timeout, then wrote 4 BYTES to Instance 4 to start/stop the drive, reading the status back at the same place to confirm the drive was running/had the correct speed command.

In Codesys it looked like this (apologies for the bad documentation, was doing test bench style dev)
Setup message:
SAS(
xExecute:= ,
itfEtherNetIPDevice:= PowerFlex70, (* instance of the device (instance is found in the I/O Image of the device) *)
eClass:= 7, (* cip class which contains the desired attribute *)
dwInstance:= 0, (* value of 0 is class level, range from 1..x is instance level *)
pData:= ADR(WRITE), (* data buffer *)
udiDataSize:= SIZEOF(WRITE), (* size of the data buffer *)
wAttribute:= 100, (* attribute no. 6 of the tcp/ip interface object is the Hostname (CIP Spec. Vol.2 Chapter 5-3.3.2.6)*)
xDone=> ,
xBusy=> ,
xError=> ,
eError=> );

Command Message:
//first write this THIS ONE RUNS THE PFLEX 70!!!!!!!!!!!!!!!!!
SAS1(
xExecute:= ,
itfEtherNetIPDevice:= powerflex70, (* instance of the device (instance is found in the I/O Image of the device) *)
eClass:= 7, (* cip class which contains the desired attribute *)
dwInstance:= 4, (* value of 0 is class level, range from 1..x is instance level *)
pData:= ADR(WRITEWORD), (* data buffer *)
udiDataSize:= SIZEOF(WRITEWORD), (* size of the data buffer *)
wAttribute:= 4, (* attribute no. 6 of the tcp/ip interface object is the Hostname (CIP Spec. Vol.2 Chapter 5-3.3.2.6)*)
xDone=> ,
xBusy=> ,
xError=> ,
eError=> );
 

Similar Topics

I have 3 new PowerFlex 7000 VFD's. Rockwell was out to do some checking before startup. These are part of a larger electrical project. I gave the...
Replies
7
Views
272
Hello all, new here. I have 16 Powerflex 40’s that I am converting from DeviceNET to Ethernet. I changed all of the Comm modules to 22-COMM-E and...
Replies
3
Views
1,088
I had to replace 3 PowerFlex 40 multi-drives that each had 3 PF4M daisy chained off the DSI port. The PF40s had comm-e cards installed for...
Replies
9
Views
2,356
We have 5 powerflex40 communicating with an Allen-Bradly 820 via rs485. When the motors are off, communication is almost Instantaneous...
Replies
8
Views
1,731
Due to supply issues, I was forced to replace a 15 Hp Powerflex 525 with a 523. Unknown to me was the fact that the 25-COMM-D that came with the...
Replies
1
Views
1,789
Back
Top Bottom