Automotive and Embedded Networks

cancel
Showing results for 
Search instead for 
Did you mean: 

use CAN or DNET API ?

Hello,

I have few programs that are using DNET VIs on a PCMCIA-CAN card. migrating to windows 7 requires that we move to usb CAN card but our program uses DNET VIs and USB device net is not available through NI. 

will a USB-CAN card work with my current program that uses DNET VIs and a DNET dongle, or do i need to make CAN VIs to provide same functionality with or without using the Dongle.

I am new to CAN and DNET, 

as i understand it DNET is the application layer for CAN, does it mean that the CAN signals i recieve from the source machine are converted into some easily readable format by that dongle and DNET VIs instead of the HEX bytes, IDs and timestamps that the CAN signals are recieved.

if so is there a way to do away without using the dnet api and dongle and somehow convert CAN signals into meaningful information with some CAN API if its available. Is this a significant programming effort to do with CAN what the dnet already does?

 

any help is appreciated

 

Thanks

0 Kudos
Message 1 of 4
(5,057 Views)

Hi Freemason,

 

I assume you are using one of the older, Series 1 PCMCIA-CAN cards

 

Newer CAN devices are not compatible with the NI-Industrial Communications for DeviceNet or NI-DNET driver.  If you are interested in upgrading from the PCMCIA-CAN cards to perform DeviceNet, I would recommend using the new NI-DeviceNet cards, as they are support and have ongoing driver updates.  These cards are shown here: https://www.ni.com/en-us/shop/category/industrial-communication-buses.html  The recommended upgrade path from PCMCIA is to go with the cRIO and the NI 9882 DeviceNet card.  However, if you have a Desktop computer, then the PCI-DeviceNet card can be useful for your application.

 

If you want to use the USB CAN device, you will be using the NI-CAN driver and will need to implement the application layer for DeviceNet yourself.  Even then, the transceiver on the USB CAN device does not comply with the DeviceNet specification.  It should technically still work, but it will not be compliant to the spec. 

 

Please let me know if you have any additional questions.

 

Thanks!

Matt S.
Industrial Communications Product Support Engineer
National Instruments
0 Kudos
Message 2 of 4
(5,042 Views)

thanks aix.

 

how hard is it to implement the application layer myself. i am not well versed with DNET or CAN protocols.

any guide / tutorial?

 

0 Kudos
Message 3 of 4
(5,031 Views)

Hi Freemason,

 

I would recommend installing the drivers for both of NI-CAN and NI-DNET and then looking at the examples available in example finder to familiarize yourself with the driver.  Example finder is located at Help » Find Example.  You can search CAN or DNET to find examples about these drivers.

 

In order to implement the DeviceNet with the CAN driver, I would recommend looking at this potential solution here: https://forums.ni.com/t5/LabVIEW-APIs-Documents/DeviceNet-Communication-Read-Write-Data/ta-p/3522015

 

Matt S.
Industrial Communications Product Support Engineer
National Instruments
0 Kudos
Message 4 of 4
(4,992 Views)