• 検索結果がありません。

組込みクラウドコンピューティングシステムの研究

N/A
N/A
Protected

Academic year: 2022

シェア "組込みクラウドコンピューティングシステムの研究"

Copied!
121
0
0

読み込み中.... (全文を見る)

全文

(1)

組込みクラウドコンピューティングシステムの研究

著者 古都 哲生

発行年 2019‑06

出版者 静岡大学

URL http://doi.org/10.14945/00026923

(2)

静岡⼤学 博⼠論⽂

組込みクラウドコンピューティングシステムの研究

2019 年 6 ⽉

⼤学院 ⾃然科学系教育部 情報科学専攻

古都 哲⽣

(3)

論⽂要旨

本研究は,未来の社会に役⽴つ電⼦機器,サービス,ソリューションを創出できる新しい 組込みシステム構成として「組込みクラウドコンピューティングシステム」を提案する.組 込みクラウドコンピューティングシステムとは,組込み技術,クラウドコンピューティング 技術,フォグコンピューティング技術,ブロックチェーン技術など,これまで複数に分かれ て発展してきたコンピューティング技術を連携させ,これまでの組込みシステムでは実現 できなかった処理の⾼速化やデータの真正性を確保できる新しい組込みシステムである.

現代社会を⽀えている電⼦産業技術の⼀つである組込みシステムは,これまで数多くの製 品を⽣み出してきた.組込みシステムを効率良く構築するための設計⽅法論としては,サプ ライチェーンの構築,要求や要件の明確化,ツールの利⽤,再利⽤化,などの項⽬が重要で ある.⼀⽅,近年の半導体技術の進歩によって進化したプロセッサが⽣みだしたコンピュー ティング技術は,クラウドサーバやフォグノードなどのハードウェア,ソフトウェア,ネッ トワーク,セキュリティといった幅広い領域に分かれて発展してきた.しかし,近年の組込 みシステムに関係する国内製造業は,世の中の急激なコンピューティング技術の変化に追 従しきれておらず,特徴ある製品開発の技術開発が滞り,かつての⾼度成⻑を⽀えた技術進 化も停滞してしまっていると考える.そのため,新たなコンピューティング技術と連携した 組込みシステムの製品開発や製品サイクルの短縮化を実現する新たな組込みシステムの設 計⽅法論を考えなければならない.以下,本論⽂の構成を述べる.

第 1 章は,研究の背景と⽬的を説明する.これまで電⼦産業をささえてきた技術である組 込みシステムの経緯について概説し,ネットワークを介してクラウドサーバやフォグノー ドと連携するアーキテクチャである組込みクラウドコンピューティングシステムを提案す る.また,その設計⽅法論を整理し,本研究の位置づけをまとめる.

第 2 章では,クラウドコンピューティングと連携させた組込みクラウドコンピューティン グシステムの事例を紹介する.単体の組込みシステムでは要求や要件の達成が困難であっ た画像認識処理を,クラウドサーバを連携することで実現できることを⽰した.この構成で は,これまでの組込みシステムと⽐べて,10%以下の⼩型化と 35%の軽量化,70%以下の 低消費電⼒化を達成でき,消費電⼒やモジュールコストを抑えたシステムを構築できる⾒

込みを得た.

第 3 章では,エッジモジュールとクラウドサーバの間に位置づけられるフォグコンピュー ティングを使った画像認識システムの事例を紹介する.複数のフォグノードに処理を分散

(4)

させるための記述⽅法や実⾏⽅法だけでなく,具体的にオフローディングさせる機構やア ルゴリズムについて⾔及する.性能の異なる 5 台の組込み Linux 機器でフォグノードを構 成したプロトタイプを実装し評価した結果,PC 処理の 7 割程度のパフォーマンスまで追従 できることを確認できた.さらにフォグノードの台数を増やすことで,実⽤的な画像処理シ ステムを構築できる⾒込みを得た.

第 4 章では,ブロックチェーンのスマートコントラクトを使った,ネットワーク組込みシ ステム向け正真性機能の事例を紹介する.16 台のセンサを収容するブロックチェーンノー ドを 100 台まで増加できるエミュレーション環境を構築し性能評価した結果,データの伝 搬時間は 17〜46 秒かかるが,ネットワーク遅延は,センサデータの発⽣頻度と等価となる 発⾏トランザクション数ならびにマイニング処理性能の影響が⼤きいことを確認した.ま た,構成ノードの接続が疎かつマイニングノードが少ない場合,ノード接続の分断による再 接続ならびに同期処理によってネットワーク遅延の揺らぎが⼤きくなることが分かった.

評価した特性により,センサ情報記録システムに利⽤できることを確認した.

第 5 章では,各章の内容をまとめ,本論⽂の主張ポイントを明確にすると共に,本研究の 研究成果を活かした今後の展望について述べている.

(5)

⽬次

1章 序論 ... 1

1.1 研究の背景 ... 1

1.1.1 組込みシステムについて ... 1

1.1.2 近年の技術の進歩 ... 3

1.1.3 国内電⼦機器産業の低迷 ... 4

1.1.4 組込みシステムの⽬指すところ ... 6

1.2 研究について ... 7

1.2.1 研究の対象 ... 7

1.2.2 組込みクラウドコンピューティングシステム設計⽅法論 ... 8

1.2.3 本研究の⽬的 ... 10

1.3 論⽂の構成 ... 12

2章 組込みシステムのクラウドコンピューティング連携 ... 15

2.1 3G を使った組込みシステムのクラウドコンピューティング連携 ... 16

2.1.1 背景 ... 16

2.1.2 これまでの組込みモジュールの分析 ... 16

2.1.3 クラウドコンピューティングでの組込みシステム ... 19

2.1.4 クラウドコンピューティングを使った渋滞状況検出システム ... 23

2.1.5 結果 ... 27

2.1.6 結論 ... 28

2.2 Bluetooth を使った組込みシステムのクラウドコンピューティング連携 ... 29

2.2.1 背景 ... 29

2.2.2 IoT センサモジュール... 29

2.2.3 既存の技術でのイメージセンサモジュール ... 31

2.2.4 提案する軽量画像センサモジュール ... 31

2.2.5 結果 ... 33

2.2.6 結論 ... 34

2.3 本章のまとめ ... 34

3章 IoT 分散処理システム & オフローディングシステム ... 36

(6)

3.1 IoT 分散処理システム ... 37

3.1.1 背景 ... 37

3.1.2 既存 IoT の技術 ... 37

3.1.3 IoT 向け分散処理基盤... 38

3.1.4 結果 ... 41

3.1.5 結論 ... 42

3.2 IoT オフローディングシステム ... 43

3.2.1 背景 ... 43

3.2.2 従来研究と課題 ... 44

3.2.3 提案システム ... 49

3.2.4 プロトタイプ実装と評価 ... 54

3.2.5 結果 ... 61

3.2.6 結論 ... 62

3.3 本章のまとめ ... 63

4章 ブロックチェーンを利⽤した耐改ざん性 IoT システム ... 64

4.1 背景 ... 65

4.1.1 IoT システム ... 65

4.1.2 IoT に対する情報セキュリティ ... 66

4.1.3 IoT システムにおけるレイテンシ ... 68

4.1.4 改ざん抑⽌のためのブロックチェーン ... 69

4.2 従来研究と課題 ... 69

4.2.1 IoT ... 69

4.2.2 ブロックチェーン ... 72

4.2.3 IoT + ブロックチェーン ... 75

4.3 ブロックチェーンを利⽤した IoT システム ... 77

