これから、JavaFXでSCADAのUIプログラムを構築していきます。最初に、UIプログラムにSCADA情報を提供する依頼者の処理を模擬するプログラムを、Javaで作ります。
依頼者からUIプログラムへは倍精度浮動小数点数の模擬情報を渡し、UIプログラムで数値指示計や図式指示計などにその値を数値や図式として表示させます。値は何でも良いのですが、とりあえず正弦関数の絶対値を100倍して渡すことにしました。依頼者の手続きが呼び出されるたびに、正弦関数の角度を1度ずつ増やして計算します。
まず、NetBeansで「Javaアプリケーションプロジェクト」(名前は任意)を作成します。同様に任意の「パッケージ名」と「クラス名」を指定して、Javaクラスを作成します。私は、パッケージ名に「client」、クラス名に「ScadaClient」を指定しました。
Javaクラスには実体手続きを定義し、上記の値を計算して戻り値として返すようにしました。また、主手続きで、作成した実体手続きの動作確認を行っています。
私が作成したコードを、最後に載せておきます(例によって、字下げが消えてるため、読みづらくてすみません)。Javaアプリケーションプロジェクトを構築・実行すると、0~4度までの5つの正弦関数値が、出力窓に表示されます。
package client;
public class ScadaClient {
// 模擬SCADAデータ生成用作業変数。
private int i = -1;
public double receiveData() {
// 模擬SCADAデータを生成して返す。
i += 1;
if (i >= 360) {
i = 0;
}
return (double)(Math.abs(Math.sin(i * Math.PI / 180.0) * 100));
}
public static void main(String[] args) {
ScadaClient sc = new ScadaClient();
for (int i = 0; i <>
0 件のコメント:
コメントを投稿