近未来の情報処理システムについて語る文脈の中で「CPS」という言葉を耳にしたことがある人は多いのではないでしょうか。CPSとは、Cyber Physical Systemの略であり、デジタルな仮想世界「Cyber」と現実世界「Physical」の間に位置する情報処理システムのことです。現実世界で起きる大量・複雑・多様な問題を、仮想世界でなければ実現できない高速・正確・柔軟な情報処理能力を駆使して解決することを目的としたシステムだと言えます。
でも、これまでのICTシステムだって、デジタル技術を駆使して、日々の生活を便利にしたり、ビジネスの効率や価値向上を狙って開発・運用されてきたはずです。いったい、従来のICTシステムとCPSでは、何が違うのでしょうか。
CPSは、世界中の製造業企業が取り組む第4次産業革命「Industry 4.0」や日本政府が打ち出すデジタル技術を駆使する未来社会のコンセプト「Society 5.0」の実現手段として紹介されることが多いように思います(図1)。今回は、これからの生活・産業・社会に大きなインパクトをもたらすと言われるCPSとは何なのか、Industry 4.0とSociety 5.0で目指すことを再確認しながら考えたいと思います。そして、CPSに求められる技術的要件を整理し、CPSの構成要素となる組込みシステムの開発で求められることについて解説したいと思います。
「部分最適」+「部分最適」≠「全体最適」
Industry 4.0とSociety 5.0には、従来のICTシステムには見られなかった高い志が盛り込まれています。業界や分野を超えた「全体最適化」という視点からのシステム構築を目指している点です。
過去の生産システムや社会システムでは、特定の場所、目的、事業体、技術分野に対象領域を限定し、その領域内での「部分最適化」を追求することが多かったように思えます。ところが、部分最適化した結果を単純に足し合わせても、広い視野から見直して見ると、必ずしも望んだ効果が得られない例が多く出てきていました。よかれと思って最適化したシステムが、産業や社会全体の無駄と課題を生むことさえあったのです。
このことを端的に示す例を挙げましょう。渋滞している道を避けて、目的地までクルマを誘導するシステムを考えたとします。これまでのカーナビゲーション・システムでは、現時点で空いている道を見つけて、そこにクルマを導いていました。しかし、ちょっと考えれば分かることですが、多くのクルマが同じ道に誘導されれば、さっきまで空いていた道も渋滞してしまいます。ボールがある場所に全員が集まってしまう“子供のサッカー”のような状態になってしまうのです。
この例は、結果だけを見れば思慮の浅いシステム開発に思えるかもしれません。しかし、従来の産業や社会の仕組みの多くは、多かれ少なかれ、こうした部分最適化の発想で構築・運用されてきました。電力網は、停電を防ぐことを第一に考えるあまり、電力消費のピークに合わせた冗長な発送電網が作られ、運用されています。ゴミの収集だって放置を避けるため、実際にゴミが出ていようがいまいが、定期的にすべての収集所を回ります。製造業、小売り、建設、物流、運輸、エネルギー、医療、農業、教育、行政など、あらゆる業界・分野で、こうした部分最適化だけを目指したシステムの構築・運用が行われてきたのです。
ところが、財政難や少子高齢化による労働人口の減少、さらには資源不足や地球環境保護などの観点から、こうした無駄を看過できなくなってきました。さらに産業界でも、グローバル化と技術革新で大きく変化したビジネス環境に、過去に最適化した硬直化したシステムが対応できなくなったのです。
全体最適化は、まず現場の様子を知る仕組み作りから
では、こうした無駄を最小限に抑え、広範囲を対象にした全体最適化をするためにはどうしたらよいのでしょうか。ここに答えを出すことが、CPSの役割になります。人間の目が届く範囲や対処できる仕事の量は、自ずと限られています。とても、社会全体に目配りして、様々な場所で起きることを勘案して最適化し、きめ細かく対処することなどできません。そこを、ICTの腕力で解決しようとするのがCPSの狙いです。
社会全体の動きを視野に入れて全体最適化を進めるためには、まず、最適化の対象領域全体を俯瞰して、状況を正確に把握しなければなりません。前述した渋滞回避を例に取れば、道路を走る個々のクルマの位置、目的地などのデータを、より広範でデータをリアルタイム収集したいところです。それを実現するためには、必要なデータを現実世界から吸い上げるIoTの仕組みが不可欠になります。クルマの場合には、位置や動きを検知するセンシング機能と、これらのデータにドライバーが入力した目的地情報を合わせて、中央のサーバーに伝送する通信機能が必要になってきます。自動車メーカー各社は、クルマに関連したCPSを活用した様々なサービスを提供するため、将来的には販売する全車をコネクテッドカーにする予定です。おそらく、最もCPSによる全体最適化の威力を実感できる分野になることでしょう。
収集した莫大なデータを基に全体最適化した課題解決策を見つけ出すためには、大容量・高性能のサーバーが必要になります。この時、全体最適化を目指すのならば、このサーバーをクラウド上に置き、それぞれの現場(例えば個々のクルマ)から得たデータを集中管理できるようにしておく必要があります。
そして、渋滞回避の例では、個々のクルマを空いている道に誘導するのではなく、渋滞を発生させないように分散誘導するためのルートを探し出すことになります。“子供のサッカー”を、効率よくスペースを埋めてゴールを目指す“フォーメーション・サッカー”へと進化させるわけです。その際、工事や通行規制、天候などパブリックな情報も加味してルートを計算します。こうした処理を都市レベルの広域を対象に行います。そんなことが実際に可能かと思われる人もいるかもしれませんが、ドイツのVolkswagenは、渋滞を発生させないように全体最適化した各車の誘導経路を量子コンピュータで導き出すシステムを開発。約2200万人が暮らす大都市である北京市を対象にして、渋滞解消のルートが見つけられることを実証しました(図2)。
全体最適化を目指すCPSのシステムは、クルマのほかにも多くの分野で構築が検討されています。たとえば、製造業の分野では、市場での商品の販売データに合わせて、必要とされる商品を必要な数だけ生産する市場連動型の生産システムの構築が検討されています。また、複数拠点のラインから産業用ロボットの稼働データを収集し、より多くの稼働例を学んだ賢い人工知能(AI)を共有して、生産効率を高めようとする試みも進んでいます。
サーバーをどこに置き、どうつなぐかがCPS構築の鍵
CPSでは、現場で収集したデータを迅速にサーバーに送り、そこで即座に最適解を求め、その結果をさらに速やかに現場にフィードバックできることが理想です。しかし、実際にはデータを収集し、解析した情報を活用する現場とサーバーの間でのデータ転送には時間がかかります。もちろん、現場(例えばクルマの中)にサーバーが置かれていればデータ転送の時間は無視できるでしょうが、全体最適化を目指すCPSでは多くの場合、遠方のデータセンターに転送することになります。つまり、必然的にデータ転送に用いる通信技術の性能で、CPS全体の性能や応用可能な分野が決まることになります。
ただし、工場や物流の現場、さらにクルマなど輸送機器などには、いちいち遠方に置いたサーバーに問い合わせていたのでは、迅速な対処ができない処理もあります。たとえば、生産ライン上での製品検査におけるAIを活用した画像認識処理などがそれに当たります。大容量の画像データを遠方まで送ると非効率ですし、送受信に要する遅延時間の間に対処不能な状態になる可能性があります。
たとえ、AI処理に必要な高性能なコンピュータを検査装置に組み込めないまでも、高速な産業用ネットワークでつながれた工場内にサーバーを置いておく必要があるでしょう。CPSの中には、多くの組込みシステムがエッジ・デバイスとしてネットにつながることになるでしょう。そして、CPS中の組込みシステムを開発する際には、全体最適化に向けてクラウドに送るべきデータと、エッジ側でのリアルタイム処理が必須になるデータをきっちりと切り分けて、通信技術の選択や内部構成を考えることが重要になります。
どこでもデータを送受信できる無線でCPSの利用シーンを拡大
機器のリアルタイム制御処理が求められるCPSでは、エッジ・デバイスをつなぐネットワーク技術として、遅延時間が一定時間以下に確実に抑えられる有線の産業用ネットワークの活用が想定されることがほとんどです。数十マイクロ秒でのデータ転送、数十ナノ秒でのノード間同期を保証しながら、通常のEthernetに匹敵する高速データ転送が可能な産業用ネットワーク「TSN(Time-Sensitive Networking)」が実用化し、CPS向けとしての使い勝手が向上しました。これからのCPS向け組込みシステムでは、TSNを活用する場面が増えてくるのではないでしょうか。
ところが最近、エッジ・デバイスを無線でつなぎたいという要求が高まってきています。より多くのエッジ・デバイスをネットにつなごうとすると、有線では、ネットワークの敷設や設定にかかる労力と時間、コストがかさむようになるからです。
食品工場などでは、生産品目が頻繁に変わり、その都度生産ラインのレイアウト変更があります。そのたびにネットワークを再構築するのでは、手間がかりすぎます。さらに、食品に限らず、市況に合わせて生産品目を柔軟に変えて販売と生産の全体最適化を図るフレキシブルラインを構築するために、生産工程の変化に合わせて装置間でのワークの搬送ルートを変える搬送機を使いたいと考えるところも出てきています。こうした変化が激しいラインや動き回る装置があるラインでは、無線を介したサーバーへの接続が欠かせません。
これまで、IoT向け無線通信と言えば、Wi-FiもしくはBluetooth、ZigBeeが定番でした。組込みシステムで無線を活用する場合にも、これらの技術を使うことが多かったことでしょう。最近では、中距離通信向けとして、中距離LoRaWANやNB-IoT、SIGFOXなど、LPWA(Low Power Wide Area)ネットワークが使われるようになってきました。しかし、これらは低消費電力での送受信が可能であるなど、エッジ・デバイスの接続に適した特徴を備えていますが、速度や遅延時間などの面から見れば、CPS向けとしてはそぐわない点がありました。CPSの利用シーンを拡大するため、無線でなおかつリアルタイム性を確保できるネットワークが求められてきたのです。
5GとWi-Fi 6はCPS向きの無線技術である
ただし、2019年から2020年にかけて、第5世代移動通信システム(いわゆる5G)や次世代無線LAN「Wi-Fi 6(正式名称はIEEE 802.11ax)」といった、CPS向けとして最適な無線技術が立て続けに実用化していく予定です。5GとWi-Fi 6には、よく似た無線技術が投入され、性能はほぼ同等です。双方とも、これまでの携帯電話向けや無線LAN以上に高速化され、さらにリアルタイム性も強化されています。これらは、利用する場所と目的に応じて使い分けられることになるでしょう(図3)。
5Gでは、「最大20ギガbpsの超高速」「1ミリ秒以下の超低遅延」「1km2当たり100万デバイスとの超大量接続」と、無線通信技術としても基本性能が大幅に底上げされます(図4)。特に注目すべきは、遅延時間を極めて短時間に抑え、同時接続できるデバイスが増えることです。5Gはスマートフォン向けの無線技術だと思っている人が多いのですが、実はCPSへの応用でこそ、その真価が発揮できると言えます。日本では、総務省が2019年4月10日に各通信事業者に周波数を割り当て、いよいよエリア限定のプレサービスが2019年中に、本格的サービスが2020年に開始される予定です。
さらに、CPS向け5Gの活用法として、「ローカル5G」と呼ぶ利用形態が想定されている点は注目できます。通信事業者以外の企業が、特定地域内だけで有効な免許を取得し、無線LANのようなプライベートな無線通信網として活用するものです。総務省は、2018年11月に、4.5GHz帯の200MHz幅、28GHz帯の900MHz幅をローカル5G向けに割り当てる方針を打ち出しています。そのうち28GHz帯の100MHz幅分に関しては先行して制度整備を終え、2019年内にも敷地や建物ごとに免許を与えることができるようにする見込みです。
ローカル5Gの活用には、免許の取得が必要だったり、設備の敷設にそれなりの費用が掛かるといった大掛かりな準備は必要です。また、5Gに用いる周波数帯の電波は、建物素材や形状によって複雑な反射・回折・透過が混在するため、屋内利用の際にはそれなりの技術が必要になります。しかし、遅延時間の保証が求められる用途やエッジ・デバイスを高密度で密集させるような用途では大きなメリットがあります。また、アクセス回線と基幹通信網をつなぐ、バックホールとしての利用も進むと思われます。5Gのメリットをいかに活用するかは、組込みシステムの開発者にとっても重要な開発テーマとなることでしょう。
一方、Wi-Fi 6は、2.4 GHz帯と5 GHz帯を活用し、免許の取得も不要な、エッジ・デバイスのアクセス用として使い勝手のよい無線通信技術です。最大データ転送速度は9.6Gbpsと非常に高速です。ただし、既存のIEEE 802.11ac(これからはWi-Fi 5と呼ばれます)でも6.9Gbpsを実現していたので、これだけを見れば約1.4倍に高速化しただけという印象があります。その真価は実効速度で発揮され、約4倍に高速化される見込みです。これは、多重化技術を改良し、同じチャネルを複数ユーザーが同時利用する際に生じていた無駄を徹底的になくしたことによって実現します。これによって、遅延時間の短縮にも寄与し、ミリ秒単位のスケジュールでの確実なデータ転送を実現します。さらに同時接続可能なデバイス数もWi-Fi 5の4台から2倍に増えて、8台になります。
CPS向け組込みシステムの開発では、用途と設置場所に応じた通信技術の選択と、通信性能を見定めたうえでのシステム構成の策定が成否を決めることになるでしょう。選択肢が増えた通信技術について、ちょっと深く勉強してみるのもよいかもしれません。
-
- 第1回 組込みシステムのこれから
- 第2回 IoTの成功はセキュリティ次第
- 第3回 組込みでもGPUやFPGAと早めに親しんでおこう
- 第4回 電子産業の紅白歌合戦、CEATECで垣間見えた未来
- 第5回 小口開発案件の集合市場、IoTの歩き方(上)
- 第6回 小口開発案件の集合市場、IoTの歩き方(下)
- 第7回 徹底予習:AI時代の組込みシステム開発のお仕事
- 第8回 いまどきのセンサー(上):ありのままの状態を知る
- 第9回 いまどきのセンサー(下):データを賢く取捨選択する
- 第10回 組込みブロックチェーンの衝撃(上)
- 第11回 組込みブロックチェーンの衝撃(下)
- 第12回 エネルギーハーベスティングの使い所、使い方
- 第13回 「人を育てる」から「道具を育てる」へ、農業から学ぶAI有効活用法
- 第14回 CPS時代に組込みシステム開発に求められることとは
- 第15回 次世代車のE/Eアーキテクチャに見る組込みの進む道
- 第16回 RISC-Vが拓く専用プロセッサの時代
- 第17回 振動計測の大進化で、熟練エンジニアのスキルを広く身近に
-
- 零の巻:組込みというお仕事
- 壱の巻:2進数と16進数を覚えよう!
- 弐の巻:割り込みとポーリング
- 参の巻:printf()が使えない?
- 四の巻:これにもIntelが入ってるの?
- 五の巻:Endianってなに?
- 六の巻:マルチタスクとは
- 七の巻:スタックってなあに?(1)
- 七の巻:スタックってなあに?(2)
- 八の巻:メモリを壊してみましょう
- 九の巻:コードが消える?~最適化の罠~
- 拾の巻:例外が発生しました
- 拾壱の巻:コードサイズを聞かれたら
- 拾弐の巻:キャッシュは諸刃の剣
- 拾参の巻:デバイスにアクセスするには
- 拾四の巻:セキュリティってなに?(1)
- 拾四の巻:セキュリティってなに?(2)
- 拾四の巻:セキュリティってなに?(3)
- 拾五の巻 :DMA対応と言われたら(1)
- 拾五の巻 :DMA対応と言われたら(2)
- 拾六の巻:ヒープとスタック
- 拾七の巻:フラグメンテーション
- 拾八の巻:CPU起動とブートローダ
- 拾九の巻:kmとKByteの「kとK」
- ビリーへの質問:DMAとキャッシュの関係
- ビリーへの質問:スタックオーバーフローについて
- ビリーへの質問:CPUレジスタについて