package com.sp_comm;
|
|
import com.dev.lubrication.Oil_comm;
|
import com.dev.lubrication.Ups_comm;
|
import com.dev.lubrication.Water_comm;
|
import com.intelligt.modbus.MyJlibModbus;
|
import com.modbus.data.MyModbusMaster;
|
|
public class Lubrication_Cool_Monitor_Thread implements Runnable{
|
public static final int DEV_TYPE_GAS_STATION = 0;
|
public static final int DEV_TYPE_WATER_STATION = 1;
|
public static final int DEV_TYPE_UPS_DEVICE = 2;
|
/***********************************************/
|
public MyModbusMaster master;
|
public MyJlibModbus mymodbus;
|
|
|
public static int DEV_TYPE = DEV_TYPE_GAS_STATION; //É豸ÀàÐÍ
|
|
public boolean read_data = false; //¶ÁÈ¡Êý¾Ý
|
public boolean auto_update_data = false; //×Ô¶¯Ëæ»úÊý¾Ý
|
public boolean write_data = false; //дÈëÊý¾Ý
|
|
public boolean running_en = true; //ÊÇ·ñÔËÐÐ
|
public Oil_comm gas;
|
public Ups_comm ups;
|
public Water_comm water;
|
|
|
public Lubrication_Cool_Monitor_Thread(String serverip,int slave_id){
|
//master = new MyModbusMaster(serverip,slave_id);
|
mymodbus = new MyJlibModbus(serverip, slave_id, 40000, 16, 40099, 16);
|
|
|
gas = new Oil_comm();
|
ups = new Ups_comm();
|
water = new Water_comm();
|
}
|
|
@Override
|
public void run() {
|
new Thread(new Runnable() {
|
@Override
|
public void run() {
|
try {
|
Thread.sleep(1000);
|
} catch (InterruptedException e1) {
|
e1.printStackTrace();
|
}
|
while(running_en) {
|
//System.out.println(this.getClass().getName());
|
try {
|
/********* ¶ÁÈ¡Êý¾Ý ****************************************************/
|
if(read_data) {
|
if(DEV_TYPE == DEV_TYPE_GAS_STATION) {
|
gas.readMutliData(mymodbus);
|
}else if(DEV_TYPE == DEV_TYPE_WATER_STATION) {
|
water.readMutliData(mymodbus);
|
}else if(DEV_TYPE == DEV_TYPE_UPS_DEVICE) {
|
ups.readMutliData(mymodbus);
|
}
|
}
|
|
/********* ×Ô¶¯Ëæ»úÊý¾Ý ****************************************************/
|
if(auto_update_data) {
|
if(DEV_TYPE == DEV_TYPE_GAS_STATION) {
|
gas.randomData();
|
gas.writeMutliData(mymodbus);
|
}else if(DEV_TYPE == DEV_TYPE_WATER_STATION) {
|
water.randomData();
|
water.writeMutliData(mymodbus);
|
}else if(DEV_TYPE == DEV_TYPE_UPS_DEVICE) {
|
ups.randomData();
|
ups.writeMutliData(mymodbus);
|
}
|
//System.err.println(data);
|
}
|
|
/********* дÈëÊý¾Ý *****************************************************************/
|
if(write_data) {
|
if(DEV_TYPE == DEV_TYPE_GAS_STATION) {
|
gas.writeMutliData(mymodbus);
|
}else if(DEV_TYPE == DEV_TYPE_WATER_STATION) {
|
water.writeMutliData(mymodbus);
|
}else if(DEV_TYPE == DEV_TYPE_UPS_DEVICE) {
|
ups.writeMutliData(mymodbus);
|
}
|
write_data = false;
|
}
|
Thread.sleep(500);
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
}
|
}
|
}).start();
|
|
|
System.out.println("¿ªÊ¼Ï̡߳£¡£¡£");
|
mymodbus.init();
|
System.out.println("¼´½«ÔËÐС£¡£¡£");
|
|
}
|
|
}
|