センサ処理の分類に基づくハードウェア・ソフトウェア協調設計支援に関する研究
M2015SE014 寺西祐斗
指導教員：沢田篤史

1

はじめに組込みシステムのデバイスの高機能化，複雑化により開発期間が長期化していることが問題となっている. 組込みシステムの開発期間の短縮を目的とした技術としてハードウェア・ソフトウェア協調設計 (以下, 協調設計と呼ぶ)がある [3].
協調設計とは組込みシステム開発においてハードウェア設計とソフトウェア設計を並行して行なう技術である.
ハードウェア設計で作成されるモデル (以下，連続モデルと呼ぶ) は，一般的にブロック線図で記述され時間的に連続の値 (以下，連続値と呼ぶ) の計算方法を記述している. ソフトウェア設計で作成されるモデル (以下，離散モデルと呼ぶ) は一般的にミーリ型状態遷移図で記述され時間的に離散的なイベントをきっかけとした状態遷移を記述している. 組込みシステム開発で一般的に用いられる
MATLAB/Simulink[4] などのツールでは，連続モデルを中心にした設計を行なっておりソフトウェアの離散的な振舞いは連続モデルに隠蔽されている [10]. 一方，開発する組込みシステムによっては高い付加価値のソフトウェア機能が必要となる場合がある. 例えば，故障したセンサを故障していない他のセンサで動的に補うような機能や過去の行動履歴から最適な動作をする機能などである.
このような高付加価値のソフトウェア機能を実現し保守の対象とするためにはソフトウェアのモデルを明示的に記述する必要がある. 協調設計において連続モデルと離散モデルをそれぞれに記述し，組込みシステム開発を行なう場合，連続値とイベントを設計段階で対応づける必要がある [2][1].
本研究の目的はセンサ処理とイベントの対応関係に着目し分類することでハードウェア設計とソフトウェア設計の対応関係を明らかにし，協調設計を支援することである.
本研究のアイデアは計測システム工学で一般的なセンサの処理である A/D 変換と意味処理の方法に着目し，センサの処理とイベントの組み合わせを分類する. 意味処
理とは値の変換と閾値を用いてセンサの値とイベントを対応づける処理である. センサの処理とイベントとの対応関係を明らかにすることで設計段階で連続値とイベントの対応の検討を可能にする.
本研究では，協調設計においてセンサのハードウェア設計とセンサ処理の内容からイベントを推測する，あるいはイベントに対する要求からセンサのハードウェアの設計とセンサ処理の内容の提案を可能にするために，センサの種類，センサ処理とイベントを対応表にした. 対応
表では検知する値の意味の違いからセンサの種類，A/D変換方法と変換速度と精度の違いから A/D 変換器の種類，意味処理における値の変換である PID 制御を項目とした. 連続値の変換速度や検知の精度を評価するために分類ごとに A/D 変換器の変換速度と精度を基準として順位付けを行なった. 対応表によりセンサの選択とそれにともなうソフトウェア保守のコストを低くすることが期待できる.
本研究ではアダプティブクルーズコントロールシステ
ム (以下，ACC システムと呼ぶ) を事例とする. ACC システムを対象として対応表に基づいてイベントからセンサの種類とセンサの処理の組み合わせの候補をあげることができることを確認した.

2

ソフトウェア・ハードウェア協調設計とセンサ処理

2.1

ハードウェア・ソフトウェア協調設計

協調設計とはソフトウェア設計とハードウェア設計を並行して行なう設計方法である [3]. 組込みシステムの協調設計における問題としてハードウェア設計とソフトウェアの設計のパラダイムの違いがある. ハードウェア設計とソフトウェア設計のパラダイムの違いとは，ハードウェア設計で用いられる連続モデルが連続値を計算することを前提として設計されているのに対して，ソフトウェア設計で用いられる離散モデルは離散的なイベントで状態が遷移することを前提として設計されていることである.
パラダイムの違いから連続モデルと離散モデルを併立させる開発では，連続値とイベントの対応付けが必要となる. 協調設計のようにハードウェア，ソフトウェアの双方が設計段階にある場合，連続値をイベントに適切に対応させることは難しい.

2.2

センサの処理とその過程

センサの連続値の検知からの処理は，A/D 変換，意味処理の２つの過程から成り立っている.

2.2.1

A/D 変換A/D 変換とはセンサが検知した連続値をソフトウェアが処理することが可能となるように二進数に変換する処理である. A/D 変換は A/D 変換器を用いてハードウェアで行なわれる. A/D 変換の処理は標本化，量子化，符号化の３つの処理がある.
標本化とは連続値を一定周期ごとに取り出す処理である. 取り出された値を離散の値 (以下，離散値と呼ぶ) と呼ぶ. 量子化とは離散値を二進数に変換可能な桁数に変換する処理である. 符号化とは量子化された離散値を二進数に変換する処理である.
A/D 変換器の性能を評価するための基準として，分解能と変換速度がある. 分解能とは測定器で読み取れる測定器の際の最小限界値である. ビット数によって表現され， された値の意味に対応するイベントを示すための項目で一周期で A/D 変換できる桁数が表現される. 変換速度は ある. 対応表の各分類を評価するための項目として変換単位時間あたりのサンプリングの回数を速度として表し 速度，精度を項目とした. 以上をまとめると次の６項目たものである. 例えば，変換速度 44.1kHz ならば 44100 を主な要素とする.
回/秒でサンプリングする.
1. センサの種類

