添付した画像は,Swingで作成したものです。サーバ室にPICNICが置いてあり,PICNICの先には,SSRを経由して扇風機が繋いであります。
サーバ室温度の欄に現在の室温が表示されています。設定温度の欄は,何度になったら扇風機の電源をONにしてサーバを冷却するかという値が表示されており,設定温度調整と書かれたスライダーで調整することができます。
苦労した点は,サーバ室の温度を計測した結果を一定時間毎に表示させる部分です。「SwingUtilities.invokeLaterメソッド」を使うことがミソのようです。以下に示します。
SwingUtilities.invokeLater(new Runnable() { public void run() { int temp; temp = pic.getTemp(); celsiusText.setText("" + temp); if (temp >= slider.getValue()){ pic.setHigh("RB",4); } else { pic.setLow("RB",4); } } });