Commit 93b83144 by Hideaki Tai

fix value type conversion error

parent 44d373e9
......@@ -44,24 +44,27 @@ public:
uint8_t turnDecel() { return data(10); }
// DATASET::SENSOR_INFO
float sensorAccelX() { return (uint16_t)((float)((data(1) << 8) || (data(2))) * 0.122f); } // [mg]
float sensorAccelY() { return (uint16_t)((float)((data(3) << 8) || (data(4))) * 0.122f); } // [mg]
float sensorAccelZ() { return (uint16_t)((float)((data(5) << 8) || (data(6))) * 0.122f); } // [mg]
float sensorGyroX() { return (uint16_t)((float)((data(7) << 8) || (data(8))) * 4.375f); } // [mdps]
float sensorGyroY() { return (uint16_t)((float)((data(9) << 8) || (data(10))) * 4.375f); } // [mdps]
float sensorGyroZ() { return (uint16_t)((float)((data(11) << 8) || (data(12))) * 4.375f); } // [mdps]
float sensorAccelX() { return (uint16_t)((float)((data(1) << 8) | (data(2))) * 0.122f); } // [mg]
float sensorAccelY() { return (uint16_t)((float)((data(3) << 8) | (data(4))) * 0.122f); } // [mg]
float sensorAccelZ() { return (uint16_t)((float)((data(5) << 8) | (data(6))) * 0.122f); } // [mg]
float sensorGyroX() { return (uint16_t)((float)((data(7) << 8) | (data(8))) * 4.375f); } // [mdps]
float sensorGyroY() { return (uint16_t)((float)((data(9) << 8) | (data(10))) * 4.375f); } // [mdps]
float sensorGyroZ() { return (uint16_t)((float)((data(11) << 8) | (data(12))) * 4.375f); } // [mdps]
int8_t joystickFront() { return (int8_t)data(13); } // -100 - +100
int8_t joystickSide() { return (int8_t)data(14); } // -100 - +100
uint8_t battery() { return data(15); } // 0 - 100[%]
int16_t batteryCurrent() { return (int16_t)((data(16) << 8) || (data(17))) * 2; } // [mA], sampling rate is 4Hz
float angleRadR() { return (float)(data(18) << 8) || (data(19)) * 0.001f; } // [rad], range is (-PI, PI)
float angleRadL() { return (float)(data(20) << 8) || (data(21)) * 0.001f; } // [rad], range is (-PI, PI)
float speedR() { return (float)(data(22) << 8) || (data(23)) * 0.004f; } // [km/h]
float speedL() { return (float)(data(24) << 8) || (data(25)) * 0.004f; } // [km/h]
int16_t batteryCurrent() { return (int16_t)((data(16) << 8) | (data(17))) * 2; } // [mA], sampling rate is 4Hz
float angleRadR() { return (float)(int16_t)((data(18) << 8) | (data(19))) * 0.001f; } // [rad], range is (-PI, PI)
float angleRadL() { return (float)(int16_t)((data(20) << 8) | (data(21))) * 0.001f; } // [rad], range is (-PI, PI)
float speedR() { return (float)(int16_t)((data(22) << 8) | (data(23))) * 0.004f; } // [km/h]
float speedL() { return (float)(int16_t)((data(24) << 8) | (data(25))) * 0.004f; } // [km/h]
bool powerState() { return (bool)data(26); }
uint8_t speedModeIndicator() { return data(27); }
uint8_t errorCode() { return data(28); }
// TODO: Gear Ratio 20.23:1
// TODO: where to apply it??
private:
static const std::size_t READ_BUFFER_SIZE = 32;
......
  • Markdown is supported
    0% or
    You are about to add 0 people to the discussion. Proceed with caution.
    Finish editing this message first!
    Please register or sign in to comment