Automotive and Embedded Networks

cancel
Showing results for 
Search instead for 
Did you mean: 

Unidrive SP CANOpen PDO

Hello, 

 

I am currently working to control a Control Techniques Drive system via LabView and CanOpen, such that the drive system acts as a vehicle emulator. So far I’ve been able to read and write different parameters from LabView to the Control Techniques Drive system through Service Data Object (SDO) Protocol. However, I would like to communicate to the test rig using Process Data Object (PDO) Protocol. If I manually configure the PDO1 from the drive, I can read values stored in it without a problem, however when it comes to using PDO Write, I don’t get any error, but I also don’t get any response. One of the default values for the RxPDO1 includes setting the speed of the motor, so if I want to access that parameter to write a desired speed in percentage,

 

  • What is the format of the value that LabView needs to convert to CanOpen format?
  • What needs to be connected to CanOpen data in?
  • How can I write to different channels stored in one PDO?

 

As I go through the CT CanOpen manual, there seems to be a gap in how to do the mapping for the different PDOs, and how to access the specific menu and parameter. If I want to configure different PDO objects beside the first one that can be configured manually, I have to follow a series of steps which begin by writing enable to the address of the PDO object i.e. TxPDOB 0x1A01, sub-index 0.

 

  • Is enable in this case a zero value that I need to write through SDO to this sub-index?
  • When setting up a PDO (master-required) do communication parameters need to be written before enabling that PDO?
  • Frames for PDO contain a control bit, is it in this case parameter 6.43?

 

I’m attaching what I’ve been working on so far, plus the CT CanOpen datasheet, and I hope you can point me in the right direction. To make things a bit easier, I'm also attaching a slight modified version of the Analogue Output VI (Untitled2.vi), that's found in the CANopen examples folder. In the drive, there are 4 PDOs, each with 4 TxPDO and 4 RxPDO channels. The first PDO can be configured directly from the drive, and that's how I've been able to read parameteres. However, when it comes to write, that's when the problem comes. With this VI, the first RxPDO channel is configured to set the speed of the motor (directly configured in the drive), but I'm not getting any response.

 

Thanks for your help,

 

Enrico 

Download All
0 Kudos
Message 1 of 1
(6,933 Views)