NTURT Zephyr v0.0.1
NTURT common library for Zephyr RTOS
Loading...
Searching...
No Matches
CAN bus data conversion.

CAN bus data conversion macros. More...

+ Collaboration diagram for CAN bus data conversion.:

Topics

 VCU CAN bus data conversion.
 VCU CAN bus data conversion macros.
 

Macros

#define STEER_PHY_TO_CAN(phy)
 Steering angle physical data in deg (double), convert to 0.01 deg (int16_t).
 
#define PEDAL_TRAV_PHY_TO_CAN(phy)
 Pedal travel physical data in % (double), convert to % (uint8_t).
 
#define APPS_RAW_PHY_TO_CAN(phy)
 Accelerator pedal position physical data in deg (double), convert to deg (int8_t).
 
#define BSE_RAW_PHY_TO_CAN(phy)
 Brake pressure physical data in kPa (double), convert to bar (uint8_t).
 
#define VELOCITY_PHY_TO_CAN(phy)
 Velocity physical data in m/s (double), convert to mm/s (int16_t).
 
#define ANGULAR_VELOCITY_PHY_TO_CAN(phy)
 Angular velocity physical data in RPM (double), convert to RPM (uint16_t).
 
#define SUSP_PHY_TO_CAN(phy)
 Suspension travel physical data in m (double), convert to 0.00001 m + 0.3m (int16_t).
 
#define INV_TORQ_PHY_TO_CAN(phy)
 Inverter torque physical data in 0~1 rated torque (double), convert to 0.001 rated torque (int16_t).
 
#define STEER_CAN_TO_PHY(can)
 Steering angle CAN data in 0.01 deg (int16_t), convert to deg (double).
 
#define PEDAL_TRAV_CAN_TO_PHY(can)
 Pedal travel CAN data in % (double), convert to % (uint8_t).
 
#define VELOCITY_CAN_TO_PHY(can)
 Velocity CAN data in mm/s (uint16_t), convert to m/s (double).
 
#define ANGULAR_VELOCITY_CAN_TO_PHY(can)
 Angular velocity CAN data in RPM (uint16_t), convert to RPM (double).
 
#define ACC_VOLT_CAN_TO_PHY(can)
 Accumulator voltage CAN data in 1/1024 V (uint32_t), convert to V (double).
 
#define ACC_CURRENT_CAN_TO_PHY(can)
 Accumulator current CAN data in 0.01 A (int16_t), convert to A (double).
 
#define ACC_TEMP_CAN_TO_PHY(can)
 Accumulator temperature CAN data in 0.125 °C (int16_t), convert to °C (double).
 
#define ACC_CAPACITY_CAN_TO_PHY(can)
 Accumulator capacity CAN data in 10 mAh (int16_t), convert to mAh (double).
 
#define INV_TORQUE_CAN_TO_PHY(can)
 Inverter torque CAN data in 0.001 rated torque (int16_t), convert to 0~1 rated torque (double).
 
#define INV_VOLT_CAN_TO_PHY(can)
 Inverter voltage CAN data in 0.01 V (uint16_t), convert to V (double).
 
#define INV_CURRENT_CAN_TO_PHY(can)
 Inverter current CAN data in 0.01 A (int16_t), convert to A (double).
 
#define INV_TEMP_CAN_TO_PHY(can)
 Inverter MOS temperature CAN data in 0.1 °C (int16_t), convert to °C (double).
 
#define IMU_ACCEL_CAN_TO_PHY(can)
 IMU acceleration CAN data in 0.001 g (int16_t), convert to m/s^2 (double).
 
#define IMU_GYRO_CAN_TO_PHY(can)
 IMU angular velocity CAN data in 0.1 deg/s (int16_t), convert to rad/s (double).
 
#define IMU_ORIENT_CAN_TO_PHY(can)
 IMU orientation CAN data in 0.0001 quaternion (int16_t), convert to quaternion (double).
 
#define GPS_LONGITUDE_CAN_TO_PHY(can)
 GPS longitude CAN data in 1E-7 deg (int32_t), convert to deg (double).
 
#define GPS_LATITUDE_CAN_TO_PHY(can)
 GPS latitude CAN data in 1E-7 deg (int32_t), convert to deg (double).
 

Detailed Description

CAN bus data conversion macros.

Macro Definition Documentation

◆ ACC_CAPACITY_CAN_TO_PHY

#define ACC_CAPACITY_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(10.0 * (can))

Accumulator capacity CAN data in 10 mAh (int16_t), convert to mAh (double).

◆ ACC_CURRENT_CAN_TO_PHY

#define ACC_CURRENT_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.01 * (can))

Accumulator current CAN data in 0.01 A (int16_t), convert to A (double).

◆ ACC_TEMP_CAN_TO_PHY

#define ACC_TEMP_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.125 * (can))

Accumulator temperature CAN data in 0.125 °C (int16_t), convert to °C (double).

◆ ACC_VOLT_CAN_TO_PHY

#define ACC_VOLT_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
((double)(can) / 1024.0)

