以下、図面を参照して、実施形態を説明する。
まず、図1乃至図5を参照して、一実施形態に係る電子機器の構成について説明する。この電子機器は、例えば、カーナビゲーションシステム、ドライブレコーダといった車載機器、監視カメラ装置、各種センサ機器、または他の様々な電子機器として実現されうる。以下では、限定されないが、この電子機器が、自動車のような乗り物に搭載可能なドライブレコーダとして実現されている場合を想定する。
図1はドライブレコーダ10を正面側から見た斜視図、図2はドライブレコーダ10の正面図、図3はドライブレコーダ10の背面図、図4はドライブレコーダ10の左側面図、図5はドライブレコーダ10の右側面図である。
本ドライブレコーダ10は、例えば、自動車内のシガーライターソケットのような外部電源から電力を受けるように構成されていてもよい。図1、図2に示されているように、本ドライブレコーダ10の本体は、略円柱形状を有する第1本体11と、略円柱形状を有する第2本体12と、ブラケット部13とを含む。
第1本体11および第2本体12は、同じ直径を有する円筒状筐体をそれぞれ有している。第2本体12は、本ドライブレコーダ10の円柱状本体の長手方向に沿った中心軸Cの回りで回転するように、第1本体11に回動自在に取り付けられている。つまり、第2本体12は、第1本体11が固定されている状態で中心軸Cの回りで回転する。第2本体12と第1本体11とを連結するための機構としては、第2本体12が中心軸Cの回りで回転可能な任意の機構を使用することができる。
例えば、第1本体11と第2本体12との連結部分においては、第1本体11または第2本体12の一方の円筒状筐体の第1端部が、他方の円筒状筐体の第2端部内に挿入されていてもよい。そして、第1端部の外周または第2端部の内周の一方に、その周方向に沿って配置される複数の位置決め用凹部を設け、第1端部の外周または第2端部の内周の他方に、いずれかの位置決め用凹部に挿入(係合)される突出部(例えば、弾性部材で支持されたボール、または弾性部材で支持された爪)を設けてもよい。第2本体12に対して第2本体12を回転させるための応力が加わると、突出部が挿入(係合)される位置決め用凹部は、現在の位置決め用凹部から次の位置決め用凹部に切り替えられる。
第2本体12には、第2本体12の曲面状表面の一部を削ることによって形成された凹部21が設けられている。この凹部21内には、カメラ(カメラレンズ14)が配置されている。この凹部21は、カメラレンズ14の厚み以上の深さを有していても良い。第2本体12の回転により、第1本体11に対する第2本体12のカメラ(カメラレンズ14)の相対位置を変化させることができる。
ブラケット部13は、本ドライブレコーダ10の本体を自動車のフロントガラスに取り付けるための取り付け部として機能する。ブラケット部13は、所定の厚みWを有する板状の部材であり、その底面は第1本体11に固定されている。この場合、ブラケット部13の底面は、第1本体11の曲面状表面の一部を削ることによってその曲面状表面に形成された平坦な装着部分に接合されていてもよい。ブラケット部13の厚みWの方向は、ブラケット部13と第1本体11とが接する接平面に対して垂面である。ブラケット部13の平坦な上面は、両面テープを介して自動車のフロントガラスに取り付けられる。
ブラケット部13は厚みWを有し、しかもカメラレンズ14は第2本体12の凹部21に配置されているので、ブラケット部13が自動車のフロントガラスに取り付けられた時にカメラレンズ14がフロントガラスに接することを防止でき、かつブラケット部13をフロントガラスに取り付けるだけで、カメラレンズ14を撮影に好適なフロントガラス近傍の位置に位置づけることができる。
ブラケット部13においては、GPSアンテナが、またはGPSアンテナとGPSレシーバとの双方を含むGPSモジュールが内蔵されていてもよい。ブラケット部13の上面は自動車のフロントガラスと接するので、GPSアンテナを内蔵するブラケット部13の構成は、GPSアンテナをフロントガラスに最も近い位置に配置し且つGPSアンテナの指向性の向きを自動的に最適化することができるので、GPSアンテナの受信感度の向上に寄与することができる。
ブラケット部13内のGPSアンテナ(またはGPSモジュール)は、図2、図3、図4に示されるように、外部ケーブル13Aを介して第1本体11の左側面(本ドライブレコーダ10の本体の左側面)に接続されてもよい。図4に示されているように、第1本体11の左側面には、ケーブル接続端子32と、通気口33とが設けられている。ブラケット部13から導出される外部ケーブル13Aはケーブル接続端子32に接続されている。このケーブル接続端子32は第1本体11の左側面の中心部近傍に配置されていてもよい。本ドライブレコーダ10の本体内においては、ケーブル接続端子32は、本体内の基板に内部ケーブルを介して接続されても良い。このように、外部ケーブル13Aを利用した配線により、GPSアンテナと本体内の基板とを内部ケーブルで直接接続するという配線を使用する場合に比し、第2本体12の回転によるケーブルの捩れを少なくすることができる。
図3に示されているように、第2本体12の背面側においても、凹部22が設けられている。この凹部22には、緊急通知ボタン31、インジケータ用のLED33、34、スピーカ35等が配置されていても良い。
緊急通知ボタン31がユーザによって押された時(例えば長押し)、ドライブレコーダ10は、事前に登録されている連絡先に緊急通報する。緊急通報は、ドライブレコーダ10内に設けられた移動無線通信用の無線通信デバイスを利用して実行される。
インジケータ用のLED33は、例えば、ドライブレコーダ10のカメラを用いて映像を記録している間、点滅する。
インジケータ用のLED34は、無線通信している間、点滅する。
スピーカ35は、音声ガイダンスの音を出力するために使用される。
図1、図5に示されているように、第2本体12の右側面(本ドライブレコーダ10の本体の右側面)には、メモリカードスロット15、電源コネクタ16が配置されている。メモリカードスロット15には、SDカードのようなメモリカードが挿入される。SDカードのようなメモリカードは、ドライブレコーダ10によって撮影される映像データやドライブレコーダ10によって得られる自動車の走行に関するデータを保存するための記憶メディア(リムーバブル不揮発性記憶メディア)として利用される。電源コネクタ16は、電源ケーブルを介して自動車内のシガーライターソケットに接続されても良い。
図6は、ドライブレコーダ10が自動車のフロントガラスに取り付けられる様子を示す。
図6の左部に示すように、まず、両面テープ50がブラケット部13の上面に貼り付けられる。そして、図6の右部に示すように、ブラケット部13の上面が両面テープ50を介して自動車のフロントガラスに取り付けられる。この時、ユーザは、第2本体12を回転させることにより、カメラレンズ14の向きが水平になるようにカメラレンズ14の向きを容易に調整することができる。
図7に示すように、垂直に近い角度で起立されているトラックやバスのフロントガラスにブラケット部13を取り付ける場合には、ユーザは、カメラレンズ14の向きが通常よりも上に向くように第2本体12を回転させることにより、カメラレンズ14の向きが水平になるようにカメラレンズ14の向きを容易に調整することができる。この場合、カメラレンズ14は図6のケースよりもフロントガラスに近づく場合があるが、ブラケット部13の厚みWによる効果により、あるいはブラケット部13の厚みWと凹部21の双方による効果よって、カメラレンズ14がフロントガラスに接することを防ぐことができる。また、凹部21の効果により、ユーザは、第2本体12とフロントガラスとの間の隙間に手を入れることができるので、カメラレンズ14の向き、つまり第2本体12の回転の角度を容易に調整することができる。
図8は、ドライブレコーダ10のシステム構成を示す。
ドライブレコーダ10は、上述の緊急通知ボタン31、LED33、34、スピーカ35に加え、プロセッサ101、カメラ102、カードコントローラ103、主メモリ104、不揮発性メモリ105、加速度センサ106、GPSレシーバ107、無線通信デバイス(トランシーバ)108、ジャイロセンサ109等を備える。これらプロセッサ101、カメラ102、カードコントローラ103、主メモリ104、不揮発性メモリ105、加速度センサ106、GPSレシーバ107、無線通信デバイス(トランシーバ)108、およびジャイロセンサ109は、映像録画処理および走行データ記録処理等を常時実行するためのシステム部100として機能する。
映像録画処理は、カメラ102によって撮影される映像を、記憶装置、例えばSDカードのようなメモリカード、に保存する。この映像は、動画データであってもよい。また、通常は、動画データのみを記録し、急ブレーキ、急ハンドル、強い衝撃の検知のようなイベントの発生時に、カメラ102によって撮影される静止画像をさらに記録しても良い。
走行データ記録処理は、自動車の位置、自動車の速度、加速度センサ106の検出値、ジャイロセンサ109の検出値等を、時刻(年月日時分秒)と共に、記憶装置、例えばSDカードのようなメモリカード、に走行データ(運転データ)として保存する。自動車の位置と速度は、GPSレシーバ107によってそれぞれ得られる位置および時間から算出してもよい。
プロセッサ101はCPUのような処理回路を含むハードウェアプロセッサであり、例えば、このプロセッサ101は、CPU101Aと他の幾つかのハードウェアロジックとを備えたSOC(System−on−a−chip)によって実現されていても良い。プロセッサ101を含むシステム部100は、基本的には、ドライブレコーダ10に外部電源(シガーライターソケット)から電力が供給されている間は常時動作する。プロセッサ101を含むシステム部100が動作状態(システムオン状態)である間、プロセッサ101は、不揮発性メモリ105から主メモリ104にロードされる、オペレーティングシステム(OS)を含むソフトウェアを実行することによってデータを処理し、上述の映像録画処理および走行データ記録処理と、通信処理とを実行する。このソフトウェアには、映像録画処理、走行データ記録処理、通信処理を制御するためのアプリケーションプログラムや、プロセッサ101の動作を制御のための制御プログラム(ファームウェア)等が含まれていてもよい。
映像録画処理では、プロセッサ101は、カメラ102を動作させることによってカメラ102から映像信号を入力し、映像信号を処理することによって得られる映像データをSDカードのようなメモリカードに保存する。
走行データ記録処理では、プロセッサ101は、自動車の走行状態を監視するためのセンサ(加速度センサ106、GPSレシーバ107、ジャイロセンサ109等)を動作させることによってこれらセンサから検出信号を入力し、検出信号を処理することによって得られるデータを、走行データとして、SDカードのようなメモリカードに保存する
通信処理では、プロセッサ101は、例えば、一定値以上の衝撃、急ハンドル、連続運転時間上限の超過などをイベント発生として検知し、イベント発生の検知時に、映像データと走行データとを無線通信によって無線通信デバイス(トランシーバ)108によって所定のデータセンタに無線送信してもよい。
プロセッサ101を含むシステム部100が動作状態(システムオン状態)である間、プロセッサ101は、さらに、ドライブレコーダ10の現在の状態や検出されたイベントをユーザに通知するための音声ガイダンス出力処理を実行してもよい。
音声ガイダンスの例には、ドライブレコーダ10が起動したことをユーザに通知するための音声ガイダンス「起動しました」と、緊急通知したことをユーザに通知するための音声ガイダンス「緊急通報しました」と、長時間運転検知時に出力される音声ガイダンス「長時間運転です。そろそろ休憩しませんか?」と、イベント発生時に出力される音声ガイダンス「急発進です」、「急ブレーキです」、「急ハンドルです」、「強い衝撃を検知しました」などと、速度超過時に出力される音声ガイダンス「速度超過です。安全な速度で走行してください」と、録画エラー時に出力される音声ガイダンス「システムエラーです」と、無線通信エラーに出力される音声ガイダンス「通信機器エラーです」とが含まれていても良い。
さらに、制御プログラムの制御の下、プロセッサ101は、システム部100が動作状態である間に、ドライブレコーダ10の状態がその動作条件の範囲を超えるような危険な状態(異常状態)になった場合、未保存のデータ(例えば、映像データ、走行データ)をSDカードのような記憶装置に保存する処理とOSをシャットダウンする処理とを含む電源断準備処理を実行し、電源断準備処理の完了後に、プロセッサ101を含むシステム部100の電源断(ソフトウェアシャットダウン)をドライブレコーダ10内の電源サブシステムに要求してもよい。
ドライブレコーダ10の動作条件の典型な例としては、動作温度条件がある。例えば、ドライブレコーダ10の動作条件として動作温度条件が適用される場合には、ドライブレコーダ10内の温度センサの検出温度がある閾温度(ソフトウェアシャットダウン用閾値温度(X))以上に上昇した場合に、ドライブレコーダ10の状態が危険な状態(異常状態)に入ったと判定されればよい。
なお、動作温度条件に限らず、動作湿度条件、動作気圧条件等の他の動作条件を使用して、ドライブレコーダ10の状態(環境)が危険な状態(異常状態)であるか安全な状態(正常状態)であるかを判定しても良い。
つまり、ドライブレコーダ10には、ドライブレコーダ10の動作条件に関係するドライブレコーダ10内の環境(例えば、温度、湿度、気圧、等)を監視するセンサ(例えば、温度センサ、湿度センサ、気圧センサ、等)が設けられていればよい。このセンサの検出値が、所定の範囲(正常範囲)を超える範囲である異常範囲に入った場合には、ドライブレコーダ10のプロセッサ101は、危険な状態(異常状態)であると自動判定し、ソフトウェアシャットダウン動作を実行する。
例えば、温度を例示して説明すると、ドライブレコーダ10のプロセッサ101は、ドライブレコーダ10の温度がある閾温度(ソフトウェアシャットダウン用閾値温度(X))以上に上昇した場合、ドライブレコーダ10内の環境が危険な状態(異常状態)であると判定し、未保存のデータ(例えば、映像データ、走行データ)をSDカードのような記憶装置に保存する処理とOSをシャットダウンする処理とを含む電源断準備処理を実行し、電源断準備処理の完了後に、プロセッサ101を含むシステム部100の電源断(ソフトウェアシャットダウン)をドライブレコーダ10内の電源サブシステムに要求する。
この電源断準備処理により、システム部100の各デバイスの故障等が発生する前に、SDカードへの書き込みが完了していない一時保存状態のデータ等をSDカードにファイルとして正しく書き込むことができ、またシステム部100の各デバイスを安全に電源断することが可能な停止状態にした状態で、システム部100を電源断することができるので、起動ファイルやファイル管理情報の破壊等の発生を防ぐことができる。
ソフトウェアシャットダウン用閾値温度(X)は、プロセッサ101等の仕様温度範囲の上限よりも所定マージンだけ低い値に設定されていても良い。
カメラ102は、カメラレンズ14とイメージセンサ102Aとから構成される。カードコントローラ103は、カードスロット15に挿入されたメモリカードへのデータの書き込みおよびメモリカードからのデータの読み出しを実行する。
加速度センサ106、GPSレシーバ107、ジャイロセンサ109は、自動車の走行状態を監視するためのセンサとして機能する。無線通信デバイス108は、例えば、3Gのような移動無線通信を実行するように構成されている。
なお、システム部100に含まれるべきデバイスの数は、システム部100に要求される機能に応じて異なってもよい。例えば、システム部100に要求される機能が少ない場合には、この機能のほとんど全てはプロセッサ101のみによって実行されても良い。
ドライブレコーダ10は、さらに、ソフトウェアシャットダウンの後に、ドライブレコーダ10の動作条件に関する検出値(温度、湿度、気圧、等)が安全な範囲に入った場合に、プロセッサ101を含むシステム部100を動作状態に自動的に復帰させるための機能を有している。
以下では、温度センサの検出温度に基づいてドライブレコーダ10が危険な状態(異常状態)であるか安全な状態(正常状態)であるかを判定する場合を例示して自動復帰のためのシステム構成を説明するが、ドライブレコーダ10の動作条件に関係するドライブレコーダ10内の環境を監視可能な他の任意のセンサ(例えば、湿度センサ、気圧センサ等)を使用してドライブレコーダ10が危険な状態(異常状態)であるか安全な状態(正常状態)であるかを判定することも可能である。
すなわち、ドライブレコーダ10は、さらに、電源サブシステムとして、マイクロコントローラ(マイコン)201、ドライブレコーダ10の動作条件に関係するドライブレコーダ10内の環境を監視するためのセンサ(例えば、温度センサ202)、電源回路(システムパワーIC)203、パワースイッチ204、キャパシタ205、電源故障検出器(パワーフェイラーディテクタ:PFD)206等を備える。
電源コネクタ16に接続された電源線200には、シガーライターソケットのような外部電源(電力ソース)からの電力(DC IN)が供給される。電力(DC IN)は、逆流防止用のダイオードD1、およびパワースイッチ204を介して、電源回路(システムパワーIC)203に供給される。電源回路(システムパワーIC)203は電源線200に接続されており、システム部100内の個々のコンポーネント(システムコンポーネント)に電力(動作電力)を供給する。つまり、プロセッサ101を含むシステム部100内のコンポーネントの各々は、電源回路(システムパワーIC)203からの動作電力によって駆動される。電源回路(システムパワーIC)203は、動作電力の供給を許可または禁止するように構成された電源スイッチ回路であってもよく、あるいは動作電力の供給を許可または禁止する機能と電圧調整機能とを含むレギュレータICであってもよい。電源回路(システムパワーIC)203は、一つ以上のスイッチ回路または一つ以上のレギュレータICを備えていてもよい。
パワースイッチ204は、電源コネクタ16と電源回路(システムパワーIC)203との間、つまり電力ソースと電源回路(システムパワーIC)203との間に接続され、導通状態または遮断状態に設定される。
マイクロコントローラ201は、電源回路(システムパワーIC)203を制御することによってプロセッサ101を含むシステム部100の電源管理を実行するように構成された電源コントローラ(制御回路)として機能する。マイクロコントローラ201は、例えば、ワンチップマイクロコンピュータによって実現されている。このマイクロコントローラ(マイコン)201は、電源回路(システムパワーIC)203の前段の電源線200からの電力によって駆動される。より詳しくは、つまり、マイクロコントローラ(マイコン)201の電源端子は、パワースイッチ204と電源回路(システムパワーIC)203との間の接続点に接続されている。これにより、マイクロコントローラ(マイコン)201は、システム部100が電源オフ状態であっても外部電源からの電力によって駆動される。マイクロコントローラ(マイコン)201は、ワンチップマイクロコンピュータによって実現されている。マイクロコントローラ(マイコン)201は、電源回路(システムパワーIC)203をイネーブル状態またはディスエーブル状態に制御することによって、マイクロコントローラ(マイコン)201および温度センサ202以外の各電子部品の電源状態を管理する。
プロセッサ101とマイクロコントローラ(マイコン)201の各々は、温度センサ202に電気的に接続されており、温度センサ202から現在の検出温度を読めるように構成されている。
上述のソフトウェアシャットダウン(SW Shutdown)の実現のため、プロセッサ101は、制御プログラムの制御の下、プロセッサ101の電源オフ、詳しくは、システム部100の電源オフを要求するソフトウェアシャットダウン信号(SW Shutdown Signal)をマイクロコントローラ201に送出することができる。このソフトウェアシャットダウン信号(SW Shutdown Signal)は、電源断準備処理が完了してプロセッサ101を含むシステム部100が電源断可能な状態になった時に出力される。
ソフトウェアシャットダウン信号(SW Shutdown Signal)を受信した場合、マイクロコントローラ201は、電源回路(システムパワーIC)203を制御して、プロセッサ101を含むシステム部100への電源供給を絶つ(ソフトウェアシャットダウン)。マイクロコントローラ201は、ソフトウェアシャットダウン後も動作し続ける。マイクロコントローラ201は、温度センサ202によって検出される温度がある安全な温度(自動復帰用閾値温度(Z))以下に低下した時、システム部100を動作状態に自動復帰させるための処理を行う。
温度センサ202は、周囲温度やドライブレコーダ10内の電子部品の発熱によって変化するドライブレコーダ10内の温度を検出する。温度センサ202は、トリップ温度(ハードウェアシャットダウン用閾値温度(Y))以上の温度を検出した時、オーバー温度信号(ハードウェアシャットダウン信号)を出力する。ハードウェアシャットダウン信号(HW Shutdown Signal)は、パワースイッチ204を遮断状態にするための信号である。温度センサ202がハードウェアシャットダウン信号(HW Shutdown Signal)を出力した場合、ドライブレコーダ10の電源状態は、温度センサ202を除くほとんど全ての電子部品が強制的に電源オフされるハードウェアシャットダウン状態となる。
温度センサ202は、温度センサ202によって検出される温度がハードウェアシャットダウン用閾値温度(Y)よりも低い温度に低下した時、ハードウェアシャットダウン信号(HW Shutdown Signal)の出力を停止する。これにより、パワースイッチ204が導通状態になるので、プロセッサ101を含むシステム部100が電源オフされている状態で、マイクロコントローラ(マイコン)201のみが電源オンされる。
キャパシタ205は、外部電源(シガーライターソケット)からの電力が突然オフされるというパワーロスイベントの発生時にバックアップパワーソースとして機能する。パワーロスイベントの発生からある一定期間は、ドライブレコーダ10は、キャパシタ205からの電力で動作することができる。例えば、プロセッサ101は、PFD206からのパワーオンディテクト信号の変化によってパワーロスイベントの発生を検出することができる。この場合、プロセッサ101は、未保存のデータをSDカードに保存する処理を実行することにより、パワーロスイベントが発生しても、未保存のデータの消失を防止することができる。
図9は、ソフトウェアシャットダウン、ハードウェアシャットダウン、自動復帰それぞれの動作内容とその制御を行う電子部品との関係を示す。
ソフトウェアシャットダウン(SW Shutdown)は、ドライブレコーダ10の状態がその動作条件の範囲(例えば、動作温度範囲、動作湿度範囲、動作気圧範囲、等)を超えるような危険な状態になった時に、例えば、ドライブレコーダ10内の温度がソフトウェアシャットダウン用閾温度(X)以上に上昇した時に、システム部100内のプロセッサ101の制御の下にドライブレコーダ10(システム部100)を電源オフする動作である。ソフトウェアシャットダウン(SW Shutdown)においては、上述したように、書き込みが完了していないデータがSDカードに書き込まれ且つOSのシャットダウンによってシステム部100内の各デバイスが停止状態に設定された後に、プロセッサ101を含むシステム部100への電源供給が停止される。したがって、たとえSDカードへのデータ書き込み途中などにソフトウェアシャットダウン(SW Shutdown)のイベント(例えば、温度上昇のような危険な状態)が発生しても、未保存のデータの消失、ファイルの破損といった障害の発生の危険を招くこと無く、プロセッサ101を含むシステム部100への電源供給を安全に停止することができる。
ハードウェアシャットダウン(HW Shutdown)は、ドライブレコーダ10の状態がさらに危険な状態になった時に、例えば、ドライブレコーダ10内の温度がハードウェアシャットダウン用閾温度(Y)以上に上昇した時に、ドライブレコーダ10を強制的に電源オフする。この場合、温度センサ202を除くほとんど全ての電子部品が電源オフされる。ハードウェアシャットダウン(HW Shutdown)の動作の制御のための主たる電子部品は、温度センサ202である。
自動復帰は、ドライブレコーダ10の状態が安全な状態になった時に、例えば、ドライブレコーダ10内の温度が自動復帰用閾値温度(Z)以下に低下した時に、ドライブレコーダ10(システム部100)への電源供給を再開してドライブレコーダ10(システム部100)を動作状態に自動復帰させる。自動復帰の動作の制御のための主たる電子部品は、マイクロコントローラ201である。
ソフトウェアシャットダウン用閾温度(X)とハードウェアシャットダウン用閾温度(Y)と自動復帰用閾値温度(Z)との関係は、次のように設定されている。
Z<X<Y
通常、ソフトウェアシャットダウン(SW Shutdown)の動作が正常に実行されれば、ドライブレコーダ10内の温度がハードウェアシャットダウン用閾温度(Y)以上にはならない。したがって、ソフトウェアシャットダウン(SW Shutdown)の動作は、ドライブレコーダ10内の温度がハードウェアシャットダウン用閾温度(Y)以上になる前に、ドライブレコーダ10内の温度を安全に下げることを可能にする。これにより、ハードウェアシャットダウン動作が実行される回数を大幅に低減することができる。
プロセッサ101がハングアップしているなどの何らかの理由でソフトウェアシャットダウン(SW Shutdown)が正常に実行されず、これによってドライブレコーダ10の状態がさらに危険な状態になった場合にのみ、例えば、ドライブレコーダ10内の温度がハードウェアシャットダウン用閾温度(Y)以上に上昇した場合にのみ、ハードウェアシャットダウン(HW Shutdown)の動作が実行される。
ハードウェアシャットダウン(HW Shutdown)の実行後に、ドライブレコーダ10内の温度がハードウェアシャットダウン用閾温度(Y)よりも低い所定の温度以下に低下したならば、温度センサ202はハードウェアシャットダウン信号の出力を停止するので、マイクロコントローラ201は自動的に電源オンされる。したがって、ソフトウェアシャットダウンまたはハードウェアシャットダウンのどちらが実行された後においても、マイクロコントローラ201は自動復帰のための制御を行うことができる。この所定の温度は、例えば、XとYの中間の温度であってもよい。
プロセッサ101、マイクロコントローラ201、および温度センサ202それぞれの仕様温度範囲の上限がT1、T2、T3である場合、これらT1、T2、T3は、以下の関係に設定されていてもよい。
T3>T2>T1
図10は、ソフトウェアシャットダウン動作の例を示す。
ソフトウェアシャットダウン動作が実行される温度条件は、以下の通りである。
X≦温度センサの検出温度<Y
(1)システム部100が動作状態(システムオン状態)である間、プロセッサ(SoC)11は、温度センサ202の値(温度センサ202の検出温度)を定期的にリードすることによって、温度センサ202の値を監視する。プロセッサ(SoC)11は、リードされた温度センサ202の値がソフトウェアシャットダウン用閾温度(X)以上であるか否かを判定する。温度センサ202の値がソフトウェアシャットダウン用閾温度(X)以上であるならば、プロセッサ(SoC)11は、未保存の映像データおよび未保存の走行データをSDカードに保存する処理とOSのシャットダウンとを実行した後に、マイクロコントローラ(マイコン)201にソフトウェアシャットダウン信号(SW Shutdown Signal)を送る。
(2)マイクロコントローラ(マイコン)201がソフトウェアシャットダウン信号(SW Shutdown Signal)をプロセッサ(SoC)11から受信した時、マイクロコントローラ(マイコン)201は、パワーICディセーブル信号(Power IC Disable)を電源回路(システムパワーIC)203に送る。
(3)電源回路(システムパワーIC)203はDisableステートになり、これによって電源回路(システムパワーIC)203の後段の各部品への動作電力の供給が断たれ、プロセッサ101を含むシステム部100が電源オフ状態となる(ソフトウェアシャットダウン状態)。
図11のフローチャートは、制御プログラムとOSの制御の下にプロセッサ(SoC)11によってソフトウェアシャットダウン前に実行される電源断準備処理の手順の一例を示す。
制御プログラムが、温度センサ202の値がソフトウェアシャットダウン用閾温度(X)以上であると判定すると(ステップS11のYES)、制御プログラムは、メモリカードのアンマウント要求をOSに送信してもよい(ステップS12)。メモリカードアンマウント要求の受信に応答して、OSのファイルシステムは、書き込みが完了していないデータをSDカードに書き込んだ後にSDカードをファイルシステムから切り離すという、アンマウント処理を実行する。すなわち、OSのファイルシステムは、まず、SDへの書き込みが完了していない一時保存データなどをSDカードに書き込むことによって、未保存のデータ(映像データ、走行データ)をSDカードにファイルとして正しく保存し(ステップS21)、そしてSDカードをファイルシステムから切り離す(アンマウント)(ステップS22)。
OSからのアンマウント完了のレスポンスの受信に応答して、制御プログラムは、OSをシャットダウンするためのシャットダウン要求をOSに送信する(ステップS13)。シャットダウン要求を受信したOSは、システム部100内の各デバイスを電源断可能状態(停止状態)に設定するための処理を含むOSシャットダウン処理を実行する(ステップS23)。OSシャットダウン処理の最終ステージにおいて、OSは、OSシャットダウン処理の完了を制御プログラムに通知し、この通知に応答して、制御プログラムは、マイクロコントローラ(マイコン)201にソフトウェアシャットダウン信号(SW Shutdown Signal)を送信する(ステップS14)。
図12は、ドライブレコーダ10(システム部100)をソフトウェアシャットダウン状態から動作状態に復帰させるための自動復帰動作を示す。
自動復帰動作が実行される温度条件は、以下の通りである。
温度センサの検出温度≦Z
(1)システム部100が電源オフ状態である間も、マイクロコントローラ(マイコン)201は電源オン状態に維持される。システム部100が電源オフ状態である間、マイクロコントローラ(マイコン)201は、温度センサ202の値(温度センサ202の検出温度)を定期的にリードすることによって、温度センサ202の値を監視する。マイクロコントローラ(マイコン)201は、リードされた温度センサ202の値が自動復帰用閾値温度(Z)以下であるか否かを判定する。もし温度センサ202の値が自動復帰用閾値温度(Z)よりも高いならば、マイクロコントローラ(マイコン)201は、処理を進めない。一方、温度センサ202の値が自動復帰用閾値温度(Z)以下であるならば、マイクロコントローラ(マイコン)201は、ドライブレコーダ10の温度が安全な温度以下に低下したと判断して、パワーICイネーブル信号(Power IC Enable信号)を電源回路(システムパワーIC)203に送信して、電源回路(システムパワーIC)203をイネーブル状態(動作電力を出力する状態)にする。
(2)パワーICイネーブル信号(Power IC Enable信号)を受信した電源回路(システムパワーIC)203は、システム部100への動作電力の供給を再開する。これにより、ドライブレコーダ10(システム部100)が動作状態に復帰する。
図13のフローチャートは、動作状態への復帰時にプロセッサ101(SoC)によって実行される処理(復帰処理)の手順の例を示す。
プロセッサ101(SoC)への動作電力の供給が再開されると、プロセッサ101(SoC)は、通常のパワーオンシーケンスと同様の手順で、OSをブートし、制御プログラムを実行する(ステップS101、S102)。制御プログラムはOS上で実行されるプログラムとして実現されていても良いし、あるいはOSとは独立して動作可能なシステムプログラムとして実現されていてもよい。後者の場合には、まず、制御プログラムが実行され、その後に、OSがブートされてもよい。
ステップS101においては、プロセッサ101(SoC)は、OSをブートすることによってシステム部100内の各デバイスを動作状態にする。また、ステップS101またはS102においては、プロセッサ101(SoC)は、SDカードをファイルシステムにマウントする処理も実行する。そして、プロセッサ101(SoC)は、上述の映像録画処理と走行データ記録処理を再開する(ステップS103)。
図14は、ハードウェアシャットダウン動作を示す。
ハードウェアシャットダウン動作が実行される温度条件は、以下の通りである。
Y≦温度センサの検出温度
(1)プロセッサ101(SoC)等がハングアップしている等の原因でソフトウェアシャットダウン動作が正常に実行できなかった場合には、ドライブレコーダ10内の温度がより危険なレベルまで上昇する場合がある。このような事態を回避するため、温度センサ202は、ハードウェアシャットダウン用閾値温度(Y)以上の温度を検出すると、ハードウェアシャットダウン信号をパワースイッチ204に送信する。
(2)ハードウェアシャットダウン信号によってパワースイッチ204は遮断状態となり、電源回路(システムパワーIC)203の後段につながっている各部品(システム部100)への電源供給が断たれる。
(3)同時に、マイクロコントローラ(マイコン)201への電源供給も断たれ、ドライブレコーダ10はハードウェアシャットダウン状態になる。
図15は、ドライブレコーダ10をハードウェアシャットダウン状態から動作状態に復帰させるための自動復帰動作を示す。
自動復帰動作が実行される温度条件は、以下の通りである。
温度センサの検出温度≦Z
(1)温度センサ202が閾値Yよりも低い所定の温度を計測すると、温度センサ202は、ハードウェアシャットダウン信号の出力を停止する。
(2)ハードウェアシャットダウン信号の停止によってパワースイッチ204は導通状態となり、マイクロコントローラ(マイコン)201に動作電力が供給される。
(3)マイクロコントローラ(マイコン)201は電源オン状態に復帰する。
(4)マイクロコントローラ(マイコン)201は、電源オン状態に復帰した後、温度センサ202の値を定期的にリードすることによって、温度センサ202の値を監視する。マイクロコントローラ(マイコン)201は、リードされた温度センサ202の値が自動復帰用閾値温度(Z)以下であるか否かを判定する。温度センサ202の値が自動復帰用閾値温度(Z)よりも高いならば、マイクロコントローラ(マイコン)201は、処理を進めない。一方、温度センサ202の値が自動復帰用閾値温度(Z)以下であるならば、マイクロコントローラ(マイコン)201は、ドライブレコーダ10の温度が安全な温度以下に低下したと判断して、パワーICイネーブル信号(Power IC Enable信号)を電源回路(システムパワーIC)203に送信し、これによって電源回路(システムパワーIC)203をイネーブル状態(動作電力を出力する状態)にする。
(5)パワーICイネーブル信号(Power IC Enable信号)を受信した電源回路(システムパワーIC)203は、システム部100への動作電力の供給を再開する。これにより、ドライブレコーダ10(システム部100)が動作状態に復帰する。
なお、ハードウェアシャットダウン信号の停止時にのみならず、外部電源からの電力供給の開始時にも、マイクロコントローラ(マイコン)201の状態は電源オフ状態から電源オン状態に遷移する。このため、マイクロコントローラ(マイコン)201が電源オン状態に遷移した時、マイクロコントローラ(マイコン)201が電源オン状態に遷移した要因が何であるかに関係なく、マイクロコントローラ(マイコン)201は、リードされた温度センサ202の値が自動復帰用閾値温度(Z)以下であるか否かを判定してもよい。この場合、温度センサ202の値が自動復帰用閾値温度(Z)よりも高い場合には、マイクロコントローラ(マイコン)201は、電源回路(システムパワーIC)203をディスエーブル状態に維持してもよい。温度センサ202の値が自動復帰用閾値温度(Z)以下の場合にのみ、マイクロコントローラ(マイコン)201は、電源回路(システムパワーIC)203をイネーブル状態に設定してもよい。これにより、温度が高い状態で、ドライブレコーダ10(システム部100)が動作状態になることを防止することができる。
図16は、ドライブレコーダ10の状態遷移を示す。
ドライブレコーダ10の状態は、「電源供給なし状態」、「電源オフ状態」、「マイコンオン状態」、「システムオン状態」に大別される。
「電源供給なし状態」は、シガーライターソケットのような外部電源からの電力(DC IN)の供給が遮断されている状態である。ドライブレコーダ10内の全てのデバイスが電源オフ状態となる。
「電源オフ状態」は、上述のハードウェアシャットダウン状態である。電力(DC IN)はドライブレコーダ10に供給されているが、温度センサ202を除くほとんど全てのデバイスが電源オフ状態である。この状態で、温度センサの値が閾値Yよりも低い所定の温度以下に低下すると、ドライブレコーダ10の状態は、「電源オフ状態」から「マイコンオン状態」に遷移する。換言すれば、電力(DC IN)が供給され、且つハードウェアシャットダウン信号が温度センサ202から出力されていない場合には、ドライブレコーダ10の状態は、「マイコンオン状態」となる。
「マイコンオン状態」は、上述のソフトウェアシャットダウン状態と同じ電源状態、つりシステム部100が電源オフで、マイクロコントローラ(マイコン)201が電源オンの状態である。この「マイコンオン状態」は、電力(DC IN)の供給開始直後の初期状態でもあってもよい。ドライブレコーダ10の状態が「マイコンオン状態」に遷移すると、マイクロコントローラ(マイコン)201は、閾値Z以下の温度を検出するまで定期的に温度をチェックするループ処理を継続してもよい。閾値Z以下の温度が検出されない限りは、マイクロコントローラ(マイコン)201は、電源回路(システムパワーIC)203にイネーブル信号を送信しなくてもよい。これにより、システム部100は電源オフ状態に維持される。マイクロコントローラ(マイコン)201が閾値Z以下の温度を検出したならば、マイクロコントローラ(マイコン)201は、電源回路(システムパワーIC)203にイネーブル信号を送信してもよい。これにより、ドライブレコーダ10の状態は、「マイコンオン状態」から「システムオン状態」に遷移される。
「システムオン状態」はシステム部100が動作状態である電源状態であり、ドライブレコーダ10の全てのデバイスが動作する。つまり、「システムオン状態」は、ドライブレコーダ10が起動されている状態である。
「システムオン状態」において、温度センサ202の値が閾値X以上になると、ドライブレコーダ10の状態は、「システムオン状態」から「マイコンオン状態」に遷移する。「システムオン状態」において、温度センサ202の値が閾値Y以上になると、ドライブレコーダ10の状態は、「システムオン状態」から「電源オフ状態」に遷移する。
図17のフローチャートは、ハードウェアシャットダウン動作および自動復帰動作の手順の例を示す。
自動車のエンジンがONされると、電力(DC IN)がドライブレコーダ10に供給され、ドライブレコーダ10は「システムオン状態」となる。つまり、ドライブレコーダ10には手動の電源ボタン等は設けられておらず、ドライブレコーダ10は電力(DC IN)の供給を受けて自動的に起動され、プロセッサ101を含むシステム部100が動作を開始する。なお、自動車のエンジンがONされた時に、ドライブレコーダ10が「マイコンオン状態」となり、温度が閾温度Z以下であることを条件に、「マイコンオン状態」から「システムオン状態」に遷移するようにしてもよい。
プロセッサ101を含むシステム部100が動作状態(「システムオン状態」)の間、プロセッサ101は、OSおよび制御プログラム等を含むソフトウェアを実行することによって、映像録画処理を実行すると共に(ステップS31)、OSおよび制御プログラム等を含むソフトウェアを実行することによって、走行データ記録処理を実行する(ステップS32)。このようにドライブレコーダ10が「システムオン状態」の間は、映像録画処理と走行データ記録処理とが常時実行される。ステップS31では、プロセッサ101は、カメラ102を動作させることによってカメラ102から映像信号を入力しながら、この映像信号を処理することによって得られる映像データをSDカードに順次保存する。ステップS32では、プロセッサ101は、自動車の走行状態を監視するためのセンサ(加速度センサ106、ジャイロセンサ109、GPSレシーバ107等)を動作させることによってこれらセンサから検出信号を入力しながら、検出信号を処理することによって得られる走行データをSDカードに順次保存する。
ドライブレコーダ10が「システムオン状態」の間、プロセッサ101は、温度センサ202の値を監視し、温度センサ202の値が閾値X以上に上昇したか否かを判定する(ステップS33)。温度センサ202の値が閾値X以上に上昇したならば(ステップS33のYES)、プロセッサ101は、未保存の映像データと未保存の走行データとをSDカードに保存する処理とOSシャットダウン処理とを含む電源断準備処理を実行する(ステップS34)。電源断準備処理が完了すると(ステップS35のYES)、プロセッサ101からマイクロコントローラ(マイコン)201にソフトウェアシャットダウン信号が送られる。
電源断準備処理の完了後、つまりソフトウェアシャットダウン信号の受信後、マイクロコントローラ(マイコン)201は、パワーICディセーブル信号(Power IC Disable)を電源回路(システムパワーIC)203に送信することによって、システム部100の電源オフを電源回路(システムパワーIC)203に要求する(ステップS36)。これにより、システム部100は電源オフされる。
システム部100が電源オフ状態である間、マイクロコントローラ(マイコン)201は、温度センサ202の値を監視し続け(ステップS37)、温度センサ202の値が閾値Z以下に低下したか否かを判定する(ステップS38)。温度センサ202の値が閾値Z以下に低下したならば(ステップS38のYES)、マイクロコントローラ(マイコン)201は、パワーICイネーブル信号(Power IC Enable)を電源回路(システムパワーIC)203に送信することによって、システム部100への動作電力の供給を再開するように電源回路(システムパワーIC)203を制御する。これにより、マイクロコントローラ(マイコン)201は、システム部100を「システムオン状態」に復帰させる(ステップS39)。この結果、処理はステップS31に進み、映像録画処理、走行データ記録処理が自動的に再開される。
図18のフローチャートは、ソフトウェアシャットダウン動作、ハードウェアシャットダウン動作および自動復帰動作の手順を示す。
ここでは、ソフトウェアシャットダウン動作が正常に実行されなかった場合を想定する。
自動車のエンジンがONされると、電力(DC IN)がドライブレコーダ10に供給され、これによってドライブレコーダ10は「システムオン状態」となる。なお、上述したように、自動車のエンジンがONされた時に、ドライブレコーダ10が「マイコンオン状態」となり、温度が閾温度Z以下であることを条件に、「システムオン状態」に遷移するようにしてもよい。ドライブレコーダ10が「システムオン状態」となると、プロセッサ101は、映像録画処理を実行すると共に(ステップS41)、走行データ記録処理を実行する(ステップS42)。ドライブレコーダ10が「システムオン状態」の間は、映像録画処理と走行データ記録処理とが常時実行される。
ドライブレコーダ10が「システムオン状態」の間、プロセッサ101は、温度センサ202の値を監視し、温度センサ202の値が閾値X以上に上昇したか否かを判定する(ステップS43)。温度センサ202の値が閾値X以上に上昇したならば(ステップS43のYES)、プロセッサ101は、未保存の映像データと未保存の走行データとをSDカードに保存する処理とOSシャットダウン処理とを含む電源断準備処理を実行する(ステップS44)。電源断準備処理が完了すると(ステップS45のYES)、プロセッサ101からマイクロコントローラ(マイコン)201にソフトウェアシャットダウン信号が送られる。
電源断準備処理の完了後、つまりソフトウェアシャットダウン信号の受信後、マイクロコントローラ(マイコン)201は、パワーICディセーブル信号(Power IC Disable)を電源回路(システムパワーIC)203に送信することによって、システム部100の電源オフを電源回路(システムパワーIC)203に要求する(ステップS46)。これにより、システム部100は電源オフされる。
しかし、もしプロセッサ101のハングアップ等によってプロセッサ101からマイクロコントローラ(マイコン)201にソフトウェアシャットダウン信号が送られなかったならば、システム部100は電源オン状態に維持されるので、ドライブレコーダ10の温度がさらに上昇する可能性がある。
温度センサ202は、閾値Y以上の温度を検出すると(ステップS48のYES)、パワースイッチ204を遮断状態に設定するハードウェアシャットダウン信号(HW Shutdown Signal)を出力する(ステップS49)。これにより、ドライブレコーダ10の状態は、「システムオン状態」から「電源オフ状態」に遷移する。
温度センサ202は、閾値Yよりも低い所定の温度(“Y−α”)を検出すると(ステップS50のYES)、マイクロコントローラ(マイコン)201を電源オン状態に復帰させるために、ハードウェアシャットダウン信号(HW Shutdown Signal)を出力を停止する(ステップS51)。これにより、ドライブレコーダ10の状態は、「電源オフ状態」から「マイコンオン状態」に遷移する。
電源オン状態に復帰したマイクロコントローラ(マイコン)201は、温度センサ202の値を監視を開始し(ステップS52)、温度センサ202の値が閾値Z以下であるか否かを判定する(ステップS53)。温度センサ202の値が閾値Z以下であれば(ステップS53のYES)、マイクロコントローラ(マイコン)201は、パワーICイネーブル信号(Power IC Enable)を電源回路(システムパワーIC)203に送信することによって、システム部100への動作電力の供給を再開するように電源回路(システムパワーIC)203を制御する。これにより、マイクロコントローラ(マイコン)201は、システム部100を「システムオン状態」に復帰させる(ステップS54)。この結果、処理はステップS41に進み、映像録画処理、走行データ記録処理が自動的に再開される。
温度センサ202の値が閾値Zよりも高い間は、電源回路(システムパワーIC)203はディスエーブル状態に維持され、「システムオン状態」には遷移しない。
以上説明したように、本実施形態によれば、システム部100のプロセッサ(処理回路)101は、温度センサ202によって検出される温度が閾温度(X)以上に上昇した場合、未保存のデータの保存とOSのシャットダウンとを含む電源断準備処理を実行した後に、ソフトウェアシャットダウン信号を送出して、システム部100の電源オフをマイクロコントローラ(電源コントローラ)201に要求する。このため、未保存のデータの消失、ファイルの破損といった障害発生を招くことなく、ドライブレコーダ10の温度を下げることが可能となる。さらに、プロセッサ(処理回路)101が電源オフ状態である間は、マイクロコントローラ(電源コントローラ)201は、温度センサ202によって検出される温度を監視する。温度センサ202によって検出される温度が安全な温度(閾温度(Z))以下に低下した場合、マイクロコントローラ(電源コントローラ)201は、動作電力の供給を再開するように電源回路(システムパワーIC)203を制御することによって、プロセッサ(処理回路)101を動作状態に自動的に復帰させる。したがって、ユーザが電源スイッチの操作等を行うこと無く、上述の映像録画のようなプロセッサ(処理回路)101の動作を自動的に再開させることができる。よって、ソフトウェアシャットダウンによってドライブレコーダ10の温度が安全な温度にまで十分に下がったにもかかわらず、プロセッサ(処理回路)101が停止状態のまま維持されてしまうことを防止できるので、例えばイベント発生時のような重要の運転場面における映像が録画できなくなるといった可能性を低減することができる。
なお、これまでの説明では、温度センサ202の検出温度に基づいてソフトウェア/ハードウェアシャットダウン動作および自動復帰動作を実行する場合を説明したが、本実施形態のソフトウェア/ハードウェアシャットダウン動作および自動復帰動作のための構成は、温度センサ202を利用してドライブレコーダ10の状態が危険状態(異常状態)であるか安全状態(正常状態)であるかを検出する場合のみに限定されず、湿度センサ、気圧センサ、照度センサなどの他のセンサの検出値を利用してドライブレコーダ10の状態が危険状態(異常状態)であるか安全状態(正常状態)であるかを検出する場合にも適用できる。
この場合、図8〜図18で説明した温度センサ202を、湿度センサ、気圧センサのような他のセンサに置き換えればよい。つまり、プロセッサ101とマイクロコントローラ(マイコン)201の各々は、ドライブレコーダ10の動作条件に関係するドライブレコーダ10内の環境(例えば、温度、湿度、気圧、等)を監視するための一つ以上のセンサに電気的に接続されており、一つ以上のセンサから現在の検出値を読めるように構成されていてもよい。
この場合でも、図8〜図18で説明した構成および動作手順と同様の構成および動作手順で、ソフトウェア/ハードウェアシャットダウン動作および自動復帰動作を実行することができる。
すなわち、システム部100のプロセッサ(処理回路)101は、ドライブレコーダ10の動作条件に関係するドライブレコーダ10内の環境(例えば、温度、湿度、気圧、等)を監視するためのセンサ(例えば、温度センサ、湿度センサ、気圧センサ、等)の検出値がある所定範囲(例えば、動作条件で規定される範囲、または動作条件で規定される範囲よりも所定マージンだけ狭い範囲)を超える異常範囲に入った場合、つまり検出値がこの所定範囲外の値となった場合に、未保存のデータの保存とOSのシャットダウンとを含む電源断準備処理を実行した後に、ソフトウェアシャットダウン信号を送出して、システム部100の電源オフをマイクロコントローラ(電源コントローラ)201に要求する。さらに、プロセッサ(処理回路)101が電源オフ状態である間は、マイクロコントローラ(電源コントローラ)201は、このセンサによって検出される値(例えば、温度、湿度、気圧、等)を監視し続ける。周囲環境の変化や、システム部100の発熱が収まること等によって、センサによって検出される値が、ある安全な正常範囲内の値となった場合、マイクロコントローラ(電源コントローラ)201は、動作電力の供給を再開するように電源回路(システムパワーIC)203を制御することによって、プロセッサ(処理回路)101を動作状態に自動的に復帰させる。ここで、安全な正常範囲とは、動作条件で規定される範囲(上述の所定範囲)と同じであってもよいし、上述の所定範囲よりも狭いより安全な特定の範囲であってもよい。
また、プロセッサ(処理回路)101等のハングアップによってソフトウェアシャットダウンが正常に実行できずに、センサ(例えば、温度センサ、湿度センサ、気圧センサ、等)の検出値がさらに異常な値になった場合には、このセンサからのハードウェアシャットダウン信号によって上述のハードウェアシャットダウン動作が実行される。そして、周囲環境の変化や、システム部100の発熱が収まること等によって、センサによって検出される値が上述の安全な正常範囲に戻った場合、自動復帰動作が実行される。
よって、本実施形態によれば、安全に動作を停止でき且つ動作を自動的に再開することができる電子機器を実現することができる。
また、本実施形態のソフトウェア/ハードウェアシャットダウン動作および自動復帰動作は、ドライブレコーダのみならず、常時動作することが期待される様々な電子機器、例えば監視カメラ装置等、にも適用することができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。