4.3.1 改ざん対策のためのブロックチェーン ... 77

4.3.2 構成 ... 78

4.3.3 機能 ... 79

4.3.4 実装の例 ... 81

4.3.5 レイテンシのモデル ... 82

(7)

4.4 プロトタイプ実装と評価 ... 83

4.4.1 評価に使った環境 ... 84

4.4.2 評価⼿法 ... 85

4.5 結果 ... 86

4.6 結論 ... 91

4.7 本章のまとめ ... 92

5章 結論と今後の展望 ... 93

5.1 結論 ... 93

5.2 今後の展望 ... 95

謝辞 ... 97

参考⽂献 ... 98

著者発表論⽂ ... 108

(8)

図⽬次

図 1 実⽤化されている組込みシステム例 ... 2

図 2 2002年から2018年までの国内電⼦⼯業⽣産実績 ... 6

図 3 組込みクラウドコンピューティングシステム設計⽅法論 ... 8

図 4 処理分散度と通信抽象度を軸とした研究の構成図 ... 11

図 5 本研究の構成図 ... 12

図 6 各研究で⽤いたアーキテクチャ構成 ... 14

図 7 クラウドコンピューティング連携 ... 15

図 8 ⼀般的な組込みシステムブロック図 ... 17

図 9 クラウドコンピューティングと連携する組込みシステム ... 21

図 10 渋滞状況検出システムの全体図 ... 24

図 11 クラウドコンピューティングを利⽤したナンバープレート認識システム ... 25

図 12 静⽌画カメラユニットのブロックダイアグラム ... 26

図 13 IoTセンサモジュールの基本構造 ... 30

図 14 軽量画像センサモジュール構成図 ... 32

図 15 試作したモジュール ... 32

図 16 フォグコンピューティング連携 ... 36

図 17 単⼀・複数ハードウェア構成図 ... 38

図 18 プロトタイプシステム全体図 ... 40

図 19 各構成における実⾏時間結果 ... 41

図 20 ナンバープレート認識フロー図 ... 46

図 21 画像処理システム ... 47

図 22 SoC の画像処理システム ... 47

図 23 SoC クラウド連携システム ... 48

図 24 IoT 向けオフローディング 実⾏モデル ... 51

図 25 プロトタイプ構成図 ... 55

図 26 画像IoT オフローディングフレームワーク ... 57

図 27 IoTモジュール単体・転送パフォーマンス結果 ... 58

図 28 構成エレメントの重み付け値 ... 59

図 29 全探索結果図 ... 60

図 30 最適経路上位6位の予想・実績実⾏時間 ... 61

(9)

図 31 ブロックチェーン連携 ... 64

図 32 各種IoTシステム構成図 ... 71

図 33 ブロックチェーンノード間での処理の流れ ... 75

図 34 ユーザネットワークを持ったブロックチェーン IoT システム ... 76

図 35 ブロックチェーンでのIoTシステム ... 79

図 36 それぞれのモジュールの論理機能について ... 80

図 37 レイテンシ遅延モデル ... 83

図 38 評価環境のノード構成概念図 ... 84

図 39 評価環境のハードウェア構成 ... 85

図 40 1 マイナーの場合のさまざまな接続パターン ... 88

図 41 1-Miner での各パターンでのレイテンシ ... 89

図 42 100-ノードのブロックチェーンネットワーク ... 89

図 43 各条件下でのレイテンシ結果 ... 90

(10)

表⽬次

表 1 各実装における評価結果 ... 27 表 2 軽量画像センサの測定結果 ... 33

(11)

略号の説明

I B B E DG CB G B E G C C G CB B G A - DD G CB EC E AA B -BG E

