EMC FLEX BLOG A site dedicated to Automotive EMC Testing for Electronic Modules

Automotive Cranking Pulse

10. September 2015 19:47 by streng in
The Cold Cranking Pulse occurs when starting the engine in the morning and even worse in cold w

The Cold Cranking Pulse occurs when starting the engine in the morning and even worse in cold weather. Controllers supporting CAN bus will be notified that a temporary low battery voltage condition will occur. Motion controllers modules (e.g. power lift gate) driving in that moment electrical motors will have to stop the ongoing operation and store their current status (e.g. lift gate position and direction) just before the Cold Cranking Pulse occurs. Once the Battery voltage returns to nominal (e.g. 12.8 V) the motion controller should safely resume its operation.









Automotive 12V Battery - Voltage Drops

10. September 2015 12:18 by streng in
Simple simulation of preventing voltage drops issues for 9V to 16V operating voltage

Simple simulation to prevent voltage drop issues for 9V to 16V operating voltage range devices.

All DUT's functions are required to perform as designed during battery voltage drops of up to 1 ms.  For drops above 1 ms the functions are allowed to be temporarily disrupted or fail in a safe mode. Upon return to the operating voltage range the DUT is supposed to auto-recover and resume its operation. In the above example the DUT's functions should not be disrupted (dropout = 1.3 ms, B+ = 9.36 V).


In the above example (dropout = 1.67 ms, B+ = 8.65 V) a fail safe behavior is acceptable. The software will prevent the DUT from resuming its operation as long as B+ is detected below the voltage range. Once B+ line is above 9V the auto recover process should be initiated.

CAN bus (Controller Area Network)

8. September 2015 16:37 by Christian in
CAN bus (for controller area network) is a vehicle bus standard designed to allow microcontrollers a

CAN bus (for controller area network) is a vehicle bus standard designed to allow microcontrollers and devices to communicate with each other within a vehicle without a host computer. CAN bus is a message-based protocol, designed specifically for automotive applications but now also used in other areas such as aerospace, maritime, industrial automation and medical equipment. 

CAN bus is one of five protocols used in the OBD-II vehicle diagnostics standard. The OBD-II standard has been mandatory for all cars and light trucks sold in the United States since 1996, and the EOBD standard has been mandatory for all petrol vehicles sold in the European Union since 2001 and all diesel vehicles since 2004. 


Automotive Applications


A modern automobile may have as many as 70 electronic control units (ECU) for various subsystems. Typically the biggest processor is the engine control unit (also engine control module/ECM or Powertrain Control Module/PCM in automobiles); others are used for transmission, airbags, antilock braking/ABS, cruise control, electric power steering/EPS, audio systems, windows, doors, mirror adjustment, battery and recharging systems for hybrid/electric cars, etc. Some of these form independent subsystems, but communications among others are essential. A subsystem may need to control actuators or receive feedback from sensors. The CAN standard was devised to fill this need.

The CAN bus may be used in vehicles to connect the engine control unit and transmission, or (on a different bus) to connect the door locks, climate control, seat control, etc.

Today the CAN bus is also used as a fieldbus in general automation environments, primarily due to the low cost of some CAN controllers and processors.

Bosch holds patents on the technology, and manufacturers of CAN-compatible microprocessors pay license fees to Bosch, which are normally passed on to the customer in the price of the chip. Manufacturers of products with custom ASICs or FPGAs containing CAN-compatible modules may need to pay a fee for the CAN Protocol License.

Technology

CAN is a multi-master broadcast serial bus standard for connecting electronic control units (ECUs). Each node is able to send and receive messages, but not simultaneously. A message consists primarily of an ID (identifier), which represents the priority of the message, and up to eight data bytes. The improved CAN (CAN FD) extends the length of the data section to up to 64 bytes per frame. It is transmitted serially onto the bus. This signal pattern is encoded in non-return-to-zero (NRZ) and is sensed by all nodes.  

The devices that are connected by a CAN network are typically sensors, actuators, and other control devices. These devices are not connected directly to the bus, but through a host processor and a CAN controller. If the bus is idle which is represented by recessive level (TTL=5V), any node may begin to transmit. If two or more nodes begin sending messages at the same time, the message with the more dominant ID (which has more dominant bits, i.e., zeroes) will overwrite other nodes' less dominant IDs, so that eventually (after this arbitration on the ID) only the dominant message remains and is received by all nodes. This mechanism is referred to as priority based bus arbitration. Messages with numerically smaller values of IDs have higher priority and are transmitted first.


Each node requires:

Host processor

• The host processor decides what received messages mean and which messages it wants to transmit itself.

• Sensors, actuators and control devices can be connected to the host processor.

CAN controller (hardware with a synchronous clock).

Receiving: the CAN controller stores received bits serially from the bus until an entire message is available, which can then be fetched by the host processor (usually after the CAN controller has triggered an interrupt).

Sending: the host processor stores it’s transmit messages to a CAN controller, which transmits the bits serially onto the bus.


Transceiver

Receiving: it adapts signal levels from the bus to levels that the CAN controller expects and has protective circuitry that protects the CAN controller.

Transmitting: it converts the transmit-bit signal received from the CAN controller into a signal that is sent onto the bus.


Bit rates up to 1 Mbit/s are possible at network lengths below 40 m. Decreasing the bit rate allows longer network distances (e.g., 500 m at 125 kbit/s). The improved CAN (CAN FD) extends the speed of the data section by a factor of up to 8 of the arbitration bit rate.

The CAN data link layer protocol is standardized in ISO 11898-1. This standard describes mainly the data link layer (composed of the logical link control (LLC) sublayer and the media access control (MAC) sublayer) and some aspects of the physical layer of the OSI reference model.  All the other protocol layers are the network designer's choice.

Sources: Bosch

Christian Rosu

CAN Bus Voltage Levels

8. September 2015 09:32 by Christian in


CAN Bus Higher Layer Implementations

8. September 2015 09:25 by Christian in
As the CAN standard does not include tasks of application layer protocols, such as flow control, dev

As the CAN standard does not include tasks of application layer protocols, such as flow control, device addressing, and transportation of data blocks larger than one message, and above all, application data, many implementations of higher layer protocols were created. Several are standardized for a business area, although all can be extended by each manufacturer. For passenger cars, each manufacturer has its own standard. Among these implementations are:

• ARINC 825 (for the aviation industry)

• CANaerospace (for the aviation industry)

• CAN Kingdom

• CANopen (used for industrial automation)

• CCP / XCP

• DeviceNet (used for industrial automation)

• EnergyBus (used for electrical vehicles)

• GMLAN (for General Motors)

• ISO 15765-4

• ISO 11783 or ISOBUS (agriculture)

• ISO 14229

• SAE J1939 (heavy road vehicles)

• ISO 11992 for heavy trailers

• MilCAN

CAN bus 10

• NMEA 2000 (marine industry)

• RV-C (used for recreational vehicles)

• SafetyBUS p (used for industrial automation)

• SmartCraft

• Smart Distributed System (SDS)

• VSCP (used for building automation)


Christian Rosu