RTAI-Labみたいな、フリーなHILSを組みたいと思ってらっしゃる方は、RTAI-XMLも良いオプションかも分かりません。
このプロジェクトはつい先日公開されたばかりで、必要な各種コンポーネントをパッケージングして、realtime-suiteという名前で公開しています。
さらに、UbuntuにインストールしたVirtualBoxイメージも公開されています。運用前にざっくり試すにはよさそうです。
ちょっと変わっているのは、ホストとターゲット間の通信をXML-RPCを使って実現しようとしている所です。最初に見たときはオイオイ、パフォーマンス的にどうなんだ・・・と思ったのですが、どうせハイパフォーマンスなHILSが必要なら、数百万~数千万のシステムを使うでしょう。そう考えると、メンテが楽そうな分、XML-RPCの採用はいい方法かも分かりません。
FreeHILS フェーズ1の経過報告です。
本当は、フェーズ1を完了させておきたかったのですが無理でした。仕事の方で色々と新企画を練っていまして、そちらに土日の時間を吸い取られてしまったせいもあります。しかし、技術的に困難な問題がいくつも持ち上がった事が大きいです。まぁ、ボチボチがんばります。
完了した事
- Windows上でSicoslabモデルをコンパイルすると、Linuxマシンに自動転送&ビルドする
- Windows上でSimulinkモデルをコンパイルすると、Linuxマシンに自動転送&ビルドする
- ScicoslabでRTAI-Labを使用する際の不具合をいくつか修正
これからやる事
- 転送&ビルドアプリに、もっと遊び心を加える
- 各種ライブラリのビルドにも対応する
- RTAI-Lab for Windowsから、直接Linuxマシン上のモデルを起動できるようにする
- RTAI-Labが元々もっている、いくつかの不具合を修正する
せっかくなので、現状のスクリーンショットを掲載します。
続きを読む
以前、FreeHILSプロジェクトの方向付けという記事の中で、次の4ステップを定義しました。
- Windowsに移植 (Linuxで動いているGUIをWindowsに!)
- 拡充ベースの作成 (GUIやI/Oの種類を増やせるようにする)
- 拡充の実施 (GUIやI/Oを実際に増やす)
- インストーラの作成 (Windowsアプリ、およびLinux OSのインストーラ)
これらのうち、まず第一ステップであるWindowsへの移植の一部が完了しました。移植ついでに日本語対応してあります。日本語OSであれば日本語で、それ以外のOSであれば英語で表示されます。

図1 QRTAI-Lab for Windows 実行画面
まだまだアルファバージョンです。お試しいただいて、不具合を見つけられた際にはぜひご連絡ください。なるべく善処しますので。
ライセンスはGPL2です。要するにフリーソフトですね。
ちなみに、プラットフォーム依存性はなくしたつもりです。ですから、Linux上でコンパイルして実行する事も可能です。コンパイルするには、Qt4.5以降と最新のQwtを使用して下さい。また、main.cpp内のQ_IMPORT_PLUGINを2つコメントアウトしてください。
続きを読む
せっかくRTAI-Labの解析が終わったのですが、ふとした拍子にもっと良い物を見つけてしまいました。
それは、RTAI-LabのQt版で、QRtaiLabと呼ばれています。こちらで公開されています。

ちょっとさわっただけでも不具合をいくつか見つけてしまいましたので、正直まだまだ発展途上なのだと思います。しかし、とにもかくにもRTAI-LabをQtに移植してくれたのは喜ばしい限りです。こちらをベースに作業を行う事で、5~8作業日(=1~2カ月)は短縮できる事でしょう。
ただし移植されているのはGUI部分だけで、RTAIのAPIにはべったり依存しています。ですから、RTAIのNetRPCをWindowsに移植する作業はどの道行わないといけないようです。
さて、QRtaiLabを使ってみようという方のために、構築手順を書いておきます。
<2009.10.25追記>FedoraへのRTAIインストール法をお探しの方はこちらの記事の、「Linuxカーネルへのパッチあて」の項目をご覧下さい。</2009.10.25追記>
続きを読む
今週は、GUIアプリの解析をおこないました。なにぶん手を付けたばっかりなので、これという成果もありません。そこで、こんなやり方をしているよ、という所をご紹介します。「他人の書いたプログラムを読む」方法について、少しは参考になるでしょうか。
GUIアプリは、だいたい7000行ちょいの、かなり小さなものです。しかし、このGUIは EFLTK という未知のツールキットに依存しています。そして、RTAIという未知のAPIにも依存しています。解析するのは簡単ではありません。
設計書もないソフトウェアを読みながら解析するのって、けっこうウンザリしますね。みなさん、どうやっているのでしょうか。良い方法をご存じの方は、教えていただけると嬉しいです。
続きを読む
今回は、これまで得た情報を元に今後の方向付けを行います。これから半年とか1年とかかけて、何をしていく事になるのか?をご理解いただけるかと思います。

