事業内容
- DX推進/IoT開発事業
- AI/ROBOTICS開発事業
IoTという言葉が一般的になってきた昨今。「IoT開発に興味がある」または「IoT開発を実行しはじめた」という、ご担当者の方も多いのではないでしょうか。
IoT活用が実現できれば、事業のさまざまな課題に対してアプローチが可能です。実際に、IoTを活用して事業をダイナミックに改善した、という事例も数多くあります。
しかし、アイデアのひらめきはあるものの、IoT開発は実際どうやるの?という技術面で、キャッチアップができず初動に困るというご相談をご担当者さまからよくいただきます。
そこで今回は、さまざまなIoT機器、IoTサービスの開発を行ってきたASTINAで得られた豊富なIoT知見、実装経験をベースに、「IoT機器、IoTシステム開発の流れと構成要素」について、ノウハウをわかりやすくまとめました。
IoTとは、Internet of Thingsの略で、直訳すると、「モノのインターネット」です。すべてのモノがインターネットにつながる事で、今まで取得できていなかったデータが取得可能になります。
よく身近で聞くようになった、スマート家電もそうで、スマートフォンなどを介して機器を操作できます。
これが最近では、工場やモノづくり、その他産業なんかでも活用されてきており、効率化や新たな付加価値の創出につなげる企業様が増えています。これら機器の通信を通じて、データ活用や自動化をはかる動きを総じて「インダストリー4.0」といい、昨今のトレンドでもあります。
IoTについて詳しく知りたい方は、以下の記事でIoTとは何かを解説していますので、こちらから参考にしてみてください。
ここからは、IoTの構成要素をお伝えしていきます。IoTは、エッジデバイス・クラウド・アプリケーションの三要素が主な構成要素です。
エッジデバイスとは、広義ではインターネットに接続された製品全てのことを指します。特にIoTシステム内でのセンサなどを搭載した製品は、システムの末端に位置するため、エッジデバイスと呼ばれます。
エッジデバイスは今や一般的に普及していて、その代表格はスマホです。スマホは実は加速度やGPS、カメラなどの各種センサが多数搭載されています。工事現場などで作業員が保持するビーコン(発信機)などもエッジデバイスといえるでしょう。
エッジデバイスの開発には、電子回路の知識と組み込み系やWeb系のプログラミング知識が不可欠です。エッジデバイスは屋外で使用されることが多いため、開発の際には防水や通信の問題などが発生する可能性があるので注意が必要です。
現在では、簡単にエッジデバイスを開発できるキットも多数販売されているため、うまく利用すれば実証実験までの期間を短縮できます。
クラウド設置の目的は、主にエッジデバイスで収集したデータの集約です。解析用のプログラムも、ほとんどの場合クラウド上で動かします。
従来では、自社の事業所やデータセンタなどに物理的にサーバーを準備した「オンプレミス」と呼ばれる形態が一般的でしたが、最近はネットワークの発展により手軽に利用可能なクラウドサービスが急速に普及しています。コストも物理的にサーバーを導入するよりも抑えられることがほとんどです。
クラウド開発では自社の情報セキュリティポリシーへの準拠状況や、従量課金制のため費用に関する問題が発生しやすいため、多角的に設計する必要があります。
アプリケーションは、主にエッジデバイスで取得したデータの処理や、処理したデータを可視化するために使われます。主にWebアプリやスマホアプリを想定しています。PCやスマートフォンからアクセスできることで、ユーザーの利便性も高まるはずです。
アプリケーションの構築には、プログラミングの知識はもちろん、クラウドとアプリケーション、エッジデバイス間の通信の知識も必要になります。
近年よく話題に挙がるIoTとAIの連携では、AI処理モデルを構築して学習させるためにAIの専門知識が必要ですが、最近では手軽にAIを利用できるAPIを提供するサービスも各社から出てきています。
スマホやWebブラウザのバージョンによるアプリケーションの不具合や、使用しにくい操作画面などのUIの問題、クラウドとの通信・表示の問題などが開発の過程でよく発生するため、こちらについても注意が必要です。
IoTシステムの構成要素が確認できたら、次はIoTシステム全体の開発の流れをみていきましょう。IoTシステムの開発は、一般的に要件定義、設計、開発、検査、納品の流れで進みます。
まずは、どのようなIoTシステムが欲しいかについて要件を洗い出していきます。特にエッジデバイスについては、試作の要件定義と量産の要件定義が存在します。また近年、IoTのセキュリティがよく話題に挙がりますので、スニッフィング※1を中心に情報漏洩に関する対策を要件に盛り込んでおきましょう。
IoTシステムの開発を外注する場合は、要件の漏れが無いようにRFP(提案依頼書)を作成しておくと対応がスムーズとなります。ASTINAではコンサルティングも行っているため、要件が固まっていないところからまとめていくことも可能です。
その後は要件に基づいて、設計、開発、検査、納品のフェーズで実施する内容と役割分担を詳細に決めていきます。また要件定義の段階で、要件の実現性をテスト機などである程度確認する事で、より漏れなく完成度を高めることができると考えます。
※1 スニッフィングとはネットワークを流れるデータを捕らえ、内容を解析して盗み見ることです。
実際にシステムの個々の機能が動作するかの検査や、各エッジデバイスが予期した動作をするかの検査をここで実施し、問題なければ各基本構成の要素間の連携テストを実施していきます。エッジデバイスが試作段階の場合は、検査の結果が問題なければ量産設計に移ります。
連携テストも問題がなければ、次は実際に現場へIoTシステムを搬入し、運用テストの実施です。
ASTINAで実際に実装したIoT開発事例をみていきましょう。
加速度センサ搭載デバイスとゲートウェイ機器2点の試作・量産を行い、100msごとの加速度データをお客様管理サーバーに送信するシステムを開発しました。
デバイスのサイズは、1円玉2枚分以下まで小型化し、ゲートウェイは開発スピードを優先するため、RaspberryPi※2を採用しています。
お客様側でプロトタイプの製作はできていたものの、改良や量産を見据えると社内のノウハウでは解決できない課題があったため、ASTINAへご依頼をいただきました。
※2 RaspberryPiとはシングルボードコンピュータと呼ばれる小さなハードウェアです。
屋外に設置してセンサ値の時間変化を測定できるデバイスの試作を行いました。気温・湿度・照度センサの3つのセンサを搭載し、数分間隔で測定したデータをBLE通信でスマホに転送します。
お客様は、このデバイスを屋外作業現場に設置して、熱中症の予防対策などへ活用することを予定していました。
屋外での使用要件があったため、防水・防塵設計を施し、雨の日でも片付けが不要で長期的な測定ができるようにしてあります。また、液晶画面を搭載することでスマホが無くてもデータを確認可能です。
その他にも、乾電池での駆動や省電力設計、無線通信など、ASTINAの多くのノウハウを反映させて、品質の向上を図りました。
上記の事例のほかにも、IoTの活用をすることで、たくさんの課題に対するアプローチが可能です。
弊社の事例ページから、IoTの活用事例が見れますので、参考にしてみてください。
IoTは、エッジデバイス・クラウド・アプリケーションの三要素が主な構成です。
IoTシステムの開発は、要件定義、設計、開発、検査、納品の流れで複数の企業が関わって進行していきますが、ノウハウ不足などでマネジメントが非常に困難になるケースが多いと思います。
ASTINAでは、これらの開発をワンストップで実施できるため、お客様側での煩雑なマネジメントや開発作業は必要ありません。加えて、原理試作(PoC)~量産(MP)までの流れに関わるコンサルティングも実施対応しております。
IoTシステムの開発でお困りの場合は、お気軽にご相談ください。