エンジニア風味 (Engineer-taste)

電子系エンジニアのメモ帳

Simulinkで書き込んだArduinoをスタンドアロンで動作させる

今回は、温度センサtmp275をI2C接続したArduinoSimulinkからプログラミングし、Simulinkなしで、Arduinoスタンドアロンで動かす、というのをやってみます。

前回のとおりに、SimulinkArduino用Add-onはインストール済みだとしますwww.engineer-taste.com

Matlabのコマンドウィンドウから、"arduino_I2C_temp"をタイプし、エンターキーを押します。

f:id:engineer-paju:20190406122308p:plain
図1 Simulinkのサンプルを開く

Simulinkのサンプルのウィンドウが開きます。

f:id:engineer-paju:20190406122408p:plain
図2 Simulinkのウィンドウ

デフォルトの設定では、ArduinoはMega 2560になっているので、別なタイプのArduinoを使う場合は設定の「歯車マーク」を押して、変更します。

f:id:engineer-paju:20190406133244p:plain
図3 Arduinoの変更
f:id:engineer-paju:20190406133324p:plain
図4 ハードウェアボードの変更

センサデバイスは左側の" I2C " をクリックして修整します。このサンプルでは27℃を超えると 13pinに接続されたLEDが点灯するようになっているので、そちらを変えたい場合は右のボックスをクリックして修整します。

f:id:engineer-paju:20190406133724p:plain
図5 設定変更(その2)

ひととおり設定して(ハードがPCにつながっていることも確認してください)、問題なければ、実行ボタンを押すと、コンパイルして動作します。
Simulinkのほうは、温度も表示されます。

f:id:engineer-paju:20190406134009p:plain
図6 実行

ちゃんと動くようなら、右上の" Deploy to Hardware"ボタンを押すと、コードを生成して、Arduinoに書き込んでくれます。
左下の表示が「準備完了」になればOKです。

f:id:engineer-paju:20190406134553p:plain
図7 スタンドアロンのための書き込み