Setting PDO parameters in CANopen

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

Setting PDO parameters in CANopen

John Dammeyer

Hi Everyone,

 

In the latest newsletter from the CAN in Automation Group (a worthwhile newsletter even if you don’t use CANopen), Holger Zeltwanger has an article on setting PDO parameters in a CANopen module.  That reminded me that I really need to ask this question.

 

In addition to setting the appropriate parameters many nodes also implement the Object Dictionary save location 0x1010 with the “SAVE” written to transfer the PDO parameters to non-volatile memory.

 

Not all CANopen devices use this same method for saving data but the updating of PDO definition and mapping  with SDO messages is identical.  Is there a tool that can read an EDS (Electronic Data Sheet) file and generate the appropriate set of message sequences to update the PDOs?

 

One unit we use is from RM Michaelides which has a custom application that uses their CAN dongle.  Is it the same for pretty well everyone?  The dongles I have on hand are the KVaser Leaf and Lawicel CANUSB.

 

Thanks

John Dammeyer

 

 

 

 

"ELS! Nothing else works as well for your Lathe"

Automation Artisans Inc.

http://www.autoartisans.com/ELS/

Ph. 1 250 544 4950

 

 

Reply | Threaded
Open this post in threaded view
|

Re: Setting PDO parameters in CANopen

Heinz-Jürgen Oertel
Not sure what you need. But did you check CANopen configuration tools like emtas CDE CANopen Device Explorer. ?

Am 14. Juli 2016 18:51:05 MESZ, schrieb John Dammeyer <[hidden email]>:

Hi Everyone,

 

In the latest newsletter from the CAN in Automation Group (a worthwhile newsletter even if you don’t use CANopen), Holger Zeltwanger has an article on setting PDO parameters in a CANopen module.  That reminded me that I really need to ask this question.

 

In addition to setting the appropriate parameters many nodes also implement the Object Dictionary save location 0x1010 with the “SAVE” written to transfer the PDO parameters to non-volatile memory.

 

Not all CANopen devices use this same method for saving data but the updating of PDO definition and mapping  with SDO messages is identical.  Is there a tool that can read an EDS (Electronic Data Sheet) file and generate the appropriate set of message sequences to update the PDOs?

 

One unit we use is from RM Michaelides which has a custom application that uses their CAN dongle.  Is it the same for pretty well everyone?  The dongles I have on hand are the KVaser Leaf and Lawicel CANUSB.

 

Thanks

John Dammeyer

 

 

 

 

"ELS! Nothing else works as well for your Lathe"

Automation Artisans Inc.

http://www.autoartisans.com/ELS/

Ph. 1 250 544 4950

 

 


--
Heinz Jürgen Oertel
vom Android Handy
Reply | Threaded
Open this post in threaded view
|

Re: Setting PDO parameters in CANopen

Isto Virtanen
In reply to this post by John Dammeyer
John,

You lost me also.
What did You actually wanted to do or change PDO-mapping of a certain node and then save the new mapping?

As far as I remember all commercial (and own designed) components we use (or I have played with) do obay the object 1010h to save parameters.
PDO-mapping is far more trickier: Depending on the manufacturer (how they have read the standard and Kvaser patent) You sometimes need to disable this certain PDO in order to change the mapping and some manufacturers couldn't care less.
This is information is NOT in the EDS of the component, You just need to know (bugger, test) it.

Based on the above, I'd say it is impossible to create a generic tool You described.

We have an inhouse tool to do the configuration of all parameters of the nodes we use, but we have been forced to create a collection of exceptions to handle them all.

isto



"John Dammeyer"


From:        "John Dammeyer" <[hidden email]>
To:        <[hidden email]>
Date:        14.07.2016 19:57
Subject:        [CANLIST] Setting PDO parameters in CANopen
Sent by:        [hidden email]






Hi Everyone,

 

In the latest newsletter from the CAN in Automation Group (a worthwhile newsletter even if you don’t use CANopen), Holger Zeltwanger has an article on setting PDO parameters in a CANopen module.  That reminded me that I really need to ask this question.

 

In addition to setting the appropriate parameters many nodes also implement the Object Dictionary save location 0x1010 with the “SAVE” written to transfer the PDO parameters to non-volatile memory.

 

Not all CANopen devices use this same method for saving data but the updating of PDO definition and mapping  with SDO messages is identical.  Is there a tool that can read an EDS (Electronic Data Sheet) file and generate the appropriate set of message sequences to update the PDOs?

 

One unit we use is from RM Michaelides which has a custom application that uses their CAN dongle.  Is it the same for pretty well everyone?  The dongles I have on hand are the KVaser Leaf and Lawicel CANUSB.

 

Thanks

John Dammeyer

 

 

 

 

"ELS! Nothing else works as well for your Lathe"

Automation Artisans Inc.

http://www.autoartisans.com/ELS/