まずは、これまで書いた記事を読み返しました。そして、要望っぽいものを拾い集めました。
すると、要望としては次の3つに集約される事が分かりました。
- GUIベースで簡単にインストールしたい
- GUIベースで簡単に使用したい
- I/Oボードを色々使いたい
すごく当たり前ですね。そして、その実現のためにやるべき事を列挙し、それらを縮約していくと、次の4ステップになりました。
- Windowsに移植 (Linuxで動いているGUIをWindowsに!)
- 拡充ベースの作成 (GUIやI/Oの種類を増やせるようにする)
- 拡充の実施 (GUIやI/Oを実際に増やす)
- インストーラの作成 (Windowsアプリ、およびLinux OSのインストーラ)
これから、これらの詳細についてご説明します。
続きを読む
今回は、RTAI-Lab上でI/Oボードを動かしてみます。「RTAI-Labってフリーでしょ?本当にリアルタイム処理が出来るの?」とお疑いの方は、画像を見ていただくだけでもおおよその性能が分かって頂けるかと思います。
たまたま、インターフェース社のPCI-2727というボードが遊んでいました。このボードはDIOボードです。そこで、Scicosモデルからこの子をコントロールして、矩形波を出力してみることにします。どれくらいのジッタが出るのか、見ものです。

続きを読む
今週は、RTAI-Labを動かしている所をお見せします。「フリーのリアルタイムシミュレーション環境がどんな感じか、手っとり早く調査したい!」という方は、30秒間だけ、スクリーンショットをざーっと流し読みしていただくだけでも価値があるかと思います。

RTAI-Labは、
・Scicos + RTAI-Lab
・MATLAB/Simulink/Realtime-Workshop + RTAI-Lab
の両方の組み合わせで動きます。ただし、いずれもLinux環境のみです。
残念ながら、MATLAB/SimulinkはWindows版しか持っていませんので、まずは Scicos を使って動かしてみました。
いずれ、RTAI-LabをWindowsに移植した際には、MATLAB/Simulinkとの組み合わせにもチャレンジしてみたいと思います。
続きを読む
まずは動かしてみるべく、インストール作業を行いました。なかなかに難航したのですが、なんとかインストールまで完了しました。ただし、これだけで土日をまるまる2日、つぶしてしまいました・・・ちゃんと動かしてみるのは来週になりそうです。
環境としては、
・Linux : Fedora 11
・RTAI-Lab : 3.7.1
です。
「FreeHILSはさておき、完全フリーであるScilab+RTAI-Labにてリアルタイムシミュレーション環境を構築したい!」という方のために、作業手順を書いておきます。
続きを読む
今回は、FreeHILSに使えそうなパーツについて、ざっくりと情報を集めてみました。「HILSシステムのコストダウンの可能性検討」をされている方や、「モデルベース開発に関する情報は何でも集めて、シミュレーション関連に強くなりたい!」と考えていらっしゃる方にとっては、面白い話になるかと思います。
さて、Scicosと、ScicosでHILSっぽい処理が出来るようにしてあるものが、既に存在するという事は知っていました。ここにあるPDFファイルの中で、Scicosを使ってリアルタイムシミュレーションをするための一連の流れがレポートされているからです。(しかし、FreeHILSの要件を全て満たしてくれるかどうかは分かりません。)
ですが、レポートは流し読みしただけで、具体的なツールチェーンについてはまだ読んでいませんでした。ですから、具体的にどんなモジュールが必要で、それらのライセンスはどうなっているのか?という所を調べることにしました。
理想の構成は、こうでした。一般的なHILSはこんな感じが多いです。

しかし、既存のツールを組み合わせると、こうなってしまいそうです。Linux上でGUIを操作しないといけない、というのがやっかいです。

FreeHILSは、Scicosと、あとRTAI-Labというツールがあればベースが出来そうです。しかし、このRTAI-LabがLinuxベースなのです。ですが、今のところは気にしない事にしましょう。
続きを読む