package com.sp_comm;
|
|
import com.dev.afeinverter.Afe_Inverter_State;
|
import com.dev.afeinverter.Afe_Rectifier_State;
|
import com.dev.central.Central_ST_Data;
|
import com.intelligt.modbus.MyJlibModbus;
|
import com.modbus.data.MyModbusMaster;
|
|
public class AFE_Inverter_Monitor_Thread implements Runnable{
|
public static final int DEV_TYPE_RECTIF = 0;
|
public static final int DEV_TYPE_INVERTER = 1;
|
/***********************************************/
|
public MyModbusMaster master;
|
public MyJlibModbus mymodbus;
|
|
|
public static int dev_type = DEV_TYPE_RECTIF; //É豸ÀàÐÍ
|
|
public boolean read_data = false; //¶ÁÈ¡Êý¾Ý
|
public boolean auto_update_data = false; //×Ô¶¯Ëæ»úÊý¾Ý
|
public boolean write_data = false; //дÈëÊý¾Ý
|
|
public boolean running_en = true;
|
|
public Afe_Inverter_State inver;
|
public Afe_Rectifier_State rect;
|
|
|
public AFE_Inverter_Monitor_Thread(String serverip,int slave_id){
|
//master = new MyModbusMaster(serverip,slave_id);
|
mymodbus = new MyJlibModbus(serverip, slave_id, 16, 16, 0x85BA, 16);
|
inver = new Afe_Inverter_State();
|
rect = new Afe_Rectifier_State();
|
}
|
|
@Override
|
public void run() {
|
new Thread(new Runnable() {
|
@Override
|
public void run() {
|
try {
|
Thread.sleep(1000);
|
} catch (InterruptedException e1) {
|
e1.printStackTrace();
|
}
|
while(running_en) {
|
try {
|
/********* ¶ÁÈ¡Êý¾Ý ****************************************************/
|
if(read_data) {
|
if(DEV_TYPE_INVERTER == dev_type) {
|
inver.readMutliData(mymodbus);
|
}else if(DEV_TYPE_RECTIF == dev_type) {
|
rect.readMutliData(mymodbus);
|
}
|
}
|
|
/********* ×Ô¶¯Ëæ»úÊý¾Ý ****************************************************/
|
if(auto_update_data) {
|
if(DEV_TYPE_INVERTER == dev_type) {
|
inver.randomData();
|
inver.writeMutliData(mymodbus);
|
}else if(DEV_TYPE_RECTIF == dev_type) {
|
rect.randomData();
|
rect.writeMutliData(mymodbus);
|
}
|
//System.err.println(data);
|
}
|
|
/********* дÈëÊý¾Ý *****************************************************************/
|
if(write_data) {
|
if(DEV_TYPE_INVERTER == dev_type) {
|
inver.writeMutliData(mymodbus);
|
}else if(DEV_TYPE_RECTIF == dev_type) {
|
rect.writeMutliData(mymodbus);
|
}
|
write_data = false;
|
}
|
Thread.sleep(500);
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
}
|
}
|
}).start();
|
System.out.println("¿ªÊ¼Ï̡߳£¡£¡£");
|
mymodbus.init();
|
System.out.println("¼´½«ÔËÐС£¡£¡£");
|
|
}
|
|
}
|