Ph. 1 250 544 4950

 

 






This e-mail is confidential and it is intended only for the addressees. Any review, dissemination, distribution, or copying of this message by persons or entities other than the intended recipient is prohibited. If you have received this e-mail in error, kindly notify us immediately by telephone or e-mail and delete the message from your system. The sender does not accept liability for any errors or omissions in the contents of this message which may arise as a result of the e-mail transmission.

Reply | Threaded
Open this post in threaded view
|

RE: Setting PDO parameters in CANopen

John Dammeyer
The specific product in this case is a Step/Servo Motor that we use in both Velocity and Torque mode.  

The default PDOs send status and velocity or Status and Position.  

We need Velocity, Motor Current and several status OD entries.  

This motor requires the system to be in PRE-OP for configuring PDOs.   Then the PDO has to be disabled.  Then the number of objects set to 0.  Next, if we map 4 OD entries into one PDO we can fill the mapping entries, after that set the last entry # and then enable the PDO.   Finally back to OP Mode and we get the new PDO on whatever period has been programmed.
 
If we want to keep this between power/reset cycles we have to write “SAVE” to 0x1010:00

Even if a module doesn’t need PRE-OP, doesn’t need the PDO disabled and doesn’t need the number of entries set to 0, normally none of those operations would cause issues if it were done in that order.

Since I know very little about the CANopen tools out there I was wondering if there was something out there that would do this.

On my system all host PC commands to the CANopen  master through the USB port are in the format @@@_@@@ where a 6 means an SDO operation.

As it is now I’ve written out a detailed set of instructions for the installation guys to perform these operations using the interface application which is written in Delphi XE7.  For example:  
@@@6@@@W1.30,1A01,1,63000310

We’re Writing 32 bit unsigned (1), to Node 0x30, OD index 0x1A01, SubIndex  0x01, the value 0x63000310 which is OD index 0x6300, Subindex 0x03 and is a 16 bit entry.

They don’t have to type all the characters. It's a windows application.   They just fill in fields in a menu and click on the WRITE or READ button.  The program generates the actual string of characters.
The 0x580+NodeID reply is echoed in the text window.

I was trying to avoid having to write a parser for EDS entries like this which is the status register of the motor from the EDS file:
[1A01sub1]
ParameterName=PDO Mapping Entry 1
ObjectType=0x7
DataType=0x0007
AccessType=ro
DefaultValue=0x60410010
PDOMapping=0
LowLimit=0x60410010
HighLimit=0x60410010


Hope that all makes sense.   This isn’t really as much a CAN question as a High Level Protocol CANopen question.  The Vector Tool has a nice tree structure for the OD but making sense of it and being able to generate CAN messages to actually change the OD is the challenge.  Maybe the tool doesn’t actually exist.

Thanks
John Dammeyer



--
Archives and useful links: http://groups.yahoo.com/group/CANbus
Subscribe and unsubscribe at www.vector.com/canlist/
Report any problems to <[hidden email]>
Reply | Threaded
Open this post in threaded view
|

Re: Setting PDO parameters in CANopen

koppe
Hello John,

actually you stumbled across to PDO mapping procedure described in
CiA 301. The procedure was introduced due to a patent years ago and
requires the steps that you mentioned:

1. set device into pre-operational mode
2. disable PDO (communication parameter)
3. disable mapping (write 0 to sub-index 0 of mapping parameter)
4. write new mapping
5. enable mapping (write correct number of sub-indices to sub-index 0)
6 enable PDO (communication parameter)
7. set device into operational mode
8. Enjoy the new PDO

You don’t want to do this manually all the time, so it is recommended
to use a tool. I am not aware of a freeware CANopen configuration tool,
but I think companies like emtas, esd, HMS, Vector, etc. are happy to 
sell you an appropriate tool. 



Greetings,
Uwe


---------------------------------------------------------------------
MicroControl GmbH & Co. KG
Junkersring 23, 53844 Troisdorf, Germany

Homepage: www.microcontrol.net
Facebook: www.facebook.com/MicroControl.net
Twitter : http://twitter.com/_microcontrol_
---------------------------------------------------------------------

Reply | Threaded
Open this post in threaded view
|

RE: Setting PDO parameters in CANopen

John Dammeyer

Hi Uwe,

I wasn’t looking for a free tool this time.  Just something the client can buy that makes setting up CANopen devices using both the CiA 301 approach.  One of the engineer’s really badly wants to buy the Vector Software for the logging and data analysis.  But I don’t know if it can do the CiA 301 approach.

Thanks for your feedback.

John

 

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Uwe Koppe
Sent: July-15-16 1:33 AM
To: [hidden email]
Subject: Re: [CANLIST] Setting PDO parameters in CANopen

 

Hello John,

 

actually you stumbled across to PDO mapping procedure described in

CiA 301. The procedure was introduced due to a patent years ago and

