モニタソフト FanduinaV3.0


モニタソフトFanduinaV3.0は、AVR-FanconRev3.0〜8.0共通です。


FanduinaV3.0の主な機能

 ・4台までのAVR-Fanconの動作状態(温度、回転数、Duty)を同時に表示、監視(アラーム)、記録(ログ)
 ・AVR-Fanconの制御パラメータの設定(ファイルへのエクスポート、インポート機能も装備)
 ・外部ソフトによるファームウェアの書込み(Rev4.0、Rev5.0、Rev7.0はFanduineW1、Rev6.0はFLIPを起動)
 ・代用温度計(ソフトウェアによる温度取得)によるAVR-Fanconの制御
 ・USB-HIDクラスに対応(Rev6.0,8.0用)



1.インストール

 FanduinaV3.0はWindowsXPおよびWindows7-32/64bitでの動作を確認済みです。
 なお、Vista以前のOSはあらかじめ
.NET framework3.5SP1をインストールしておいてください。

 FanduinaV3.0を使用するにはUSBドライバーおよび実行ファイルが必要です。 右のリンクからダウンロードしてください。

[USBドライバーのインストール]
 Rev6.0(F6.6以降のHID版)およびRev8.0は、HID(ヒューマンインターフェースデバイス)ですので、ドライバは不要です。
 Rev3.0からRev7.0では、FanduinoをUSB経由でPCに接続するとドライバを要求されますので、インストールしてください。

Rev1.0〜5.0、7.0は、FT232RL用のD2XXドライバをインストールします。
Rev6.0(F6.5以前のCOM版)は、ATmega32U4のUSB_CDCドライバとしてFanduinoUFO_cdc.infを指定します。


[FanduinaV3.0のインストール]
 アーカイブを展開し、フォルダを適当な所に置いてください。
 FanduinaV3CS.exeのショートカットを作成し、デスクトップやスタートメニュー等に置いてください。これでインストールは完了です。
 なお、同時に複数個起動させたい場合は、フォルダを起動個数分だけ用意してください。

[FanduinaV3.0のアンインストール]
 レジストリは使用していないので、フォルダおよびショートカットを削除してください。

 
 

ダウンロードはこちら


2.FanduinaV3.0の起動とAVR-Fanconへの接続


 FanduinaV3CS.exeのアイコン をダブルクリックして起動すると、表示画面(以降サイドパネルと呼びます)が現れます。
また、タスクバーの通知領域にアイコン(以降タスクトレイアイコンと呼びます)が表示されます。
 サイドパネルまたはタスクトレイアイコンを右クリックし、メニューから「ファンコン設定」を選ぶと、接続ダイアログ(FanduinoConnect)が表示されます。「ファンコン設定」では「0〜3」の4台から任意のController番号を選択して、そのControllerにAVR-Fanconが接続されているポートを対応させます。下の例のように、最初はポートが「off」になっていますので、コンボボックスから適切なポート(COM*またはHID*)を選んで、「接続」ボタンをクリックしてください。 COM番号は、デバイスマネージャーのポートにあるUSB Serial Portの番号です。HID番号はRev8.0のAVRに張ってあるシールの番号です。なお、AVR-Fanconが1台でController0に接続した場合、残りのController1〜3のポートは「off」にしておいてください。
 FanduinoConnectの「設定」ボタンは、アラームやログなどを設定するダイアログ(FanduinoSettings)を呼び出すためのもので、使い方は後述します。
   
 

3.サイドパネルの表示設定

 サイドパネルには、最大でファン24台、温度計16台までを表示することができます。表示台数は右の設定ダイアログ(SidePanelSettings)で設定できます。

(1)SidePanelSettings
 SidePanelSettingsは、サイドパネルを右クリックして「パネル表示設定」を選択すると表示され、ファンや温度計の個数、パネルの機能、表示フォントや表示色の属性を設定できます。設定後に ”OK” または ”適用” ボタンをクリックすると有効になります。