2.2.2

意味処理

意味処理とは離散値の変換と閾値との比較を用いて連続値とイベントと対応させる処理である. 図 1 は，本研究の対象範囲と意味処理の位置づけを表した図である. 連
続値とイベントを対応させるための適切な離散値の変換があるとし，意味処理を A/D 変換後の処理として位置づける.

2. A/D 変換器の種類
3. PID 変換方法
4. イベント
5. 変換速度
6. 精度
以下，その各節でそれぞれの詳細を説明する.

3.3

センサの種類

本研究で対象とするセンサは [11] から組込みシステムに一般的に使われてるセンサを対象とした. 対象とするセンサと検知する値の意味を表 1 に示す.
表 1 対象のセンサと検知する値の意味
センサの種類
検知する値の意味
図 1 意味処理の位置づけ

3

センサ処理の分類による対応表の設計

3.1

本研究のアイデア

本研究のアイデアとして，連続値からハードウェアで処理された値を意味処理を行なうことでイベントと対応づける. それによって，連続値とイベントの対応付けを行なう. 図 2 は，協調設計における本研究のアイデアを表した図である.

赤外線ライダー
超音波センサ
照度センサ
振動センサ
感圧センサ
加速度センサ
温度センサ

3.4

距離
距離
照度振動
圧力
加速度
温度

A/D 変換器の種類

A/D 変換を行なうハードウェアとして A/D 変換器がある. A/D 変換器は種類によって以下の特徴を持つものがある.
• 量子化した値をそのまま符号化するもの• 量子化した値を積分して符号化するもの
A/D 変換器では電圧比較回路を用い基準電圧と比較することで符号化を行なっている. 積分型，ΔΣ型の A/D 変換器では積分回路を電圧比較回路の前に使用することで積分値の符号化を行なっている [13].
本研究では [12] から計測工学で一般的な A/D 変換器を対象とする. 本研究で対象とする A/D 変換器は以下である.
• 量子化した値をそのまま符号化する A/D 変換器

図 2 本研究のアイデア

3.2

対応表の設計対応表の構造を図 3 に示す. 対応表ではセンサの選定を行なえるようにするために，センサの種類を項目とした. センサ処理の過程から A/D 変換器の種類によって特性が違うことから A/D 変換器の種類，PID 制御を参考に微分，積分を用いて値の変換 (以下，PID 変換と呼ぶ) をする PID 変換の方法を項目とした. イベントは PID 変換– 逐次比較型 A/D 変換器– 並列型 (フラッシュ型)A/D 変換器– サブレンシング型 (ハーフフラッシュ型)A/D 変換器– パイプライン型 A/D 変換器• 量子化した値の積分値を符号化する A/D 変換器– 積分型 A/D 変換器– ΔΣ型 A/D 変換器

図 3 対応表の構造

3.5

PID 変換方法

本研究では，意味処理の過程として離散値の値の変換を行なう. イベントを判断するための情報と離散値の意味を一致させる方法とし，PID 制御を参考に微分，積分を用いて変換を行なう. 本研究で対象とする PID 変換の方法と変換ごとの出力は表 2 に示す.
表 2 例:変換方法と出力値変換方法 変換方法ごとの出力

P 変換
I 変換
D 変換

3.6

離散値
積分した離散値
微分した離散値

変換速度

連続値の変動とイベントへの変換の正確さを評価するために A/D 変換器の変換速度に着目して A/D 変換器の順位付けを行なった. 順位付けを行なうことにより連続値の変動をどれだけ正確にイベントに変換することができるかを対応表に基づいて議論する場合の基準となる.

3.7

精度

ハードウェア設計の検知する連続値をどこまで正確に離散値に変換できるかを評価するめに A/D 変換器の変換精度に着目して A/D 変換器の順位付けを行なった. 順位付けを行なったことで対応表に基づいたハードウェアの検討や意味処理における閾値の選定の基準となる.

4

図 4 ACC システムの構造
車では一般に逐次比較型 A/D 変換器が用いられていることから逐次比較型を使用した場合のイベントを推測する.
表 3 は対応表から推測したイベントである.
表 3 加速度センサにおける逐次比較型のイベント変換方式 イベント

P 変換
I 変換
D 変換

4.2

加速度に関するイベント
速度に関するイベント
加速度の変化量に関するイベント

イベントからセンサの候補の選出

本節では，図 5 の設計の距離センサに対してセンサの候補の選定について述べる.

アダプティブクルーズコントロールへの適用と評価

本研究では，対応表の適用事例としてアダプティブク
ルーズコントロール (以下，ACC システムとする) を使用する [6]. ACC システムとは，走行中の自動車の車間距離の管理を行なうシステムである. 本章では ACC システ
ムの距離センサ対して対応表を使用した場合の過程と結果を示す.

4.1

センサの仕様からイベントの推測