Accumulator voltage CAN data in 1/1024 V (uint32_t), convert to V (double).

◆ ANGULAR_VELOCITY_CAN_TO_PHY

#define ANGULAR_VELOCITY_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
((double)(can))

Angular velocity CAN data in RPM (uint16_t), convert to RPM (double).

◆ ANGULAR_VELOCITY_PHY_TO_CAN

#define ANGULAR_VELOCITY_PHY_TO_CAN ( phy)

#include <nturt/canbus/convert.h>

Value:
((uint16_t)(phy))

Angular velocity physical data in RPM (double), convert to RPM (uint16_t).

◆ APPS_RAW_PHY_TO_CAN

#define APPS_RAW_PHY_TO_CAN ( phy)

#include <nturt/canbus/convert.h>

Value:
((int8_t)(phy))

Accelerator pedal position physical data in deg (double), convert to deg (int8_t).

◆ BSE_RAW_PHY_TO_CAN

#define BSE_RAW_PHY_TO_CAN ( phy)

#include <nturt/canbus/convert.h>

Value:
((uint8_t)(0.01 * (phy)))

Brake pressure physical data in kPa (double), convert to bar (uint8_t).

◆ GPS_LATITUDE_CAN_TO_PHY

#define GPS_LATITUDE_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(1E-7 * (can))

GPS latitude CAN data in 1E-7 deg (int32_t), convert to deg (double).

◆ GPS_LONGITUDE_CAN_TO_PHY

#define GPS_LONGITUDE_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(1E-7 * (can))

GPS longitude CAN data in 1E-7 deg (int32_t), convert to deg (double).

◆ IMU_ACCEL_CAN_TO_PHY

#define IMU_ACCEL_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.00981 * (can))

IMU acceleration CAN data in 0.001 g (int16_t), convert to m/s^2 (double).

◆ IMU_GYRO_CAN_TO_PHY

#define IMU_GYRO_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.001745 * (can))

IMU angular velocity CAN data in 0.1 deg/s (int16_t), convert to rad/s (double).

◆ IMU_ORIENT_CAN_TO_PHY

#define IMU_ORIENT_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.0001 * (can))

IMU orientation CAN data in 0.0001 quaternion (int16_t), convert to quaternion (double).

◆ INV_CURRENT_CAN_TO_PHY

#define INV_CURRENT_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.01 * (can))

Inverter current CAN data in 0.01 A (int16_t), convert to A (double).

◆ INV_TEMP_CAN_TO_PHY

#define INV_TEMP_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.1 * (can))

Inverter MOS temperature CAN data in 0.1 °C (int16_t), convert to °C (double).

◆ INV_TORQ_PHY_TO_CAN

#define INV_TORQ_PHY_TO_CAN ( phy)

#include <nturt/canbus/convert.h>

Value:
((int16_t)(1000.0 * (phy)))

Inverter torque physical data in 0~1 rated torque (double), convert to 0.001 rated torque (int16_t).

◆ INV_TORQUE_CAN_TO_PHY

#define INV_TORQUE_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.001 * (can))

Inverter torque CAN data in 0.001 rated torque (int16_t), convert to 0~1 rated torque (double).

◆ INV_VOLT_CAN_TO_PHY

#define INV_VOLT_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.01 * (can))

Inverter voltage CAN data in 0.01 V (uint16_t), convert to V (double).

◆ PEDAL_TRAV_CAN_TO_PHY

#define PEDAL_TRAV_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
((double)(can))

Pedal travel CAN data in % (double), convert to % (uint8_t).

◆ PEDAL_TRAV_PHY_TO_CAN

#define PEDAL_TRAV_PHY_TO_CAN ( phy)

#include <nturt/canbus/convert.h>

Value:
((uint8_t)(phy))

Pedal travel physical data in % (double), convert to % (uint8_t).

◆ STEER_CAN_TO_PHY

#define STEER_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.01 * (can))

Steering angle CAN data in 0.01 deg (int16_t), convert to deg (double).

◆ STEER_PHY_TO_CAN

#define STEER_PHY_TO_CAN ( phy)

#include <nturt/canbus/convert.h>

Value:
((int16_t)(100.0 * (phy)))

Steering angle physical data in deg (double), convert to 0.01 deg (int16_t).

◆ SUSP_PHY_TO_CAN

#define SUSP_PHY_TO_CAN ( phy)

#include <nturt/canbus/convert.h>

Value:
((int16_t)(10000.0 * (phy - 0.3)))

Suspension travel physical data in m (double), convert to 0.00001 m + 0.3m (int16_t).

◆ VELOCITY_CAN_TO_PHY

#define VELOCITY_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.001 * (can))

Velocity CAN data in mm/s (uint16_t), convert to m/s (double).

◆ VELOCITY_PHY_TO_CAN

#define VELOCITY_PHY_TO_CAN ( phy)

#include <nturt/canbus/convert.h>

Value:
((uint16_t)(1000.0 * (phy)))

Velocity physical data in m/s (double), convert to mm/s (int16_t).