[表示個数]
SidePanelに表示するファンや温度計の個数を設定します。
[パネルの機能]
”マウスオーバーで非表示” 機能とは、マウスがSidePanelに入った場合、一時的にSidePanelを非表示にするもので、SidePanelに隠れていた画面にアクセスするのに有用な機能です。
なお、この機能が有効な時にSidePanelにアクセスするには、Ctrlキーを併用してください。
[フォント]
SidePanelに表示するファンおよび温度の文字フォントを指定します。
ただし、タイトル(Fan、rpm、Temp、℃など)および棒グラフ内のDuty値のフォントは変えられない仕様です。
[ファン表示色]
SidePanelに表示するファンの色属性を指定します。
”温度と同色” を選ぶと、ファン制御に使用している温度計と同色で表示できます。
[温度表示色]
SidePanelに表示する温度の色属性を指定します。
個々の温度計ごとに表示色を変えたい場合は、”個別設定”を選択しておいてください。

(2)サイドパネル(SidePanel)
 サイドパネルに表示するファンや温度計は、右の画面のように名称部分を左クリックし、Controller番号およびファン・温度計番号を選んでください。対応するデータ(回転数・温度)をその場所に表示するようになります。
 また、「色の変更」を選択して表示色を変えられますが、あらかじめSidePanelSettingsで表示色の「個別設定」を有効にしておく必要があります。

 
 

4.AVR-Fanconの個別設定


 FanduinaV3では、アラームやログ記録などを最大4台のAVR-Fancon1台ごとに設定することができます。
 接続ダイアログ(FanduinoConnect)の「設定」ボタンをクリックすると、右のような設定ダイアログ(FanduinoSettings)が表示されます。FanduinoSettingsが各AVR-Fanconごとに1画面ずつありますので、4つのFanduinoConnectで「設定」ボタンを押すと同時に4画面分が表示されます。区別するには左下のController番号を見てください。
 

(1)アラーム設定

 温度過昇およびファン停止を監視し、異常時には音やバルーン(タスクトレイ)で通知します。
 監視対象の温度計名称またはファン名称のチェックボックスをクリックしておいてください。
 温度監視は、”設定温度”の超過が ”設定時間”以上継続した場合に通知します。
 ファン監視は、Dutyがゼロでない(つまりファンに給電されている)のに回転数がゼロとなった場合に通知します。
 なお、FanduinaV3を起動していない時はアラーム機能は働かないので注意してください。
 

   
 

(2)ログ設定

 ファンの回転数(rpm)、制御出力Duty(%) および温度(℃)を一定間隔で記録します。
 ”ログを記録する”にチェックを入れ、記録間隔を設定後、”適用”ボタンをクリックして設定してください。
 ログファイルは1日1ファイルで、LogFilesフォルダに ”Log-西暦-月-日-ファンコン番号-ファーム番号.txt” という名称で保存、日の途中で停止・起動を繰り返しても、前のデータは消されずに追記されます。
 記録は、”現在のログ” または ”過去のログ” を選択すると画面中央に表形式で表示できます。
 なお、FanduinaV3を起動していない時はログ機能は働かないので注意してください。

 

(3)制御パラメータ書込

 ファンコン内部に保持されている制御用のパラメータを書替える機能です。
パラメータの意味は次のとおりです。
・温度(℃)がTmin以下では、制御出力Duty(%)がDminとなり、Tmax以上で、制御出力(%)はDmaxになる。TminからTmaxの間ではリニアに変化。
・Tstopはファンを停止する温度で、温度がTstopまで低下するとFanが停止し、Tmin以上になるとファンが再起動。(低温時Fan停止機能、以下CSFと呼ぶ)
・Thm#は、ファンを制御するサーミスタ(温度計)の番号(1〜4)。重複設定も可能で、例えば4つのThm#を全て1にするとサーミスタ1の温度で全てのファンを制御。
・Manualは、ファンコンの制御出力Duty(%)を固定値に設定する機能。チェックボックスをチェックすると手動設定が有効になる。なお、Manualにチェックが入っていなくても、ManualのDuty値はCSFからファンが再起動する時の初期制御値として使われている。
・Dutyのスライドバーを左右に動かすと、ファンコンを一時的に手動制御に切替え、Tachにその時の回転数が表示される。
設定値は、画面右下の”ファンコンへ書込み”ボタンをクリックするとファンコンに書込まれます。
一度書き込んでおけば、FanduinaV3を終了してもファンコン機能は動作し続けます。(PCを再起動しても設定は消えません)


