0
\$\begingroup\$

I am an engineer in the marine industry and work as a commissioning engineer and need to build something that I can connect to each sensor for alarm testing. The sensor is a thermocouple that is hard wired into the CANbus node. CANbus is the area where I have the least understanding, not taught when I was at uni.(If anyone has links to indepth information, please send me the link) I would like to be able to connect to the CANbus sensor and read it, while also being able to send a false output temperature CANbus signal to raise the temperature being read by the alarm system. I have looked at what is available of the shelf and can´t find anything that can do this. I can see there is some opensource software and making a CANbus reader seems not so hard, but sending a temperature signal over CANbus seems rather difficult. CANbus system runs on 13v with a 120 Ohm resister at the bus end. There are 4 bus with about 6 nodes on each. There are 6 wires in each bus cable. 2 are shields ard the other 4 which run to each node are 1)CAN Hi 2)CAN Lo 3)return 4)13v

Thanks in advance

\$\endgroup\$
5
  • 1
    \$\begingroup\$ Do you want to read and send from a computer or your own device? Even if you want to develop your own device, you will need a CAN interface to a PC to be able to diagnose and debug it, and they come with software for reading and sending eg PCAN If you want to develop your own device, look for a micro that has the CAN peripheral hardware, and firmware libraries for CAN. \$\endgroup\$
    – Martin
    Nov 9 '17 at 11:56
  • \$\begingroup\$ Thanks, I was thinking easiest way would be through my laptop. I had seen the PCAN, but it is only rated to 5v. \$\endgroup\$ Nov 9 '17 at 12:07
  • 1
    \$\begingroup\$ So don't connect the 13V pin, just CAN H, CAN L and 0V. The supply voltage power line is not related to the CAN signals and is not part of the CAN spec. The signals are typically dictated by a standard such as ISO-11898. The bus terminator is connected across the signals, not the power line. \$\endgroup\$
    – Martin
    Nov 9 '17 at 12:22
  • \$\begingroup\$ Thankyou, Could you answer me why the supply to the node isn´t needed in this case. \$\endgroup\$ Nov 9 '17 at 12:38
  • 1
    \$\begingroup\$ The PCAN node is powered by the USB connector. \$\endgroup\$
    – Martin
    Nov 9 '17 at 12:45
1
\$\begingroup\$

To begin with, you cannot work with "CAN bus", since that's only the hardware layer. To be able to communicate over a CAN bus, you must know which higher layer protocol that is used. This can be anything. Some common standards are CANopen (most common by far), J1939 and Devicenet. But it is even more common to use a custom, often proprietary protocol.

Unless you know the protocol, and thereby how the whole bus timing is designed, you cannot and should not connect to a CAN bus. Starting to send data onto a CAN bus which you don't know how it is designed, is simply bad and dangerous practice.

As for how to communicate with a CAN bus from the outside world, such as a PC, that's the easy part. There exists many companies (Vector, IXXAT, Kvaser etc) that make CAN listeners, which is typically an adapter with a DB9 male connector towards the bus, pin-out according to the CANopen DS303 hardware standard, where CAN H, CAN L and signal ground are needed. Shield is optional, supply is not needed (unless galvanic isolated CAN nodes are used). The other side of the adapter will have USB that you connect to a PC with the CAN listener software.

Alternatively you could cook up some custom microcontroller solution of your own, but that requires a whole lot more knowledge about CAN, particularly if you are to design the driver yourself.

\$\endgroup\$
0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.