自動車業界では、MATLAB/Simulinkをベースとしたモデルベース開発が有望視されています。言うと、適用方法によってはそれなりに工数削減や品質向上が出来ると言う事が実証されてきたからです。一方ではモデルベース開発によって逆に工数が増加してしまうケースもあり、まだまだ課題が山積みです。これは、ユーザー様にとっては課題が山積みと言えますが、私にとっては仕事のネタが山積みとも言えます。このブログでは、そういったモデルベース開発に関わっていく中で思った事について書いていきます。更新日は月曜日+気が向いた日です。yositakeTags:お仕事でMATLAB向けツールを作る場合、m-fileで書く場合が殆どです。m-fileは、小規模なツールを作る分には問題ありませんが、世の中のスクリプト言語たちと比べるとパワー不足が目立ちます。使い捨てツールのつもりで作ったものがバカうけして、いつのまにかお客様の開発を支える重要なインフラになっちゃったやつがあります。(ツール屋さんのお仕事で書いたものとは、ぜんぜん別のものです)このツールには、あの機能をのせたい、この機能をのせたい、という要望がモリモリ来て、いつのまにか、それなりの規模になってしまいました。これ以上、m-fileでメンテナンスをするのは無理!という所まで来てしまったため、脱出先を検討しています。yositakeTags:あれはたしか今年の1月、某社のとってもとってもえらーい方に年初のご挨拶に伺ったときの事。「ペンレコで、とったデータを印刷したいんだけど、いい方法ある?」と、突然のフリを頂きました。ペンレコっていうのは、ながーい紙にひたすらグラフを書いていくための装置です。計測結果の出力に使います。計測すると同時にグラフを書くには、たぶんこれしかありません。ところが今回は計測データをいったん電子データ化したあと、印刷したいとの事。要するに、「パソコンの画面だと見にくーい。紙に印刷して見たいよぅ。yositakeTags:もう1ヶ月近く前の話ですが、ISO26262が発行されたようですね。夏ごろ出る予定と言われていたものが、ようやく出た感じです。ISO26262の規格書(?)はPart1~10の10パートに分かれていて、それぞれ1万円くらいします。このうちPart1~9までが発行済み。10だけはもうちょっと時間がかかるようです。Part1~9をISOのショップから購入しました。92,000円と、お高い!のですが仕方がありません。昔、ドラフト版26262にも同じくらい払ったので、結構な出費です。ISO/DIS26262(ドラフト)と、ISO/26262(正式)、それぞれのPDFファイルをざっとDIFFツールにかけて見ましたが、劇的に何かが変わっているといった様子はありません。Cあたり)になっていますし、そのほかにも気になる変更がチラホラ見受けられます。違いが大違いっていう話もありそうなので、これからじっくり見ていく予定です。yositakeTags:引き続き、VehicleSpyを使ったCAN開発について見ていきます。前回のCAN入門(2)では、ECU単体の開発を行うために、CANバスをモニターしたり、CANバスにメッセージを送出したりしました。今回は、ECU単体での検証は済んだものとして、実車による検証にフォーカスします。CANインターフェースは、スタンドアロン動作もできるNeoVIというデバイスを使用します。yositakeTags:ちょっと予定を変更して、動画を作ってみました。(注意:音声あり)<どうでもいい話>しゃべりながら録画したら、すごくラクかなと思ったんですが・・・めちゃくちゃ時間がかかりました。スクリーンショット張りつつ文章書いてたほうが相当ラクですね。荒削りですが、今回はこれでヨシとします。ノウハウをためて行くと、いずれマシな動画が作れるようになるかも。yositakeTags:CANを使った開発をする際、開発ツールがあるととても便利です。CANに限らず、通信内容をモニターできるのと出来ないのとでは、開発効率に雲泥の違いが出ます。そこで、VehicleSpyというツールを使うと、どんな感じになるのかまとめてみます。ちなみにCANツールで有名どころというと、やっぱりVectorさんですね。CANoeというツールなどが有名です。CANoe向けのカスタマイズ案件をやらせていただいた事もありますが、すごく良く出来ているツールだと思います。別の案件でVehicleSpyを使うことがあり、その関係でVehicleSpyを持っているので、それを使うことにします。(機能的にはぜんぜん不満はなく、技術サポートにも満足しているため、これで不自由は感じていません。yositakeTags:社命です。今日からCANを使った開発をしなさい。言われる事もあるでしょう。サラリーマン的な選択肢は、ハイかYesしか無いわけで、どうにかしないといけません。私なら、まずは次の事を調べます。・CANとは、そもそも何なのか?・CAN開発のための環境をどう揃えたらいいのか?そこで、今回からのシリーズでは、これらの疑問にザックリと答えてみます。(ザックリすぎると思うので、あとからちゃんとした資料にあたってください。yositakeTags:私は、外注という立場で働いています。工数がオーバーフローしそうになると、お客様の諒解を得た上で、さらに外注さんに協力を依頼します。最近は、この金額がものすごく膨らんできています。この「さらに外注さんに協力を依頼」するとき、いくつかの課題が存在するように思います。技術力はつくが、資金効率が悪いどう対応するのがベストか分かりませんが、とにかく第一歩を踏み出さなくてはいけません。そこで、次のような仮説を立てました。yositakeTags:忙しさクライマックスなので、でたわごとを。ここのところのエコブームをうけて、あちこちでCANを使い始めたという話を耳にします。(私のまわりだけ?)内容は書けませんが、VehicleSpyを開発しているICSさんも、それにあわせた市場を狙っている模様です。おき、CANの裾野がひろがるのであれば、それにあわせた入門記事の需要なんかもありそうな気がします。ネットでCAN入門書とか、車載ネットワーク入門とか、立派な記事はいくつも見つけられますし、良い書籍も存在していますので、もそっと違った切り口がよさそうです。やるとしたら「今日から、君の仕事はCAN通信するマイコン制御だ。超ザックリとCANの仕様を説明どんなツールでどうデバッグしていくか?などをご説明するのが、面白そうな気がします。ネタ集めをしたいのと、とにかく忙しすぎるので、来週、再来週あたりはお休みするかも分かりません。ウチは、テスト専用チームなんて持てないテスト管理に関する、成熟した文化を持っていないという極小組織です。基本的にはズボラをしつつ、多少はテスト管理をしてみようかな、という感じで始めて見ました。ちなみに、単体テストは対象外です。(C++testを使って自動化しており、これで困っていません。