(例)Tmin=30 @ Dmin=30、Tmax=55 @ Dmax=100 、Tstop=20の場合
  温度計の温度がTmin(30℃)以下ならDutyはDmin(30%)で一定、Tmax(55℃)以上ではDutyが
  Dmax(100%)で一定、温度が30℃から55℃までは、Dutyは30%から100%の間で直線的に変化。
  Duty%はFanへの供給電圧にほぼ比例。

  温度がTstop(20℃)以下になると、ファンは停止(Duty=0%)し、Tmin(30℃)以上になると再起動。

(Rev4.0/Rev5.0でファームバージョンがF*.5以前の場合)
 Fan3、3-2、4、4-2で低温時Fan停止機能を使えますが、Temp-stopを設定することはできません。
(Temp-stopはTemp-minよりも常に5℃低い温度になります。)
 また、Fan1および2は安全のため低温時Fan停止機能を使えないようにしてありますので、温度が低下してもDuty-minのまま動作し続けます。

 
 

(4)代用温度計
 ファンコンに接続されている温度センサーの代わりに、FanduinaV3から温度情報(代用温度)を10秒ごとにAVR-Fanconに送信して制御する機能です。
 代用温度として、他のファンコンに接続されているセンサーの温度、PCで計測したHDD・GPU温度、外部プログラムCoreTempまたはSpeedFanから取得した温度を使用可能です。
HDDはS.M.A.R.T.機能に対応したもの、GPUはRadeonまたはGeForceの比較的新しいものにのみ対応です。
CPUやマザーボードの温度を取得するには外部プログラムのCoreTemp、SpeedFanを別途インストールしておく必要があります。
ラジオボタンで種類を選択後、右側のボックスから使用するチャンネル等を選んで”適用”ボタンをクリックしてください。
HDDの初回選択時は、温度取得に数秒かかりフリーズしたように見えますが、異常ではありません。
なお、代用温度計を利用するには、FanduinaV3を管理者として実行する必要があるとともに、起動していない時は代用温度計機能は働かないので注意してください。


(V2からの変更)
 FanduinaV2ではCPU温度計測に外部プログラムは不要でしたが、そこで利用させていただいていたWinRing0(ひよひよ氏作)が公開終了となりましたので、CoreTempの利用に切り替えました。
ひよひよ氏には、有用なプログラムを長らく利用させてくださいましたことを感謝いたします。

 

(5)ファーム書込


[Rev4.0、5.0、7.0のファーム書込み]

 AVR-FanconRev4.0、5.0および7.0のファームウェアを書込むには、FanduinaV2.7のファーム書込みタブの「FanduineW1を起動」ボタンからFanuineW1を起動します。FanduineW1はFanduinaV2.7に同梱されています。
FanduinaW1を起動すると、AVR-FanconのCOMポート接続は解除されます。書込み完了後に、ウインドウ下部にある接続ボタンにより再接続してください。
なお、Rev3.0でもこちらで紹介した秋月FT232RL基板利用のAVRライターを使用すれば、Rev4.0等と同様に書込みができます。

(以下はFanduineW1の画面です)

 
 

(書込手順)・・・画面の上から下へ順番に設定すれば簡単に書込めます

(1) FT232RLシリアルNO. から接続されているAVR-Fanconを選択する
 正しく認識されるとFusebitが FF FF FF hから別の値に変わります。
 なお、書込み方式の高電圧シリアルは、ATtiny85専用書込み器用ですから、通常は低電圧シリアルを選択しておいてください。

(2) AVRターゲットデバイスの選択を確認する
 AVR-Fanconが正しく認識されていれば ATmega88 or 168 or 328Pが自動で選択されますので、確認してください。

(3) ファームウェア格納フォルダを入力する
 参照ボタンによりファームウェアの入っているフォルダを指定します。
 このとき、Flash Program(.HEXファイル)およびEEPROM Data(.EEPファイル)が自動的に設定されます。
 AVRターゲット(mega88 or mega168 or mega328P)に適合したフォルダを指定してください。
 ファームウェアはこちらからダウンロードして、解凍しておいてください。

