whyclxw
2020-09-19 1bffd54630f3c20c29879b20033804d759db4750
修改
4个文件已修改
295 ■■■■■ 已修改文件
src/com/data/PowerArk_Task_SQL.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/com/dev/base/data/Dynamicload_ServerSocket_Thread.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/com/dev/base/data/Dynamicload_SocketClient_Thread.java 147 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/com/dev/base/data/Dynamicload_control.java 145 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/com/data/PowerArk_Task_SQL.java
@@ -348,7 +348,7 @@
                dyna.setNote(res.getString("note"));
                
                dyna.button = new Dynamicload_button(dyna.dev_id);
                dyna.control = new Dynamicload_control(dyna.dev_id);
                dyna.control = new Dynamicload_control(dyna.dev_id,dyna.getFZ_button_num());
                dyna.state = new Dynamicload_state(dyna.dev_id,0);
                dys.add(dyna);
            }
src/com/dev/base/data/Dynamicload_ServerSocket_Thread.java
@@ -30,7 +30,6 @@
            //插入或更新负载状态信息表
            PowerArk_Task_SQL.insertOrUpdateDynamicload_StateTable(conn_pool, new Dynamicload_state(dinfs.get(i).getDev_id(),dinfs.get(i).getFZ_button_num()));
            
            Dynamicload_SocketClient_Thread thread = new Dynamicload_SocketClient_Thread(dinfs.get(i),conn_pool);
            dinfthreads.put(dinfs.get(i).dev_id, thread);
            new Thread(thread).start();
src/com/dev/base/data/Dynamicload_SocketClient_Thread.java
@@ -27,7 +27,7 @@
        this.dinf = dinf;
        dbutton = new Dynamicload_button(dinf.getDev_id());
        dcontrol = new Dynamicload_control(dinf.getDev_id());
        dcontrol = new Dynamicload_control(dinf.getDev_id(),dinf.getFZ_button_num());
        dstate = new Dynamicload_state(dinf.getDev_id(),dinf.getFZ_button_num());
        master = new MyModbusMaster(dinf.getDev_ip(), MyModbusMaster.SLAVEID_DEFAULT);
        //System.out.println("master: "+master);
