etrobocon2018 feat.KatLab  770af34cce41ae9c30c41303275e1add2daae0c3 (with uncommitted changes)
 全て クラス 名前空間 ファイル 関数 変数 列挙型 列挙値 フレンド マクロ定義 ページ
公開メンバ関数 | 公開変数類 | 全メンバ一覧
LPF クラス

LPF(Low-Pass Filter)をまとめたクラス [詳解]

#include <LPF.h>

LPF 連携図
Collaboration graph

公開メンバ関数

 LPF ()
 
float sensor (std::int32_t current_sensor)
 現在のセンサ値にフィルタ処理を実行する [詳解]
 
float RCFilter (std::int32_t current_sensor)
 RCフィルタ(ローパスフィルタ)処理 [詳解]
 

公開変数類

std::int32_t pre_sensor
 

詳解

LPF(Low-Pass Filter)をまとめたクラス

LPF.h14 行目に定義があります。

構築子と解体子

LPF::LPF ( )
inline

LPF.h18 行目に定義があります。

18 : pre_sensor(0) {}
std::int32_t pre_sensor
Definition: LPF.h:16

関数詳解

float LPF::RCFilter ( std::int32_t  current_sensor)

RCフィルタ(ローパスフィルタ)処理

[LPF::RCFilter]

引数
current_sensor現在のセンサ値
戻り値
フィルタ処理を実行したセンサ値

LPF.cpp27 行目に定義があります。

28 {
29  // RCフィルタにおける係数(通常、0.8 or 0.9)
30  constexpr double coefficient = 0.9;
31  auto filtered = coefficient * pre_sensor + (1 - coefficient) * current_sensor;
32 
33  // センサ値の上書き
34  pre_sensor = current_sensor;
35 
36  return filtered;
37 }
std::int32_t pre_sensor
Definition: LPF.h:16

被呼び出し関係図:

float LPF::sensor ( std::int32_t  current_sensor)

現在のセンサ値にフィルタ処理を実行する

[LPF::sensor]

引数
current_sensor現在のセンサ値
戻り値
フィルタ処理を実行したセンサ値

LPF.cpp9 行目に定義があります。

10 {
11  // pre_sensorの初期化
12  if(pre_sensor == 0) {
13  pre_sensor = current_sensor;
14  return static_cast<double>(current_sensor);
15  }
16 
17  // RCフィルタ処理
18  return RCFilter(current_sensor);
19 }
float RCFilter(std::int32_t current_sensor)
RCフィルタ(ローパスフィルタ)処理
Definition: LPF.cpp:27
std::int32_t pre_sensor
Definition: LPF.h:16

呼び出し関係図:

被呼び出し関係図:

メンバ詳解

std::int32_t LPF::pre_sensor

LPF.h16 行目に定義があります。


このクラス詳解は次のファイルから抽出されました: