自動車業界では、MATLAB/Simulinkをベースとしたモデルベース開発が有望視されています。言うと、適用方法によってはそれなりに工数削減や品質向上が出来ると言う事が実証されてきたからです。一方ではモデルベース開発によって逆に工数が増加してしまうケースもあり、まだまだ課題が山積みです。これは、ユーザー様にとっては課題が山積みと言えますが、私にとっては仕事のネタが山積みとも言えます。このブログでは、そういったモデルベース開発に関わっていく中で思った事について書いていきます。更新日は月曜日+気が向いた日です。Coder(1)からの続きです。今回は、M-Fileで書いたアルゴリズムをハードウェアに実装するための方法について考えて見ます。M-Fileでもって演算アルゴリズムを作成し、MATLABである程度の検証を行ったとしましょう。次は、実際にハードウェアに実装して、ちゃんと動くか試してみる番です。なんだかんだ言って、実機に勝る検証対象はありませんからね。具体的には、マイコンを用意して、そこにCコードをコンパイルしたファームウェアを書き込む形になるかと思います。Coderを使ってM-FileをCコードに変換したら終了、めでたしめでたし。いう風に行けばいいのですが、さすがにそれは油断しすぎです。それでうまく行ったとしても、よっぽどラッキーだっただけでしょう。Coderとは、MATLABのm-fileからCコードを生成してくれるツールです。なーんだ、それだけかとも思うのですが、意外と大きな変化への第一歩なのかも分かりません。Development)という分野が出来るかも?なんて思ったりしてます。(まぁ、今は単なる言葉遊びですけどね)MBD(モデルベース開発)という言葉には色々含まれますが、やはり制御ロジックをSimulinkモデルで書くのが1つのキーになっている気がします。そのメリットは、ロジックを自然言語で表現するより曖昧さがなく、そしてCで書いたりするよりも簡単に書けるところにある気がします。Cというのは「とりあえず書ける」レベルにはすぐいけますが、「品質の良いコードを書ける」レベルに行くのは結構ホネが折れます。それくらいなら、Simulinkモデルの作り方を習得したほうが遥かに早かったりします。モデルベース開発のメリットこれのアナロジーでいくと、M-fileベース開発だって成り立ちそうです。M-Fileベース開発のメリットもちろん、「モデルベース開発」と「M-Fileベース開発」のどっちを選ぶ?と聞かれたら、まずモデルベース開発を選ぶと思います。「CやSimulinkは分からないけど、m-fileなら分かる」「既に、m-fileで作った資産がいっぱいある」という場合であれば、M-Fileベース開発というのもアリだと思います。Coderの概要についてさっくりまとめてみます。Coderの件も気にしつつ、ping代わりにしょうもない小ネタを。(忙しい!忙しい!忙しい!)ウチは、田舎の小さな小さなソフト屋さんなわけですが、ソフトというのは頭を使います。物事を理解して、判断して、お客様のお役に立つような何かを作っていきます。そんな仕事をしていると、「このロジックはどう実現したらいいだろう?」とか、「なんで、こんな現象がおきているんだろう?」とか、他人と議論しないといけないときがあります。運が良ければサクサクと話が進みますが、そういうケースばかりでもありません。