DELL
2025-04-28 e6eb7fb0af366e370f125668d62e89eb0004f517
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
package com.dev.switchdev;
 
import java.nio.ByteBuffer;
 
import com.ComBase;
 
public class SwitchDevice_State {
    public static final int REG_COUNT = 15;
    public static final int BYTE_LEN = 30;
    
    public int softWareVersion;            //Èí¼þ°æ±¾
    public int hardWareVersion;            //Ó²¼þ°æ±¾
    public int workState;                //¹¤×÷״̬        1:Í£Ö¹     2:·Åµç       3:³äµç
    public int devAlm;                    //¸æ¾¯
    public float groupVol;                //×é¶Ëµçѹ0.1
    public float onlineVol;                //ÔÚÏßµçѹ0.1
    public float posiVolDiff;            //Õý¼«Ñ¹²î0.1
    public float negaVolDiff;            //¸º¼«Ñ¹²î0.1
    public float posiCurr;                //Õý¼«µçÁ÷0.1
    public float negaCurr;                //¸º¼«µçÁ÷0.1
    public float posiSampCurr;            //Õý¼«µçÁ÷²ÉÑù0.0001
    public float negaSampCurr;            //¸º¼«µçÁ÷²ÉÑù0.0001
    public float devTemp;                //É豸ζÈ0.1 -10
    public int currDir;                    //µçÁ÷·½Ïò   1-·Åµç    2-³äµç
    public int pointFeedBack;            //´¥µã·´À¡&ð¤Á¬¼ì²â
    
    
    /**
     *     »ñÈ¡µ±Ç°É豸¸æ¾¯×´Ì¬
     * @return
     */
    public String getDevAlmStr() {
        String almStr = "É豸¸æ¾¯:" + devAlm + "-";
        switch(devAlm){
            case 0: almStr += "ÎÞ" ;break;
            case 1: almStr += "ÊÖ¶¯Í£Ö¹" ;break;
            case 2: almStr += "Ô¶³ÌÍ£Ö¹" ;break;
            case 3: almStr += "³äµçζȸß" ;break;
            case 4: almStr += "ºÍ¸ºÔØÍ¨ÐŹÊÕÏ" ;break;
            case 5: almStr += "ºÍÖ÷¿ØÍ¨ÐŹÊÕÏ" ;break;
            case 7: almStr += "¼Ù¸ºÔعýÎÂ" ;break;
            case 8: almStr += "µçÁ÷Òì³£" ;break;
            default:almStr += "δ֪" ;break;
        }
        return almStr;
    }
    
    /**
     *     »ñÈ¡µ±Ç°É豸¸æ¾¯×´Ì¬
     * @return
     */
    public String getDevWorkStateStr() {
        String StateStr = "\u505c\u6b62";
        switch(workState){
            case 1: StateStr = "\u505c\u6b62-" + workState ;break;    //Í£Ö¹
            case 2: StateStr = "\u653e\u7535-" + workState ;break;    //·Åµç
            case 3: StateStr = "\u5145\u7535-" + workState ;break;    //³äµç
        }
        return StateStr;
    }
 
    public String getDevVerSionStr() {
        return softWareVersion + "." + hardWareVersion;
    }
    
    public String getCurrDirStr() {
        String dir_str = "\u5145\u7535";        //³äµç
        if(this.currDir == 1) {
            dir_str = "\u653e\u7535";            //·Åµç
        }
        return dir_str;
    }
 
    /**
     * ½«bytebufferÖеÄÊý¾ÝÈ¡³ö·ÅÈë¸Ã¶ÔÏóµÄÊôÐÔÖУ¬²¢·µ»ØÊÇ·ñÈ¡³ö³É¹¦
     * @param bf
     * @return
     */
    public boolean putByteBuffer(final ByteBuffer bf)
    {
        if(bf.limit() < BYTE_LEN) {
            return false;
        }
        ByteBuffer tmpbuf = bf;
        
        tmpbuf.position(0);
        
        softWareVersion = ComBase.changeShortToInt(tmpbuf.getShort());        //Èí¼þ°æ±¾
        hardWareVersion = ComBase.changeShortToInt(tmpbuf.getShort());        //Ó²¼þ°æ±¾
        workState = ComBase.changeShortToInt(tmpbuf.getShort());            //¹¤×÷״̬        1:Í£Ö¹     2:·Åµç       3:³äµç
        devAlm = ComBase.changeShortToInt(tmpbuf.getShort());                //¸æ¾¯
        groupVol = ComBase.changeShortToFloat(tmpbuf.getShort())/10;        //×é¶Ëµçѹ0.1
        onlineVol = ComBase.changeShortToFloat(tmpbuf.getShort())/10;        //ÔÚÏßµçѹ0.1
        posiVolDiff = ComBase.changeShortToFloat(tmpbuf.getShort())/10;        //Õý¼«Ñ¹²î0.1
        negaVolDiff = ComBase.changeShortToFloat(tmpbuf.getShort())/10;        //¸º¼«Ñ¹²î0.1
        posiCurr = ComBase.changeShortToFloat(tmpbuf.getShort())/10;        //Õý¼«µçÁ÷0.1
        negaCurr = ComBase.changeShortToFloat(tmpbuf.getShort())/10;        //¸º¼«µçÁ÷0.1
        posiSampCurr = ComBase.changeShortToFloat(tmpbuf.getShort())/1000;    //Õý¼«µçÁ÷²ÉÑù0.0001
        negaSampCurr = ComBase.changeShortToFloat(tmpbuf.getShort())/1000;    //¸º¼«µçÁ÷²ÉÑù0.0001
        devTemp = ComBase.changeShortToFloat(tmpbuf.getShort())/10-10;        //É豸ζÈ0.1 -10
        currDir = ComBase.changeShortToInt(tmpbuf.getShort());                //µçÁ÷·½Ïò   1-·Åµç    2-³äµç
        pointFeedBack = ComBase.changeShortToInt(tmpbuf.getShort());        //´¥µã·´À¡&ð¤Á¬¼ì²â
        
        tmpbuf.compact();
        tmpbuf.flip();
        
        return true;
    }
}