Sensorのお勉強

目次 (2023/5/2 ver.0.02)

1番目のタブが選択された!

1.センサーのデータベース

「firestore」を使用する

利用者が使用する「チャット部屋」の参加者は、本コレクションを参照できる。
  • コレクション名:「m2m」
  • ドキュメントID:利用者ID
  • サブ・コレクション名:「human_sensor」:人感センサー
  • サブ・コレクションのドキュメントID:自動生成

2.角速度センサー

この記事は、「Flutterでジャイロセンサーを用いて3D効果を与える」を引用しています。

変数

  • _interval はセンサーから値を取得する間隔です.
  • _backgroundScale は背景画像の拡大の倍率です.(foregroud layer が左右に動くと,背景も左右に移動するため,ある程度拡大をしておく必要があります)
  • _backgroundMoveOffsetScale は foregroud layer の動きに合わせて backgroud layer をどれくらい動かすかの値です.
  • _maxForegroundMove は foregroud layer を上下左右にどれくらい動かせるかの値です.
  • _inititalForegroundOffset と _inititalBackgroundOffset は foregroud layer と backgroud layer の初期位置です.
  • _foregroundOffset と _backgroundOffset は現在の layer の位置です.
  • また,initState で呼ぶ gyroscope のイベントを購読する _streamGyrpscopeEvent も定義します.

イベント処理(_listenGyroscopeEvent)の処理について

  • GyroscopeEvent は回転速度(rad/s)で提供されるため,回転速度 * S * 180/pi で度数法に変換しています.
  • _maxAngle で _maxForegroundMove 分移動するということを表しています.
  • 今回の場合では,x 軸に 120 度の回転を加えると,その軸の方向に対して 50 動くことになります

3.加速度センサー

なし

4.SwitchBotセンサー

4.1 参照URL

UUID:「cba20d00-224d-11e6-9fb8-0002a5d5c51b」

4.2 人感センサー

ServiceData
  • Byte0: 73
  • Byte1: 40
  • Byte2: 64
    • bit1: 1=人の動きを検知、0=人の動きを不検知
  • Byte3: 00
  • Byte4: 42
    • 動体を検出してからの時間(秒)
  • Byte5: 01
    • bit6: 明るい
    • bit7: 暗い

5.隠れマルコフモデル