====== BatVoltageMonitor ====== ===== 概要 ===== 名前空間:robot_object 電池の電圧を取得するためのクラス。シングルトンとして実装。 次の役割が与えられている。 * 電池の電圧の更新 update() * ロボット起動時に電池電圧警告音を鳴らす voltageSoundCount() * 電池電圧低下時にアラート lowVoltageCheck() 電池の電圧を知りたいオブジェクトはBatVoltageMonitorのfront_average_bat_volまたは、back_average_bat_volを参照する。 電池の電圧更新はupdate()メソッドをタイマ割り込み関数内で呼ぶことで行う。 また、lowVoltageCheck()もタイマ割り込み関数内で呼ぶこと。 ===== クラス図 ===== class "BatVoltageMonitor" as BatVoltageMonitor { - const uint8_t BUFF_SIZE = 10 - const float alert_vol = 6.9 - uint16_t count - deque front_buff - deque back_buff - BatVoltageMonitor() - ~BatVoltageMonitor() + float front_bat_vol + float back_bat_vol + float front_average_bat_vol + float back_average_bat_vol + static BatVoltageMonitor& getInstance() + void update() + void lowVoltageCheck() + void voltageSoundCount() + void debug() } ===== 単体テスト履歴 ===== ==== 2018/6/16 18:10 ==== * voltageSoundCount()が正しく動作することを確認 * lowVoltageCheck()の動作は未確認 * 5秒間の平均電圧の取得処理が機能しているかは未確認 -> おそらく大丈夫そう ==== 2018/6/17 14:48 ==== * lowVoltageCheck()が正しく動作することを確認