全てのページ
GitBook提供
1 / 6

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

PalBase

PALセンサー共通データ

PALの各センサーのデータ構造体はすべてPalBaseを継承します。センサーデータの格納状況u32StoredMaskの情報が含まれます。

	struct PalBase {
		uint32_t u32StoredMask;
	};

派生構造体に定義されるSTORE_COMP_MASKとu32StoreMaskが一致すれば、全てのセンサーのデータが適切に解釈され、格納されていることになります。

TweCUE

TWELITE CUE(CUE)のセンサーデータ

struct TweCUE : public PalBase {
	static const int MAX_SAMPLES = 10;

	static const uint8_t U8VARS_CT = MAX_SAMPLES + 3; // センサー数
	static const uint32_t STORE_COMP_MASK = 0b1111; // 電圧と開閉状況、ADC1、加速度サンプル1あればコンプとする

	uint16_t u16Volt;	// 電源電圧
	uint16_t u16Adc1;	// ADC1電圧

	uint8_t u8MagStat;  // 開閉状況 (0:磁石が遠い, 1/2:磁石検出)
	uint8_t bMagRegularTransmit; // 定期送信の時に 1, 磁石検出では 0

	uint8_t u8samples;  // 格納サンプル数
	uint8_t u8sample_rate_code; // サンプリング周波数 (0: 25Hz, 4:100Hz)

	int16_t i16X[10]; // X軸 (ミリG)
	int16_t i16Y[10]; // Y軸
	int16_t i16Z[10]; // Z軸
};

※ パケット間の各サンプルの連続性を確認するには、パケットのシーケンス番号の抜けが無いことを確認してください。

TweARIA

TWELITE ARIA(ARIA)のセンサーデータ

struct TweARIA : public PalBase {
	static const uint8_t U8VARS_CT = ; // センサー数
	static const uint32_t STORE_COMP_MASK =  (1 << U8VARS_CT) - 1; // 電圧と開閉状況、ADC1、温湿度

	uint16_t u16Volt;	// 電源電圧
	uint16_t u16Adc1;	// ADC1電圧

	uint8_t u8MagStat;  // 開閉状況 (0:磁石が遠い, 1/2:磁石検出)
	uint8_t bMagRegularTransmit; // 定期送信の時に 1, 磁石検出では 0

	int16_t i16Temp;  // 温度 (x100)
	uint16_t u16Humd; // 湿度 (x100 %)
};

※ パケット間の各サンプルの連続性を確認するには、パケットのシーケンス番号の抜けが無いことを確認してください。

PalAmb

環境センサーパル(AMB)のセンサーデータ

struct PalAmb : public PalBase {
	const uint8_t U8VARS_CT = 4; // センサー数
	const uint32_t STORE_COMP_MASK = (1 << U8VARS_CT) - 1; // 全コンプマスク

	uint16_t u16Volt; // 電源電圧
	int16_t i16Temp;  // 温度 (x100)
	uint16_t u16Humd; // 湿度 (x100 %)
	uint32_t u32Lumi; // 照度 (lux相当)
};

PalMot

動作センサーパル(MOT)のセンサーデータ

struct PalMot : public PalBase {
	static const int MAX_SAMPLES = 16;

	static const uint8_t U8VARS_CT = MAX_SAMPLES + 1; // センサー数
	static const uint32_t STORE_COMP_MASK = 0b11; // 電圧と加速度サンプル1あればコンプとする

	uint16_t u16Volt; // 電源電圧
	uint8_t u8sample_rate_code; // サンプリング周波数 (0: 25Hz, 4:100Hz)
  
	uint8_t u8samples; // 格納サンプル数
	int16_t i16X[16];  // X軸 (ミリG)
	int16_t i16Y[16];  // Y軸
	int16_t i16Z[16];  // Z軸
};

※ パケット間の各サンプルの連続性を確認するには、パケットのシーケンス番号の抜けが無いことを確認してください。

PalMag

開閉センサーパル(MAG)のセンサーデータ

struct PalMag : public PalBase {
	const uint8_t U8VARS_CT = 2; // センサー数
	const uint32_t STORE_COMP_MASK = (1 << U8VARS_CT) - 1; // 全コンプのマスク
	
  uint16_t u16Volt; // 電源電圧
	uint8_t u8MagStat; // 開閉状況 (0:磁石が遠い, 1/2:磁石検出)
	uint8_t bRegularTransmit; // 定期送信の時に 1, 磁石検出では 0
};