10-10-2010 02:58 AM
I am using CANopen library to develop code in LV2009 and PCI8511 card.
The proportional valve connected to the system issues a NMT Boot Up message 0x701 with zero Data byte. I now have to acknowledge this to proceed further. But there does not seems to be any function the CANopen Library to do this. ( Since I am able to read the 0x701 boot up message the hardware link up is OK )
How to generate an ACK frame using CANopen library ?
Thanks
10-10-2010 10:58 PM
In general the ACK, Err frames are taken care of the physical layer of the CAN hardware. The CANOpen library provides vi's to read/write the data frames and also allows other high level functions. ( i used it long back couldnt recollect.). So if your intention is to send a data to the target hardware use the Write function to write data into CAN bus.
Post this in CAN board to get more responses
10-11-2010 05:51 AM
>>Post this in CAN board to get more responses
I also was looking for this specific forum or board. Could you please give me a link to same ??
Thanks
10-11-2010 09:41 AM
Hi,
Typically if a CANopen slave device uses heartbeat alive meassages it will start sending a single heartbeat message when the master initializes it to pre-operational state. That means you ahve to setup the heartbeat protocoll before you do send the state change command in order to handle the heartbeat protocoll correctly. There is a Library available for heartbeat that installs with the driver.
DirkW
10-11-2010 11:27 AM
>>... it will start sending a single heartbeat message when the master initializes it to pre-operational state.
In my case the slave proportional valve on power up automatically enters the pre-operational state and keeps sending the 0x700+ NodeID and status byte "0" till the master ACK that frame.
And here is where I have a problem. WIll the PCI 8511 do it automatically as part of Layer 2 implementation ( it does not seem to ) or whether I have to send a ACK frame and if yes , how ??
Thanks