加速度計#

介紹#

accelerometer 類加速度計測量機器人沿著一個或多個軸的加速度。此感測器輸出類比電壓,電壓會根據加速度(以 G 為單位)而變化。

加速度計上的跳線決定了其靈敏度範圍:

  • 2G - 測量從 -2G 到 +2G 的加速度

  • 6G - 測量從 -6G 到 +6G 的加速度

VEX EXP 模擬加速度計。

類別建構函數#

accelerometer(
  triport::port &port,
  bool           bHighSensitivity = false);

類別析構函數#

銷毀 accelerometer 物件並釋放相關資源。

virtual ~accelerometer();

參數#

範圍

類型

描述

port

triport::port &

加速度計連接的 3 線端口,寫成 Brain.ThreeWirePort.X 或 ExpanderName.X,其中 X 是端口字母(例如, Brain.ThreeWirePort.A 或 Expander1.A)。

bHighSensitivity

bool

可選。是否啟用加速計的高靈敏度模式:

  • true - 啟用高靈敏度(+/- 2G)
  • false (預設)- 啟用低靈敏度(+/- 6G)

範例#

// Create a 6G accelerometer instance in Port A
accelerometer Accel6GA = accelerometer(Brain.ThreeWirePort.A);

// Create a 2G accelerometer instance in Port A
accelerometer Accel2GA = accelerometer(Brain.ThreeWirePort.A, true);

成員功能#

accelerometer 類別包含以下成員函數:

  • acceleration — 返回加速度計測量的加速度(單位為 Gs)。

在呼叫任何 accelerometer 函數之前,必須先建立一個 accelerometer 實例,如下所示:

/* This constructor is required when using VS Code.
Accelerometer configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */

// Create a 2G accelerometer instance in Port A
accelerometer Accel2GA = accelerometer(Brain.ThreeWirePort.A, true);

acceleration#

返回以 G 為單位的加速度。

Available Functions
double acceleration();

Parameters

此函數不接受任何參數。

Return Values

傳回一個 double 之間的雙精度浮點數,表示以 G 為單位測量的加速度。

// Drive the robot forward.
Drivetrain.drive(forward);

// Get the acceleration measured by the Accelerometer.
double accelerationValue = Accel2GA.acceleration();