プログラムの構成
HTML + css + JavaScript から構成されます。
Webサーバを必要としません。パソコンにコピーしたHTMLファイルから実行できます。
Windows11 + Edge および Chromeで動作を確認しました。古いブラウザだと多分動きません。
通信とファイルアクセス
パソコンに接続した機器とシリアル通信をするのみで、インターネットへアクセスしません。
セッションログをブラウザのダウンロードフォルダへ出力します。
ログファイル出力とプログラムの構成ファイルを除いて、パソコン内のファイルにアクセスすることはありません。
ファイルのコピー
「sgt-meter7」ディレクトリをパソコンの任意のディレクトリへコピーします。
ハードウェアを接続
Raspberry Pi PicoをパソコンのUSB端子へ繋げます。
正常に起動するとマイコンのLEDが約1秒間隔で点滅します。
sgt-meter7を起動
コピーした「sgt-meter7」ディレクトリ内の「index.html」をブラウザへ表示します。
メーターとログ領域全体が欠けずになるべく大きく表示されるように拡大/縮小してサイズを調整します。
拡大/縮小した場合、メーターの表示がぼやけるので、ページを再表示します。
シリアル通信を開始
[Connect]ボタンをクリックします。
シリアルポートへの接続を要求する画面が表示されるので、COMポートを選択し[接続]をクリックします。
簡単な操作説明
メーターをクリックするとTAセットを実行します。
メーター上でのホイール操作により感度を調整します。
[AUTO]をチェックすると自動セットが有効となります。
デフォルトでは針が振り切れた状態が約0.5秒継続すると自動セットが実行されます。
[EXP]をチェックすると針の可動範囲が180°となり、それを超えると逆側へ回り込みます。
デフォルトの最大周回数は±2回です。
[CORR]をチェックするとTA値による感度補正が有効になります。
開始
セッション開始時に[Session Start]をクリックします。
セッション中はTAアクションがカウントされ、次の情報を[Session Log]へ出力します。
[Mark]ボタンのクリックにより"####### Markの連番 #######"を出力
ワークシートへこの番号を記載しておけば、ログとの突き合わせがやりやすくなります。
セッション開始時にMarkの連番、TAアクション、および[Session Log]がクリアされます。
セッション開始時に感度補正が有効化されます。
終了
セッション終了時(または中断時)に[Session Stop]をクリックします。
終了時に 「セッション時間」、「TAアクション」、「終了メッセージ」 を出力します。
セッションログがブラウザのダウンロードフォルダへ出力されます。
[Connect] - シリアル通信を開始していない状態
クリックするとCOMポートを選択するダイアログがが表示されます。
[Session Start] - セッションを開始していない状態
クリックしてセッションを開始します。
[Session Stop] - セッション中の状態
クリックしてセッションを終了/中断します。
大きいほど針が滑らかに動きますが反応が鈍くなります
大きいほど針が滑らかに動きますが反応が鈍くなります。
感度補正が有効な場合、補正倍率と教会5型換算の感度値を表示します。
接続しているメーターから読み取ったサンプル数の実測値です。
controller.jsの最初の4行を修正することで初期値をカスタマイズできます。
index.html
メインのHTMLです。
controller.js
メインのスクリプトです。
sgtmeter.js
メーターの振る舞いをモデル化したクラスを定義しています。
sgtm7.css
index.html用のCSSです。
gauge.js
次のスクリプトをそのまま使っています。
https://github.com/bernii/gauge.js