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.:

Macros

#define INV_RATED_TORQUE   100.0F
 
#define MOTOR_REDUCTION_RATIO   13.1F
 
#define STEER_PHY_TO_CAN(phy)
 Steering angle physical data in deg (float), convert to 0.01 deg (int16_t).
 
#define PEDAL_TRAV_PHY_TO_CAN(phy)
 Pedal travel physical data in % (float), convert to % (uint8_t).
 
#define APPS_RAW_PHY_TO_CAN(phy)
 Accelerator pedal position physical data in deg (float), convert to deg (int8_t).
 
#define BSE_RAW_PHY_TO_CAN(phy)
 Brake pressure physical data in kPa (float), convert to bar (uint8_t).
 
#define ROTATION_SPEED_PHY_TO_CAN(phy)
 Rotational speed physical data in RPM (float), convert to RPM (uint16_t).
 
#define SUSP_PHY_TO_CAN(phy)
 
#define INV_TORQUE_PHY_TO_CAN(phy)
 Torque command physical data in Nm (float), 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 (float).
 
#define PEDAL_TRAV_CAN_TO_PHY(can)
 Pedal travel CAN data in % (float), convert to % (uint8_t).
 
#define ROTATION_SPEED_CAN_TO_PHY(can)
 Rotational speed CAN data in RPM (uint16_t), convert to RPM (float).
 
#define ACC_VOLT_CAN_TO_PHY(can)
 Accumulator voltage CAN data in 1/1024 V (uint32_t), convert to V (float).
 
#define ACC_CURRENT_CAN_TO_PHY(can)
 Accumulator current CAN data in 0.01 A (int16_t), convert to A (float).
 
#define ACC_TEMP_CAN_TO_PHY(can)
 Accumulator temperature CAN data in 0.125 °C (int16_t), convert to °C (float).
 
#define ACC_CAPACITY_CAN_TO_PHY(can)
 Accumulator capacity CAN data in 10 mAh (int16_t), convert to mAh (float).
 
#define INV_SPEED_CAN_TO_PHY(can)
 Inverter speed CAN data in RPM (int16_t) before reduction, convert to RPM (float) after reduction.
 
#define INV_TORQUE_CAN_TO_PHY(can)
 Inverter torque CAN data in 0.001 rated torque (int16_t), convert to Nm (float).
 
#define INV_VOLT_CAN_TO_PHY(can)
 Inverter voltage CAN data in 0.01 V (uint16_t), convert to V (float).
 
#define INV_CURRENT_CAN_TO_PHY(can)
 Inverter current CAN data in 0.01 A (int16_t), convert to A (float).
 
#define INV_TEMP_CAN_TO_PHY(can)
 Inverter MOS temperature CAN data in 0.1 °C (int16_t), convert to °C (float).
 
#define IMU_ACCEL_CAN_TO_PHY(can)
 IMU acceleration CAN data in 0.001 g (int16_t), convert to m/s^2 (float).
 
#define IMU_GYRO_CAN_TO_PHY(can)
 IMU angular velocity CAN data in 0.1 deg/s (int16_t), convert to rad/s (float).
 
#define IMU_ORIENT_CAN_TO_PHY(can)
 IMU orientation CAN data in 0.01 deg (int16_t), convert to deg (float).
 
#define GPS_LONGITUDE_CAN_TO_PHY(can)
 GPS longitude CAN data in 1E-7 deg (int32_t), convert to deg (float).
 
#define GPS_LATITUDE_CAN_TO_PHY(can)
 GPS latitude CAN data in 1E-7 deg (int32_t), convert to deg (float).
 

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.0F * (can))

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

◆ ACC_CURRENT_CAN_TO_PHY

#define ACC_CURRENT_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.01F * (can))

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

◆ ACC_TEMP_CAN_TO_PHY

#define ACC_TEMP_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.125F * (can))

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

◆ ACC_VOLT_CAN_TO_PHY

#define ACC_VOLT_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
((float)(can) / 1024.0F)

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

◆ 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 (float), 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.01F * (phy)))

Brake pressure physical data in kPa (float), 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 (float).

◆ 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 (float).

◆ IMU_ACCEL_CAN_TO_PHY

#define IMU_ACCEL_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.00981F * (can))

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

◆ IMU_GYRO_CAN_TO_PHY

#define IMU_GYRO_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.001745F * (can))

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

◆ IMU_ORIENT_CAN_TO_PHY

#define IMU_ORIENT_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.01F * (can))

IMU orientation CAN data in 0.01 deg (int16_t), convert to deg (float).

◆ INV_CURRENT_CAN_TO_PHY

#define INV_CURRENT_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.01F * (can))

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

◆ INV_RATED_TORQUE

#define INV_RATED_TORQUE   100.0F

◆ INV_SPEED_CAN_TO_PHY

#define INV_SPEED_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
#define MOTOR_REDUCTION_RATIO
Definition convert.h:26

Inverter speed CAN data in RPM (int16_t) before reduction, convert to RPM (float) after reduction.

◆ INV_TEMP_CAN_TO_PHY

#define INV_TEMP_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.1F * (can))

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

◆ INV_TORQUE_CAN_TO_PHY

#define INV_TORQUE_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
((0.001F * INV_RATED_TORQUE * (can)))
#define INV_RATED_TORQUE
Definition convert.h:25

Inverter torque CAN data in 0.001 rated torque (int16_t), convert to Nm (float).

◆ INV_TORQUE_PHY_TO_CAN

#define INV_TORQUE_PHY_TO_CAN ( phy)

#include <nturt/canbus/convert.h>

Value:
((int16_t)(1000.0F / INV_RATED_TORQUE * (phy)))

Torque command physical data in Nm (float), convert to 0.001 rated torque (int16_t).

◆ INV_VOLT_CAN_TO_PHY

#define INV_VOLT_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.01F * (can))

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

◆ MOTOR_REDUCTION_RATIO

#define MOTOR_REDUCTION_RATIO   13.1F

◆ PEDAL_TRAV_CAN_TO_PHY

#define PEDAL_TRAV_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
((float)(can))

Pedal travel CAN data in % (float), 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 % (float), convert to % (uint8_t).

◆ ROTATION_SPEED_CAN_TO_PHY

#define ROTATION_SPEED_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
((float)(can))

Rotational speed CAN data in RPM (uint16_t), convert to RPM (float).

◆ ROTATION_SPEED_PHY_TO_CAN

#define ROTATION_SPEED_PHY_TO_CAN ( phy)

#include <nturt/canbus/convert.h>

Value:
((uint16_t)(phy))

Rotational speed physical data in RPM (float), convert to RPM (uint16_t).

◆ STEER_CAN_TO_PHY

#define STEER_CAN_TO_PHY ( can)

#include <nturt/canbus/convert.h>

Value:
(0.01F * (can))

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

◆ STEER_PHY_TO_CAN

#define STEER_PHY_TO_CAN ( phy)

#include <nturt/canbus/convert.h>

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

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

◆ SUSP_PHY_TO_CAN

#define SUSP_PHY_TO_CAN ( phy)

#include <nturt/canbus/convert.h>

Value:
(phy)
Todo