Automotive and Embedded Networks

cancel
Showing results for 
Search instead for 
Did you mean: 

Synchronizing CAN and Analog Signals for Device Validation

I am using a very similar code to the example "Synchronizing CAN and Analog Signals for Device Validation" to synchronize CANOpen nodes and analog inputs. However, I want to write a CANOpen NMT message (Arb. ID 0x00) to change a CANOpen node from preoperational to operational mode (Data bytes 0x01 0x??) where ?? is the address of the CANOpen node.

Is it possible to use "CAN Write.vi" from the nicantsk.llb? If so, how can I do it? Do I have to use another "CAN Init Start.vi" configured for output?

Best regards,
Héctor García
Software Engineer
0 Kudos
Message 1 of 2
(3,476 Views)
Hello Héctor,

From the title you provided, I assumed that you are using something similar to the figures in http://zone.ni.com/devzone/conceptd.nsf/webmain/A0EDFD55B4955EFD86256CAA007618D3 which would mean that you are using the Channel API and DAQ synchronization VI's. Since the CAN Channels in this example are configured for input and you want to output some frames, then yes, you will need to use an Init Start VI to initialize a channel for output, then write the required data out that channel using CAN Write from your LabVIEW pallette which will place it on the CAN bus. You mentioned Arb ID 0x00, which you will need to setup in Measurement and Automation explorer as a new channel with that arbitration ID so that you can output using that ID. Be sure to cl
ear your open channels when you are finished using them.

Hope this clears things up.

Scott B.
Applications Engineer
National Instruments
0 Kudos
Message 2 of 2
(3,476 Views)