• Showing Page History #114369

Show page source of IntroDuction #114369

= '''導入'''

 PJSCを導入するには最初にArduinoのシールドとなるPJSCボードを製作し、接続するArduinoへ専用のファームウェアを書き込む必要があります。Arduinoへファームウェアを書込み、PJSCボードを接続するとPJSC本体は完成です。しかしそれだけではECUとして機能せず、チューニングソフトウェア『Tuner Studio』と接続して搭載する車両に適切な設定を行う必要があります。くれぐれもこれを行う前に車両へ接続しないで下さい。

 ArduinoはUSBケーブルでPCと接続するだけでファームウェアを書き込む事が出来、他に追加のハードウェアは必要ありません。


 以降の項ではファームウェアのコンパイルとArduinoへの書き込みの方法、Tuner Studioの新規プロジェクト作成方法について説明しています。

== ファームウェアコンパイルとArduinoへの書き込み

==== 必要な物:
 *	WindowsまたはMac OSかLinuxがインストールされたPC

 *	Arduino IDEバージョン1.6.7以降

 *	最新版のPJSCファームウェア(以下を参照)

 *	Tuner Studio MS Lite / Ultimate

== ファームウェアのダウンロード
 PJSCファームウェアはOSDNを通じてインターネット上に公開しています。OSDNの下記URLからリリースパッケージ一式をダウンロードして下さい。

 *	PJSC Personal Forge:[https://osdn.net/users/maharu/pf/PJSC/wiki/FrontPage]

 *	ダウンロード:[https://ja.osdn.net/users/maharu/pf/PJSC/files/]


==== 補足:

 *	ファームウェアを更新したら、必ず一緒にリリースされたPJSC.iniファイルをTunerStudioのプロジェクトに読み込ませて下さい。

 *	Tuner Studioはバージョン3.0.2以降が必要です。

 *	Arduino IDEバージョン1.6.7以降をWindows XPで使用する場合、既知の問題が生じます。回避策については下記URLを参照して下さい。
   	[http://speeduino.com/forum/viewtopic.php?f=13&t=555&p=7664&hilit=xp#p7665]


== ファームウェアコンパイル
 ファームウェアをコンパイルするには、Arduino IDEをインストールしたPCが必要です。コンパイルを行う前に、Arduino LLCの下記URLからArduino IDEをダウンロードして下さい。

 *	Arduino Software:https://www.arduino.cc/en/main/software



 コンパイルに使用するPCにインストールされているOSに適合するパッケージ、インストーラをダウンロードし、インストールを実施して下さい。
 
 1.	Arduino IDEを起動し、メインメニューからファイル>開くをクリックします。ダウンロードしたファームウェアの”Speeduino”ディレクトリ下にある”Speeduino.ino”を開きます。[[BR]]
 
 2.	ボードタイプを選択して下さい。メインメニューのツール>ボードで”Arduino/Genuino Mega or Mega 2560”を選択します。[[BR]]
 
 3.	プロセッサタイプを選択して下さい。メインメニューのツール>プロセッサで”ATmega2560 (Mega 2560)”を選択します。[[BR]]
 
 4.	メインメニューのスケッチ>検証・コンパイルをクリックすると、コンパイルを開始します。[[BR]]
[[BR]]
'''<< オプション >>'''
 以下はコンパイラーを最適化する為のオプションです。Arduino IDEはデフォルトだとコンパイルオプションとして”-Os”を選択します。これはバイナリファイルサイズを小さくする事を優先するコンパイルオプションです。コンパイルオプションとして”-O3”を選択すると、バイナリのサイズを約40%大きくする代わりに実行速度を約20%向上させる事が可能です。コンパイルオプションを変更するには、platform.txtファイルを編集する必要があります。

 1.	Arduino IDEが起動している場合は、Arduino IDEを終了します。[[BR]]

 2.	以下の場所にある”platform.txt”をテキストエディタで開きます。[[BR]]
  ・	Windows:c:\Program Files\Arduino\hardware\arduino\avr[[BR]]
  ・	Mac:/Applications/Arduino/Contents/Resourses/Java/hardware/arduino/avr/[[BR]]

 3.	開いたファイル内で下記エントリーを”Os”から”O3”に書き換えます。[[BR]]
  ・	compiler.c.flags[[BR]]
  ・	complier.c.elf.[[BR]]

 4.	編集したファイルを保存し、Arduino IDEを再起動します。[[BR]]

== ファームウェア書き込み
 前項でコンパイルしたファームウェアを、Arduinoへ書き込みます。

 1.	Arduino MegaとPCのUSBポートをUSBケーブルで接続します。[[BR]]

 2.	Windows PCでは初めてArduinoと接続した際、Arduinoのシリアル通信デバイスのドライバーをインストールする必要があります。Arduinoオフィシャルボードと多くの互換ボードでは、シリアル通信用ICとしてATMega16U2またはATMega8U2を使用しています。この場合、対応ドライバーが自動的にインストールされます。しかし一部の互換ボードではCH340Gが使用されており、この場合はWCHサイトよりドライバーをダウンロードする必要があります。[[BR]]

 3.	メインメニューのツール>シリアルポートからArduinoが接続されているシリアルポートを選択します。適切なシリアルポートが選択されている場合、ツール>ボード情報を取得からボード情報を見る事が出来ます。ボード情報が得られない場合は、異なるシリアルポートが選択されているので、違うポートを選択し直して下さい。[[BR]]

 4.	メインメニューからスケッチ>マイコンボードに書き込む、をクリックするとファームウェアがArduinoに書き込まれます。[[BR]]

注)初回のファームウェアの書き込みが正常に完了しても、そのままPJSCを車両に接続しないで下さい。Arduinoは工場出荷状態ではEEPROMの内容が全て”FFh”となっています。この状態でPJSCを車両に接続すると、車両の電装系を破損する恐れがあります。車両に接続する前に、必ずファームウェアバージョンに対応したベースチューニングファイルをロードして下さい。ベースチューニングファイルのロードについては、『1.6章 プロジェクト作成』を参照して下さい。

== ファームウェアの確認
 ファームウェアの書き込みが完了したら、確認の為にTunerStudioとの接続を行います。

 Tuner Studioを使った方法以外に、Arduino IDEのシリアルモニタ機能を使ってファームウェアの確認を行う事も出来ます。この機能はメインメニューのツール>シリアルモニタから起動出来ます。
 シリアルモニターウィンドウのコンソールで、大文字の "S"(引用符なし)を入力しEnterを押します。 Arduinoはインストールされているファームウェアがビルドされた年月を返します。(例:Speeduino 2017.03)
注)ボーレートが115200に設定されていることを確認してください

 またコンソールで"?"を入力するとUsageが表示されます。

===コマンドヘルプ===[[BR]]
 すべてのコマンドは1文字で表され、続いてスペースを入れずにパラメーターを入力します。 一部のパラメータはバイナリであり、通常はプロンプトを介して入力する事は出来ません。
構文:<command> + <parameter1> + <parameter2> + <parameterN>

===コマンド一覧===[[BR]]
 A - 81バイトのcurrentStatusの値をバイナリで表示します。[[BR]]
 B - 現在のマップとconfigPageの値をEEPROMに書き込む[[BR]]
 C - COMポートをテストします。 ECUが接続されているシリアルポートを確認するためにTunerStudioが使用します。バイナリ値が返されます。[[BR]]
 L - マップページ(テーブル)またはconfigPage値を表示します。 ページ内容を変更するには P コマンドを使用して下さい。[[BR]]
 N - 新しい行を出力します。[[BR]]
 P - 現在のページを設定します。構文:P + <ページ番号>[[BR]]
 R - Aコマンドと同じ[[BR]]
 S - 署名番号を表示する[[BR]]
 Q - Sコマンドと同じ[[BR]]
 V - mapまたはconfigPageの値をバイナリで表示する[[BR]]
 W - mapまたはconfigPageに1バイトを設定します。バイナリパラメータが必要です。構文:W + <offset> + <newbyte>[[BR]]
 t - 校正値を設定します。バイナリパラメータが必要です。テーブルインデックスは0、1、または2です。構文:t + <tble_idx> + <newValue1> + <newValue2> + <newValueN>[[BR]]
 Z - 較正値を表示する[[BR]]
 T - バイナリで256tooth分のログエントリを表示します。[[BR]]
 r - 256tooth分のログエントリを表示します。[[BR]]
 ? - このヘルプページを表示します。[[BR]]

 Tuner Studioを起動して接続を試みる事で、新しいPJSCファームウェアのテストが出来ます。 詳細は「Tuner Studio接続」の項を参照して下さい。


== トラブルシューティング

対応していないArduinoボードを接続した場合
 ファームウェアをコンパイルした時に以下の様なエラーメッセージが出る場合、ボードの選択が不適切です。ツール>ボードからボードタイプ”Arduino/Genuino Mega or Mega 2560”を選択し直して下さい。

scheduler.ino:317:7: error: 'OCR4A' was not declared in this scope[[BR]]
scheduler.ino:323:8: error: 'TIMSK5' was not declared in this scope[[BR]]
scheduler.ino:323:25: error: 'OCIE4A' was not declared in this scope[[BR]]

Speeduinoプロジェクトが開かれていない場合
 Arduino IDEでSpeeduino.inoしか開かれておらずプロジェクトとして開かれていない場合、以下の様なエラーメッセージが表示されます。

speeduino.ino:27:21:fatal error: glovals.h: No such file or directory[[BR]]

 この場合、全てのソースコードファイルを同じディレクトリにコピーし、ファイル>開くからspeeduino.inoを開き直して下さい。プロジェクトが正しく開かれた場合、全てのソースコードファイルのタブが画面のトップに表示されます。


== Tuner Studioとの接続
 Tuner StudioはPJSCの推奨チューニングソフトウェアです。Tuner StudioはWindows、Mac、Linux上で動き、PJSCの設定とログを取得する機能を持っています。
 ファームウェアのコンパイルとArduinoへの書き込みが完了していれば、TunerStudioへの接続の準備が出来た事になります。ファームウェのコンパイルとArduinoへの書き込みが完了していない場合は、1.2項を読んで書き込みを完了させて下さい。

== Tuner Studioのダウンロード
 Tuner Studioを使用するには、下記EFI AnalyticsのHPより使用しているOSに対応したTuner Studioインストールファイルをダウンロードして下さい。

 *	EFI analytics: http://www.tunerstudio.com/index.php/downloads

 Tuner Studioには無料版のTuner Studio Liteと、有料版のTuner Studio Ultimateがあります。TunerStudio Liteは一部の機能が使えませんが、PJSCで基本的なセッティングを行うのに必要な機能は揃っています。
 Tuner Studio UltimateではTuner Studioの全ての機能が利用出来ます。その一部は、AFセンサーのフィードバックを用いたオートチューニングや、自動で燃調初期マップを作成するマップジェネレーター等です。
Tuner Studio Liteをインストールしているなら、EFI AnalyticsのHPからライセンスを購入する事でUltimateへアップデートする事が出来ます。