package com.electrical.FourKW;
|
|
import com.modbus.data.MyModbusMaster;
|
import com.modbus.data.MyModbusUtils;
|
import com.serotonin.modbus4j.code.DataType;
|
import com.sql.MysqlConnPool;
|
|
public class Electrical_ALL_SocketClient_Thread implements Runnable{
|
public MysqlConnPool conn_pool;
|
|
public Electric_Switch eswitch;
|
public Electric_Power epower;
|
|
public MyModbusMaster master;
|
|
//public static final int MAX_READALARM_COUNT = 20; //Ò»´Î¶ÁÈ¡¸æ¾¯½ÚµãµÄ×î´óÊýÁ¿
|
//public int read_alarm_index = 0; //¶ÁÈ¡¸æ¾¯Ë÷Òý
|
|
public Electrical_ALL_SocketClient_Thread(String PLC_ip,MysqlConnPool conn_pool) {
|
this.conn_pool = conn_pool;
|
eswitch=new Electric_Switch(PLC_ip);
|
epower=new Electric_Power(PLC_ip);
|
|
master = new MyModbusMaster(PLC_ip, MyModbusMaster.SLAVEID_DEFAULT);
|
}
|
|
@Override
|
public void run() {
|
int runCount = 0;
|
while(true) {
|
try {
|
if(runCount %2 == 0) {
|
/*************************** ¸üеçÔ´×Ü¿ª¹Ø×´Ì¬±í******************************/
|
readElectrical_switch(master,eswitch);
|
Electrical_Task_SQL.replace_Electric_Switch(conn_pool, eswitch);
|
|
|
/**************************** ¸üÐÂ4Ì×µçԴ״̬±í*****************************/
|
readElectrical_power(master,epower);
|
Electrical_Task_SQL.replace_Electric_Power(conn_pool, epower);
|
|
}
|
|
/* if(runCount%10 == 0) {
|
//¸üе±Ç°É豸ip
|
master.setTarget_ip(einf.electric_ip);
|
}
|
*/ if(runCount > 999900) {
|
runCount = 0;
|
}
|
runCount ++;
|
Thread.sleep(200);
|
} catch (Exception e) {
|
try {
|
Thread.sleep(1000);
|
} catch (InterruptedException e1) {
|
//e1.printStackTrace();
|
}
|
e.printStackTrace();
|
}
|
|
}
|
|
}
|
/**
|
* ¸üеçÔ´×Ü¿ª¹Ø×´Ì¬±í
|
* @param master
|
* @param load_state
|
*/
|
private void readElectrical_switch(MyModbusMaster master, Electric_Switch eswitch) {
|
eswitch.km1_switchon_one = (int) master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("km1_switchon_one"), master), eswitch.km1_switchon_one); //Ò»ºÅת»»¿ª¹Ø¹ñKM1ºÏÕ¢Ö¸Áî
|
eswitch.km1_switchoff_one = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("km1_switchoff_one"), master), eswitch.km1_switchoff_one); //Ò»ºÅת»»¿ª¹Ø¹ñKM1·ÖÕ¢Ö¸Áî
|
eswitch.km2_switchon_one = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("km2_switchon_one"), master), eswitch.km2_switchon_one); //Ò»ºÅת»»¿ª¹Ø¹ñKM2ºÏÕ¢Ö¸Áî
|
eswitch.km2_switchoff_one = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("km2_switchoff_one"), master), eswitch.km2_switchoff_one); //Ò»ºÅת»»¿ª¹Ø¹ñKM2·ÖÕ¢Ö¸Áî
|
eswitch.km3_switchon_one = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("km3_switchon_one"), master), eswitch.km3_switchon_one); //Ò»ºÅת»»¿ª¹Ø¹ñKM3ºÏÕ¢Ö¸Áî
|
eswitch.km3_switchoff_one = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("km3_switchoff_one"),master), eswitch.km3_switchoff_one); //Ò»ºÅת»»¿ª¹Ø¹ñKM3·ÖÕ¢Ö¸Áî
|
eswitch.km4_switchon_one = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("km4_switchon_one"),master), eswitch.km4_switchon_one); //Ò»ºÅת»»¿ª¹Ø¹ñKM4ºÏÕ¢Ö¸Áî
|
eswitch.km4_switchoff_one = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("km4_switchoff_one"), master), eswitch.km4_switchoff_one); //Ò»ºÅת»»¿ª¹Ø¹ñKM4·ÖÕ¢Ö¸Áî
|
eswitch.km1_switchon_two = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("km1_switchon_two"), master),eswitch.km1_switchon_two); //¶þºÅת»»¿ª¹Ø¹ñKM1ºÏÕ¢Ö¸Áî
|
eswitch.km1_switchoff_two = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("km1_switchoff_two"), master),eswitch.km1_switchoff_two); //¶þºÅת»»¿ª¹Ø¹ñKM1·ÖÕ¢Ö¸Áî
|
eswitch.km2_switchon_two = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("km2_switchon_two"), master),eswitch.km2_switchon_two); //¶þºÅת»»¿ª¹Ø¹ñKM2ºÏÕ¢Ö¸Áî
|
eswitch.km2_switchoff_two = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("km2_switchoff_two"), master), eswitch.km2_switchoff_two); //¶þºÅת»»¿ª¹Ø¹ñKM2·ÖÕ¢Ö¸Áî
|
eswitch.km3_switchon_two = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("km3_switchon_two"), master),eswitch.km3_switchon_two); //¶þºÅת»»¿ª¹Ø¹ñKM3ºÏÕ¢Ö¸Áî
|
eswitch.km3_switchoff_two = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("km3_switchoff_two"), master), eswitch.km3_switchoff_two); //¶þºÅת»»¿ª¹Ø¹ñKM3·ÖÕ¢Ö¸Áî
|
eswitch.km4_switchon_two = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("km4_switchon_two"), master), eswitch.km4_switchon_two); //¶þºÅת»»¿ª¹Ø¹ñKM4ºÏÕ¢Ö¸Áî
|
eswitch.km4_switchoff_two = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("km4_switchoff_two"), master),eswitch.km4_switchoff_two); //¶þºÅת»»¿ª¹Ø¹ñKM4·ÖÕ¢Ö¸Áî
|
}
|
/**
|
* ¸üеçÔ´×Ü¿ª¹Ø×´Ì¬±í
|
* @param master
|
* @param load_state
|
*/
|
private void readElectrical_power(MyModbusMaster master, Electric_Power epower) {
|
epower.start_a = (int) master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("start_a"), master), epower.start_a ); //AÌׯô¶¯
|
epower.stop_a = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("stop_a"), master),epower.stop_a ); //AÌ×Í£Ö¹
|
epower.start_b = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("start_b"), master), epower.start_b ); //BÌׯô¶¯
|
epower.stop_b = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("stop_b"), master), epower.stop_b ); //BÌ×Í£Ö¹
|
epower.start_c = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("start_c"), master),epower.start_c); //CÌׯô¶¯
|
epower.stop_c = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("stop_c"), master), epower.stop_c ); //CÌ×Í£Ö¹
|
epower.start_d = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("start_d"), master), epower.start_d); //DÌׯô¶¯
|
epower.stop_d = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("stop_d"), master), epower.stop_d ); //DÌ×Í£Ö¹
|
epower.abconn_start = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("abconn_start"), master), epower.abconn_start); //ABÌײ¢ÁªÔËÐÐÆô¶¯
|
epower.abconn_stop = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("abconn_stop"), master), epower.abconn_stop); //ABÌײ¢ÁªÔËÐÐÍ£Ö¹
|
epower.cdconn_start = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("cdconn_start"), master), epower.cdconn_start); //CDÌײ¢ÁªÔËÐÐÆô¶¯
|
epower.cdconn_stop = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("cdconn_stop"), master), epower.cdconn_stop); //CDÌײ¢ÁªÔËÐÐÍ£Ö¹
|
epower.allconn_start = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("allconn_start"), master), epower.allconn_start); //ËÄÌײ¢ÁªÔËÐÐÆô¶¯
|
epower.allconn_stop = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("allconn_stop"), master), epower.allconn_stop); //ËÄÌײ¢ÁªÔËÐÐÍ£Ö¹
|
epower.abconn_flag = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("abconn_flag"), master), epower.abconn_flag); //AB²¢´®Áª±ê־λ
|
epower.cdconn_flag = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAllAdd("cdconn_flag"), master), epower.cdconn_flag); //CD²¢´®Áª±ê־λ
|
/*epower.abconn_volset = (int)master.checkNullData(MyModbusUtils.readHoldingRegister(Electric_4KW_ModbusAddress.getAllAdd("abconn_volset"), DataType.TWO_BYTE_INT_SIGNED, master), epower.abconn_volset); //AB²¢Áªµçѹ¸ø¶¨
|
epower.abconn_currset = (int)master.checkNullData(MyModbusUtils.readHoldingRegister(Electric_4KW_ModbusAddress.getAllAdd("abconn_currset"),DataType.TWO_BYTE_INT_SIGNED, master), epower.abconn_currset); //AB²¢ÁªµçÁ÷¸ø¶¨
|
epower.cdconn_volset = (int)master.checkNullData(MyModbusUtils.readHoldingRegister(Electric_4KW_ModbusAddress.getAllAdd("cdconn_volset"), DataType.TWO_BYTE_INT_SIGNED, master), epower.cdconn_volset); //CD²¢Áªµçѹ¸ø¶¨
|
epower.cdconn_currset = (int)master.checkNullData(MyModbusUtils.readHoldingRegister(Electric_4KW_ModbusAddress.getAllAdd("cdconn_currset"), DataType.TWO_BYTE_INT_SIGNED, master), epower.cdconn_currset); //CD²¢ÁªµçÁ÷¸ø¶¨
|
*/
|
}
|
}
|