0

PIO-337

Ash 5 years ago in IQANdesign updated 4 years ago 9

Hi.

Were hoping if there are any iqan to parker PIO-337 project or examples in existence? Currently learning all i can about CAN-Open and luckily found examples that have helped us get parker UTS 3 axis sensors running. But i have not been able to get the PIO-337 working as of yet. 
I have configured it like this.
Parker PIO-337 , 250kbps, Node ID=2 (CAN-Open module) > Parker PIO-602(PSU) > Parker PIO-550 (2x A I/O) > PIO-600 (End).
Currently trying to get it to work with an MD3 by modifying the old Moduflex code i got years back. But really want to get it working with a hand full of MC41's. 
This is still partially an attempt to control parker P31 proportional valves and hydraulic parker 0-10v LDVT valves as well as D1FW variants. 

We understand this is industrial vs mobile but see no reason why it should not work?


+1

A college at Parker in the Netherlands made this application for PIO-337 in IQANdesign 3 a couple of years ago: 

Parker PIO-337 CANopen to IQAN intererface.ids3

Thank you so much. Looks like i was getting as little suck on the identifiers, trying to decipher the eds file and manual pdf. This helps massively. 

I coverted to IQANdesign 5 a while ago whith some changes.

The projectfile was supposed to be included but the size was to big 25MB.
I don't know how to shrink it.
The project isn't that big so i can't understand the filesize.
Maybe the MD4 firmware is included in the file.
Can it be stripped?

Peter, 

Yes, you can significantly reduce the file size by using save as stripped project file, the .idsx file format. 

+2

I looked for that under export but couldn't find it.
Now i found it under Save instead.
Here is the file. It's exported from a larger project.
PIO-337.idsx

So this example has got me off the ground running, thank you so much.

Just got hold of a PWM stepper control output  and the instructions i got for it are as follows. Im finding it a little hard to understand. 

1:pwm motor init£º
canopen index=0x3000,subindex=0,data=pulse(2 byte)+device index(1 byte)+channel(1 byte)

example:device=1,ch=1,pulse=5000
send pdo: 0x601 23 00 30 00 01 01 88 13

example:device=1,ch=2,pulse=5000
send pdo: 0x601 23 00 30 00 01 02 88 13

example:device=2,ch=1,pulse=5000
send pdo: 0x601 23 00 30 00 02 01 88 13

example:device=2,ch=2,pulse=5000
send pdo: 0x601 23 00 30 00 02 02 88 13


2:motor EN:
canopen index=0x3001,subindex=0,data=00+ EN(1 byte)+device index(1 byte)+channel(1 byte)

example:device=1,ch=1,EN=1
send pdo:0x601 23 01 30 00 01 01 01 00

example:device=1,ch=1,EN=0
send pdo:0x601 23 01 30 00 01 01 00 00

example:device=1,ch=2,EN=1
send pdo:0x601 23 01 30 00 01 02 01 00

example:device=1,ch=2,EN=0
send pdo:0x601 23 01 30 00 01 02 00 00

3:speed control:
send pdo to control motor speed,speed value(2 byte),for 0.1x,ex:if you set speed vale is 1000,for actural motor speed is 1000*0.1=100

example:GCAN8000 have 1 GC2302 module,and Canopen id=1,ch1 speed=1000,ch2 speed=2000
Send PDO data:0x201 E8 03 D0 07 00 00 00 00

if you stop ch1 motor ,send pdo value zero
ex:0x201 00 00 D0 07 00 00 00 00

Can someone please post up a canopen project with a pdo to an analog output like a 2 byte?

So far with this i have got the canopen part (much alike parker PIO-337) into standard operation mode, NMT working, a digital out (8bit) and digital in (8bit) slot working with an MD3. But for the life of me im struggling with this stepper part.

So far i have deciphered the previously posted PIO337 File here and found the SDO setup in INIT-node1 function block to be very close. Also parts from the "CANopen example SCPT" have helped. 

From the information/ example below  i have put into IQAN design 

Identifier: 0x601

1st byte: "23" (not sure what this is but they tell me its like a flag bit)

2nd byte "0" (Index low byte) make this 01 to address 0x3001 for stepper enable?)

3rd byte "30" (Index High) have also tried 2nd and 3rd as a single 2 byte with "3000" and "0x3000")

4th byte "0" (Sub index?) Tried "00" but must be same as 0?)

5th byte "1" (Device number) comes up as 1 even if i type "01" directly into generic parameter out)

6th byte "1" (channel number) 2 devices with 2 channels each) once again "01" scenario)

7-8 bytes  (says data pulse i see its Lb and Hb for 5000 hexidecimal. When putting an integer into a generic frame out does it convert this into a hex number? i have tried putting the direct hex into the GPOUT to no avail).

Also  in part 2 "EN" it shows "00 00" for EN=0 and "01 00" for EN=1 so if these last four digits make up the pulse data on this GPOUT frame then is it correct to make them "1" for enable?

Thank you very much for anyone that has time to help.

Hope im kinda on the right track.

what am i doing wrong?