package com.data.comm;
|
|
import com.data.Motor_inf;
|
import com.data.Oil_comm;
|
import com.data.Ups_comm;
|
import com.data.Water_comm;
|
import com.modbus.data.MyModbusMaster;
|
import com.modbus.data.MyModbusUtils;
|
import com.serotonin.modbus4j.BatchRead;
|
import com.serotonin.modbus4j.BatchResults;
|
import com.sql.MysqlConnPool;
|
|
public class Lubrication_cooling_SocketClient_Thread extends Thread{
|
// public static int Dev_Type_Rectifier_power = 40001; //ÓÍÕ¾
|
|
private MysqlConnPool pool;
|
private Motor_inf motor;
|
private MyModbusMaster master;
|
|
public Lubrication_cooling_SocketClient_Thread(MysqlConnPool pool, Motor_inf motor) {
|
this.motor = motor;
|
this.pool = pool;
|
|
master = new MyModbusMaster(motor.getDev_ip(), MyModbusMaster.SLAVEID_DEFAULT);
|
}
|
@Override
|
public void run() {
|
int run_count = 0;
|
while(true) {
|
try {
|
if(run_count % 2 == 0) {
|
//¶ÁÈ¡ÓÍÕ¾/ˮվ/ups
|
if(motor.oil_comm.getDev_id()==40001) {
|
readOil_comm(motor.oil_comm);
|
Lubrication_cooling_SQL.insertOrUpdateTb_oil_comm(pool, motor.oil_comm);
|
}
|
if(motor.water_comm.getDev_id()==40002) {
|
readWater_comm(motor.water_comm);
|
Lubrication_cooling_SQL.insertOrUpdateTb_water_comm(pool, motor.water_comm);
|
|
}
|
if(motor.ups_comm.getDev_id()==40003) {
|
readUps_comm(motor.ups_comm);
|
Lubrication_cooling_SQL.insertOrUpdateTb_ups_comm(pool, motor.ups_comm);
|
}
|
|
|
}
|
|
motor.conn_state = master.getConnectState();
|
if(run_count > 999909) {
|
run_count = 0;
|
}
|
run_count ++;
|
Thread.sleep(200);
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
}
|
}
|
//¶ÁÈ¡ups
|
private void readUps_comm(Ups_comm ups_comm) {
|
BatchRead<Integer> batch = ups_comm.createBatchRead(master);
|
BatchResults<Integer> res = MyModbusUtils.readMutilRegisters(batch, master);
|
ups_comm.putBatchResult(res);
|
}
|
//¶Áȡˮվ
|
private void readWater_comm(Water_comm water_comm) {
|
BatchRead<Integer> batch = water_comm.createBatchRead(master);
|
BatchResults<Integer> res = MyModbusUtils.readMutilRegisters(batch, master);
|
water_comm.putBatchResult(res);
|
}
|
//¶ÁÈ¡ÓÍÕ¾ÐÅÏ¢
|
private void readOil_comm(Oil_comm oil_comm) {
|
BatchRead<Integer> batch = oil_comm.createBatchRead(master);
|
BatchResults<Integer> res = MyModbusUtils.readMutilRegisters(batch, master);
|
oil_comm.putBatchResult(res);
|
}
|
}
|
|