Difference between revisions of "CAN Bus"

From ConceptCar
Jump to: navigation, search
(CAN Bus Messages)
(CANID_SELECTJUMPER)
Line 155: Line 155:
 
|-valign="top"
 
|-valign="top"
 
|'''Semantics'''
 
|'''Semantics'''
|Todo
+
|Binary value, announces which source the Actorboard is configured to use.<br>
 +
*0 if the source is from the Sensorboards Steering and Throttle (thus CAN ids 0x22 to 0x25)
 +
*1 if the the source is the Controlboard (thus CAN ids 0x122 to 0x125).
 +
See [[#CANID_THROTTLE]], [[#CANID_STEERING]] and [[#CANID_BRAKE]].
 
|}
 
|}
  

Revision as of 15:13, 4 August 2010

CAN Bus Configuration

The communication in the Concept Car is implemented via a high-speed (1Mbit/s) CAN-Bus (Controller-area network), featuring a message based protocol. Each message has a message identifier to distinguish between different message types. CAN standard 2.0A is applied, so the message identifiers are 11 bits wide, allowing 2048 distinct messages. Further details about the CAN-Bus can be found in [ZS08].

In the ConceptCar, only messages with the length of 4 Bytes, which are interpreted as an unsigned integer number, are used. How the message data has to be interpreted depends only on the message identifier, further details are given in the next section.

CAN Bus Messages

The following table gives an overview over all messages present on the CAN bus. Further detailed descriptions can be found below.

Messages present on the CAN Bus
ID (hex) ID Symbolic constant Short Description Source Expected Interval
0x008 8 CANID_WHEELSPEED_FL Rotation Speed Front Left Wheel Sensorboard Throttle 50ms
0x009 9 CANID_WHEELSPEED_FR Rotation Speed Front Right Wheel Sensorboard Steering 50ms
0x00a 10 CANID_WHEELSPEED_RL Rotation Speed Rear Left Wheel Sensorboard Steering 50ms
0x00b 11 CANID_WHEELSPEED_RR Rotation Speed Rear Right Wheel Sensorboard Throttle 50ms
0x00d 13 CANID_VOLTAGE Voltage of the electrical System Sensorboard Inertial 200ms
0x00e 14 CANID_RESETCOUNTER Number of Resets since last ECU flashing Sensorboard Inertial Once@Boot
0x010 16 CANID_INERTIAL_AX Longitudinal Acceleration Sensorboard Inertial 50ms
0x011 17 CANID_INERTIAL_AY Lateral Acceleration Sensorboard Inertial 50ms
0x012 18 CANID_ROTATION Rotation Speed Car Sensorboard Inertial 50ms
0x020 32 CANID_SELECTJUMPER Actorboard Source Selection Actorboard 1s
0x022 34 CANID_THROTTLE Throttle from SensorBoard Sensorboard Throttle 20ms
0x122 290 CANID_THROTTLE_ARM7 Throttle from ARM7 Board ARM7 Board 20ms
0x023 35 CANID_BRAKEFL Front Left Brake Signal from SensorBoard Sensorboard Throttle 20ms
0x123 291 CANID_BRAKEFL_ARM7 Front Left Brake Signal from ARM7 Board ARM7 Board 20ms
0x024 36 CANID_BRAKEFR Front Right Brake Signal from SensorBoard Sensorboard Throttle 20ms
0x124 292 CANID_BRAKEFR_ARM7 Front Right Brake Signal from ARM7 Board ARM7 Board 20ms
0x025 37 CANID_STEERING Steering from SensorBoard Sensorboard Steering 20ms
0x125 293 CANID_STEERING_ARM7 Steering from ARM7 Board ARM7 Board 20ms
0x030 48 CANID_DISTANCE Front Distance (Ultrasonic Sensor) Sensorboard Distance 10ms – 70ms
0x400 1024 CANID_ERROR Error Message ALL On Event

CANID_WHEELSPEED

CAN ID 0x8 (FL), 0x9 (FR), 0xa (RL) and 0xb (RR)
Producer Sensorboard Steering (0x9 and 0xa) and Sensorboard Throttle (0x8 and 0xb)
Consumer Not yet specified
Semantics Todo

CANID_VOLTAGE

CAN ID 0xd
Producer Sensorboard Inertial
Consumer Not yet specified
Semantics Todo

CANID_RESETCOUNTER

CAN ID 0xe
Producer Sensorboard Inertial
Consumer Not yet specified
Semantics Todo

CANID_INERTIAL

CAN ID 0x10 (longitudinal) and 0x11 (lateral)
Producer Sensorboard Inertial
Consumer Not yet specified
Semantics Todo

CANID_ROTATION

CAN ID 0x12
Producer Sensorboard Inertial
Consumer Not yet specified
Semantics Todo

CANID_SELECTJUMPER

CAN ID 0x20
Producer Actorboard
Consumer Not yet specified
Semantics Binary value, announces which source the Actorboard is configured to use.
  • 0 if the source is from the Sensorboards Steering and Throttle (thus CAN ids 0x22 to 0x25)
  • 1 if the the source is the Controlboard (thus CAN ids 0x122 to 0x125).

See #CANID_THROTTLE, #CANID_STEERING and #CANID_BRAKE.

CANID_THROTTLE

CAN ID 0x22 and 0x122
Producer Sensorboard Throttle (0x22) and ARM7 Board (0x122)
Consumer Not yet specified
Semantics Todo

CANID_BRAKE

CAN ID 0x23 and 0x123 (left), 0x24 and 0x124 (right)
Producer Sensorboard Throttle (0x23 and 0x24) and ARM7 Board (0x123 and 0x124)
Consumer Not yet specified
Semantics Todo

CANID_STEERING

CAN ID 0x25 and 0x125
Producer Sensorboard Steering (0x25) and ARM7 Board (0x125)
Consumer Not yet specified
Semantics Todo

CANID_DISTANCE

CAN ID 0x30
Producer Sensorboard Distance
Consumer Not yet specified
Semantics Todo

CANID_ERROR

CAN ID 0x400
Producer all
Consumer Not yet specified
Semantics Todo