(4) 書込項目(FuseBit、Flash Program、EEPROM Data)を選択する
 FuseBitとは、AVRのクロック、電源などの動作設定値で、推奨値が自動的に設定されます。
 推奨値は、mega88,168の場合はDD F7 FFh、328Pの場合はDD F7 FDhです。(Rev7.0はmega328pのみでDD F2 FDh)
 Flash ProgramはAVR-Fanconのプログラム本体、EEPROM Dataはその設定データです。
 書込まない項目はチェックBoxをクリックして、チェックを外してください。
 なお、Flash Program書込み時には、EEPROM Dataがクリアされるため、同時にEEPROM Dataを書込む必要があります。

(5) 書込速度を設定する
 高速に書込みたい場合は、高速書込をチェックしてください。
 書込み時にエラーが出るときは、低速書込みします。

(6) 書込ボタンにより書込みを実行する
 書込みが成功したら、FanduineW1を終了します。
 FanduinaV2側では、COMポートに再接続するため表示設定タブの適用ボタンをクリックしてください。


 

[Rev6.0のファーム書込み]

 Rev6.0への書込みは、AVRの製造元ATMELが配布している書込みソフトFlipを利用します。
Flipをあらかじめこちらからダウンロードし、インストールしておいてください。
 FanduinaV2.7のファーム書込みタブ下方の「Flipを起動」ボタンからFlipを起動してください。
なお、このときドライバを要求されることがありますので、C:\Program Files \Atmel\Flip 3.4.1\usbフォルダ内の
atmel_usb_dfu.infを指定してください。

(書込み手順)

(1)ターゲットデバイスの設定

左上のICアイコンをクリックして、ターゲットデバイスとしてATmega32U4を選択します。

(2)USB接続

上方、左から2番目のUSBアイコンをクリックし、USB接続を確立してください。
エラーになるときは、Rev6.0の選択SWを押しておいて、リセットSWを押してみてください。
(リセットSWを離してから選択SWを離してください。)

(3)Flash-ROMへのプログラムファイルの書込み

上方、右から3番目の書込みアイコンをクリックし、プログラムファイル(*.hex)を選択後、左下の「Run」ボタンで書き込んでください。書込みはすぐに終わります。

(4)EEPROMへのデータファイルの書込み

中央下方の「Select EEPROM」ボタンをクリックし、EEPROMへの書込みモードに切り替えます。


上方、右から3番目の書込みアイコンをクリックし、データファイル(*.eep)を指定します。
このとき、ファイルタイプを「すべてのファイル」に変更しないと*.eepファイルを選択できません。
左下の「Run」ボタンをクリックして書き込んでください。

以上で、書込み完了です。右下の「Start Application」ボタンでAVR-FanconRev6.0を再起動し、その後でFlipを終了します。
 10.カスタマイズ

[ウインドウ枠]
 Settingsフォルダ内にあるBack.gifおよびLogo.bmpを他の画像に差し替えることにより、ウインドウ枠をカスタマイズできます。
なお、画像の左上隅のピクセル色は透明色として扱われます。この色を表示スペースの背景色にすると、表示スペースも透明になります。

[アラーム音]
 温度超過等のアラームを音で知らせる場合、Settingsフォルダ内にあるchime01.wavおよびchime02.wavを他の音声ファイルに差し替えることにより、カスタマイズできます。


【参考】
AVR-FanconとPC間はUSBの仮想COMポートにより情報交換しており、

その書式は次のとおりです。(斜体部分には数字または文字が入ります)


