公益財団法人しまね産業振興財団 しまねソフト研究開発センター

IoTシステムのハードウェア/ソフトウェアを全てRubyで実現
しまねソフト研究開発センター(以下ITOC)は平成27年に設立された。
島根県内からITを活用したビジネス創出を目指す企業に対し、先駆的な技術(AIやIoTなど)の支援を行い、新しいサービスを加速させるというミッションを掲げている。
今回、ITOCの支援事業であるmruby/cの開発や技術支援の状況について、徳田氏と東氏にお話を伺った。
小型の組込み機器・IoTデバイス向けの生産性向上が期待されるmruby/c
組込みシステム開発ではC言語やPLCのラダー言語が広く用いられている。しかし、ラダーでは複雑な処理を記述しづらく、C言語では本来やりたい処理とは無関係な複雑さがある。どうしても計算機側の都合に合わせたプログラミングをせざるを得ないからだ。
これをRubyが持つ生産性の高さと表現力の豊かさで解決できるのが mruby/c だ。mruby/cは組込みシステム開発向けの軽量Ruby(mruby)をさらに省メモリ・省電力化。小型の組込み機器・IoTデバイスでも活用できるスペックを実現している。
こういった特性に着目した企業がmruby/cを採用し、生産性の向上に効果があったという事例が徐々に増えてきている。
市場に広がるmrub/cの活用
mruby/c を活用する取り組みは、ITOC研究員の東氏が、企業・団体と共同研究という形で技術指導を行い、現在では10数社にまで広がっている。「mruby/cを活用した製品・サービスが徐々に市場にリリースされています」と徳田氏は話す。
ITOCのサイトにある mruby/c の活用事例 には、様々な産業で活用が始まっている様子がわかる。

室内の二酸化炭素濃度を測定し換気のタイミングを知らせてくれる。コロナ対策として飲食店などで需要が高まる。
こうした取り組みの始まり方として、企業側が市場調査を行い mruby/c に興味を持った上で相談に訪れる場合もあるが、ITOCが開催するmruby/cやマイコンを使ったハンズオン講座など、コミュニティに参加したことがきっかけになることもあるのだという。
じつは簡単に始められるmruby/c
IoTの急激な普及に伴い組込みエンジニアが注目される中、人材は大きく不足していると言われている。インターネットなどから情報を集めやすいWebのシステム開発とは事情が大きく異なるからだ。製造業の知識、開発環境、ハードウェアの特性など、求められる知識の領域が違いすぎることが理由として挙げられる。
学習コストが低く生産性の高いRuby。この特性を備えるmruby/c は、組込みエンジニアの人材不足の解消にも貢献できると見込まれている。それでも、Webの開発を行なっているエンジニアがハード向け開発を行うには壁がある。
そこでITOCでは、mruby/cが最初から搭載されているマイコンボード(RBoard)を用いたハンズオンを開催するなどして、間口を広げるコミュニティ活動にも力を入れている。
ドリンクディスペンサーのハンズオンレポート(ITOCのレポートサイト)
「RBoardを使うと開発環境を構築といった大袈裟な作業は不要で、PCとシリアルケーブルがあれは誰でも始められます」と東氏は話す。
組込み機器の保守性の向上にも期待
組込み機器ではバグや機能改善を行う場合、容易に行うことができない。現場に赴きファームウェアのアップデートを実施する必要があるからだ。こういった課題に対して、あくまで想定段階と前置きしつつ、「レイヤーを分けることでmruby/cを活用できる可能性がある」と東氏。
具体的には低レイヤーは既存のライブラリなど実績のあるものを使い、上のレイヤーをmruby/cで開発する形だ。実際のアルゴリズムに関わる部分をmruby/cで実装し、ユーザーごとのカスタマイズや機能改善をmruby/cで吸収する。一部のルーターではmrubyを使ってこういった戦略を採用しており、ファームウェアのアップデートなどで効果が上がっているのだという。今後は開発時の生産性だけではなく、保守性の向上も期待できる。
これからのITOCとmruby/c
福岡県や大阪府など、さまざまな地域と連携しているITOCは、島根県外からの相談にも数多く対応している。今後もそういった連携を通してmruby/cの良さを伝え、よりよいIoTサービス作りに貢献していきたい、と話すのは徳田氏。
東氏はmruby/cの次のバージョンリリースに取り掛かっている最中だという。実行速度が大きく改善される見込みなので楽しみにしていて欲しい。また、組込みの世界では、信頼性という指標がついてまわる。今後もその領域に力を入れていく、と東氏は話す。
ITOCはIoTシステム開発の様々なフェーズで技術支援を行なっている。アイデアからプロトタイプの作成、製造企業のマッチングまで幅広く相談に乗ってもらえる。IoT領域でビジネスを検討されている企業は、mruby/cを採用する検討と共に、一度相談してみてはいかがだろうか。
そして、IoTに興味があるエンジニアのかたは是非、簡単にはじめられるmruby/cの魅力に触れてみて欲しい。より本格的に開発をしたくなった時には、ITOCとコミュニティが必ず貴方の力になってくれるだろう。
※本事例に記載の内容は取材日時点(2022年6月)のものであり、現在変更されている可能性があります。
事例概要
- 開発した主なシステム・開発企業
- CO2モニタリングIoTシステム「WaKaYo」
(株式会社テクノプロジェクト) - 河川の雨量・水位観測システム
(株式会社藤井基礎設計事務所・株式会社島根情報処理センター) - Ruby(mruby/c)を標準搭載したマイコンボード「RBoard」
(株式会社島根情報処理センター) - Rubyで記述できるキーボードファームウェア「PRK Firmware」
(株式会社モンスターラボ) - 自動車用シートの厚革製品向け工業用ミシン補助装置「JUKI Engineer Board」
(JUKI松江株式会社)
- ニーズおよび解決したかったこと
- 組込システムにおいて、高級言語「Ruby」を使って生産性の向上を図りたい。
- 小型の組込み機器・IoTデバイスでもRubyでプログラミングを実現したい(小型化)
- 県内IT企業のIoT分野への事業進出・市場参入の促進(事業・技術支援)
- Ruby採用理由
- 高い開発生産性・可読性の高さ
- Ruby処理系・実装の充実
- 島根県のIT企業にRuby技術者が集積
- Ruby採用効果
- IoTシステムのハードウェア/ソフトウェアを全てRubyで実現
- 島根県内IT企業のIoT分野における事業進出・市場参入を促進
- 他業種(主に製造業)におけるニーズ創出(需要創造)