package com.electrical.FourKW;
|
|
import java.util.ArrayList;
|
import java.util.Date;
|
import java.util.List;
|
|
import com.base.Com;
|
import com.base.ComBase;
|
import com.log.User_Log;
|
import com.log.User_Log_SQL;
|
import com.modbus.data.MyModbusMaster;
|
import com.modbus.data.MyModbusUtils;
|
import com.serotonin.modbus4j.BatchRead;
|
import com.serotonin.modbus4j.BatchResults;
|
import com.serotonin.modbus4j.code.DataType;
|
import com.serotonin.modbus4j.locator.BaseLocator;
|
import com.sql.MysqlConnPool;
|
|
public class Electrical_4KW_SocketClient_Thread implements Runnable{
|
|
public MysqlConnPool conn_pool;
|
public Electric_inf einf;
|
|
public Electric_Rt ert;
|
public Electric_State estate;
|
public Electric_Control_Single ecs;
|
public Electric_alarm eAlarm;
|
public List<Electric_alarm> listAlarm;
|
public Electric_control_conn econn;
|
|
public MyModbusMaster master;
|
|
public List<User_Log> logs;
|
|
//public static final int MAX_READALARM_COUNT = 20; //Ò»´Î¶ÁÈ¡¸æ¾¯½ÚµãµÄ×î´óÊýÁ¿
|
//public int read_alarm_index = 0; //¶ÁÈ¡¸æ¾¯Ë÷Òý
|
|
public Electrical_4KW_SocketClient_Thread(Electric_inf einf,MysqlConnPool conn_pool) {
|
this.conn_pool = conn_pool;
|
this.einf = einf;
|
|
logs = new ArrayList<>();
|
ert = einf.rt;
|
estate = einf.state;
|
eAlarm = einf.alarm;
|
/*
|
ert = new Electric_Rt(einf.getElectric_id());
|
estate = new Electric_State(einf.getElectric_id());
|
eAlarm=new Electric_alarm(einf.getElectric_id());
|
*/
|
|
|
econn=new Electric_control_conn(einf.electric_id);
|
ecs = new Electric_Control_Single(einf.getElectric_id());
|
listAlarm=new ArrayList<Electric_alarm>();
|
|
master = new MyModbusMaster(einf.getElectric_ip(), MyModbusMaster.SLAVEID_DEFAULT);
|
}
|
|
|
@Override
|
public void run() {
|
int runCount = 0;
|
Date last = new Date();
|
while(true) {
|
try {
|
Electrical_Task_SQL.queryElectric_Control_Single(conn_pool, ecs);
|
//System.out.println(ecs.isControl_en()+"################33 "+runCount);
|
if(ecs.isControl_en()) {
|
//************************** µ¥µã¿ØÖÆÊä³ö *******************************//*
|
logs.clear();
|
writeElectricalControlSignal(master,ecs);
|
Electrical_Task_SQL.update_Electric_Control_Single(conn_pool, ecs);
|
User_Log_SQL.recordUserLog(conn_pool, logs);
|
}
|
|
if(econn.electric_id==4001||econn.electric_id==4003) {
|
logs.clear();
|
Electrical_Task_SQL.queryElectric_Control_Conn(conn_pool, econn);
|
if(econn.isControl_en()) {
|
//************************** ×éºÏ¿ØÖÆÊä³ö *******************************//*
|
writeElectricalControlConn(master, econn);
|
Electrical_Task_SQL.update_Electric_Control_Conn(conn_pool, econn);
|
}
|
User_Log_SQL.recordUserLog(conn_pool, logs);
|
}
|
|
|
if(runCount %2 == 0) {
|
//*************************** ¸üеçԴʵʱÐÅÏ¢******************************//*
|
|
//Date t1 = new Date();
|
//readElectrical_rt(master,ert);
|
readMutilElectrical_rt(master,ert);
|
Electrical_Task_SQL.update_Electric_Rt(conn_pool, ert);
|
//System.out.println("RT:"+(new Date().getTime() - t1.getTime()));
|
|
|
//Date t2 = new Date();
|
//**************************** ¸üеçԴ״̬ÐÅÏ¢ *****************************//*
|
//readElectrical_state(master,estate);
|
readMutilElectrical_state(master,estate);
|
Electrical_Task_SQL.update_Electric_State(conn_pool, estate);
|
//System.out.println("State:"+(new Date().getTime() - t2.getTime()));
|
}
|
|
if(runCount %4 == 0) {
|
//*************************** ¶ÁÈ¡¹ÊÕÏ״̬ÐÅÏ¢ ******************************//*
|
//Date start = new Date();
|
readMutilElectricalAlarmData(master,eAlarm);
|
//Electrical_Task_SQL.insertOrUpdateElectrical_alarmTable(conn_pool, listAlarm);
|
//Date end = new Date();
|
//System.out.println((end.getTime()-start.getTime())/1000);
|
}
|
|
//System.err.println(einf.electric_id+"====="+((new Date()).getTime()-last.getTime()));
|
last = new Date();
|
|
|
|
Electrical_Task_SQL.insertOrUpdateDeviceConnectState(conn_pool, einf.electric_id, master);
|
|
//Åжϵ±Ç°É豸ÊÇ·ñ¶Ï¿ªÁ¬½Ó
|
if(master.getConnectState() == 0) {
|
//ͨѶÖжÏ
|
einf.lose_conn = true;
|
}else {
|
//ͨѶÕý³£
|
einf.lose_conn = false;
|
}
|
|
if(runCount%10 == 0) {
|
//¸üе±Ç°É豸ip
|
master.setTarget_ip(einf.electric_ip);
|
}
|
if(runCount > 999900) {
|
runCount = 0;
|
}
|
runCount ++;
|
Thread.sleep(50);
|
} catch (Exception e) {
|
try {
|
Thread.sleep(1000);
|
} catch (InterruptedException e1) {
|
//e1.printStackTrace();
|
}
|
e.printStackTrace();
|
}
|
|
}
|
}
|
/**
|
* µ¥µã¿ØÖÆÊä³ö
|
* @param master
|
* @param ecs
|
*/
|
private void writeElectricalControlSignal(MyModbusMaster master, Electric_Control_Single ecs) {
|
//System.out.println(ecs);
|
//ÉÏλ»úÉ趨µçÁ÷
|
if(ecs.upsetcurr >0) {
|
boolean flag = MyModbusUtils.writeHoldingRegister(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "upsetcurr"), ecs.upsetcurr, DataType.TWO_BYTE_INT_UNSIGNED, master);
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,einf.electric_name+"ÉÏλ»úÉ趨µçÁ÷Ϊ:"+ecs.upsetcurr,flag));
|
}
|
//ÉÏλ»úÉ趨µçѹ
|
if(ecs.upsetvol >0) {
|
boolean flag = MyModbusUtils.writeHoldingRegister(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "upsetvol"), ecs.upsetvol, DataType.TWO_BYTE_INT_UNSIGNED, master);
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,einf.electric_name+"ÉÏλ»úÉ趨µçѹΪ:"+ecs.upsetvol,flag));
|
}
|
//ºãѹ¿ØÖÆ
|
if(ecs.convolcontrol >0) {
|
try {
|
boolean flag = MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "convolcontrol"), true, master);
|
//300ºÁÃëºó¸´Ô
|
Thread.sleep(300);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "convolcontrol"),false, master);
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,einf.electric_name+"ºãѹ¿ØÖÆ",flag));
|
} catch (InterruptedException e) {
|
e.printStackTrace();
|
}
|
}
|
//ºãÁ÷¿ØÖÆ
|
if(ecs.concurrcontrol >0) {
|
try {
|
boolean flag = MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "concurrcontrol"),true, master);
|
//300ºÁÃëºó¸´Ô
|
Thread.sleep(300);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "concurrcontrol"),false, master);
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,einf.electric_name+"ºãÁ÷¿ØÖÆ",flag));
|
} catch (InterruptedException e) {
|
e.printStackTrace();
|
}
|
}
|
/*if(ecs.othermodes >0) {
|
MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "othermodes"),true, master);
|
}
|
if(ecs.parallelmodes >0) {
|
MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "parallelmodes"),true, master);
|
}*/
|
//µ¥Ì×µçÔ´Æô¶¯£ºÆô¶¯Î»=1;ÆäËûģʽÔËÐÐ=1;·ç»úÆô¶¯=1;
|
if(ecs.startposition >0) {
|
//System.out.println("µ¥Ì×µçÔ´Æô¶¯");
|
try {
|
//System.out.println("ecs.startposition==="+ecs.startposition);
|
boolean flag = MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "startposition"),true, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "othermodes"),true, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "fanstart"),true, master);
|
//300ºÁÃëºó¸´Ô
|
Thread.sleep(300);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "startposition"),false, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "othermodes"),false, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "fanstart"),false, master);
|
logs.add(new User_Log(User_Log.Start_up,User_Log.electricsystem,einf.electric_name,flag));
|
} catch (InterruptedException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
}
|
//µ¥Ì×µçÔ´Í£Ö¹£ºÍ£Ö¹Î»=1;·ç»úÍ£Ö¹=1
|
if(ecs.stopposition >0) {
|
//System.out.println("µ¥Ì×µçÔ´Í£Ö¹");
|
//System.out.println("ecs.stopposition==="+ecs.stopposition);
|
try {
|
boolean flag = MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "stopposition"),true, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "fanstop"),true, master);
|
//300ºÁÃëºó¸´Ô
|
Thread.sleep(300);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "stopposition"),false, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "fanstop"),false, master);
|
logs.add(new User_Log(User_Log.End,User_Log.electricsystem,einf.electric_name,flag));
|
} catch (InterruptedException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
}
|
//¸´Î»
|
if(ecs.resetposition >0) {
|
boolean flag = MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "resetposition"),true,master);
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,einf.electric_name+"¸´Î»",flag));
|
}
|
|
//¹ÊÕϸ´Î»
|
if(ecs.screen_reset >0) {
|
try {
|
boolean flag = MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "screen_reset"),true,master);
|
Thread.sleep(300);
|
//300ºÁÃ븴Ô
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "screen_reset"),false,master);
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,einf.electric_name+"¹ÊÕϸ´Î»",flag));
|
} catch (InterruptedException e) {
|
e.printStackTrace();
|
}
|
}
|
/*if(ecs.fanstart >0) {
|
MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "fanstart"),true, master);
|
}
|
if(ecs.fanstop >0) {
|
MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "fanstop"),true, master);
|
}*/
|
//Ö±Á÷µçѹ
|
if(ecs.dcvol >0) {
|
boolean flag = MyModbusUtils.writeHoldingRegister(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "dcvol"), ecs.dcvol, DataType.TWO_BYTE_INT_UNSIGNED, master);
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,einf.electric_name+"Ö±Á÷µçѹΪ:"+ecs.dcvol,flag));
|
}
|
//Ö±Á÷µçÁ÷
|
if(ecs.dccurr >0) {
|
boolean flag = MyModbusUtils.writeHoldingRegister(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "dccurr"), ecs.dccurr, DataType.TWO_BYTE_INT_UNSIGNED, master);
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,einf.electric_name+"Ö±Á÷µçÁ÷Ϊ:"+ecs.dccurr,flag));
|
}
|
//¿ØÖƽÇ
|
if(ecs.controlangle >0) {
|
boolean flag = MyModbusUtils.writeHoldingRegister(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "controlangle"), ecs.controlangle, DataType.TWO_BYTE_INT_UNSIGNED, master);
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,einf.electric_name+"¿ØÖƽÇΪ:"+ecs.controlangle,flag));
|
}
|
//µçÔ´¶ÔÓ¦Êä³ö¿ª¹Ø
|
/*
|
* AµçÔ´¶ÔÓ¦Êä³ö¿ª¹Ø£ºÒ»ºÅת»»¿ª¹Ø¹ñKM1£¬KM2
|
B µçÔ´¶ÔÓ¦Êä³ö¿ª¹Ø£ºÒ»ºÅת»»¿ª¹Ø¹ñKM3£¬KM4
|
C µçÔ´¶ÔÓ¦Êä³ö¿ª¹Ø£º¶þºÅת»»¿ª¹Ø¹ñKM1£¬KM2
|
DµçÔ´¶ÔÓ¦Êä³ö¿ª¹Ø£º¶þºÅת»»¿ª¹Ø¹ñKM3£¬KM4
|
*/
|
//¿ª¹Ø¹ñºÏÕ¢Ö¸Áî
|
if(ecs.switchon >0) {
|
try {
|
boolean flag = MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "switchon_1"),true, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "switchon_2"),true, master);
|
//300ºÁÃëºó¸´Ô
|
Thread.sleep(300);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "switchon_1"),false, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "switchon_2"),false, master);
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,einf.electric_name+"¿ª¹ØºÏÕ¢",flag));
|
} catch (InterruptedException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
}
|
//¿ª¹Ø¹ñ·ÖÕ¢Ö¸Áî
|
if(ecs.switchoff >0) {
|
try {
|
boolean flag = MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "switchoff_1"),true, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "switchoff_2"),true, master);
|
//300ºÁÃëºó¸´Ô
|
Thread.sleep(300);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "switchoff_1"),false, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(ecs.getElectric_id(), "switchoff_2"),false, master);
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,einf.electric_name+"¿ª¹Ø·ÖÕ¢",flag));
|
} catch (InterruptedException e) {
|
e.printStackTrace();
|
}
|
}
|
ecs.clear();
|
}
|
/**
|
* ¸üеçԴʵʱÐÅÏ¢
|
* @param master
|
* @param load_state
|
*/
|
private void readElectrical_rt(MyModbusMaster master, Electric_Rt ert) {
|
ert.upsetcurr = (float) master.checkNullData(MyModbusUtils.readHoldingRegister(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "upsetcurr"), DataType.TWO_BYTE_INT_SIGNED, master), ert.upsetcurr); //ÉÏλ»úÉ趨µçÁ÷ 58
|
ert.upsetvol = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "upsetvol"), DataType.TWO_BYTE_INT_SIGNED, master), ert.upsetvol); //ÉÏλ»úÉ趨µçѹ
|
ert.convolcontrol = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "convolcontrol"), master), ert.convolcontrol); //ºãѹ¿ØÖÆ
|
ert.concurrcontrol = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "concurrcontrol"), master), ert.concurrcontrol); //ºãÁ÷¿ØÖÆ
|
ert.othermodes = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "othermodes"), master), ert.othermodes); //ÆäËûģʽÔËÐÐ
|
ert.parallelmodes = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "parallelmodes"),master), ert.parallelmodes); //²¢ÁªÎÈѹÔËÐÐ
|
ert.startposition = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "startposition"),master), ert.startposition); //Æô¶¯Î»
|
ert.stopposition = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "stopposition"), master), ert.stopposition); //ֹͣλ
|
ert.resetposition = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "resetposition"), master), ert.resetposition); //¸´Î»
|
ert.fanstart = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "fanstart"), master), ert.fanstart); //·ç»úÆô¶¯
|
ert.fanstop = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "fanstop"), master), ert.fanstop); //·ç»úÍ£Ö¹
|
|
|
ert.dcvol = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "dcvol"), DataType.TWO_BYTE_INT_SIGNED, master), ert.dcvol);//Ö±Á÷µçѹ
|
ert.dccurr = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "dccurr"), DataType.TWO_BYTE_INT_SIGNED, master), ert.dccurr);//Ö±Á÷µçÁ÷
|
ert.controlangle = (int)master.checkNullData(MyModbusUtils.readHoldingRegister(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "controlangle"), DataType.TWO_BYTE_INT_SIGNED, master), ert.controlangle);//¿ØÖƽÇ
|
if(ert.electric_id%4003 == 0) {
|
System.out.println("dcvol:"+ert.dcvol+"dccurr:"+ert.dccurr+"\t"+Com.getDateTimeFormat(new Date(), Com.DTF_YMDhms));
|
}
|
|
ert.loopflag = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "loopflag"), master), ert.loopflag); //¿ª±Õ»·±ê־λ¡¾0¿ª»·£»1±Õ»·¡¿
|
ert.remoteflag = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "remoteflag"), master), ert.remoteflag);//¾ÍµØÔ¶³Ì±ê־λ¡¾0Ô¶³Ì£»1¾ÍµØ¡¿
|
ert.orderflag = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "orderflag"),master), ert.orderflag);//ÕýÐòÄæÐò±ê־λ¡¾0ÕýÐò£»1ÄæÐò¡¿
|
ert.consvolcurrflag = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "consvolcurrflag"), master), ert.consvolcurrflag);//ºãѹºáÁ÷±ê־λ¡¾0ºãѹ£»1ºãÁ÷¡¿
|
ert.powerstartflag = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "powerstartflag"),master), ert.powerstartflag);//µçÔ´Æô¶¯±ê־λ¡¾0Í£Ö¹£»1Æô¶¯¡¿
|
ert.workmodelflag = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "workmodelflag"), master), ert.workmodelflag); //¹¤×÷ģʽ±ê־λ¡¾0ÆäËûģʽ£»1²¢ÁªÎÈѹ¡¿
|
ert.switchon_1=(int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "switchon_1"), master), ert.switchon_1); //1ºÅ¿ª¹Ø
|
ert.switchon_2=(int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "switchon_2"), master), ert.switchon_2); //2ºÅ¿ª¹Ø
|
ert.switchoff_1=(int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "switchoff_1"), master), ert.switchoff_1); //1ºÅ¿ª¹Ø
|
ert.switchoff_2=(int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "switchoff_2"), master), ert.switchoff_2); //2ºÅ¿ª¹Ø
|
|
ert.comm_state=(int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "comm_state"), master), ert.comm_state); //ͨѶ״̬
|
ert.screen_reset=(int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "screen_reset"), master), ert.screen_reset); //´¥ÃþÆÁ״̬
|
ert.fan_control=(int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "fan_control"), master), ert.fan_control); //·ç»ú¿ØÖÆ
|
ert.emergency_trip=(int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(ert.getElectric_id(), "emergency_trip"), master), ert.emergency_trip); //×ܿعñ½ô¼±ÌøÕ¢
|
|
|
//System.out.println(ert.electric_id+"&&&&&&&&&&&&&&"+ert.getDcvol());
|
}
|
|
/**
|
* ¶àµã¶ÁÈ¡Rt״̬
|
* @param master
|
* @param ert
|
*/
|
public void readMutilElectrical_rt(MyModbusMaster master, Electric_Rt ert) {
|
//Date t1 = new Date();
|
|
BatchRead<Integer> batch = ert.createBatchRead(master);
|
BatchResults<Integer> res = MyModbusUtils.readMutilRegisters(batch, master);
|
ert.putBatchResult(res);
|
|
//System.err.println("NeW:"+(new Date().getTime()-t1.getTime()));
|
}
|
|
/**
|
* ¸üеçԴ״̬ÐÅÏ¢
|
* @param master
|
* @param load_state
|
*/
|
private void readElectrical_state(MyModbusMaster master, Electric_State estate) {
|
estate.case_trip_output = (int) master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(estate.getElectric_id(), "case_trip_output"), master), estate.case_trip_output);//»úÏäÌøÕ¢Êä³ö
|
estate.fault_reset_signal = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(estate.getElectric_id(), "fault_reset_signal"), master), estate.fault_reset_signal);//¹ÊÕϸ´Î»ÐźÅ
|
estate.high_vol_switch_status = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(estate.getElectric_id(), "high_vol_switch_status"), master), estate.high_vol_switch_status);//¸ßѹ¿ª¹Ø×´Ì¬
|
estate.stop_button = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(estate.getElectric_id(), "stop_button"), master), estate.stop_button);//¼±Í£°´Å¥
|
estate.main_cabinet_fan_status = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(estate.getElectric_id(), "main_cabinet_fan_status"), master), estate.main_cabinet_fan_status);//Ö÷¹ñ·ç»ú״̬
|
estate.trans_cabinet_door_lock = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(estate.getElectric_id(), "trans_cabinet_door_lock"), master), estate.trans_cabinet_door_lock);//±äѹÆ÷¹ñÃÅÁ¬Ëø
|
estate.trans_cabinet_overtem_alarm = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(estate.getElectric_id(), "trans_cabinet_overtem_alarm"), master), estate.trans_cabinet_overtem_alarm);//±äѹÆ÷³¬Î±¨¾¯
|
estate.trans_cabinet_overtem_trip = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(estate.getElectric_id(), "trans_cabinet_overtem_trip"), master), estate.trans_cabinet_overtem_trip);//±äѹÆ÷³¬ÎÂÌøÕ¢
|
estate.qs1_state = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(estate.getElectric_id(), "qs1_state"), master), estate.qs1_state);//QS1״̬
|
estate.qs2_state = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(estate.getElectric_id(), "qs2_state"), master), estate.qs2_state);//QS2״̬
|
estate.switch_cabinet_door_status = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getAddress(estate.getElectric_id(), "switch_cabinet_door_status"), master), estate.switch_cabinet_door_status);//ת»»¿ª¹Ø¹ñÃÅ״̬
|
if(estate.getElectric_id()==4001||estate.getElectric_id()==4003) {
|
estate.alldcvol = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Electric_4KW_ModbusAddress.getAddress(estate.getElectric_id(), "alldcvol"), DataType.TWO_BYTE_INT_SIGNED, master), estate.alldcvol);//×ÜÖ±Á÷µçѹ
|
estate.alldccurr = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Electric_4KW_ModbusAddress.getAddress(estate.getElectric_id(), "alldccurr"), DataType.TWO_BYTE_INT_SIGNED, master), estate.alldccurr);//×ÜÖ±Á÷µçÁ÷
|
}else {
|
estate.alldcvol=0;
|
estate.alldccurr = 0;
|
}
|
if(estate.getElectric_id()==4001||estate.getElectric_id()==4003) {
|
estate.conn_flag=(int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getConnAddress(estate.getElectric_id(), "conn_flag"), master), estate.conn_flag);//´®/²¢Áª×´Ì¬ ;
|
|
}else {
|
estate.conn_flag=(int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getConnAddress(estate.getElectric_id(), "conn_flag"), master), estate.conn_flag);//´®/²¢Áª×´Ì¬ ;
|
|
}
|
|
}
|
|
/**
|
* ¶àµã¶ÁÈ¡State״̬
|
* @param master
|
* @param estate
|
*/
|
public void readMutilElectrical_state(MyModbusMaster master, Electric_State estate) {
|
|
BatchRead<Integer> batch = estate.createBatchRead(master);
|
BatchResults<Integer> res = MyModbusUtils.readMutilRegisters(batch, master);
|
estate.putBatchResult(res);
|
|
}
|
|
|
/**
|
* ¸üеçÔ´¹ÊÕÏÐÅÏ¢
|
* @param master
|
* @param load_state
|
*/
|
private void readElectricalAlarmData(MyModbusMaster master, Electric_alarm eAlarm) {
|
listAlarm=new ArrayList<Electric_alarm>();
|
eAlarm.dcover_curr = (int) master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getFaultAdd(eAlarm.getElectric_id(), "dcover_curr"), master), eAlarm.dcover_curr); //Ö±Á÷¹ýÁ÷
|
if(eAlarm.dcover_curr>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119001);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
listAlarm.add(alarm);
|
}
|
eAlarm.synchro_lose = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getFaultAdd(eAlarm.getElectric_id(), "synchro_lose"), master), eAlarm.synchro_lose);//ͬ²½¶ªÊ§
|
if(eAlarm.synchro_lose>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119002);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
listAlarm.add(alarm);
|
}
|
eAlarm.dcover_vol = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getFaultAdd(eAlarm.getElectric_id(), "dcover_vol"), master), eAlarm.dcover_vol); //Ö±Á÷¹ýѹ
|
if(eAlarm.dcover_vol>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119003);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
listAlarm.add(alarm);
|
}
|
eAlarm.case_pulse_block = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getFaultAdd(eAlarm.getElectric_id(), "case_pulse_block"), master), eAlarm.case_pulse_block);//»úÏäÂö³å·âËø
|
if(eAlarm.case_pulse_block>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119004);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
listAlarm.add(alarm);
|
}
|
eAlarm.case_transA_overcurr = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getFaultAdd(eAlarm.getElectric_id(), "case_transA_overcurr"), master), eAlarm.case_transA_overcurr);//»úÏä±äѹÆ÷AÏà¹ýÁ÷
|
if(eAlarm.case_transA_overcurr>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119005);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
listAlarm.add(alarm);
|
}
|
eAlarm.case_transB_overcurr = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getFaultAdd(eAlarm.getElectric_id(), "case_transB_overcurr"),master), eAlarm.case_transB_overcurr); //»úÏä±äѹÆ÷BÏà¹ýÁ÷
|
if(eAlarm.case_transB_overcurr>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119006);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
listAlarm.add(alarm);
|
}
|
eAlarm.case_transC_overcurr = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getFaultAdd(eAlarm.getElectric_id(), "case_transC_overcurr"),master), eAlarm.case_transC_overcurr); //»úÏä±äѹÆ÷CÏà¹ýÁ÷
|
if(eAlarm.case_transC_overcurr>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119007);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
listAlarm.add(alarm);
|
}
|
eAlarm.case_cuurfeedback_lose = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getFaultAdd(eAlarm.getElectric_id(), "case_cuurfeedback_lose"), master), eAlarm.case_cuurfeedback_lose);//»úÏäÖ±Á÷·´À¡¶ªÊ§
|
if(eAlarm.case_cuurfeedback_lose>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119008);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
listAlarm.add(alarm);
|
}
|
eAlarm.case_synchro_cycle_fault = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getFaultAdd(eAlarm.getElectric_id(), "case_synchro_cycle_fault"), master), eAlarm.case_synchro_cycle_fault);//»úÏäͬ²½ÖÜÆÚ¹ÊÕÏ
|
if(eAlarm.case_synchro_cycle_fault>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119009);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
listAlarm.add(alarm);
|
}
|
eAlarm.main_cabinet_fault_one = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getFaultAdd(eAlarm.getElectric_id(), "main_cabinet_fault_one"), master), eAlarm.main_cabinet_fault_one); //1ºÅÖ÷¹ñ¿ìÈÛ¹ÊÕÏ
|
if(eAlarm.main_cabinet_fault_one>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119010);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
listAlarm.add(alarm);
|
}
|
eAlarm.main_cabinet_fault_two = (int)master.checkNullData(MyModbusUtils.readCoilStatus(Electric_4KW_ModbusAddress.getFaultAdd(eAlarm.getElectric_id(), "main_cabinet_fault_two"), master), eAlarm.main_cabinet_fault_two); //2ºÅÖ÷¹ñ¿ìÈÛ¹ÊÕÏ
|
if(eAlarm.main_cabinet_fault_two>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119011);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
listAlarm.add(alarm);
|
}
|
}
|
|
/**
|
* ¶àµã¶ÁÈ¡¸æ¾¯×´Ì¬
|
* @param master
|
* @param eAlarm
|
*/
|
private void readMutilElectricalAlarmData(MyModbusMaster master, Electric_alarm eAlarm) {
|
|
BatchRead<Integer> batch = eAlarm.createBatchRead(master);
|
BatchResults<Integer> res = MyModbusUtils.readMutilRegisters(batch, master);
|
eAlarm.putBatchResult(res);
|
|
eAlarm.isReadOk = true;
|
//ɸѡ¸æ¾¯ÐÅÏ¢
|
/*if(res != null) {
|
if(eAlarm.dcover_curr>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119001);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
alarm.setAlarm_confirmtime(new Date());
|
listAlarm.add(alarm);
|
}
|
|
if(eAlarm.synchro_lose>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119002);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
alarm.setAlarm_confirmtime(new Date());
|
listAlarm.add(alarm);
|
}
|
|
if(eAlarm.dcover_vol>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119003);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
alarm.setAlarm_confirmtime(new Date());
|
listAlarm.add(alarm);
|
}
|
if(eAlarm.case_pulse_block>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119004);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
alarm.setAlarm_confirmtime(new Date());
|
listAlarm.add(alarm);
|
}
|
if(eAlarm.case_transA_overcurr>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119005);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
alarm.setAlarm_confirmtime(new Date());
|
listAlarm.add(alarm);
|
}
|
if(eAlarm.case_transB_overcurr>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119006);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
alarm.setAlarm_confirmtime(new Date());
|
listAlarm.add(alarm);
|
}
|
if(eAlarm.case_transC_overcurr>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119007);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
alarm.setAlarm_confirmtime(new Date());
|
listAlarm.add(alarm);
|
}
|
if(eAlarm.case_cuurfeedback_lose>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119008);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
alarm.setAlarm_confirmtime(new Date());
|
listAlarm.add(alarm);
|
}
|
if(eAlarm.case_synchro_cycle_fault>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119009);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
alarm.setAlarm_confirmtime(new Date());
|
listAlarm.add(alarm);
|
}
|
if(eAlarm.main_cabinet_fault_one>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119010);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
alarm.setAlarm_confirmtime(new Date());
|
listAlarm.add(alarm);
|
}
|
if(eAlarm.main_cabinet_fault_two>0) {
|
Electric_alarm alarm=new Electric_alarm(eAlarm.electric_id);
|
alarm.setAlarm_id(119011);
|
alarm.setAlarm_starttime(new Date());
|
alarm.setAlarm_endtime(new Date());
|
alarm.setAlarm_confirm(0);
|
alarm.setAlarm_confirmtime(new Date());
|
listAlarm.add(alarm);
|
}
|
}*/
|
}
|
|
/**
|
* »ñÈ¡×éºÏÃû³Æ
|
*/
|
public String getGroupName(int ele_id) {
|
if(ele_id == 4001) {
|
return "ABÌ×";
|
}else if(ele_id == 4003) {
|
return "CDÌ×";
|
}
|
return "";
|
}
|
|
/**
|
* »ñÈ¡×éºÏÃû³Æ
|
*/
|
public String getGroupSingleName(int ele_id,boolean close) {
|
if(close) {
|
if(ele_id == 4001) {
|
return "AB×éºÏAÌ׺ÏÕ¢";
|
}else if(ele_id == 4002) {
|
return "AB×éºÏBÌ׺ÏÕ¢";
|
}else if(ele_id == 4003) {
|
return "CD×éºÏCÌ׺ÏÕ¢";
|
}else if(ele_id == 4004) {
|
return "CD×éºÏDÌ׺ÏÕ¢";
|
}
|
}else {
|
if(ele_id == 4001) {
|
return "AB×éºÏAÌ×·ÖÕ¢";
|
}else if(ele_id == 4002) {
|
return "AB×éºÏBÌ×·ÖÕ¢";
|
}else if(ele_id == 4003) {
|
return "CD×éºÏCÌ×·ÖÕ¢";
|
}else if(ele_id == 4004) {
|
return "CD×éºÏDÌ×·ÖÕ¢";
|
}
|
}
|
return "";
|
}
|
|
/**
|
* ×éºÏ¿ØÖÆÊä³ö
|
* @param master
|
* @param ecs
|
*/
|
private void writeElectricalControlConn(MyModbusMaster master, Electric_control_conn econn) {
|
//ºãѹ¿ØÖÆ
|
/*
|
* \\±¾Õ¾µã\AÌ׺ãѹ¿ØÖÆ=1;
|
\\±¾Õ¾µã\BÌ׺ãѹ¿ØÖÆ=1;
|
*/
|
if(econn.convolcontrol >0) {
|
try {
|
boolean flag = MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "convolcontrol"), true, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "convolcontrol"), true, master);
|
//300ºÁÃëºó¸´Ô
|
Thread.sleep(300);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "convolcontrol"), false, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "convolcontrol"), false, master);
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,getGroupName(econn.electric_id)+"ºãѹ¿ØÖÆ",flag));
|
} catch (InterruptedException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
}
|
/*
|
* ºãÁ÷ģʽ£¨°´Å¥°´Ï£©£º
|
\\±¾Õ¾µã\AÌ׺ãÁ÷¿ØÖÆ=1;
|
\\±¾Õ¾µã\BÌ׺ãÁ÷¿ØÖÆ=1;
|
*/
|
if(econn.concurrcontrol >0) {
|
try {
|
boolean flag = MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "concurrcontrol"), true, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "concurrcontrol"), true, master);
|
//300ºÁÃëºó¸´Ô
|
Thread.sleep(300);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "concurrcontrol"), false, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "concurrcontrol"), false, master);
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,getGroupName(econn.electric_id)+"ºãÁ÷¿ØÖÆ",flag));
|
} catch (InterruptedException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
}
|
//²¢ÁªÄ£Ê½£¨°´Å¥°´Ï£©£º\\±¾Õ¾µã\AB²¢´®Áª±ê־λ=0;
|
if(econn.conn_flag >0) {
|
//System.out.println("econn.conn_flag===="+econn.conn_flag);
|
boolean flag = MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getConnAddress(econn.getElectric_id(), "conn_flag"), false, master);
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,getGroupName(econn.electric_id)+"²¢ÁªÄ£Ê½",flag));
|
}
|
//´®ÁªÄ£Ê½£¨°´Å¥°´Ï£©£º\\±¾Õ¾µã\AB²¢´®Áª±ê־λ=1;
|
if(econn.divide_flag >0) {
|
//System.out.println("econn.divide_flag===="+econn.divide_flag);
|
boolean flag = MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getConnAddress(econn.getElectric_id(), "conn_flag"), true, master);
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,getGroupName(econn.electric_id)+"´®ÁªÄ£Ê½",flag));
|
}
|
//µçÁ÷µçѹ¸ø¶¨È·ÈÏ£¨°´Å¥°´Ï£©£º
|
/*
|
* {\\±¾Õ¾µã\AÌ×ÉÏλ»úÉ趨µçÁ÷=\\±¾Õ¾µã\AB²¢ÁªµçÁ÷¸ø¶¨/2;
|
\\±¾Õ¾µã\BÌ×ÉÏλ»úÉ趨µçÁ÷=\\±¾Õ¾µã\AB²¢ÁªµçÁ÷¸ø¶¨/2;
|
\\±¾Õ¾µã\AÌׯäËûģʽÔËÐÐ=1;
|
\\±¾Õ¾µã\BÌׯäËûģʽÔËÐÐ=1;}
|
*/
|
if(econn.volset >0) {
|
try {
|
boolean flag = MyModbusUtils.writeHoldingRegister(Electric_4KW_ModbusAddress.getConnAddress(econn.getElectric_id(), "givevol"), econn.givevol, DataType.TWO_BYTE_INT_UNSIGNED, master);
|
flag = flag&&MyModbusUtils.writeHoldingRegister(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "upsetvol"),econn.givevol, DataType.TWO_BYTE_INT_UNSIGNED, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "othermodes"),true, master);
|
|
flag = flag&&MyModbusUtils.writeHoldingRegister(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "upsetvol"),econn.givevol, DataType.TWO_BYTE_INT_UNSIGNED, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "othermodes"),true, master);
|
|
//300ºÁÃëºó¸´Ô
|
Thread.sleep(300);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "othermodes"),false, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "othermodes"),false, master);
|
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,getGroupName(econn.electric_id)+"µçѹ¸ø¶¨È·ÈÏ:"+econn.givevol,flag));
|
} catch (InterruptedException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
}
|
//µçѹµçÁ÷¸ø¶¨È·ÈÏ
|
if(econn.currset >0) {
|
try {
|
boolean flag = MyModbusUtils.writeHoldingRegister(Electric_4KW_ModbusAddress.getConnAddress(econn.getElectric_id(), "givecurr"), econn.givecurr, DataType.TWO_BYTE_INT_UNSIGNED, master);
|
flag = flag&&MyModbusUtils.writeHoldingRegister(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "upsetcurr"),econn.givecurr, DataType.TWO_BYTE_INT_UNSIGNED, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "othermodes"),true, master);
|
|
flag = flag&&MyModbusUtils.writeHoldingRegister(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "upsetcurr"),econn.givecurr, DataType.TWO_BYTE_INT_UNSIGNED, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "othermodes"),true, master);
|
|
//300ºÁÃëºó¸´Ô
|
Thread.sleep(300);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "othermodes"),false, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "othermodes"),false, master);
|
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,getGroupName(econn.electric_id)+"µçÁ÷¸ø¶¨È·ÈÏ",flag));
|
} catch (InterruptedException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
}
|
//²¢ÁªÔËÐÐÆô¶¯
|
if(econn.conn_start >0) {
|
try {
|
boolean flag = MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getConnAddress(econn.getElectric_id(), "conn_start"),true, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "fanstart"),true, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "fanstart"),true, master);
|
|
//300ºÁÃëºó¸´Ô
|
Thread.sleep(300);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getConnAddress(econn.getElectric_id(), "conn_start"),false, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "fanstart"),false, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "fanstart"),false, master);
|
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,getGroupName(econn.electric_id)+"×éºÏÆô¶¯",flag));
|
} catch (InterruptedException e) {
|
e.printStackTrace();
|
}
|
}
|
//²¢ÁªÔËÐÐÍ£Ö¹
|
if(econn.conn_stop >0) {
|
try {
|
boolean flag = MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getConnAddress(econn.getElectric_id(), "conn_stop"),true, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "fanstop"),true, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "fanstop"),true, master);
|
|
//300ºÁÃëºó¸´Ô
|
Thread.sleep(300);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getConnAddress(econn.getElectric_id(), "conn_stop"),false, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "fanstop"),false, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "fanstop"),false, master);
|
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,getGroupName(econn.electric_id)+"×éºÏÍ£Ö¹",flag));
|
} catch (InterruptedException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
}
|
//µÚÒ»Ì׺ÏÕ¢
|
if(econn.switchon1 >0) {
|
try {
|
boolean flag = MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "switchon_1"),true, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "switchon_2"),true, master);
|
//300ºÁÃëºó¸´Ô
|
Thread.sleep(300);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "switchon_1"),false, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "switchon_2"),false, master);
|
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,getGroupSingleName(econn.electric_id,true),flag));
|
} catch (InterruptedException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
}
|
//µÚ¶þÌ׺ÏÕ¢
|
if(econn.switchon2 >0) {
|
try {
|
boolean flag = MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "switchon_1"),true, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "switchon_2"),true, master);
|
//300ºÁÃëºó¸´Ô
|
Thread.sleep(300);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "switchon_1"),false, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "switchon_2"),false, master);
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,getGroupSingleName(econn.getElectric_id()+1,true),flag));
|
} catch (InterruptedException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
}
|
//µÚÒ»Ì×·ÖÕ¢
|
if(econn.switchoff1 >0) {
|
try {
|
boolean flag = MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "switchoff_1"),true, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "switchoff_2"),true, master);
|
//300ºÁÃëºó¸´Ô
|
Thread.sleep(300);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "switchoff_1"),false, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id(), "switchoff_2"),false, master);
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,getGroupSingleName(econn.getElectric_id(),false),flag));
|
} catch (InterruptedException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
}
|
//µÚ¶þÌ×·ÖÕ¢
|
if(econn.switchoff2 >0) {
|
try {
|
boolean flag = MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "switchoff_1"),true, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "switchoff_2"),true, master);
|
//300ºÁÃëºó¸´Ô
|
Thread.sleep(300);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "switchoff_1"),false, master);
|
flag = flag&&MyModbusUtils.writeCoil(Electric_4KW_ModbusAddress.getAddress(econn.getElectric_id()+1, "switchoff_2"),false, master);
|
logs.add(new User_Log(User_Log.Alter,User_Log.electricsystem,getGroupSingleName(econn.getElectric_id()+1,false),flag));
|
} catch (InterruptedException e) {
|
e.printStackTrace();
|
}
|
}
|
econn.clear();
|
}
|
}
|