mruby/cが工業用ミシンの不良率を8割削減、ローコード開発環境への展開も:ET&IoT 2021
しまねソフト研究開発センターは、「ET&IoT 2021」の「フクオカしまねmruby×IoTパビリオン」において、軽量の組み込み機器向けプログラミング言語「mruby/c」の採用事例や、プログラミングに詳しくない初学者や製造業の技術者向けのローコード開発環境などを紹介した。
しまねソフト研究開発センターは、「ET&IoT 2021」(2021年11月17〜19日、パシフィコ横浜)の「フクオカしまねmruby×IoTパビリオン」において、軽量の組み込み機器向けプログラミング言語「mruby/c」の採用事例や、プログラミングに詳しくない初学者や製造業の技術者向けのローコード開発環境などを紹介した。
mruby/cは、軽量Rubyとして知られるmrubyをさらに小型化した組み込み機器向けプログラミング言語である。消費メモリ容量は数十KB(50KB未満)で、16ビットマイコンでも実装可能なことを特徴としている。その一方で、Rubyの持つ生産性、表現力の高さを引き継いでおり、組み込み機器の開発で広く用いられているC言語よりも短いステップで実装が可能だ。
これまでmruby/cの採用事例の多くはIoT(モノのインターネット)プロジェクトのPoC(概念実証)などが多かったが、今回の展示では実運用されている機器での採用事例が紹介された。
例えば、JUKI子会社のJUKI松江では、工業用ミシンの制御プログラミングにmruby/cを採用した。自動車用シートなどの厚革の皮革製品向けの工業用ミシンは制御にカスタマイズが必要であり、そのために最適なPLCのプログラミングを効率化することが課題になっていた。そこで、軽量なスクリプト言語であるmruby/cに着目。プログラミング作業の負荷を減らしつつ試作開発プロセスを重ねることで、縫いの不良が発生する確率を従来比で80%低減することに成功した。また、mruby/cで作成したコードが軽量なこともあり、制御装置のサイズを従来比で50%削減、コストを25%削減できたという。
また、富士通系のITベンダーであるテクノプロジェクトは、コロナ禍に対応するCO2モニタリングIoTシステム「WaKaYo」の開発でmruby/cを活用した。WaKaYoは、厚生労働省が推奨するNDIR(非分散型赤外)方式で正確にCO2を測定し、スマートフォンやタブレット端末のアプリに表示するシステムだ。センサーユニットの制御はPIC32マイコンとmruby/cで、アプリの開発はRubyで行っている“オールRuby”で構築したシステムとなる。同社は、ソフトウェア系ITベンダーであり、マイコンを用いた制御は専門ではなかったものの、Rubyの知識があれば扱えるmruby/cを用いることで、短期間での開発につなげられたという。
「smalruby3」や「Node-RED」でローコード開発環境に展開
軽量で扱いやすいmruby/cだが、これをさらにローコード環境に展開しようという取り組みも進んでいる。松江工業高等専門学校との共同研究では、ScratchをベースにRubyのビジュアルプログラミングを行えるようにした開発環境「smalruby(スモールビー)3」とmruby/c、mruby/c対応のPIC32マイコンボード「RBoard」を用いたIoT教材を開発した。学生向けにとどまらず製造業の技術者にも展開しており、ニッポーの島根工場(島根県奥出雲町)では、プログラミングスキルを持たない社員がこのIoT教材を用いて製造検査工程の自動化を行うというフィールド実証に用いている。
一方、九州工業大学との共同研究では「Node-RED」をベースにmruby/c対応のRBoardを扱うためのモジュールを追加した開発環境を披露した。これにより、IoTシステムの開発などで活用されているNode-REDを用いたデータフロープログラミングにmruby/cを活用できるようになるという。
関連記事
- Rubyがマイコンで違和感なく動く、「mruby/c」は新バージョンで実用段階へ
しまねソフト研究開発センターは、「ET&IoT Technology 2019(ET2019)」の「フクオカしまねmruby×IoTパビリオン」において、軽量Rubyとして知られるmrubyをさらに小型化した組み込み機器向けプログラミング言語「mruby/c」の最新バージョンとなる「mruby/c2.0」を紹介した。 - 軽量Rubyのmrubyをさらに小型化、「mruby/c」は16ビットマイコンにも実装可能
しまねソフト研究開発センターは、「Embedded Technology 2018/IoT Technology 2018(ET2018)」において、軽量Rubyとして知られるmrubyをさらに小型化した組み込み機器向けプログラミング言語「mruby/c」の展示を行った。IoT(モノのインターネット)に用いられるセンサーなどエンドポイントデバイスへの適用を想定している。 - “Rubyの良さを組み込みに”を合言葉に開発された「mruby」とは何か
Rubyを軽量化、組み込み向けとして開発された「mruby(軽量Ruby)」が今、IoTでの開発言語として注目されています。Cに比べてコード量を1/4まで低減するmrubyについて、この連載では“mrubyはIoTでこう使え”までを分かりやすく解説します。 - “組み込みRuby”こと「mruby」をセットアップしてみよう
Rubyの特長を組み込み開発に反映させたプログラミング言語が「mruby」です。今回は実際のセットアップと基本的な構文について解説します。 - mrubyとマイコンボードで“IoTを手作り”してみよう
生産性が高く習得も容易なRubyの組み込み版「mruby」用い、実際にマイコンボード「enzi」との組み合わせで、取得したセンサーデータをTCP/IPでサーバへ送るIoTデバイスの開発を行います。 - Web界から組み込みに向けられた刺客「mruby」はこう使われている
「Rubyの良さを組み込みに」を合言葉とする開発言語「mruby」は公開以来、着実な進歩を遂げ、さまざまな場面での利用も進んでいます。ここでは「Web界から組み込みに向けられた刺客」(まつもとゆきひろ氏)たる、mrubyの採用事例を紹介します。
関連リンク
Copyright © ITmedia, Inc. All Rights Reserved.