みなさんこんにちは。
営業課の伊庭と申します。
IoTという言葉を頻繁に耳にするようになってから、随分時間が経ったように思いますが、改めて周りを見渡すと、当たり前のようにその関連技術が様々な分野で取り入れられています。
※(今更ですが)IoTとは…様々なモノをネットワークを通じてクラウドサービスへ接続し相互でデータのやり取りを行う事です。
IoT市場の拡大に伴い、IoT関連の開発が増加しています。特に、スマートホームやスマートシティ、自動車、医療機器など、IoT機器が多く使用される分野では、IoT関連の開発が盛んに行われています。
当社の開発実績でもIoT開発関連が6割以上を占めています。
従来のモノは単独で動作するか、もしくは簡単な通信で上位側(パソコン等)のみと通信を行っているだけでしたが、昨今は身近な家電やポータブル機器は、スマホやパソコンでオンオフ制御や状態監視が可能になり、まさにIoT化が進んでいますね。また、クラウドサービスを利用することで、さまざまなサービスを受けられる時代にもなってきました。
ここでは、クラウドサービス(開発側)について少し触れてみたいと思います。
クラウドサービスに接続するには、ネットワークのプロトコルが必要になり、ソフトウェアでTCP/IP、MQTT、HTTPなどのプロトコルスタックの実装が必須になってきます。
また、これらのプロトコルスタックを実装するには、OSが必須になってきます。
それでは、組み込み機器ではどのようなOSを使えばよいのでしょうか?
マイコンに実装できるOSは大きく分けて2種類あります。
① リアルタイムOS
✓ 必ず決められた処理を時間内に終わらせる必要がある。
✓ 高レベルのタスクから処理を行う。
✓ 日本で規格化されたμITRON仕様のOSが国内では最も多く使用されている。
✓ 最近ではオープンソースのZephyrやAMAZONのFree-RTOS、マイクロソフトのAzure RTOSなど選択肢が多くある。
✓ CPUのコア1個に対して1つのOSを実装するため、マルチコアのマイコンには向いていない。
✓ ミドルウェアはサードパーティ品を購入する事が多い。
② Linux
✓ オープンソースOSの代表格でRaspberry Piなどで採用されている。
✓ ソースが公開されているので、コミュニティに参加してカスタマイズや改善が行える。
✓ リアルタイム処理を求める機器には向いていない。(処理時間に限界値を決められない)
✓ MMU(メモリ管理ユニット)が搭載されたマイコンでの使用が必須。
✓ オープンソースの為、ソース公開の義務がある。
✓ アプリケーション開発はC/C++以外にPython/JAVAなどでも開発が可能。
このようなOSを用いてIoTの組み込み機器は開発されます。
しかし・・・・
- IoTをはじめてみたいけど何から手を付けていいかわからない。
- 実現の可否をPoCで試したいが、何を組み合わせればよいかわからない。
- 試作開発を行いたいが、通信方式は何を選べばよいかわからない。
このような悩みをお持ちのお客様は多いのではないでしょうか?
WTIでは最適なOSの提案からソフトウェア設計、回路設計、高周波設計、基板設計、筐体設計までワンストップで試作開発に対応いたします。(下図が弊社の開発実績の一部となります。)
IoTを試してみたいけど、どこから手を付けていいかわからないというお客様は、是非、弊社へお問合せ下さい。弊社で実現に向けたサポートをさせていただきます。
【関連リンク】
WTIメールマガジンの配信(無料)
WTIエンジニアが携わる技術内容や日々の業務に関わる情報などを毎週お届けしているブログ記事は、メールマガジンでも購読できます。ブログのサンプル記事はこちら
WTIメールマガジンの登録・メールアドレス変更・配信停止はこちら
WTIの技術、設備、設計/開発会社の使い方、採用関連など、幅広い内容を動画で解説しています。