@@ -40,6 +40,12 @@
        Date last = new Date();
        while (true) {
            try {
                /*PowerArk_Task_SQL.queryDynamicload_Control(conn_pool, dcontrol);
                if(dcontrol.isControl_en()) {
                    //************************** 控制输出 *******************************//*
                    writeDynamicload_Control(master,dcontrol);
                    PowerArk_Task_SQL.update_Dynamicload_Control(conn_pool, dcontrol);
                }*/
                if (runCount % 2 == 0) {
                    // *************************** 更新负载按钮信息******************************//*
@@ -60,7 +66,6 @@
                //System.err.println(dinf.dev_id + "=====" + ((new Date()).getTime() - last.getTime()));
                last = new Date();
                PowerArk_Task_SQL.insertOrUpdateDeviceConnectState(conn_pool, dinf.dev_id, master);
                if (runCount % 10 == 0) {
                    // 更新当前设备ip
                    master.setTarget_ip(dinf.dev_ip);
@@ -82,6 +87,144 @@
        }
    }
    //控制输出
    private void writeDynamicload_Control(MyModbusMaster master, Dynamicload_control dcontrol) {
        if(dcontrol.FZ_b1>0) {
            if(dcontrol.FZ_b1==1) {
                MyModbusUtils.writeCoil(80, true, master);
            }else {
                MyModbusUtils.writeCoil(80, false, master);
            }
        }
        if(dcontrol.FZ_b2>0) {
            if(dcontrol.FZ_b2==1) {
                MyModbusUtils.writeCoil(81, true, master);
            }else {
                MyModbusUtils.writeCoil(81, false, master);
            }
        }
        if(dcontrol.FZ_b3>0) {
            if(dcontrol.FZ_b3==1) {
                MyModbusUtils.writeCoil(82, true, master);
            }else {
                MyModbusUtils.writeCoil(82, false, master);
            }
        }
        if(dcontrol.FZ_b4>0) {
            if(dcontrol.FZ_b4==1) {
                MyModbusUtils.writeCoil(83, true, master);
            }else {
                MyModbusUtils.writeCoil(83, false, master);
            }
        }
        if(dcontrol.FZ_b5>0) {
            if(dcontrol.FZ_b5==1) {
                MyModbusUtils.writeCoil(84, true, master);
            }else {
                MyModbusUtils.writeCoil(84, false, master);
            }
        }
        if(dcontrol.FZ_b6>0) {
            if(dcontrol.FZ_b6==1) {
                MyModbusUtils.writeCoil(85, true, master);
            }else {
                MyModbusUtils.writeCoil(85, false, master);
            }
        }
        if(dcontrol.FZ_b7>0) {
            if(dcontrol.FZ_b7==1) {
                MyModbusUtils.writeCoil(86, true, master);
            }else {
                MyModbusUtils.writeCoil(86, false, master);
            }
        }
        if(dcontrol.FZ_b8>0) {
            if(dcontrol.FZ_b8==1) {
                MyModbusUtils.writeCoil(87, true, master);
            }else {
                MyModbusUtils.writeCoil(87, false, master);
            }
        }
        if(dcontrol.FZ_b9>0) {
            if(dcontrol.FZ_b9==1) {
                MyModbusUtils.writeCoil(88, true, master);
            }else {
                MyModbusUtils.writeCoil(88, false, master);
            }
        }
        if(dcontrol.FZ_b10>0) {
            if(dcontrol.FZ_b10==1) {
                MyModbusUtils.writeCoil(89, true, master);
            }else {
                MyModbusUtils.writeCoil(89, false, master);
            }
        }
        if(dcontrol.FZ_b11>0) {
            if(dcontrol.FZ_b11==1) {
                MyModbusUtils.writeCoil(90, true, master);
            }else {
                MyModbusUtils.writeCoil(90, false, master);
            }
        }
        if(dcontrol.start_auto>0) {
            MyModbusUtils.writeCoil(8, true, master);
        }
        if(dcontrol.stop_auto>0) {
            MyModbusUtils.writeCoil(9, true, master);
        }
        if(dcontrol.sudden_crease>0) {
            MyModbusUtils.writeCoil(10, true, master);
        }
        if(dcontrol.all_open>0) {
            MyModbusUtils.writeCoil(11, true, master);
        }
        /*if(dcontrol.FZ_autostate1>0) {
            MyModbusUtils.writeCoil(1, true, master);
        }
        if(dcontrol.FZ_autostate2>0) {
            MyModbusUtils.writeCoil(2, true, master);
        }
        if(dcontrol.FZ_autostate3>0) {
            MyModbusUtils.writeCoil(3, true, master);
        }
        if(dcontrol.FZ_autostate4>0) {
            MyModbusUtils.writeCoil(4, true, master);
        }
        if(dcontrol.FZ_autostate5>0) {
            MyModbusUtils.writeCoil(5, true, master);
        }*/
        /*if(dcontrol.local_control>0) {
            MyModbusUtils.writeCoil(40, true, master);
        }
        if(dcontrol.back_control>0) {
            MyModbusUtils.writeCoil(41, true, master);
        }
        if(dcontrol.central_control>0) {
            MyModbusUtils.writeCoil(42, true, master);
        }
        if(dcontrol.inter_volume_M200>0) {
            MyModbusUtils.writeCoil(160, true, master);
        }
        if(dcontrol.fan_button>0) {
            MyModbusUtils.writeCoil(12, true, master);
        }*/
        if(dcontrol.set_power>0) {
            if(dcontrol.button_num==11) {
                MyModbusUtils.writeHoldingRegister(4, dcontrol.set_power, DataType.TWO_BYTE_INT_UNSIGNED, master);
            }else {
                MyModbusUtils.writeHoldingRegister(8, dcontrol.set_power, DataType.TWO_BYTE_INT_UNSIGNED, master);
            }
        }
        if(dcontrol.interval_time>0) {
            if(dcontrol.button_num==11) {
                MyModbusUtils.writeHoldingRegister(6, dcontrol.interval_time, DataType.TWO_BYTE_INT_UNSIGNED, master);
            }else {
                MyModbusUtils.writeHoldingRegister(16, dcontrol.interval_time, DataType.TWO_BYTE_INT_UNSIGNED, master);
            }
        }
        dcontrol.clear();
    }
    /**
     * 多点读取负载按钮状态
     * @param master
src/com/dev/base/data/Dynamicload_control.java
@@ -33,8 +33,45 @@
    public int interval_time;            //间隔时间
    public String note;
    
    public Dynamicload_control(int dev_id) {
    public int button_num;
    public boolean control_en = false;
    public void clear() {
        this.FZ_b1=0;
        this.FZ_b2=0;
        this.FZ_b3=0;
        this.FZ_b4=0;
        this.FZ_b5=0;
        this.FZ_b6=0;
        this.FZ_b7=0;
        this.FZ_b8=0;
        this.FZ_b9=0;
        this.FZ_b10=0;
        this.FZ_b11=0;
        this.start_auto=0;
        this.stop_auto=0;
        this.sudden_crease=0;
        this.all_open=0;
        this.FZ_autostate1=0;
        this.FZ_autostate2=0;
        this.FZ_autostate3=0;
        this.FZ_autostate4=0;
        this.FZ_autostate5=0;
        this.local_control=0;
        this.back_control=0;
        this.central_control=0;
        this.inter_volume_M200=0;
        this.fan_button=0;
        this.set_power=0;
        this.interval_time=0;
    }
    public boolean isControl_en() {
        return control_en;
    }
    public Dynamicload_control(int dev_id,int button_num) {
        this.dev_id = dev_id;
        this.button_num=button_num;
    }
    
    public int getDev_id() {
@@ -122,83 +159,189 @@
        this.dev_id = dev_id;
    }
    public void setFZ_b1(int fZ_b1) {
        if(fZ_b1 > 0) {
            control_en = true;
        }
        FZ_b1 = fZ_b1;
    }
    public void setFZ_b2(int fZ_b2) {
        if(fZ_b2 > 0) {
            control_en = true;
        }
        FZ_b2 = fZ_b2;
    }
    public void setFZ_b3(int fZ_b3) {
        if(fZ_b3 > 0) {
            control_en = true;
        }
        FZ_b3 = fZ_b3;
    }
    public void setFZ_b4(int fZ_b4) {
        if(fZ_b4 > 0) {
            control_en = true;
        }
        FZ_b4 = fZ_b4;
    }
    public void setFZ_b5(int fZ_b5) {
        if(fZ_b5 > 0) {
            control_en = true;
        }
        FZ_b5 = fZ_b5;
    }
    public void setFZ_b6(int fZ_b6) {
        if(fZ_b6 > 0) {
            control_en = true;
        }
        FZ_b6 = fZ_b6;
    }
    public void setFZ_b7(int fZ_b7) {
        if(fZ_b7 > 0) {
            control_en = true;
        }
        FZ_b7 = fZ_b7;
    }
    public void setFZ_b8(int fZ_b8) {
        if(fZ_b8 > 0) {
            control_en = true;
        }
        FZ_b8 = fZ_b8;
    }
    public void setFZ_b9(int fZ_b9) {
        if(fZ_b9 > 0) {
            control_en = true;
        }
        FZ_b9 = fZ_b9;
    }
    public void setFZ_b10(int fZ_b10) {
        if(fZ_b10 > 0) {
            control_en = true;
        }
        FZ_b10 = fZ_b10;
    }
    public void setFZ_b11(int fZ_b11) {
        if(fZ_b11 > 0) {
            control_en = true;
        }
        FZ_b11 = fZ_b11;
    }
    public void setStart_auto(int start_auto) {
        if(start_auto > 0) {
            control_en = true;
        }
        this.start_auto = start_auto;
    }
    public void setStop_auto(int stop_auto) {
        if(stop_auto > 0) {
            control_en = true;
        }
        this.stop_auto = stop_auto;
    }
    public void setSudden_crease(int sudden_crease) {
        if(sudden_crease > 0) {
            control_en = true;
        }
        this.sudden_crease = sudden_crease;
    }
    public void setAll_open(int all_open) {
        if(all_open > 0) {
            control_en = true;
        }
        this.all_open = all_open;
    }
    public void setFZ_autostate1(int fZ_autostate1) {
        if(fZ_autostate1 > 0) {
            control_en = true;
        }
        FZ_autostate1 = fZ_autostate1;
    }
    public void setFZ_autostate2(int fZ_autostate2) {
        if(fZ_autostate2 > 0) {
            control_en = true;
        }
        FZ_autostate2 = fZ_autostate2;
    }
    public void setFZ_autostate3(int fZ_autostate3) {
        if(fZ_autostate3 > 0) {
            control_en = true;
        }
        FZ_autostate3 = fZ_autostate3;
    }
    public void setFZ_autostate4(int fZ_autostate4) {
        if(fZ_autostate4 > 0) {
            control_en = true;
        }
        FZ_autostate4 = fZ_autostate4;
    }
    public void setFZ_autostate5(int fZ_autostate5) {
        if(fZ_autostate5 > 0) {
            control_en = true;
        }
        FZ_autostate5 = fZ_autostate5;
    }
    public void setLocal_control(int local_control) {
        if(back_control > 0) {
            control_en = true;
        }
        this.local_control = local_control;
    }
    public void setBack_control(int back_control) {
        if(back_control > 0) {
            control_en = true;
        }
        this.back_control = back_control;
    }
    public void setCentral_control(int central_control) {
        if(central_control > 0) {
            control_en = true;
        }
        this.central_control = central_control;
    }
    public void setInter_volume_M200(int inter_volume_M200) {
        if(inter_volume_M200 > 0) {
            control_en = true;
        }
        this.inter_volume_M200 = inter_volume_M200;
    }
    public void setFan_button(int fan_button) {
        if(fan_button > 0) {
            control_en = true;
        }
        this.fan_button = fan_button;
    }
    public void setNote(String note) {
        this.note = note;
    }
    public float getSet_power() {
        return set_power;
    }
    public void setSet_power(float set_power) {
        if(set_power > 0) {
            control_en = true;
        }
        this.set_power = set_power;
    }
    public int getInterval_time() {
        return interval_time;
    }
    public void setInterval_time(int interval_time) {
        if(interval_time > 0) {
            control_en = true;
        }
        this.interval_time = interval_time;
    }
    public int getButton_num() {
        return button_num;
    }
    public void setButton_num(int button_num) {
        this.button_num = button_num;
    }
    @Override
    public String toString() {
        return "Dynamicload_control [dev_id=" + dev_id + ", FZ_b1=" + FZ_b1 + ", FZ_b2=" + FZ_b2 + ", FZ_b3=" + FZ_b3