MATLAB/Simulink 2013aあたりからArduinoの入出力ピンを制御することができるらしい。
相変わらずの異常な拡張性を実現するMathworksすごい。
使い方としては、
というステップを経ていく。
上記の3.のステップで配置できるライブラリブロックとしては以下のものが標準部品として用意されている。
上記の4.のステップはSimulinkのシミュレーション中にArduinoも同期的に実行できるのかなと思ったが、そうではなくてSimulinkモデルからArduinoで実行できるコードを生成しそれを実行してくれるだけだった。
注意が必要なのは、MATLAB起動後にArduinoを再接続すると、 Simulink内でArduinoが認識なされなくなること。 そのときにはSimulinkの"モデルコンフィグレーションパラメータ"で"ハードウェア実行"タブのところでCOMポート等の再設定することで認識させられる。
一番単純なサンプルは以下のようなもので、 指定したデジタル出力ピンにパルスを出力することを確認した。