[AVR-Fancon → PC](常時転送)

 Thm ,サーミスタ番号,サーミスタ名称,温度(℃)

 Fan,Fan番号,Fan名称,回転数(rpm),Duty(%),Vout(V)  (出力電圧Voutは、Rev6.0のFan#1のみ)

 Prm,Tmin,Temp-min1,Temp-min2,Temp-min3,Temp-min4,Temp-min5,Temp-min6

 Prm,Tmax,Temp-max1,Temp-max2,Temp-max3,Temp-max4,Temp-max5,Temp-max6

 Prm,Dmin,Duty-min1,Duty-min2,Duty-min3,Duty-min4,Duty-min5,Duty-min6

 Prm,Dmax,Duty-max1,Duty-max2,Duty-max3,Duty-max4,Duty-max5,Duty-max6

 Prm,FanThm,Fan1-Thm#,Fan2-Thm#,Fan3-Thm#,Fan4-Thm#,Fan5-Thm#,Fan6-Thm#
                            (Fanを制御するサーミスタ番号)

 Prm,FanNam,Fan名称1,・・・,Fan名称6

 Prm,ThmNam,サーミスタ名称1,・・・,サーミスタ名称6

 Prm,Firm,ファームウエア・ヴァージョン (F*.*) [V1.1で追加]

 Prm,Tstop,Temp-stop1,Temp-stop2,Temp-stop3,Temp-stop4 (Fanを停止させる温度) [V2.3で追加]

 Prm,LCDMod,mode(LCD表示モード),Fan#(表示Fan番号),Thm#(表示温度計番号),StopMinute(表示時間)
                                             
[V2.4で追加]

 [以下、手動設定、テストモード用としてV2.5で追加]
 Prm,FanMan,Fan1-man,Fan2-man,Fan3-man,Fan4-man,Fan5-man,Fan6-man (1:手動,0:自動)

 Prm,Dman,Duty-man1,Duty-man2,Duty-man3,Duty-man4,Duty-man5,Duty-man6

 TestOn,Fan#  (テストモード開始をPCに返信)

 TestOff,Fan#  (テストモード終了をPCに返信)

 [以下、Rev8.0用としてV2.7で追加]

 Prm,ADCmin,ADCmin1,ADCmin2  (サーミスタ計測ADC値の許容最小値)

 Prm,ADCmax,ADCmax1,ADCmax2 (サーミスタ計測ADC値の許容最大値)
 Prm,ADCcoe,ADCcoe1,ADCcoe2   (ADC値から温度に変換する係数)
 Prm,ADCadj,ADCadj1,ADCadj2   (温度の補正値)



[PC → AVR-Fancon](書込ボタンをクリック時のみ転送)

 SetPrm,Tmin,Temp-min1,Temp-min2,Temp-min3,Temp-min4

 SetPrm,Tmax,Temp-max1,Temp-max2,Temp-max3,Temp-max4

 SetPrm,Dmin,Duty-min1,Duty-min2,Duty-min3,Duty-min4

 SetPrm,Dmax,Duty-max1,Duty-max2,Duty-max3,Duty-max4

 SetPrm,FanThm,Fan1-Thm#,Fan2-Thm#,Fan3-Thm#,Fan4-Thm# (Fanを制御するサーミスタ番号)

 SetPrm,FanNam,Fan名称1,・・・,Fan名称6

 SetPrm,ThmNam,サーミスタ名称1,・・・,サーミスタ名称6

 ExtThm,Thm#1,Thm#2,Thm#3,Thm#4 (代用温度計の温度℃)[V2.2で追加]

 SetPrm,Tstop,Temp-stop1,Temp-stop2,Temp-stop3,Temp-stop4 (Fanを停止させる温度) [V2.3で追加]

 [以下、手動設定、テストモード用としてV2.5で追加]
 SetPrm,FanMan,Fan1-man,Fan2-man,Fan3-man,Fan4-man,Fan5-man,Fan6-man (1:手動,0:自動)

 SetPrm,Dman,Duty-man1,Duty-man2,Duty-man3,Duty-man4,Duty-man5,Duty-man6

 TestOn,Fan#  (テストモード開始、Fan#の回転数のみ計測してPCに転送)

 TestOff,Fan#  (テストモード終了)

 Test,Fan#,Duty (Fan#のDutyを一時的に固定)

 [以下、Rev8.0用としてV2.7で追加]

 SetPrm,ADCmin,ADCmin1,ADCmin2  (サーミスタ計測ADC値の許容最小値)

 SetPrm,ADCmax,ADCmax1,ADCmax2 (サーミスタ計測ADC値の許容最大値)
 SetPrm,ADCcoe,ADCcoe1,ADCcoe2   (ADC値から温度に変換する係数)
 SetPrm,ADCadj,ADCadj1,ADCadj2   (温度の補正値)


TOPへ