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("¼´½«ÔËÐС£¡£¡£"); } }