requires the steps that you mentioned:

 

1. set device into pre-operational mode

2. disable PDO (communication parameter)

3. disable mapping (write 0 to sub-index 0 of mapping parameter)

4. write new mapping

5. enable mapping (write correct number of sub-indices to sub-index 0)

6 enable PDO (communication parameter)

7. set device into operational mode

8. Enjoy the new PDO

 

You don’t want to do this manually all the time, so it is recommended

to use a tool. I am not aware of a freeware CANopen configuration tool,

but I think companies like emtas, esd, HMS, Vector, etc. are happy to 

sell you an appropriate tool. 

 

 

 

Greetings,
Uwe


---------------------------------------------------------------------
MicroControl GmbH & Co. KG
Junkersring 23, 53844 Troisdorf, Germany

Homepage: 
www.microcontrol.net
Facebook: 
www.facebook.com/MicroControl.net
Twitter : 
http://twitter.com/_microcontrol_
---------------------------------------------------------------------

Reply | Threaded
Open this post in threaded view
|

Re: Setting PDO parameters in CANopen

Heinz-Jürgen Oertel
Hi John,

as Uwe already mentioned. the sequence to change the PDO communication parameters was described in the standard, more or less transparent.
All tools of well-known manufacturers should handle this correct. Some of them even allow scripting for CANopen and can be adopted to customer needs.

Regards
 Heinz


--
Archives and useful links: http://groups.yahoo.com/group/CANbus
Subscribe and unsubscribe at www.vector.com/canlist/
Report any problems to <[hidden email]>
Reply | Threaded
Open this post in threaded view
|

RE: Setting PDO parameters in CANopen

John Dammeyer
Does the Vector Tool do this?  It's the tool of choice for the new engineer my client hired.  He wants it for the logging and play back capabilities.  If it does the PDO set sequences he'd be very happy as it gives him more justification for an expensive tool.
Thanks
John


> -----Original Message-----
> From: [hidden email] [mailto:[hidden email]] On
> Behalf Of Heinz-Jürgen Oertel
> Sent: July-18-16 6:13 AM
> To: [hidden email]
> Subject: Re: [CANLIST] Setting PDO parameters in CANopen
>
>
> Hi John,
>
> as Uwe already mentioned. the sequence to change the PDO
> communication parameters was described in the standard, more or less
> transparent.
> All tools of well-known manufacturers should handle this correct. Some of
> them even allow scripting for CANopen and can be adopted to customer
> needs.
>
> Regards
>  Heinz
>
>
> --
> Archives and useful links: http://groups.yahoo.com/group/CANbus
> Subscribe and unsubscribe at www.vector.com/canlist/
> Report any problems to <[hidden email]>

--
Archives and useful links: http://groups.yahoo.com/group/CANbus
Subscribe and unsubscribe at www.vector.com/canlist/
Report any problems to <[hidden email]>
Reply | Threaded
Open this post in threaded view
|

RE: Setting PDO parameters in CANopen

Klüser, Jürgen-2
Hi John,

yes, it does.

Regards
Juergen

>-----Original Message-----
>From: [hidden email] [mailto:[hidden email]] On
>Behalf Of John Dammeyer
>Sent: Monday, July 18, 2016 4:41 PM
>To: [hidden email]
>Subject: RE: [CANLIST] Setting PDO parameters in CANopen
>
>Does the Vector Tool do this?  It's the tool of choice for the new engineer my
>client hired.  He wants it for the logging and play back capabilities.  If it does
>the PDO set sequences he'd be very happy as it gives him more justification
>for an expensive tool.
>Thanks
>John
>
>
>> -----Original Message-----
>> From: [hidden email] [mailto:[hidden email]] On
>> Behalf Of Heinz-Jürgen Oertel
>> Sent: July-18-16 6:13 AM
>> To: [hidden email]
>> Subject: Re: [CANLIST] Setting PDO parameters in CANopen
>>
>>
>> Hi John,
>>
>> as Uwe already mentioned. the sequence to change the PDO
>> communication parameters was described in the standard, more or less
>> transparent.
>> All tools of well-known manufacturers should handle this correct. Some of
>> them even allow scripting for CANopen and can be adopted to customer
>> needs.
>>
>> Regards
>>  Heinz
>>
>>
>> --
>> Archives and useful links: http://groups.yahoo.com/group/CANbus
>> Subscribe and unsubscribe at www.vector.com/canlist/
>> Report any problems to <[hidden email]>
>
>--
>Archives and useful links: http://groups.yahoo.com/group/CANbus
>Subscribe and unsubscribe at www.vector.com/canlist/
>Report any problems to <[hidden email]>
�!���jwn���X���m�����.�̚���o஋�� n����&�jwn�˛���m�� /y�h��&�Ƨ�+-����Z�*k��^��hq���h�w���-���~��jؤu