-( DD G CB D -BG E G ( E H G kgl u ote

DD G CB D G B E EC H l p ote

5 H C 5 H

GC( H B GC (CB HA E

(C (CB GE B DD G CB ECGC C

( 4 ( BGE EC B 4B G d x

) ) G

) C ) G ECC C G b C

) ) G B EC CE

(( DG (HEI (E DGC E D civ n

) GECB ) B HGCA G CB

4 B E HEDC CADHG B CB E D EC B 4B G

-

C C G CB B G A hyaUV

4 E D EC B 4B G

,33 , D EG JG 3E B E ECGC C

- -B E GEH GHE EI

-(3 -B CEA G CB B (CAAHB G CB 3 BC C

- -BDHG HGDHG

-C3 -BG EB G C 3 B PT L

- -BG GH ECD EG -Sms O Pf e r

-3 -B CEA G CB 3 BC C

(12)

, ,D A ILD

, ( , F MHI A ( H A M p e in

, ,DL DL C

,3 , 3 A CI I I t q

- - - C ID - C

- - HH C A I M CH D I

) ) A D C I DC

A ILD

/ 2 / I A I 2 D C I DC 2 ur y

/3 / I C 3MHI oglNc OQRVTs bhf

/33 / C 3D 3D IL

ID

3 A I D H 3

HDC A D I

D DD D D I C T

D3 DD D 3I SW

D DD D D vw T

2 - 2 C D HH - D M

2 3 2 CHI I DC 3 I D I adf oglNc

2/- 2 /CAM - D M P km

23 2 HI 3 A C M IDHMHI

2 /3 2 A /3

3 3 3D IL H 3

3D 3MHI DC

3 3 3 H A D I

3 3 HI I I DC I I DC ILD 3I I

33 3 3 AA

33, ,3 3 3D IH , M CH D I , M 3 IM

3 - 3 D I ID - C

(13)

/( / ( A A 4 /( A6 6A A 4

0 -/ 0 C6 48 -646 C6 / AA6

0 0 6 A6 46

6 8 4 F I PGRVT S

A C A6 6 C6 WU ) A64A6 446

(14)

第 1 章

序論

本章では,研究の背景,研究の⽬的,本論⽂の構成について説明する.

1.1

研究の背景

これまで,⽇本を⽀えてきた電⼦産業は,すでに,⼤きな変⾰期を迎えている.本節では,

組込みシステムに焦点を置き,組込みシステムの概要,コンピュータ技術の進歩,⼤きく変 わりつつある時代の変化について説明し,組込みシステムの課題を明らかにする.

1.1.1

組込みシステムについて

電⼦産業が⽣み出した製品は,現代⼈の⽣活において⽋かせないものとなっている.これ まで,電⼒を⼒や熱源として利⽤する機械や装置や,⾳,画像,情報を扱う装置まで数多く のものが開発され,実⽤化されてきた.電⼦機器を制御する仕組みの⼀つとして組込みシス テムがある.組込みシステムとは,⼀般的には装置や機器に組み込まれたコンピュータシス テムとされているが,本論⽂では「組込みシステム」を,半導体で実現された,コンピュー タハードウェアとソフトウェアで要求された機能を実現する概念や開発すべき製品やシス テムとして定義した.組込みシステムは,⺠⽣⽤機器,産業⽤機器と,多くの機器で利⽤さ れている.図 1 に⽰すように,⺠⽣⽤機器では,映像機器として,デジタルカメラ,ビデ オカメラ,監視カメラ,Blu-ray プレイヤー,ドライブレコーダーなどがある.⾳楽プレイ ヤーやカーオーディオは,⾳声機器として⼀般的である.オフィス機器としては,電話機,

FAX,複合機,プリンタなど多くの機器に組込みシステムが使われている [1].

電⼦産業の進化は,さらにコンピュータの性能を上げ,コンピュータ同⼠のネットワー クを強化している.モノをインターネットに接続する考えは,ユビキタスコンピューティ ングや M2M(Machine to Machine)などの⾔葉で呼ばれ,今⽇,「IoT(Internet of

Things)」として広まっている.IoT は⼀般的には,IT 機器以外のモノがインターネット に接続することで実現できる製品やシステム,サービスを⽰しており,IoT の機能,性 能,等を⽀えている技術としての組込みシステムは重要な位置付けにある [2].本論⽂に おいては,組込みシステムやネットワークに接続された組込みシステムや組込みモジュー ルを,利⽤⽬的,利⽤⽤途の観点としてのキーワードとして,「IoT」,「IoT システム」,

(15)

「IoT モジュール」と呼んでいる.

図 1 実用化されている組込みシステム例

組込みシステムの開発は,さまざまな開発の⼿段や⽅法があり,技術の進歩に伴いさらに 複雑化しているため,設計⽅法論無しで進めることは難しい.開発ツール群連携でフレーム ワークを作り,ハードウェアとソフトウェアのプラットフォーム統合することで,開発速度 アップを⽬指した A. S. Vincentelli らの⽅法論は⼀般的である [3].リアルタイム性に特化 し,モデル化による単純化で,アーキテクチャレベルの分散リアルタイムシステムの開発⽅

法についても提案されている [4].抽象化モデルに着⽬し,単純なモデルと,デザインの決 定,モデルの変換に注⽬した⽅法論も提唱されていた [5].

先に述べた A. S. Vincentelli らが主張している⼿法では,組込みシステム設計の本質は,

性能,コスト,CO2排出量,消費電⼒,⼤きさ,重量などのさまざまな特性の制約を満たす ことで要求された機能を実現する事にあると説明している.また,組込みシステムの設計⽬

標(ビジョン)を達成するために,① 知的財産(IP)やファウンダリ,半導体開発会社,シス テム製造会社,ソフトウェア開発会社等のサプライチェーンの統合,② 要求機能や制約条 件等の要求スペックの明確化,③ 各開発⼯程で使える開発環境の利⽤,④設計資産の再利

⽤化,を掲げていて,これらを実現するために,次の 3 つの具現化⼿段を提⽰している.

(1) 直交性: 実装と動作の分離,計算と通信の分離

(2) 理論的なフレームワーク: ⼿作業でなくツール駆動の設計

(3) プラットフォーム: ハードウェア,ソフトウェア共に API を均⼀化した標準的な実

⾏環境で稼動

T AD

C S

C S

D

PAD D

D

P H H

M

O

C AD

H A

I S

H S

(16)

これらの提唱がされたのは 2001 年であるが,現在においても,単独動作の組込みシステ ム開発にとっては有益な⽅法論である.

1.1.2

近年の技術の進歩

半導体技術の進歩により,マイクロプロセッサや I/O やタイマーなどの周辺回路を含んだ マイクロコントローラは,年々機能と性能を伸ばしている.微細化が進んだ半導体プロセス が,1 チップに格納できる回路の規模を増やし,速度優先の回路を実現し,CPU のマルチ コア化をさらに進め,キャッシュメモリの容量も増加させている.組込みシステムに使われ るマイクロコントローラや,システムレベルの周辺回路まで持った SoC(System on Chip) は,半導体プロセス進化の恩恵を受け,年々機能や性能を向上させている.

ハードウェアとしてのコンピュータは,進化し続けている半導体のおかげで,PC(Personal Computer)環境や組込みシステムの⾼性能化に寄与している.PC の技術は,単体の PC や サーバ,ネットワーク経由でコンピュータリソースを利⽤する広義の「クラウドコンピュー ティング」として利⽤されている.広義なクラウドコンピューティングにおいて構成するコ ンピュータリソースは,クラウドサーバやフォグノードがある.クラウドサーバは,狭義の クラウドコンピューティングを実現するコンピュータリソースであり,エッジモジュール とクラウドサーバの間に位置するフォグノードはフォグコンピューティングを実現する.

⼀般的に,フォグコンピューティングは,クラウドサーバのレイテンシの弱点を補う⽬的で 利⽤されている.フォグコンピューティングを構成するフォグノードの処理能⼒は,PC や クラウドサーバに⽐べて決して⾼くはないが,複数台数の利⽤ができ,有益な利⽤が期待さ れている新しいコンピュータリソースである.

コンピュータの進化は,ハードウェアだけでなく,ソフトウェアも発展させてきた.過去 の組込みシステムは,⼀つのループ構成のプログラムで表現される簡単な機能を持つこと が多かった.複雑な要求を満⾜させるために,2 つ以上の動作を同時に⾏わないといけない 場合は,それらをリアルタイムなタスクとして扱うことができる RTOS(Real Time Operating System)が使われることがある.現在も多くの組込みシステムにおいて,RTOS 上でソフトウェアが稼働している.また,処理能⼒の⾼い CPU と,⼤容量の主記憶メモリ を持った組込みシステムは,これまで PC やサーバシステムに利⽤されていた Linux を稼 動させることが可能となった.そのおかげで,Linux 環境下で開発された,多くの OSS(Open Source Software)を利⽤できるようになり,⾼度な機能を実現した組込みシステムも実⽤化 されている [1].

(17)

コンピュータを利⽤したビジネスも,幅広い領域に広がっている.マイクロプロセッサ,

マイクロコントローラ,や,ASIC(Application Specific Integrated Circuit

: 特定顧客向け専⽤集積回路), ASSP(Application Specific Standard Product: 特定⽤途向 け標準品集積回路)に実装された SoC(System on Chip)の半導体の進化の恩恵は,科学技術 計算だけでなく,組込みシステムをはじめ,Web システム,基幹・業務システム,などの領 域でそれぞれ独⾃のビジネススタイルを構築し,⾃らのビジネス領域をさらに広げようと

⽇々画策している.

コンピュータの進化を⼤きく加速させた半導体技術の進歩は,通信技術にも⼤きく影響し ている.最初のインターネットは有線接続である Ethernet で接続されていた.機器が⼩型 化することで,無線接続の要求が⾼まってきた.また,携帯電話,スマートフォンの発展で,

Bluetooth, Wi-Fi や第 3,4 世代移動通信システム(3G,4G),第 5 世代移動通信システム(5G),

LPWA(Low-Power Wide-Area Network)など,⽤途や⽬的に合わせてさまざまな通信⼿段を 選択できるようになってきた.

プロセッサの能⼒が向上し,さらに⾼速処理可能な回路が利⽤できるようになったことに より,暗号アルゴリズムを持った暗号技術が実⽤的になってきた.例えば,繰返し演算で SPN(Substitution Permutation Network Structure) 構 造 で 作 ら れ た AES(Advanced Encryption Standard) は , 対 称 鍵 暗 号 ( 共 通 鍵 暗 号 ) と し て 有 名 で あ る . ChaCha20(IETF(Internet Engineering Task Force)で規定されたストリーミング暗号アルゴ リズム)は新しい対称鍵暗号である.また,⾮対称鍵暗号(公開鍵暗号)としては,整数を素 因数分解する計算の困難性を根拠とする RSA(発明者名の頭⽂字をつないだ名称)や,離散 対数問題を解く計算の困難性を利⽤する ECC(Elliptic Curve Cryptography: 楕円曲線暗号) がある.ハッシュ関数としては,SHA2(Secure Hash Algorithm-2), SHA3(Secure Hash Algorithm-3)が有名であり,その他,デジタル署名,乱数発⽣や鍵交換アルゴリズムなど,

多くの暗号アルゴリズムがプロセッサのソフトウェアやハードウェアで実装されている.

さらに,暗号技術を利⽤し,安全なネットワーク通信を実現する,SSL/TLS(Secure Socket Layer / Transport Layer Security)や仮想通貨で使われるブロックチェーンなどの暗号応⽤

技術を使ったアプリケーションも多く作り出されている [6] [7] [8].

1.1.3

国内電⼦機器産業の低迷

これまで,組込みシステムや,コンピュータ向け技術の進歩について説明してきたが,残

(18)

念なことに,国内電⼦機器産業は 2007 年頃のピークを境にして伸び悩んでいる.この節で は,電⼦産業の国内の状況と,その主原因である,⼤量⽣産体制の弊害,⻑期製品向けの開 発体制の問題,顧客購買意識の変化,電⼦機器を作る技術である組込みシステムの課題につ いて説明する.

図 2に,経済産業省⽣産動態統計の情報を集めた,JEITA 電⼦情報技術産業協会が公開し ている「⽇本の電⼦⼯業の⽣産」の統計資料からピックアップした 2002 年から 2018 年ま での国内電⼦⼯業⽣産額の推移を⽰す [9].電⼦⼯業の⽣産額は,2007 年がピークで 20 兆 円越えだったのが,2018 年には 12 兆円を下回っている.⺠⽣⽤電⼦機器において 2018 年 は,2007 年のピーク時の 21%しか⽣産⾦額が上がっていない.産業⽤電⼦機器は,2002 年 のピークの 41%⽌まりである.かろうじて電⼦部品・電⼦デバイスが 2007 年のピーク時の 約 70%を維持して,電⼦⼯業を⽀えている.

この状況を引き起こした原因の 1 つとしては,半導体やシステムを対象とした⽇本の製造 業の競争⼒の低下にある.かつての⾼品質体制や垂直統合タイプのフォーメーションは,⻑

く続く⼤量⽣産のビジネスに合致していた.しかしながら,近年培ってきた⼤量⽣産の製造 設備や体制が市場需要の変化に合わず,徐々に企業の体⼒を失わせ,短期サイクルの製品開 発に順応できない開発体制が障害となり,競争⼒を失わせてしまっている.また,近年顧客 の購買意識が,モノを買うことより使うことやサービスを受けることに移⾏しているのに かかわらず,国内企業の多くは,相変わらず売切り商品を作り続ける考え⽅を変えることが できなかった.

(19)

図 2 2002 年から 2018 年までの国内電子工業生産実績 (参照:電⼦情報技術産業協会(経済産業省⽣産動態統計))

また,かつての⼤量⽣産製造体制は.設計や開発の考え⽅にも影響を及ぼしている.過剰 なほどの⻑寿命や過度な⾼信頼性を追求した設計や開発の考え⽅は,すでに信頼性を確保 できているハードウェアを基盤にして,微々たる改善や付加機能の追加を繰り返すことで 新たな製品を作り出すサイクルに陥ってしまった.すなわち,過去の開発経験を尊重し過ぎ たため,新たな製品の創造や,新たな技術の取り込みができなくなってしまった.この状況 は,ハードウェアの依存が無い要件定義を⾒出すより,ハードウェアに特化した実装仕様に 重点を置くこととなり,特定のハードウェアに偏った開発が⾏われるしまうことである.

ハードウェア重視の開発は,結果的にソフトウェア開発優先順位を下げ,OSS(Open Source Software)を含めた独創的なソフトウェアの新規開発が活性化しない状況を引き起こしてし まった.

1.1.4

組込みシステムの⽬指すところ

これまで,組込みシステムが,我々の⽣活に役⽴つ技術となり,多くのプロダクトが⽣ま れていることと,コンピュータの進化によりコンピューティングの多様性が広がってきて いるのにかかわらず,国内の企業が時代の流れに乗れず,電⼦機器開発の機会が減少し,⼤

量⽣産も少なくなり,今までのやり⽅では上⼿くいかない状況を説明した.また,国内の電

9 0

8

6 7521 43 21 75 ,

(20)

⼦機器産業が振るわなくなり,その原因の⼀つとして,組込みシステムのハードウェア依存 開発やソフトウェアベースの開発がしづらい課題があり,新たな改⾰が必要となってきて いることも説明した.

現状の電⼦機器開発の課題を解決するために,これまで開発を⽀えて来た組込みシステム の技術に,新たな技術を融合させて,新しい組込みシステムを創り出す⽅法は,これまでの 組込みシステムのビジネスモデルの延⻑で考えることができ,ビジネス推進者だけでなく,

協賛者の⽀援が受けられやすい.また,処理インフラに関することと,データに関すること は,新しいソリューションを⽣み出すために重要な要件である.

1.2

研究について

本研究は,組込み技術,クラウドコンピューティング技術,フォグコンピューティング技 術,ブロックチェーン技術など,これまで複数に分かれて発展してきた技術を統合して,組 込みクラウドコンピューティングシステムとしてまとめている.

本節では,本研究の対象と,それを実現するための設計⽅法論を明らかにし,本研究の⽬

的について述べる.

1.2.1

研究の対象

本研究では,ネットワークを利⽤してコンピュータリソースを利⽤する次世代の組込み技 術を「組込みクラウドコンピューティング」と定義し,その技術を使って実装したシステム を,「組込みクラウドコンピューティングシステム」とし,研究の対象とした.組込みクラ ウドコンピューティングシステムは,ハードウェア+ソフトウェア+サービスを主眼にお いた技術実現⼿段である.これまでの組込みシステムと同様に,エッジ側には組込みシステ ムのハードウェアは⽤意するが,エッジ側組込みシステムのプロセッサ上ではなく,エッジ モジュールとネットワークで接続されたクラウドサーバや,フォグノードなどの,広義のク ラウドコンピューティングで⾏うことで,システムとしての差別化を図っている.また,製 品としても,製造開発者が売切り製品を販売するだけでなく,利⽤者に対して継続的に信頼 性の⾼いサービスを提供する対価として,運⽤者が,運⽤に関わる費⽤を得ることも考慮し ている.

(21)

1.2.2

組込みクラウドコンピューティングシステム設計⽅法論

組込みクラウドコンピューティングシステムの設計⽅法論 [3]における本質(エッセンス) は, 3 つの項⽬を掲げた.本質の 1 つ⽬は,組込みシステム開発でも掲げられている,性 能,コスト,CO2排出量,消費電⼒,重量等の制約に加え,信頼性,製品寿命,拡張性,情 報セキュリティの制約を守り,要求された機能を実現することにある.本質の⼆つ⽬は,要 求や要件を実現するために.利⽤できるハードウェアやソフトウェアを含めたリソースを 明らかにし,リソースの特性や特徴を最⼤限に活かした実装をすることである.三番⽬の本 質は,利⽤者に取って価値のあるデータを得ることができるシステムを稼動させることで ある.

これら三項⽬の本質を実践するために,システム設計の⽬標(ビジョン),具現化⼿段を定 めた. 図 3に,組込みクラウドコンピューティングのシステム設計の本質 (エッセンス),

システム設計の⽬標 (ビジョン),システム設計の具現化⼿段を⽰す.⾚字の項⽬と下線項

⽬は,従来の組込みシステムで提唱された⽅法論から追加した箇所を⽰す.

システム設計の⽬標 (ビジョン) は,組込みシステム設計⽅法論の⽬標と⽐べて,システ ムに関する項⽬が増えている.以下に⽬標の各項⽬について説明する.

図 3 組込みクラウドコンピューティングシステム設計方法論

( )

CO2

( )

• ( )

• ( )

• ( )

(22)

幅広い協⼒連携体制 (サプライチェーン+コミュニティ)

これまでの組込みシステムは,半導体技術を核としてシステムが作られていたため,設計・

開発は,IP(知的財産),開発者,ファウンドリ,半導体製造会社,システム製造会社,アプ リケーションソフトウェア開発者の連携で⾏われていた.組込みクラウドコンピューティ ングの構成は,組込みシステムだけでなく,クラウドサーバ,フォグノードを含めた広義の クラウドコンピューティングも対象となり,クラウド運⽤会社,クラウドソフトウェア会社,

サービス運⽤会社,通信インフラもサプライチェーンに含める必要がある.また,実装ソフ トウェアの多くは,OSS (Open Source Software)で構成される場合が多く,構成システムを

⻑期間運⽤していくためには,利⽤している OSS を維持,改良,メンテナンスしている OSS コミュニティとの連携を密にすることで,⻑期サポートの維持や互換性保持,等を進める必 要がある.

(データ,処理)サービスビジネス指向,汎⽤プラットフォーム対応,並列実

⾏を考慮した要求スペックの明確化

顧客の要求や要件を正確に聞き,それに合致したシステムを提供することは,既存の組込 みシステムと同様である.クラウドコンピューティングを利⽤した新しいサービスに対応 するためには,処理だけをこなすソリューションを提供するだけでなく,その処理で扱う データに関わるサービスビジネスを意識する必要性がある.またそのソリューション,サー ビスも,固定されたプラットフォームでなく,その後の展開を考慮して,どのようなプラッ トフォームでも対応できる形式で実装するべきである.さらに,処理においても,フォグ ノードで並列動作できるチャンスを活かすために,処理の記述粒度を細かくして,順序処理,

並列処理の区別も明⽰しておく必要がある.

複数のプラットフォームで稼動できる処理の抽象化を実現した開発環境

単独の組込みシステムをネットワーク経由でクラウドサーバとつなぐには,それぞれの機 器,クラウド側アプリの仕様と,それらをつなぐプロトコルの仕様があれば,情報のやり取 りが可能であった.組込みクラウドコンピューティングシステムでは,複数プラットフォー ム同⼠の動作や,並列性も追求するため,さらに粒度の細かい単位での,ハードウェア動作,

ソフトウェア動作,ネットワーク動作,等を含めた抽象モデル化を必要とし,それらのモデ

(23)

ルを扱える開発環境も必要である.

多様なプラットフォームに対応する再利⽤化

要求仕様毎に個々にゼロベースから開発をすると,今⽇複雑化しているシステムの開発コ ストはさらに膨⼤に膨れあがる.そのため,⼀度開発した開発資産は,再利⽤できるべきで ある.クラウドコンピューティングを利⽤する場合は,それぞれのコンピューティング環境 での API 統⼀化を図ることで再利⽤が可能となる.

継続稼動,安定動作継続性を考慮した⾼信頼性開発

ハードウェアに依存しない,ソリューション,サービスとして提供されているビジネスに おいて,複数の機器から構成されるシステムの継続稼動や安定動作継続性を考慮し,⾼信頼 性を実現する開発は重要である.

これらの⽬標を達成するために,以下の 3 つの具現化⼿段も掲げる.

n 直交性の徹底: ハードウェア,ソフトウェア,ネットワークでの動作を抽象化する ことで,実装から純粋な動作を分け,並列化検討可能な粒度での動作記述を⼼がける.

n 機能,性能,検証を含めたフレームワーク:要求や要件を具現化し,実装仕様とする 為には,仕様の表現⼿段と,⾼度な検証⼿法が伴う必要がある.これまで C ⾔語で開 発していた環境を,上位⾔語とライブラリを使うことにより,さまざまなレベルでの 抽象化実装,検証,を可能とする開発⽀援環境を⽬指す.

n 各プラットフォームの統合化:組込みシステム,クラウドコンピューティングと,多 様な実⾏リソースがある中,それぞれの実⾏リソースはプラットフォームとして API が統合されていれば,再利⽤は容易となり,また開発コストの削減も期待できる.

1.2.3

本研究の⽬的

上記で述べた組込みクラウドコンピューティングシステムの設計⽅法論を提案すると共 に,その⽬標や具現化⼿段の課題を⾒つけ,解決することで,これからの社会に役⽴つ組込 みシステム,サービスを提供する技術の検証を本研究の⽬的とする.

組込みクラウドコンピューティングシステム設計⽅法論を検証するために実現したシス テムは,組込みシステムのハードウェア部分である,組込みハードウェアと,コンピュータ

(24)

リソース,そのコンピュータリソース上で稼動するアプリケーションプログラムから構成 される.図 4に,処理分散度と通信抽象度を軸とした研究の構成図を⽰す.この図では,

対象となる処理を⾏う処理モジュールの数として「処理分散度」を定義した.また,それら の処理モジュール同⼠の通信⽅式の抽象度合いを「通信抽象度」とし,それぞれを軸にして,

それぞれの研究の位置づけを表した.

図 4の左下は対⽐の為,これまでの組込みシステムを⽰している.処理の分散度が増え,

通信の抽象度が上がることで,クラウドコンピューティング連携,フォグコンピューティン グ連携,ブロックチェーン連携の 3 つの研究の対象領域に分かれ,これらの 3 つの連携を 研究の対象としている.クラウドコンピューティング連携は,処理の分散度が 1 から 2 程度 で,通信抽象度は,1 対 1 で⾏われる場合が多い.フォグコンピューティング連携は,処理 の分散度が 2 以上で,通信抽象度は,1 対 n または n 対 n となる.ブロックチェーン連携 は,分散度 3 以上で,通信抽象度は,さらに抽象度が上がり,ブロックチェーン上でのイン ターフェースとなる.

図 4 処理分散度と通信抽象度を軸とした研究の構成図

1 2 3

(1 1)P2P Blockchain

n n

(25)

1.3

論文の構成

第 1 章では,まず本研究の背景,⽬的を明確にし,本論⽂の構成を述べている.これまで 電⼦産業をささえてきた技術である組込みシステムのこれまでの経緯について説明し,

ネットワークを介してクラウドコンピューティングやフォグコンピューティングと連携す るアーキテクチャである組込みクラウドコンピューティングシステムを提案し,その設計

⽅法論の考え⽅を提⽰し,本研究の位置づけを述べている.

図 5に本研究の構成図を⽰す.また,図 6 に各研究で対象としているアーキテクチャ構 成を⽰す.

図 5 本研究の構成図

第 2 章では,クラウドコンピューティングと連携させた組込みクラウドコンピューティン グシステムの事例として,通信⼿段を直接の 3G 通信を使った場合と.Bluetooth 経由のス マートフォンを利⽤した 2 つの研究を説明する.単体の組込みシステムでは要求や要件を 達成するのが困難であった画像認識処理を組込みシステムとクラウドコンピューティング との連携で稼動させることで実現し,プロトタイプシステムの評価を⾏った(図 6(b)).こ れまでの組込みシステムと⽐べて,消費電⼒やモジュールコストなどの項⽬に対して優位

1 2 3

(1 1)P2P Blockchain

n n

2

3 4

(26)

性があるシステムを実現できることを確認した.Bluetooth とスマートフォンを連携させた 軽量画像センサの研究においては,性能評価の結果,従来の組込み Linux を⽤いたシステ ムと⽐べて,10%以下の⼩型化と 35%の軽量化,70%以下の低消費電⼒化を実現できる⾒

込みを得た.

第 3 章では,エッジモジュールとクラウドサーバの間に位置づけられるフォグコンピュー ティングを使った画像認識システムを紹介している.複数のフォグノードに対応するため にアルゴリズム機能分割を⾏い,記述⽅法,実⾏⽅法,処理分散配分に関して⾔及した 2 つ の事例を紹介した(図 6(c)).プロトタイプの性能評価から,PC 処理の 7 割程度のパフォー マンスまで追従できることを確認した.

第 4 章では,組込みクラウドコンピューティングを構成するネットワーク機能を搭載した ノードに対し,ブロックチェーンを⽤いてスマートコントラクトを構築する⼿法の実現性 について検討した(図 6 (d)).16 台のセンサを収容するブロックチェーンノードを 100 台 まで増加できるエミュレーション環境を構築し性能評価した結果,ブロックチェーンのマ イニング周期により,データの伝搬時間は 17〜46 秒かかるが,ネットワーク遅延は,セン サデータの発⽣頻度と等価となる発⾏トランザクション数ならびにマイニング処理性能の 影響が⼤きいことを確認した.また,構成ノードの接続が疎かつマイニングノードが少ない 場合は,ノード接続の分断による再接続ならびに同期処理によってネットワーク遅延の揺 らぎが⼤きくなることが分かった.また,記録⽤途の IoT システムにおいては,実⽤的で あることを確認した.

第 5 章では,各章の内容をまとめると共に,本論⽂の主張ポイントである組込みクラウド コンピューティングシステムについてまとめると共に,今後の展開について述べている.

(27)

図 6 各研究で用いたアーキテクチャ構成

Sensor Module

Memory [Program Code]

NonOS Application CPU GUI

Sensor

Cloud Server Sensor Module

Memory [Program Code]

NonOS CPU Communication

Sensor Application Server

[Program Code]

GUI

Fog Computer

Fog Computer Fog Computer Cloud Server

Sensor Module

Memory [Program Code]

Linux Python

Runtime CPU Communication

Sensor

Fog Computer

Fog Computer

Memory [Program Code]

Linux Python

Runtime

CPU

Communication

Memory [Program Code]

Linux Python

Runtime

CPU

Communication

Memory [Program Code]

Linux Python

Runtime

CPU

Communication

Memory [Program Code]

Linux Python

Runtime CPU Communication

Memory [Program Code]

Linux Python

Runtime CPU Communication

Application Server [Program Code]

Python Conductor

Fog Computer

GUI

Fog Computer

Fog Computer Fog Computer Cloud Server

Sensor Module

Memory [Program Code]

Linux Blockchain CPU Communication

Sensor

Fog Computer

Fog Computer

Memory [Program Code]

Linux Blockchain

CPU

Communication

Memory [Program Code]

Linux Blockchain

CPU

Communication

Memory [Program Code]

Linux Blockchain

CPU

Communication

Memory [Program Code]

Linux Blockchain CPU Communication

Memory [Program Code]

Linux Blockchain CPU Communication

Application Server Blockchain

Fog Computer

Bloc kc hain

(a) (b)

(c) (d)

(28)

第 2 章

組込みシステムのクラウドコンピューティング連携

本章では,クラウドコンピューティング技術のコンピュータリソースであるクラウドサー バを使った組込みクラウドコンピューティングシステムの 2 つの研究を説明している.図 7 に,本研究において対象としているアーキテクチャを⽰す.最初の研究では,これまでの 組込みシステムを機能,性能の観点で分析し,単独で使われてきた組込みシステムを 3G 通 信を使ってネットワークに接続し,クラウドサーバと連携させることで,単体の組込みシス テムでは実現が難しかった画像認識アプリケーションの実装について⾔及し,そのプロト タイプシステムに関する評価を⾏った.次の研究では,通信機能として Bluetooth モジュー ルを採⽤し,スマートフォンを経由でクラウドサーバと通信するシステムの評価を⾏った.

図 7 クラウドコンピューティング連携 Cloud Server Sensor Module

Memory

[Program Code]

NonOS CPU Communication

Sensor Application Server

[Program Code]

GUI

(29)

2.1 3G

を使った組込みシステムのクラウドコンピューティング連携

2.1.1

背景

組込みシステムとは,「コンピュータ組込みシステム」が短縮された語であり,システム製 品や電⼦機器にコンピュータが組込まれたものを⽰す [10] .コンピュータが組込まれたシ ステム製品や電⼦機器はすべて組込みシステムと呼ばれ,組込みシステムはこれらの総称 である.組込みシステムのコンシューマ製品としては,TV ゲーム機やデジタルスチルカメ ラ,カーナビゲーションシステム,等,あり,これらの機器は,かつてはネットワークに密 に接続されていなく,単独で稼働していた機器が多かった.

初期の電⼦機器のユーザインターフェースは,単純な電源スイッチでしかなかった.その 後,スイッチやダイヤルのような簡単なユーザインターフェースを経た後,マイクロコント ローラを使い,キーボードや表⽰装置を持った複雑なユーザインターフェースを持つよう になった.今では SoC(System On Chip)上で稼動する,Web を使った⾼度なユーザインター フェースを持つ機器となってきた.

電⼦機器の重要部品である SoC の開発においては,コストを増⼤化させる要因が多くあ る.要因の例としては,プロセスコスト,IP コスト,ソフトウェア開発・検証コスト,イン ターネットセキュリティ対策コスト,などがある.開発費を償却するためには,世界市場を 対象とする供給数を提供する必要がある.

ユーザの要望もさらに多様化し,システムの機能は複雑なものになり,性能はさらに⾼

まって来ている.競合が多く存在する環境下での差別化追究や,増⼤する開発時間,開発費

⽤のため,これまでの⽇本的な⼤量⽣成のビジネスモデルでは,利益を上げることが困難に なってきた [11] [12].

2.1.2

これまでの組込みモジュールの分析

組込みモジュールはこれまで,⽤途に応じて,電⼦回路,論理回路やマイクロコントロー ラ,SoC を使い,複雑化に進化してきた.ここでは,組込みシステムの内部機能構造と機器 と外部との接続に関しての分析を⾏う.

現在の組込みモジュールは,マイクロコントローラや ASIC, SoC の半導体部品を使ったプ リント基板のハードウェアで構成されている.アプリケーションはソフトウェアで実装さ

(30)

れている.そのソフトウェアは,複数個のタスクを実⾏させる,RTOS(Real Time Operating System)や,リアルタイム性能をチューニングした,リアルタイム Linux 環境で実現された.

組込みモジュールは,制御部,データ処理部,記憶部,操作部,と⼤きく分けることがで きる [4].近年ではさらに通信部が追加される場合が多く,⽤途⽬的の場合は「IoT モジュー ル」と呼ばれることがある.図 8は,現在の組込みシステムの基本的な構造例である.機 器としての⼊出⼒として,センサ⼊⼒,モーター等の制御出⼒を持っており,ユーザイン タ ー フ ェ ー ス と し て , 表 ⽰ 装 置 (LCD) と , キ ー ボ ー ド を 持 っ て い る . ま た 最 近 , M2M(Machine to Machine)や IoT(Internet of Things)のために,組込みシステムがネット ワークとつながることが多くなって来た [13] [14].

図 8 一般的な組込みシステムブロック図

(1) 制御部

制御部(Controller)は,組込みシステムの最も重要な部分で,外部⼊出⼒,データ処理部 (Data Processing),ユーザインターフェース部(User Interface),コミュニケーション

(31)

(Communication)部を総合的に制御している部分である.

制御部の外部⼊出⼒は IO を制御する中⼼的な部分で,⼊⼒としてはセンサからの信号を デジタル信号やアナログ信号で受取る.出⼒としては,モーター,ソレノイド等の駆動部品 やヒーター等の制御信号をデジタル信号もしくは,アナログ信号で出⼒する.制御部のコン トローラは,⼊⼒情報をデータ処理部(Data Processing)で⾼次処理をした結果を基に,出⼒

データを決め,必要に応じたタイミングで出⼒する.

(2) データ処理(アルゴリズム)部

制御部の為の⾼度な数値演算または検索,補間,推測,等を⾏い,組込みシステムの機能,

性能を決める部分である.処理速度,反応速度の時間制約や,実装された機器での CPU 処 理能⼒の限界,メモリ容量の制限,等のリソース制約の為,演算精度を下げ,演算回数を減 少させることで,本来のアルゴリズムを簡易化して実装する場合が多い.

(3) 記憶部

記憶部は,制御部,通信部から送られてきた情報を記録,参照する機能を持つ.メモリの 種類としては,ROM(読み出し専⽤メモリ),不揮発性メモリであるフラッシュメモリ,揮 発性メモリだが⾼速な RAM(ランダム・アクセス・メモリ)があり,アプリケーションに応 じてそれぞれの⽤途に合ったメモリを使⽤する.このブロックは,プログラムメモリ,制御 状態記録,プログラムワーキングメモリ,データテーブル,制御テーブル,ログ,等として 使われる.

(4) 操作部

操作部は,利⽤者への表⽰,利⽤者からの⼊⼒の操作を管轄するブロックである.組込み システムはリソースとしては潤沢ではない少ない⼊⼒モジュール,出⼒モジュールのため,

初期設定,ユーザ操作,モニタリング,通知等の,操作のためのモードを多く持っているこ とが多い.初期設定は,購⼊後最初の電源投⼊時や,使⽤開始時,等に使われる.ユーザ操 作は,利⽤者⾃⾝の設定操作であり,モニタリングは直接の操作を伴わない常時情報確認で ある.通知機能は,機器の異常検知,あらかじめ設定されたイベントによる通知,等がある.

多くの場合,組込みシステムに接続された液晶表⽰パネルやキーボードが使われる.

(5) 通信部

(32)

これまでの組込みシステムは,独⽴で単独に作動していた.最近は多くの組込みシステム がネットワークに接続している.ネットワークに接続し,通信することで,機器の制御・状 態に係わる機能,データに係わる機能,制御コードに関わる機能等,が実現されている.機 器の制御・状態に関しては,これまで⾃律的位置付けにあった組込みシステムを機器側の操 作パネルからでなく,インターネット経由で操作やモニタリングすることも可能である.

データ操作に関しては,サーバからの機器の制御に必要なデータの読込や,サーバへの機器 側のデータの送出が可能である.制御コードに関わる機能に関しては,組込みシステムの内 蔵プログラムに対しての修正の為の,アップデート機能が実装される場合がある.

2.1.3

クラウドコンピューティングでの組込みシステム

これまでの組込みシステムは,半導体技術,ソフトウェア技術の進化に伴い,様々な機能,

性能をその機器に実装し,組込みシステムとして発展してきた.さらに最近では,通信イン フラの普及によりネットワーク化が進み,サーバとの連携が重要課題となっている.組込み システムとサーバとのネットワーク接続は⼆通り考えられる.⼀つ⽬は,組込みシステム⾃

⾝でネットワーク接続のための TCP/IP スタックを持つ⽅法である.⼆つ⽬は,エッジモ ジュールの通信を変換する「ゲートウェイ」を経由して通信する⽅法である.さらに近年で は,スマートフォンやタブレットを経由した通信も⼀般的となり,今後,さらに通信エリア も拡⼤し,通信費⽤も安くなってくるため,本節では通信インフラの課題の検討は,議論の 対象から外した.

サーバの構成⽅法としては,今までの社内設置型のサーバや,社外のデータセンターに設 置したサーバ,クラウドコンピューティングがある.本節で⽤いる「クラウドコンピュー ティング」は,ネットワーク,サーバ,ストレージ,アプリケーション,サービスなどの構 成可能なコンピュータリソースの共⽤プールに対して,便利かつオンデマンドにアクセス でき,最⼩の管理労⼒またはサービスプロバイダ間の相互動作によって迅速に提供され利

⽤できるという,モデルのひとつとして扱っており [15],CPU 処理能⼒,メモリ容量,通 信速度,ストレージ容量,等,性能がアップしてきており,低価格化すると共に,技術リソー スとして⾮常に有効である.クラウドコンピューティングの実現⽅法は 3 種類ある.

「IaaS(Infrastructure as a Service)」はインフラを提供する.「PaaS(Platform as a Service)」

はプラットフォームを提供する.「SaaS(Software as a Service)」はソフトウェアを提供する.

本節では,低価格での提供を前提として,IaaS の実装を議論する.

(33)

組込みシステムにクラウドコンピューティングにつなぐアプローチの報告はいくらかあ る.HaaS はハードウェアモジュールを仮想ハードウェアとしてネットワーク経由でアクセ スするための⼿法を提案している [16].また,既存アプリケーションを修正することなし に,表⽰をネットワーク経由で⾏う提案もされている [17].さらに,Kinect を使った機械 学習の顔認識処理を,Windows Azure で実⾏する特定アプリケーションのクラウドコン ピューティング対応事例の報告もなされている [18].ゴルフ場の電気⾃動⾞の制御を集中 的に⾏う為の環境をデモとして,ハードウェアに近いモジュールを,クラウドコンピュー ティングで実現したプラットフォームからエンタープライズアプリケーションと同じよう に制御する為の仕組みを提供している研究もある [19].

これまで,組込みシステムの技術は,ネットワーク,サーバの技術とは別の領域にあり,

使っているハードウェア,ソフトウェア環境,プログラミング⾔語,等,異なる要件も多かっ た.それらは分離して進化し,また融合の機会があっても閉鎖された領域でのプロダクトで あったため,報告は多くは無かった.

この節では,組込みクラウドコンピューティングシステムの 1 つの実装例として.エッジ モジュールとクラウドコンピューティングとの間の新たな汎⽤構成について提案する.特 に,画像や⾳声の様な容量の⼤きなデータをセンサ情報として扱うシステムを対象として おり,既存の組込みシステムだけでの実装では.エッジ側のシステムを強化する⽅法しかな い規模のシステムにおいて,エッジ側の消費電⼒減少や,コストダウンを期待するシステム を構築するための⽅法に焦点を絞った.その構成は図 9 に⽰すように,エッジモジュール は最低限の機能と性能を確保し,クラウドコンピューティングでこれまで組込みシステム 側で⾏われてきた制御,データ処理の⼤部分の機能を実⾏する.

(34)

(1) ユーザインターフェース部の分離

これまで組込みシステム側のユーザインターフェースは,システムコスト削減のために,

⼤きさも充分でなく,表現も限定された表⽰装置や,充分な個数,⼿段を確保できない⼊⼒

装置を持つ場合が多かった.また多くの場合,制御部分を作るソフトウェアエンジニアが必 要に応じて⽚⼿間に作っていた場合が多かった.数が少ない操作リソースで複雑なユーザ インターフェース要求を実現するため,モードの考えを取り⼊れることでさらにユーザ操 作が複雑となることで,機器側の操作プログラムも複雑化した.ユーザに対しては取扱説明 書やヘルプでの⽂章を使った操作説明必要となると共に,そのプログラムの検証項⽬の検 証も煩雑になってきた.

近年,スマートフォン,タブレットが⼀般的となり,多くの⼈がそれらの機器を所持する 様になってきた.貧弱であった組込みシステムのユーザインターフェースの⼤部分をほと んどスマートフォン,タブレットに移⾏することで,組込みシステム側のユーザインター フェースに係わるコストや開発負荷を削減すると共に,組込みシステム側の利⽤者の利便 性,わかりやすさを向上させることが可能になる.そのためには,組込みシステムとスマー トフォン,タブレットとは何らかの通信⼿段が必要である.スマートフォン,タブレットは,

第 3,4 世代移動体通信ネットワーク(3G/4G), Wi-Fi, Bluetooth,等の通信機能が揃ってお り,組込みシステムが直接,間接にかかわらず,スマートフォン,タブレットと接続するた めの通信⼿段を持つことで,ユーザインターフェースの⼤部分を分離することが可能と なってきた.

Simple Real-time

Control Cluster

C om m un ic at io n C lu st er

Sensor Input

Control Output

Cloud Computing

Application Server

Algorithm Server

Smart Phone / Tablet (for User Interface) End Device

図 9 クラウドコンピューティングと連携する組込みシステム

(35)

ユーザインターフェースの作成に関しては,スマートフォン,タブレットですでに使われ ている Web ブラウザ上で稼働する Web アプリケーションを使うことで,広い画⾯を潤沢 に使ったユーザインターフェースを実現することが可能になる.

アプリケーション部分のクラウドコンピューティング化

これまでの組込みシステムにおいて,組込みシステムとしての主処理は内蔵されたプログ ラムコードを CPU で実⾏する.プログラムコードはメモリデバイスに格納されているため,

市場に出た後の製品のプログラムアップデートは⾮常に⼿間のかかることとなり,売切り 製品でのアップデートの実施はほとんどできない.

ここでは,その主処理をクラウド側のサーバに置き,組込みシステム側にはその分離され たサブプロセスを実⾏させることで,アプリケーションの⼤部分の開発,稼働,メンテナン スをクラウドサーバに実装する⽅法を考える.アプリケーションの主処理をクラウドサー バに置くことで,機能や性能を容易に改善でき,組込みシステムに対するユーザの追加要望 に対してタイムリーに対応することができるようになる.さらに,これまでの 1 機能 1 ハー ドウェアの考え⽅から,クラウドサーバへの多機能実装が実現でき,サーバ側でのプログラ ム変更の容易さにより,プログラムの信頼性向上や,機能向上・追加も期待できるため,サ ブスクリプション型の新しい機器サービスの提供もできるようになる.

リアルタイム部分のクラウドコンピューティング化

組込みシステムの最も重要な機能がリアルタイム制御であることは明らかであるが,これ まで組込みシステムが持っていたユーザインターフェース部分を分離することで,数 mS で 反応が必要なタスクの⼤部分が不要となる.残りのリアルタイム部分は,数 μS でのレス ポンスが必要な機能以外の⼤部分は,組込みシステム側での直接制御でなく,クラウド側の 処理でまかなうことが可能であると推測し,モデルを組み⽴てた.まず,レスポンスタイム を複数段階に分け,⾼速性の必要な処理をエッジモジュール側で実⾏するようにし,それ以 外の⾼速性を要求しない処理をそれぞれクラウドサーバに振り分ける.

データ処理(アルゴリズム)部分のクラウドコンピューティング化

多くの組込みシステムは,低消費電⼒,低価格を要求されるため,機能を実⾏するための CPU リソース(CPU 処理能⼒,メモリサイズ,バスメモリ速度,等)は⼤きな制約がある.

そのため機器の機能を実現するアルゴリズムの種類,個数が限定され,また演算精度,演算

(36)

条件,パラメータ数,繰り返し演算回数,等の性能制限のため,組込みシステム⾃体は機能,

性能まで制約される場合が多い.これらの制約が多かったデータ処理(アルゴリズム)部分 を,クラウドサーバ側に移す事により,潤沢な CPU リソースを持つクラウドサーバを利⽤

することができる.アルゴリズム開発者はプロトタイプのために使った PC を超える CPU 処理能⼒を使うことができ,パラメータを微妙に変えて並⾏実⾏させたり,別の種類のアル ゴリズムを使ったり,その結果を組込みシステム側で利⽤することにより,クラウドサーバ と連携した組込みシステムはさらに利便姓があがると思われる.また,そのアルゴリズムに ついても,組込みシステム毎に 0 から実装するのではなく,あらかじめミドルウェアとし て利⽤可能なアルゴリズムライブラリとして⽤意し,無償⼜は従量課⾦の低価格で利⽤で きるようにすることにより,これまでの組込みシステムでは実現できなかった,複数のアル ゴリズムを動的に組み合わせたアプリケーションや,認識精度を上げるために,アルゴリズ ムでのパラメータを微妙に変えた複数の実⾏や,異なるアルゴリズムを並列に稼働させ,そ れぞれの結果の多数決を取る実⾏形態を実現することができ,今までとは異なるサービス,

提案を提供できるようになる.

2.1.4

クラウドコンピューティングを使った渋滞状況検出システム

クラウドコンピューティング連携を実証するために,提案している構成の⼀部を実現し,

既存の⽅法の実装との⽐較を⾏った.実装例は,「渋滞状況検出システム」であり,⾞のダッ シュボード上に設置するカメラアプリケーションを想定した.

まず,運転中に,前⽅を⾛⾏中,または,すれ違った⾞のナンバープレート情報をカメラ で⾃動撮影し,ナンバープレート情報,GPS による位置情報,時間情報をインターネット 経由で,サーバ側に送信する.ナンバー(⼜はナンバーのハッシュ値)と位置情報,時間情 報は DB(DataBase)に格納される.蓄えられた情報を,ビッグデータとして処理することで,

それぞれの道路での渋滞情報を,スマートフォン,タブレット等に表⽰するアプリケーショ ンである.図 10 に「渋滞状況検出システム」の全体図を⽰す.まず,Image Capturing で 得られた画像データは,プレート識別(Number Plate Detection),番号認識(Number Recognition)の2つのブロックから構成される,ナンバープレート認識部(Number Plate Recognition)で処理をされる.認識されたナンバー情報と,撮影された位置情報,時間情報 が,データベースに登録される.データベースに蓄えられた,[ナンバープレート, 位置, 時 間]の情報を,地図上にマッピングし,ナンバープレート固有の移動速度を統計的に計算す

参照

関連したドキュメント

ESET NOD32 Antivirus ESET Internet Security ESET Smart Security Premium 64ビットダウンロード.

12) Security and Privacy Controls for Information Systems and Organizations, September 2020, NIST Special Publication 800-53 Revision 5. 13) Risk Management Framework

ESET Server Security for Windows Server、ESET Mail/File/Gateway Security for Linux は

Background paper for The State of Food Security and Nutrition in the World 2020.. Valuation of the health and climate-change benefits of

ESET NOD32 Antivirus ESET Internet Security ESET Smart Security Premium 64ビットダウンロード.

The Representative to ICMI, as mentioned in (2) above, should be a member of the said Sub-Commission, if created. The Commission shall be charged with the conduct of the activities

In Partnership with the Center on Law and Security at NYU School of Law and the NYU Abu Dhabi Institute: Navigating Deterrence: Law, Strategy, & Security in

Changes in the Designated Security Plan Article 5 If the owner of the designated Japanese vessel certified as set forth under paragraph 1 of the preceding Article hereinafter