RSS RSS

自動車業界では、MATLAB/Simulinkをベースとしたモデルベース開発が有望視されています。
なぜかと言うと、適用方法によってはそれなりに工数削減や品質向上が出来ると言う事が実証されてきたからです。
一方ではモデルベース開発によって逆に工数が増加してしまうケースもあり、まだまだ課題が山積みです。
これは、ユーザー様にとっては課題が山積みと言えますが、私にとっては仕事のネタが山積みとも言えます。
このブログでは、そういったモデルベース開発に関わっていく中で思った事について書いていきます。
更新日は月曜日+気が向いた日です。連絡先: yositake@smooth-works.net

  • Links

  • Categories

  • Meta

  • Archives

  • SHOW/HIDE NAVIGATION
    11月
    30

    この記事からの続きです。

    今回から、RTAI用のアプリをどう書くか?編です。

    とにかくテンプレートのように、コピペしてすぐ使える!という形式を目指しています。新たにRTAIアプリを組む時は、今回からの記事から必要な部分だけコピペして下さい。

    なお、ここで使用するサンプルコードはすべてこちらの記事で構築した環境にて確かめています。

    今回の記事で出来るようになる事は・・・

    • Makefile
    • ベースコード
    • メッセージ送受信
    • メッセージ送受信(長いメッセージ)
    • 定期的な処理

    続きを読む

    11月
    23

    仕事をしていくうちに、どんどんノウハウを積み重ねていき、どんどん仕事が楽になる。その結果、どんどん生産性があがり、どんどんボーナスも増えて行く。すごく理想的ですね!

    同じソフトウェアを作るにしても、そのスピードは人によって数倍~数十倍の差があると言います。これは個人的な意見ですが、「正しいやり方を知っているか否か?」が、このスピードに対する重要なファクターの1つではないかと思います。

    「正しいやり方」というノウハウを積み上げて行くには、「いかに分かりやすく書くか?」が重要です。そこで今回は、私が普段考えている、技術ノウハウの文書化方法について書いてみます。

    まず、技術文書は大別して「マニュアル的」なものと、「ハウツー的」な物に分かれると考えています。

    document_091123_00図1 マニュアル的な文章は、機能列挙型

    マニュアル的な文章とは、どういう機能があるのか?をひたすら列挙している文書のことです。読むのにすごく時間がかかりますが、製品の機能を100%網羅してくれます。

    document_091123_01図2 ハウツー的な文章は、機能の組み合わせ方を示す

    ハウツー的な文章とは、○○するにはどうしたらいのか?が書いてある文章のことです。読む時間を最小限にして、最大限の効用が得られるように書いてあります。

    では、これらをどのように使い分け、どのように書いていったら良いのでしょうか・・・?

    続きを読む

    11月
    16

    QRTAI-Lab for Windows

    Posted In: FreeHILS by yositake

    以前、FreeHILSプロジェクトの方向付けという記事の中で、次の4ステップを定義しました。

    • Windowsに移植 (Linuxで動いているGUIをWindowsに!)
    • 拡充ベースの作成 (GUIやI/Oの種類を増やせるようにする)
    • 拡充の実施 (GUIやI/Oを実際に増やす)
    • インストーラの作成 (Windowsアプリ、およびLinux OSのインストーラ)

    これらのうち、まず第一ステップであるWindowsへの移植の一部が完了しました。移植ついでに日本語対応してあります。日本語OSであれば日本語で、それ以外のOSであれば英語で表示されます。

    freehils_09_00

    図1 QRTAI-Lab for Windows 実行画面

    まだまだアルファバージョンです。お試しいただいて、不具合を見つけられた際にはぜひご連絡ください。なるべく善処しますので。

    ライセンスはGPL2です。要するにフリーソフトですね。

    ちなみに、プラットフォーム依存性はなくしたつもりです。ですから、Linux上でコンパイルして実行する事も可能です。コンパイルするには、Qt4.5以降と最新のQwtを使用して下さい。また、main.cpp内のQ_IMPORT_PLUGINを2つコメントアウトしてください。

    続きを読む

    11月
    16

    この記事からの続きです。

    RTAIで何が出来るか?の「IPC」編その4です。

    • Net_RPC
    • タスク、メールボックスの名前

    についてまとめます。

    なお、RTAI入門(2)のタスクのリアルタイム化は、全ての基礎となっています。ですから、ここだけはご一読をお勧めします。

    また、NetRPCとはリアルタイムタスク、メッセージ、メールボックスなどをリモートに扱うための物です。そもそもこれらが何なのか?については、過去の記事をご覧ください。

    リアルタイムタスクについての記事

    メッセージについての記事

    メールボックスについての記事

    「タスク、メールボックスの名前」については、ローカル、リモート関係なく全てに通用する概念です。かなり細かい話になるため、これまで避けてきました。しかし、次回からは具体的なRTAI用コードに入ります。ですから、ここで説明しておきたいと思います。

    続きを読む

    11月
    9

    この記事からの続きです。

    RTAIで何が出来るか?の「IPC」編その3です。

    • 共有メモリ
    • FIFO
    • セマフォ

    についてまとめます。

    なお、共有メモリ、FIFO、セマフォは、カーネルモードのアプリを作る時にうれしいものです。

    一方、今回のシリーズはユーザーモードのアプリを主眼に考えています。ですから、今回は軽く流します。

    なお、RTAI入門(2)のタスクのリアルタイム化は、全ての基礎となっています。ですから、ここだけはご一読をお勧めします。

    続きを読む

    11月
    2

    この記事からの続きです。

    RTAIで何が出来るか?の「IPC」編その2です。

    • メールボックス

    についてまとめます。

    なお、RTAI入門(2)のタスクのリアルタイム化は、全ての基礎となっています。ですから、ここだけはご一読をお勧めします。

    続きを読む