センサの仕様からイベントを推測する過程について示す. 図 4 は事例として扱う ACC システムの構造である.
図 4 の加速度センサについて検討を行なう. [5] より自動

図 5 距離センサの状態遷移
図 5 のセンサの設計より対応付けを行なうイベントとイベントの意味は以下である.

• 接近 : 自車と先行車両の距離が縮まったことを検知• 離脱 : 自車と先行車両の距離が離れたことを検知• 先行車なし : 先行車両がいないことを検知• 故障 : センサが距離を検知しないことを検知
上記のイベントの必要としてる情報を距離とするとイベントの欲しい情報からセンサの種類とセンサの処理の内容の候補をあげる. 対応表より距離を計測するセンサは以下の二種類である.

• 赤外線ライダー• 超音波センサ[5] より自動車では一般に逐次比較型 A/D 変換器が用いられている. 逐次比較型 A/D 変換器を基準として変換速度に着目し変換処理の候補をあげる.
表 4 変換速度によるセンサとセンサ処理の候補
センサの種類A/D 変換器変換方式 変 換
速度
赤外線ライダー

超音波センサ

パイプライン型
並列型
逐次比較型

P 変換
P 変換
P 変換

123

パイプライン型
並列型
逐次比較型

P 変換
P 変換
P 変換

123

表 4 は変換速度に着目した際の変換処理の候補である.
これらの候補と赤外線ライダーと超音波センサの特性を考えることでセンサを決定することができる. 精度について着目した場合の変換処理の候補も同様にあげることが可能である.

5考察

5.1

対応表の意義本研究ではセンサの種類，センサ処理とイベントを分類し対応表を提示した. 対応表を提示するにあたりセンサ処理の構造化を行なった. ハードウェア開発で自動生成されたソフトウェアに対してソフトウェア開発で実現される高度な付加価値をつけるためのソフトウェアとの対応部分が明確になった. 連続モデルと自動生成したソフトウェアの対応が明確になれば，高度な付加価値をつけるためのソフトウェアの結合が容易になると考えられる. それにともなってソフトウェアの保守性を高めることができると考えられる.

5.2

シミュレーションの支援

本研究は対応表を提示するにあたり，センサとセンサ処理とイベントの関係を図 3 としてまとめた. 図 3 をメタモデルとして抽象度の高い記述方法を用いてモデルを記述することでシミュレーションの支援ができると考えられる. メタモデルの各項目についてパッケージ化，ライブラリ化を行なうことによってセンサ処理のさまざまな組み合わせを簡単にシミュレーションし検討することができると考えられる.

6

おわりに

本研究の目的はセンサ処理とイベントの対応関係に着目し分類することでハードウェア設計とソフトウェア設計の対応関係を明らかにし協調設計を支援することを行なった. センサ処理に着目し分類することで，センサとイベントの対応関係を明らかにし，対応表の作成を行なった. A/D 変換器の変換速度と精度を分類を比較する基準として順位付けを行なった. 分類に順位付けを行なうことでイベントからハードウェア設計の候補をあげる場合に分類の比較の基準として考えることが可能となった.ACC
システムを事例としてセンサのハードウェア設計からイベントの推測，イベントに対する要求からセンサとセンサ処理の候補をあげることができ，対応表の有用性を確認した. 対応表によってセンサの選定とそれに伴うソフトウェアの保守にかかるコストが低減することが期待できる. 今後の課題として，対応表の妥当性確認があげられる. 対応表の分類を基づいた設計や分類に基づいた実現，シミュレーションを用いた妥当性の確認があげられる.

参考文献[1] Baobing Wang, and John S. Baras,
Integrated
Modeling and Simulation Framework for WirelessSensor Networks, IEEE, International WETICE,
2012.
[2] Baobing Wang, and John S. Baras, HybridSim:
A Modeling and Co-simulation Toolchain for CyberPhysical Systems, IEEE/ACM, International Symposium on Distributed Simulation and Real Time
Applications, 2013.
[3] J. Fitzgerald, Peter G. Larsen, and M. Verhoef, Collaborative Design for Embedded System, Springer,
2014.
[4] MathWorks,”SIMULINK”,
https://jp.mathworks.com/products/simulink.html[5] 荒井宏，自動車の電子システム，理工学社，1992.
[6] 生駒光平，近藤貴大，田邊隼希， 自動車ソフトウェ
アに置けるサービス指向アーキテクチャの提案， 南山大学 2008 年度卒業論文，2009.
[7] 石田義久，鎌田弘之，ディジタル信号処理のポイント，
産業図書，1989.
[8] 今井聖，ディジタル信号処理，秋葉出版，1988.
[9] 川田昌克，西岡勝博，MATLAB/Simulink によるわ
かりやすい制御工学，森北出版，2001.
[10] 久保孝行，自動車業界 MBD エンジニアのためのSimulink 入門，TechShare，2012.
[11] 小林茂，Prototyping Lab，オーム社，2010.
[12] 西原主計，松田康弘，山藤和男，計測システム工学の基礎，森北出版，2012.
[13] 山崎弘郎，トコトコやさしいセンサの本，日刊工業新聞社，2002