whyclj
2020-10-17 e163b7b3e4d5acc63cfda2fec2dd9034864ccf7a
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
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
package com.watersystem.monitor;
 
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
 
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.sql.MysqlConnPool;
 
public class Watersystem_SocketClient_Thread implements Runnable{
    public MysqlConnPool conn_pool;
    public Water_inf winf;
    
    public Water_rt wrt;
    public Water_brach wbrach;
    public Water_state wstate;
    public Water_alarm walarm;
    public List<Water_alarm> listAlarm;
    public List<Water_alarm> clearAlms;
    public MyModbusMaster master;
    
    //public static final int MAX_READALARM_COUNT = 20;        //Ò»´Î¶ÁÈ¡¸æ¾¯½ÚµãµÄ×î´óÊýÁ¿
    //public int read_alarm_index = 0;                        //¶ÁÈ¡¸æ¾¯Ë÷Òý
    
    public Watersystem_SocketClient_Thread(Water_inf winf,MysqlConnPool conn_pool) {
        this.conn_pool = conn_pool;
        this.winf = winf;
        
        wrt = winf.wrt;
        wstate = winf.wstate;
        wbrach = winf.wbrach;
        walarm = winf.walarm;
        
//        wrt = new Water_rt(winf.getWater_id());
//        wstate = new Water_state(winf.getWater_id());
//        wbrach = new Water_brach(winf.getWater_id());
//        walarm =new Water_alarm(winf.water_id);
        master = new MyModbusMaster(winf.getWater_ip(), MyModbusMaster.SLAVEID_DEFAULT);
        //System.out.println(master);
    }
        
 
    
    
 
    @Override
    public void run() {
        int runCount = 0;
        while(true) {
            try {
                
                if(runCount %2 == 0) {
                    //*************************** ¸üÐÂË®ÀäϵͳʵʱÐÅÏ¢******************************//*
                    //readWater_rt(master,wrt);
                    readMutilWater_rt(master, wrt);
                    Water_Task_SQL.update_water_rt(conn_pool, wrt);
                    
                    //**************************** ¸üÐÂË®Àäϵͳ·Ö֧ʵʱÐÅÏ¢ *****************************//*
                    //readWater_brach(master,wbrach);
                    readMutilWater_brach(master, wbrach);
                    Water_Task_SQL.update_water_brach(conn_pool, wbrach);
                    
                    //**************************** ¸üÐÂË®Àäϵͳ״̬ÐÅÏ¢ *****************************//*
                    //readWater_state(master,wstate);
                    readMutilWater_state(master, wstate);
                    Water_Task_SQL.update_water_state(conn_pool, wstate);
                }
                
                if(runCount %4 == 0) {
                    //*************************** ¶ÁȡˮÀäÐÅÏ¢¹ÊÕÏ ******************************//*
                    //readWaterAlarmData(master,walarm);
                    readMutilWaterAlarmData(master, walarm);
                    //²åÈë»òÕ߸üи澯ÐÅÏ¢
                    Water_Task_SQL.insertOrUpdateWater_alarmTable(conn_pool, listAlarm);
                    Water_Task_SQL.delClearWater_alarmTable(conn_pool, clearAlms);
                }
                
                Water_Task_SQL.insertOrUpdateDeviceConnectState(conn_pool, winf.water_id, master);
                winf.conn_state = master.getConnectState();
                if(runCount%10 == 0) {
                    //¸üе±Ç°É豸ip
                    master.setTarget_ip(winf.water_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 readWater_rt(MyModbusMaster master, Water_rt wrt) {
        wrt.cooling_flow = (float) master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Cooling_flow, DataType.TWO_BYTE_INT_SIGNED, master), wrt.cooling_flow);    //'ÀäÈ´Ë®Á÷Á¿',    
        wrt.supply_tmp = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Supply_tmp, DataType.TWO_BYTE_INT_SIGNED, master), wrt.supply_tmp);    //'¹©Ë®Î¶È',        
        wrt.Supply_pre = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Supply_pre, DataType.TWO_BYTE_INT_SIGNED,master), wrt.Supply_pre);        //'¹©Ë®Ñ¹Á¦',
        wrt.back_tem = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.back_tem, DataType.TWO_BYTE_INT_SIGNED,master), wrt.back_tem);        //'»ØË®Î¶È',
        wrt.back_pre = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.back_pre, DataType.TWO_BYTE_INT_SIGNED,master), wrt.back_pre);                //'»ØË®Ñ¹Á¦',
        wrt.Cooling_ser = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Cooling_ser,DataType.TWO_BYTE_INT_SIGNED,master), wrt.Cooling_ser);        //'ÀäÈ´Ë®µçµ¼ÂÊ',
        wrt.Buffer_tank_level = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Buffer_tank_level,DataType.TWO_BYTE_INT_SIGNED,master), wrt.Buffer_tank_level);//'»º³å¹ÞҺλ'
        wrt.Buffer_tank_pre = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Buffer_tank_pre, DataType.TWO_BYTE_INT_SIGNED,master), wrt.Buffer_tank_pre);    //'»º³å¹ÞѹÁ¦',    
        wrt.Humidity_chamber = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Humidity_chamber, DataType.TWO_BYTE_INT_SIGNED,master), wrt.Humidity_chamber);//'·§Ìüʪ¶È',            
        wrt.Tem_chamber = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Tem_chamber,DataType.TWO_BYTE_INT_SIGNED, master), wrt.Tem_chamber);                //'·§ÌüζÈ',    
        wrt.External_tmp = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.External_tmp,DataType.TWO_BYTE_INT_SIGNED, master), wrt.External_tmp);                //'ÍâˮζÈ',    
        wrt.External_pre = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.External_pre, DataType.TWO_BYTE_INT_SIGNED, master), wrt.External_pre);//'ÍâˮѹÁ¦',
    }
     /*     ¸üеçԴʵʱ·ÖÖ§ÐÅÏ¢
     * @param master
     * @param load_state
     */
    private void readWater_brach(MyModbusMaster master, Water_brach wbrach) {
        wbrach.Branch_flow_1 = (float) master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress. Branch_flow_1, DataType.TWO_BYTE_INT_SIGNED, master), wbrach.Branch_flow_1);    //'1#֧·Á÷Á¿',
        wbrach.Branch_flow_2 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Branch_flow_2, DataType.TWO_BYTE_INT_SIGNED, master), wbrach.Branch_flow_2);    //'2#֧·Á÷Á¿',
        wbrach.Branch_flow_3 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress. Branch_flow_3,  DataType.TWO_BYTE_INT_SIGNED,master), wbrach.Branch_flow_3);    //'3#֧·Á÷Á¿',    
        wbrach.Branch_flow_4 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress. Branch_flow_4, DataType.TWO_BYTE_INT_SIGNED, master), wbrach.Branch_flow_4);    //'4#֧·Á÷Á¿',        
        wbrach.Branch_flow_5 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Branch_flow_5, DataType.TWO_BYTE_INT_SIGNED, master), wbrach.Branch_flow_5);        //'5#֧·Á÷Á¿',
        wbrach.Branch_flow_6= (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Branch_flow_6, DataType.TWO_BYTE_INT_SIGNED,master), wbrach.Branch_flow_6);    //'6#֧·Á÷Á¿',    
        wbrach.Branch_flow_7 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Branch_flow_7, DataType.TWO_BYTE_INT_SIGNED,master), wbrach.Branch_flow_7);    //'7#֧·Á÷Á¿',
        wbrach.Branch_flow_8 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Branch_flow_8, DataType.TWO_BYTE_INT_SIGNED, master), wbrach.Branch_flow_8);    //'8#֧·Á÷Á¿',
        wbrach.Branch_flow_9 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Branch_flow_9,  DataType.TWO_BYTE_INT_SIGNED,master), wbrach.Branch_flow_9);    //'9#֧·Á÷Á¿',    
        
        wbrach.Branch_tmp_1 = (float) master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress. Branch_tmp_1, DataType.TWO_BYTE_INT_SIGNED, master), wbrach.Branch_tmp_1);    //'1#֧·Î¶È',
        wbrach.Branch_tmp_2 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Branch_tmp_2, DataType.TWO_BYTE_INT_SIGNED, master), wbrach.Branch_tmp_2);    //'2#֧·Î¶È',
        wbrach.Branch_tmp_3 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress. Branch_tmp_3,  DataType.TWO_BYTE_INT_SIGNED,master), wbrach.Branch_tmp_3);    //'3#֧·Î¶È',    
        wbrach.Branch_tmp_4 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress. Branch_tmp_4, DataType.TWO_BYTE_INT_SIGNED, master), wbrach.Branch_tmp_4);    //'4#֧·Î¶È',        
        wbrach.Branch_tmp_5 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Branch_tmp_5, DataType.TWO_BYTE_INT_SIGNED, master), wbrach.Branch_tmp_5);   //'5#֧·Î¶È',
        wbrach.Branch_tmp_6= (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Branch_tmp_6, DataType.TWO_BYTE_INT_SIGNED,master), wbrach.Branch_tmp_6);    //'6#֧·Î¶È',    
        wbrach.Branch_tmp_7 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Branch_tmp_7, DataType.TWO_BYTE_INT_SIGNED,master), wbrach.Branch_tmp_7);    //'7#֧·Î¶È',
        wbrach.Branch_tmp_8 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Branch_tmp_8, DataType.TWO_BYTE_INT_SIGNED, master), wbrach.Branch_tmp_8);    //'8#֧·Î¶È',
        wbrach.Branch_tmp_9 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Branch_tmp_9,  DataType.TWO_BYTE_INT_SIGNED,master), wbrach.Branch_tmp_9);    //'9#֧·Î¶È',    
        
        wbrach.Branch_pre_1 = (float) master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress. Branch_pre_1, DataType.TWO_BYTE_INT_SIGNED, master), wbrach.Branch_pre_1);    //'1#֧·ѹÁ¦',
        wbrach.Branch_pre_2 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Branch_pre_2, DataType.TWO_BYTE_INT_SIGNED, master), wbrach.Branch_pre_2);    //'2#֧·ѹÁ¦',
        wbrach.Branch_pre_3 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress. Branch_pre_3,  DataType.TWO_BYTE_INT_SIGNED,master), wbrach.Branch_pre_3);    //'3#֧·ѹÁ¦',    
        wbrach.Branch_pre_4 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress. Branch_pre_4, DataType.TWO_BYTE_INT_SIGNED, master), wbrach.Branch_pre_4);    //'4#֧·ѹÁ¦',        
        wbrach.Branch_pre_5 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Branch_pre_5, DataType.TWO_BYTE_INT_SIGNED, master), wbrach.Branch_pre_5);//'5#֧·ѹÁ¦',
        wbrach.Branch_pre_6= (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Branch_pre_6, DataType.TWO_BYTE_INT_SIGNED,master), wbrach.Branch_pre_6);    //'6#֧·ѹÁ¦',    
        wbrach.Branch_pre_7 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Branch_pre_7, DataType.TWO_BYTE_INT_SIGNED,master), wbrach.Branch_pre_7);    //'7#֧·ѹÁ¦',
        wbrach.Branch_pre_8 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Branch_pre_8, DataType.TWO_BYTE_INT_SIGNED, master), wbrach.Branch_pre_8);    //'8#֧·ѹÁ¦',
        wbrach.Branch_pre_9 = (float)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Branch_pre_9,  DataType.TWO_BYTE_INT_SIGNED,master), wbrach.Branch_pre_9);    //'9#֧·ѹÁ¦',    
        
    }
    /**
     *     ¸üÐÂË®Àäϵͳʵʱ״̬ÐÅÏ¢
     * @param master
     * @param load_state
     */
    private void readWater_state(MyModbusMaster master, Water_state wstate) {
        int Watersystem_All_Operation= (int) master.checkNullData(MyModbusUtils.readCoilStatus(Watersystem_ModbusAddress.Watersystem_All_Operation, master), 0);//Ë®Àäϵͳ¸÷²¿¼þÔËÐÐÇé¿ö
        wstate.P01_main_pump=(Watersystem_All_Operation>>8&1);
        wstate.P11_replenish_pump=(Watersystem_All_Operation>>9&1);
        wstate.P12_pretest_pump=(Watersystem_All_Operation>>10&1);
        wstate.P13_replenish_pump=(Watersystem_All_Operation>>11&1);
        wstate.H01_electric_heater=(Watersystem_All_Operation>>12&1);
        wstate.H02_electric_heater=(Watersystem_All_Operation>>13&1);
        wstate.Solenoid_openflag=(Watersystem_All_Operation>>14&1);
        wstate.Solenoid_shutflag=(Watersystem_All_Operation>>15&1);
        wstate.valve_start=(Watersystem_All_Operation>>0&1);
        wstate.Exhaust_start=(Watersystem_All_Operation>>8&1);
        wstate.remote_start=(Watersystem_All_Operation>>8&5);
        wstate.remote_stop=(Watersystem_All_Operation>>8&6);
        wstate.Operation_ooled_devices=(Watersystem_All_Operation>>8&7);
        
        int Watersystem_All_State= (int)master.checkNullData(MyModbusUtils.readCoilStatus(Watersystem_ModbusAddress.Watersystem_All_State, master), 0);//¹ÊÕϸ´Î»ÐźŠ               
        wstate.Auto_control_state=(Watersystem_All_State>>8&1);
        wstate.Manual_control_state=(Watersystem_All_State>>9&1);
        wstate.remote_control_state=(Watersystem_All_State>>10&1);
        wstate.Water_system_function=(Watersystem_All_State>>11&1);
        
    }
    //¶ÁȡˮÀäÐÅÏ¢¹ÊÕÏ
    private void readWaterAlarmData(MyModbusMaster master,Water_alarm walarm) {
        listAlarm=new ArrayList<Water_alarm>();
        walarm.Watersystem_Operation_Fault = (int) master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Watersystem_Operation_Fault, DataType.TWO_BYTE_INT_SIGNED, master), walarm.Watersystem_Operation_Fault);    //Àäȴϵͳ¸÷²¿¼þ¹ÊÕÏÐÅÏ¢
        if(walarm.Watersystem_Operation_Fault>0) {
            if((walarm.Watersystem_Operation_Fault>>8&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129300);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_Fault>>9&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129301);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_Fault>>10&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129302);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_Fault>>11&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129303);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_Fault>>12&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129304);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_Fault>>13&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129305);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_Fault>>14&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129306);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_Fault>>15&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129307);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_Fault>>0&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129308);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_Fault>>1&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129309);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_Fault>>2&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129310);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_Fault>>3&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129311);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_Fault>>4&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129312);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_Fault>>5&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129313);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_Fault>>6&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129314);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_Fault>>7&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129315);listAlarm.add(w);
            }
        }
        walarm.Watersystem_BranchFlowTmp_Fault = (int)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Watersystem_BranchFlowTmp_Fault, DataType.TWO_BYTE_INT_SIGNED, master), walarm.Watersystem_BranchFlowTmp_Fault);//Àäȴϵͳ֧·Á÷Á¿/ζȹÊÕÏÐÅÏ¢                
        if(walarm.Watersystem_BranchFlowTmp_Fault>0) {
            if((walarm.Watersystem_BranchFlowTmp_Fault>>8&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129400);listAlarm.add(w);
            }
            if((walarm.Watersystem_BranchFlowTmp_Fault>>9&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129401);listAlarm.add(w);
            }
            if((walarm.Watersystem_BranchFlowTmp_Fault>>10&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129402);listAlarm.add(w);
            }
            if((walarm.Watersystem_BranchFlowTmp_Fault>>11&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129403);listAlarm.add(w);
            }
            if((walarm.Watersystem_BranchFlowTmp_Fault>>12&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129404);listAlarm.add(w);
            }
            if((walarm.Watersystem_BranchFlowTmp_Fault>>13&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129405);listAlarm.add(w);
            }
            if((walarm.Watersystem_BranchFlowTmp_Fault>>14&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129406);listAlarm.add(w);
            }
            if((walarm.Watersystem_BranchFlowTmp_Fault>>15&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129407);listAlarm.add(w);
            }
            if((walarm.Watersystem_BranchFlowTmp_Fault>>0&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129408);listAlarm.add(w);
            }
            if((walarm.Watersystem_BranchFlowTmp_Fault>>1&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129409);listAlarm.add(w);
            }
            if((walarm.Watersystem_BranchFlowTmp_Fault>>2&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129410);listAlarm.add(w);
            }
            if((walarm.Watersystem_BranchFlowTmp_Fault>>3&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129411);listAlarm.add(w);
            }
            if((walarm.Watersystem_BranchFlowTmp_Fault>>4&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129412);listAlarm.add(w);
            }
            if((walarm.Watersystem_BranchFlowTmp_Fault>>5&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129413);listAlarm.add(w);
            }
            if((walarm.Watersystem_BranchFlowTmp_Fault>>6&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129414);listAlarm.add(w);
            }
            if((walarm.Watersystem_BranchFlowTmp_Fault>>7&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129415);listAlarm.add(w);
            }
        }
        walarm.Watersystem_Pre_Fault = (int)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Watersystem_Pre_Fault, DataType.TWO_BYTE_INT_SIGNED, master), walarm.Watersystem_Pre_Fault);//ÀäȴˮѹÁ¦¹ÊÕÏ
        if(walarm.Watersystem_Pre_Fault>0) {
            if((walarm.Watersystem_Pre_Fault>>8&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129500);listAlarm.add(w);
            }
            if((walarm.Watersystem_Pre_Fault>>9&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129501);listAlarm.add(w);
            }
            if((walarm.Watersystem_Pre_Fault>>10&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129502);listAlarm.add(w);
            }
            if((walarm.Watersystem_Pre_Fault>>11&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129503);listAlarm.add(w);
            }
            if((walarm.Watersystem_Pre_Fault>>12&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129504);listAlarm.add(w);
            }
            if((walarm.Watersystem_Pre_Fault>>13&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129505);listAlarm.add(w);
            }
            if((walarm.Watersystem_Pre_Fault>>14&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129506);listAlarm.add(w);
            }
            if((walarm.Watersystem_Pre_Fault>>15&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129507);listAlarm.add(w);
            }
            if((walarm.Watersystem_Pre_Fault>>0&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129508);listAlarm.add(w);
            }
            if((walarm.Watersystem_Pre_Fault>>1&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129509);listAlarm.add(w);
            }
            if((walarm.Watersystem_Pre_Fault>>2&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129510);listAlarm.add(w);
            }
            if((walarm.Watersystem_Pre_Fault>>3&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129511);listAlarm.add(w);
            }
            if((walarm.Watersystem_Pre_Fault>>4&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129512);listAlarm.add(w);
            }
            if((walarm.Watersystem_Pre_Fault>>5&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129513);listAlarm.add(w);
            }
            if((walarm.Watersystem_Pre_Fault>>6&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129514);listAlarm.add(w);
            }
            if((walarm.Watersystem_Pre_Fault>>7&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129515);listAlarm.add(w);
            }
        }
        walarm.Watersystem_Operation_highorlow = (int)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Watersystem_Operation_highorlow, DataType.TWO_BYTE_INT_SIGNED, master), walarm.Watersystem_Operation_highorlow);//Àäȴϵͳ¸÷²¿¼þµÍ/¸ß
        if(walarm.Watersystem_Operation_highorlow>0) {
            if((walarm.Watersystem_Operation_highorlow>>8&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129600);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_highorlow>>9&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129601);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_highorlow>>10&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129602);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_highorlow>>11&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129603);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_highorlow>>12&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129604);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_highorlow>>13&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129605);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_highorlow>>14&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129606);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_highorlow>>15&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129607);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_highorlow>>0&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129608);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_highorlow>>1&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129609);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_highorlow>>2&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129610);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_highorlow>>3&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129611);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_highorlow>>4&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129612);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_highorlow>>5&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129613);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_highorlow>>6&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129614);listAlarm.add(w);
            }
            if((walarm.Watersystem_Operation_highorlow>>7&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129615);listAlarm.add(w);
            }
        }
        walarm.Watersystem_Tmp_highorlow = (int)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Watersystem_Tmp_highorlow, DataType.TWO_BYTE_INT_SIGNED, master), walarm.Watersystem_Tmp_highorlow);//Àäȴϵͳζȸß/³¬¸ß
        if(walarm.Watersystem_Tmp_highorlow>0) {
            if((walarm.Watersystem_Tmp_highorlow>>8&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129700);listAlarm.add(w);
            }
            if((walarm.Watersystem_Tmp_highorlow>>9&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129701);listAlarm.add(w);
            }
            if((walarm.Watersystem_Tmp_highorlow>>10&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129702);listAlarm.add(w);
            }
            if((walarm.Watersystem_Tmp_highorlow>>11&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129703);listAlarm.add(w);
            }
            if((walarm.Watersystem_Tmp_highorlow>>12&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129704);listAlarm.add(w);
            }
            if((walarm.Watersystem_Tmp_highorlow>>13&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129705);listAlarm.add(w);
            }
            if((walarm.Watersystem_Tmp_highorlow>>14&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129706);listAlarm.add(w);
            }
            if((walarm.Watersystem_Tmp_highorlow>>15&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129707);listAlarm.add(w);
            }
            if((walarm.Watersystem_Tmp_highorlow>>0&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129708);listAlarm.add(w);
            }
            if((walarm.Watersystem_Tmp_highorlow>>1&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129708);listAlarm.add(w);
            }
            if((walarm.Watersystem_Tmp_highorlow>>2&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129710);listAlarm.add(w);
            }
            if((walarm.Watersystem_Tmp_highorlow>>3&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129711);listAlarm.add(w);
            }
            if((walarm.Watersystem_Tmp_highorlow>>4&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129712);listAlarm.add(w);
            }
            if((walarm.Watersystem_Tmp_highorlow>>5&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129713);listAlarm.add(w);
            }
            if((walarm.Watersystem_Tmp_highorlow>>6&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129714);listAlarm.add(w);
            }
            if((walarm.Watersystem_Tmp_highorlow>>7&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129715);listAlarm.add(w);
            }
        }
        walarm.Watersystem_TmpFlow_highorlow = (int)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Watersystem_TmpFlow_highorlow, DataType.TWO_BYTE_INT_SIGNED, master), walarm.Watersystem_TmpFlow_highorlow);//Àäȴϵͳ֧·Î¶È/Á÷Á¿µÍ/³¬µÍ
        if(walarm.Watersystem_TmpFlow_highorlow>0) {
            if((walarm.Watersystem_TmpFlow_highorlow>>8&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129800);listAlarm.add(w);
            }
            if((walarm.Watersystem_TmpFlow_highorlow>>9&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129801);listAlarm.add(w);
            }
            if((walarm.Watersystem_TmpFlow_highorlow>>10&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129802);listAlarm.add(w);
            }
            if((walarm.Watersystem_TmpFlow_highorlow>>11&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129803);listAlarm.add(w);
            }
            if((walarm.Watersystem_TmpFlow_highorlow>>12&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129804);listAlarm.add(w);
            }
            if((walarm.Watersystem_TmpFlow_highorlow>>13&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129805);listAlarm.add(w);
            }
            if((walarm.Watersystem_TmpFlow_highorlow>>14&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129806);listAlarm.add(w);
            }
            if((walarm.Watersystem_TmpFlow_highorlow>>15&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129807);listAlarm.add(w);
            }
            if((walarm.Watersystem_TmpFlow_highorlow>>0&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129808);listAlarm.add(w);
            }
            if((walarm.Watersystem_TmpFlow_highorlow>>1&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129809);listAlarm.add(w);
            }
            if((walarm.Watersystem_TmpFlow_highorlow>>2&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129810);listAlarm.add(w);
            }
            if((walarm.Watersystem_TmpFlow_highorlow>>3&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129811);listAlarm.add(w);
            }
            if((walarm.Watersystem_TmpFlow_highorlow>>4&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129812);listAlarm.add(w);
            }
            if((walarm.Watersystem_TmpFlow_highorlow>>5&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129813);listAlarm.add(w);
            }
            if((walarm.Watersystem_TmpFlow_highorlow>>6&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129814);listAlarm.add(w);
            }
            if((walarm.Watersystem_TmpFlow_highorlow>>7&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129815);listAlarm.add(w);
            }
        }
        walarm.Watersystem_Flow_ighorlow = (int)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Watersystem_TmpFlow_highorlow, DataType.TWO_BYTE_INT_SIGNED, master), walarm.Watersystem_TmpFlow_highorlow);//ÀäÈ´Ë®²¿·Ö֧·Á÷Á¿µÍ/³¬µÍ
        if(walarm.Watersystem_Flow_ighorlow>0) {
            if((walarm.Watersystem_Flow_ighorlow>>8&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129900);listAlarm.add(w);
            }
            if((walarm.Watersystem_Flow_ighorlow>>9&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129901);listAlarm.add(w);
            }
            if((walarm.Watersystem_Flow_ighorlow>>10&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129902);listAlarm.add(w);
            }
            if((walarm.Watersystem_Flow_ighorlow>>11&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129903);listAlarm.add(w);
            }
            if((walarm.Watersystem_Flow_ighorlow>>12&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129904);listAlarm.add(w);
            }
            if((walarm.Watersystem_Flow_ighorlow>>13&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129905);listAlarm.add(w);
            }
            if((walarm.Watersystem_Flow_ighorlow>>14&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129906);listAlarm.add(w);
            }
            if((walarm.Watersystem_Flow_ighorlow>>15&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129907);listAlarm.add(w);
            }
            if((walarm.Watersystem_Flow_ighorlow>>0&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129908);listAlarm.add(w);
            }
            if((walarm.Watersystem_Flow_ighorlow>>1&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129909);listAlarm.add(w);
            }
            if((walarm.Watersystem_Flow_ighorlow>>2&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129910);listAlarm.add(w);
            }
            if((walarm.Watersystem_Flow_ighorlow>>3&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129911);listAlarm.add(w);
            }
            if((walarm.Watersystem_Flow_ighorlow>>4&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129912);listAlarm.add(w);
            }
            if((walarm.Watersystem_Flow_ighorlow>>5&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129913);listAlarm.add(w);
            }
            if((walarm.Watersystem_Flow_ighorlow>>6&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129914);listAlarm.add(w);
            }
            if((walarm.Watersystem_Flow_ighorlow>>7&1)==1) {
                Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129915);listAlarm.add(w);
            }
        }
    }
    /**
     * ¶àµã¶ÁȡˮÀäϵͳʵʱÐÅÏ¢
     * @param master
     * @param dbutton
     */
    public void readMutilWater_rt(MyModbusMaster master, Water_rt wrt) {
        BatchRead<Integer> batch = wrt.createBatchRead(master);    
        BatchResults<Integer> res = MyModbusUtils.readMutilRegisters(batch, master);
        wrt.putBatchResult(res);
    }
    
    /**
     * ¸üÐÂË®Àäϵͳʵʱ״̬ÐÅÏ¢
     * @param master
     * @param dstate
     */
    public void readMutilWater_state(MyModbusMaster master, Water_state wstate) {
        BatchRead<Integer> batch = wstate.createBatchRead(master);        
        BatchResults<Integer> res = MyModbusUtils.readMutilRegisters(batch, master);
        wstate.putBatchResult(res);
    }
    /**
     * ¸üеçԴʵʱ·ÖÖ§ÐÅÏ¢
     * @param master
     * @param dstate
     */
    public void readMutilWater_brach(MyModbusMaster master, Water_brach wbrach) {
        BatchRead<Integer> batch = wbrach.createBatchRead(master);        
        BatchResults<Integer> res = MyModbusUtils.readMutilRegisters(batch, master);
        wbrach.putBatchResult(res);
    }
    /**
     * ¸üеçԴʵʱ·ÖÖ§ÐÅÏ¢
     * @param master
     * @param dstate
     */
    public void readMutilWaterAlarmData(MyModbusMaster master, Water_alarm walarm) {
        BatchRead<Integer> batch = walarm.createBatchRead(master);        
        BatchResults<Integer> res = MyModbusUtils.readMutilRegisters(batch, master);
        walarm.putBatchResult(res);
        listAlarm=new ArrayList<Water_alarm>();
        clearAlms = new ArrayList<Water_alarm>();
        if(res!=null) {
            //if(walarm.Watersystem_Operation_Fault>0) {
                if((walarm.Watersystem_Operation_Fault>>8&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129300);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129300);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_Fault>>9&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129301);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129301);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_Fault>>10&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129302);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129302);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_Fault>>11&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129303);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129303);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_Fault>>12&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129304);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129304);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_Fault>>13&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129305);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129305);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_Fault>>14&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129306);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129306);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_Fault>>15&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129307);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129307);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_Fault>>0&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129308);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129308);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_Fault>>1&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129309);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129309);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_Fault>>2&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129310);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129310);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_Fault>>3&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129311);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129311);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_Fault>>4&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129312);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129312);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_Fault>>5&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129313);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129313);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_Fault>>6&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129314);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129314);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_Fault>>7&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129315);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129315);clearAlms.add(w);
                }
            //}
            //walarm.Watersystem_BranchFlowTmp_Fault = (int)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Watersystem_BranchFlowTmp_Fault, DataType.TWO_BYTE_INT_SIGNED, master), walarm.Watersystem_BranchFlowTmp_Fault);//Àäȴϵͳ֧·Á÷Á¿/ζȹÊÕÏÐÅÏ¢                
            //if(walarm.Watersystem_BranchFlowTmp_Fault>0) {
                if((walarm.Watersystem_BranchFlowTmp_Fault>>8&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129400);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129400);clearAlms.add(w);
                }
                if((walarm.Watersystem_BranchFlowTmp_Fault>>9&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129401);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129401);clearAlms.add(w);
                }
                if((walarm.Watersystem_BranchFlowTmp_Fault>>10&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129402);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129402);clearAlms.add(w);
                }
                if((walarm.Watersystem_BranchFlowTmp_Fault>>11&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129403);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129403);clearAlms.add(w);
                }
                if((walarm.Watersystem_BranchFlowTmp_Fault>>12&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129404);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129404);clearAlms.add(w);
                }
                if((walarm.Watersystem_BranchFlowTmp_Fault>>13&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129405);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129405);clearAlms.add(w);
                }
                if((walarm.Watersystem_BranchFlowTmp_Fault>>14&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129406);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129406);clearAlms.add(w);
                }
                if((walarm.Watersystem_BranchFlowTmp_Fault>>15&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129407);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129407);clearAlms.add(w);
                }
                if((walarm.Watersystem_BranchFlowTmp_Fault>>0&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129408);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129408);clearAlms.add(w);
                }
                if((walarm.Watersystem_BranchFlowTmp_Fault>>1&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129409);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129409);clearAlms.add(w);
                }
                if((walarm.Watersystem_BranchFlowTmp_Fault>>2&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129410);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129410);clearAlms.add(w);
                }
                if((walarm.Watersystem_BranchFlowTmp_Fault>>3&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129411);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129411);clearAlms.add(w);
                }
                if((walarm.Watersystem_BranchFlowTmp_Fault>>4&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129412);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129412);clearAlms.add(w);
                }
                if((walarm.Watersystem_BranchFlowTmp_Fault>>5&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129413);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129413);clearAlms.add(w);
                }
                if((walarm.Watersystem_BranchFlowTmp_Fault>>6&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129414);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129414);clearAlms.add(w);
                }
                if((walarm.Watersystem_BranchFlowTmp_Fault>>7&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129415);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129415);clearAlms.add(w);
                }
            //}
            //walarm.Watersystem_Pre_Fault = (int)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Watersystem_Pre_Fault, DataType.TWO_BYTE_INT_SIGNED, master), walarm.Watersystem_Pre_Fault);//ÀäȴˮѹÁ¦¹ÊÕÏ
            //if(walarm.Watersystem_Pre_Fault>0) {
                if((walarm.Watersystem_Pre_Fault>>8&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129500);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129500);clearAlms.add(w);
                }
                if((walarm.Watersystem_Pre_Fault>>9&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129501);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129501);clearAlms.add(w);
                }
                if((walarm.Watersystem_Pre_Fault>>10&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129502);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129502);clearAlms.add(w);
                }
                if((walarm.Watersystem_Pre_Fault>>11&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129503);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129503);clearAlms.add(w);
                }
                if((walarm.Watersystem_Pre_Fault>>12&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129504);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129504);clearAlms.add(w);
                }
                if((walarm.Watersystem_Pre_Fault>>13&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129505);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129505);clearAlms.add(w);
                }
                if((walarm.Watersystem_Pre_Fault>>14&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129506);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129506);clearAlms.add(w);
                }
                if((walarm.Watersystem_Pre_Fault>>15&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129507);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129507);clearAlms.add(w);
                }
                if((walarm.Watersystem_Pre_Fault>>0&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129508);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129508);clearAlms.add(w);
                }
                if((walarm.Watersystem_Pre_Fault>>1&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129509);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129509);clearAlms.add(w);
                }
                if((walarm.Watersystem_Pre_Fault>>2&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129510);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129510);clearAlms.add(w);
                }
                if((walarm.Watersystem_Pre_Fault>>3&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129511);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129511);clearAlms.add(w);
                }
                if((walarm.Watersystem_Pre_Fault>>4&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129512);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129512);clearAlms.add(w);
                }
                if((walarm.Watersystem_Pre_Fault>>5&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129513);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129513);clearAlms.add(w);
                }
                if((walarm.Watersystem_Pre_Fault>>6&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129514);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129514);clearAlms.add(w);
                }
                if((walarm.Watersystem_Pre_Fault>>7&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129515);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129515);clearAlms.add(w);
                }
            //}
            //walarm.Watersystem_Operation_highorlow = (int)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Watersystem_Operation_highorlow, DataType.TWO_BYTE_INT_SIGNED, master), walarm.Watersystem_Operation_highorlow);//Àäȴϵͳ¸÷²¿¼þµÍ/¸ß
            //System.out.println("1296:"+walarm.Watersystem_Operation_highorlow);
            //if(walarm.Watersystem_Operation_highorlow>0) {
                if((walarm.Watersystem_Operation_highorlow>>8&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129600);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129600);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_highorlow>>9&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129601);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129601);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_highorlow>>10&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129602);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129602);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_highorlow>>11&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129603);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129603);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_highorlow>>12&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129604);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129604);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_highorlow>>13&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129605);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129605);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_highorlow>>14&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129606);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129606);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_highorlow>>15&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129607);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129607);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_highorlow>>0&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129608);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129608);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_highorlow>>1&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129609);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129609);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_highorlow>>2&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129610);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129610);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_highorlow>>3&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129611);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129611);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_highorlow>>4&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129612);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129612);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_highorlow>>5&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129613);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129613);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_highorlow>>6&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129614);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129614);clearAlms.add(w);
                }
                if((walarm.Watersystem_Operation_highorlow>>7&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129615);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129615);clearAlms.add(w);
                }
            //}
            //walarm.Watersystem_Tmp_highorlow = (int)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Watersystem_Tmp_highorlow, DataType.TWO_BYTE_INT_SIGNED, master), walarm.Watersystem_Tmp_highorlow);//Àäȴϵͳζȸß/³¬¸ß
            //if(walarm.Watersystem_Tmp_highorlow>0) {
                if((walarm.Watersystem_Tmp_highorlow>>8&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129700);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129700);clearAlms.add(w);
                }
                if((walarm.Watersystem_Tmp_highorlow>>9&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129701);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129701);clearAlms.add(w);
                }
                if((walarm.Watersystem_Tmp_highorlow>>10&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129702);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129702);clearAlms.add(w);
                }
                if((walarm.Watersystem_Tmp_highorlow>>11&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129703);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129703);clearAlms.add(w);
                }
                if((walarm.Watersystem_Tmp_highorlow>>12&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129704);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129704);clearAlms.add(w);
                }
                if((walarm.Watersystem_Tmp_highorlow>>13&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129705);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129705);clearAlms.add(w);
                }
                if((walarm.Watersystem_Tmp_highorlow>>14&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129706);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129706);clearAlms.add(w);
                }
                if((walarm.Watersystem_Tmp_highorlow>>15&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129707);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129707);clearAlms.add(w);
                }
                if((walarm.Watersystem_Tmp_highorlow>>0&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129708);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129708);clearAlms.add(w);
                }
                if((walarm.Watersystem_Tmp_highorlow>>1&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129709);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129709);clearAlms.add(w);
                }
                if((walarm.Watersystem_Tmp_highorlow>>2&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129710);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129710);clearAlms.add(w);
                }
                if((walarm.Watersystem_Tmp_highorlow>>3&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129711);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129711);clearAlms.add(w);
                }
                if((walarm.Watersystem_Tmp_highorlow>>4&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129712);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129712);clearAlms.add(w);
                }
                if((walarm.Watersystem_Tmp_highorlow>>5&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129713);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129713);clearAlms.add(w);
                }
                if((walarm.Watersystem_Tmp_highorlow>>6&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129714);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129714);clearAlms.add(w);
                }
                if((walarm.Watersystem_Tmp_highorlow>>7&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129715);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129715);clearAlms.add(w);
                }
            //}
            //walarm.Watersystem_TmpFlow_highorlow = (int)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Watersystem_TmpFlow_highorlow, DataType.TWO_BYTE_INT_SIGNED, master), walarm.Watersystem_TmpFlow_highorlow);//Àäȴϵͳ֧·Î¶È/Á÷Á¿µÍ/³¬µÍ
            //if(walarm.Watersystem_TmpFlow_highorlow>0) {
                if((walarm.Watersystem_TmpFlow_highorlow>>8&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129800);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129800);clearAlms.add(w);
                }
                if((walarm.Watersystem_TmpFlow_highorlow>>9&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129801);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129801);clearAlms.add(w);
                }
                if((walarm.Watersystem_TmpFlow_highorlow>>10&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129802);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129802);clearAlms.add(w);
                }
                if((walarm.Watersystem_TmpFlow_highorlow>>11&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129803);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129803);clearAlms.add(w);
                }
                if((walarm.Watersystem_TmpFlow_highorlow>>12&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129804);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129804);clearAlms.add(w);
                }
                if((walarm.Watersystem_TmpFlow_highorlow>>13&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129805);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129805);clearAlms.add(w);
                }
                if((walarm.Watersystem_TmpFlow_highorlow>>14&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129806);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129806);clearAlms.add(w);
                }
                if((walarm.Watersystem_TmpFlow_highorlow>>15&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129807);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129807);clearAlms.add(w);
                }
                if((walarm.Watersystem_TmpFlow_highorlow>>0&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129808);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129808);clearAlms.add(w);
                }
                if((walarm.Watersystem_TmpFlow_highorlow>>1&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129809);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129809);clearAlms.add(w);
                }
                if((walarm.Watersystem_TmpFlow_highorlow>>2&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129810);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129810);clearAlms.add(w);
                }
                if((walarm.Watersystem_TmpFlow_highorlow>>3&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129811);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129811);clearAlms.add(w);
                }
                if((walarm.Watersystem_TmpFlow_highorlow>>4&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129812);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129812);clearAlms.add(w);
                }
                if((walarm.Watersystem_TmpFlow_highorlow>>5&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129813);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129813);clearAlms.add(w);
                }
                if((walarm.Watersystem_TmpFlow_highorlow>>6&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129814);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129814);clearAlms.add(w);
                }
                if((walarm.Watersystem_TmpFlow_highorlow>>7&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129815);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129815);clearAlms.add(w);
                }
            //}
            //walarm.Watersystem_Flow_ighorlow = (int)master.checkNullData(MyModbusUtils.readHoldingRegister(Watersystem_ModbusAddress.Watersystem_TmpFlow_highorlow, DataType.TWO_BYTE_INT_SIGNED, master), walarm.Watersystem_TmpFlow_highorlow);//ÀäÈ´Ë®²¿·Ö֧·Á÷Á¿µÍ/³¬µÍ
            //if(walarm.Watersystem_Flow_ighorlow>0) {
                if((walarm.Watersystem_Flow_ighorlow>>8&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129900);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129900);clearAlms.add(w);
                }
                if((walarm.Watersystem_Flow_ighorlow>>9&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129901);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129901);clearAlms.add(w);
                }
                if((walarm.Watersystem_Flow_ighorlow>>10&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129902);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129902);clearAlms.add(w);
                }
                if((walarm.Watersystem_Flow_ighorlow>>11&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129903);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129903);clearAlms.add(w);
                }
                if((walarm.Watersystem_Flow_ighorlow>>12&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129904);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129904);clearAlms.add(w);
                }
                if((walarm.Watersystem_Flow_ighorlow>>13&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129905);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129905);clearAlms.add(w);
                }
                if((walarm.Watersystem_Flow_ighorlow>>14&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129906);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129906);clearAlms.add(w);
                }
                if((walarm.Watersystem_Flow_ighorlow>>15&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129907);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129907);clearAlms.add(w);
                }
                if((walarm.Watersystem_Flow_ighorlow>>0&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129908);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129908);clearAlms.add(w);
                }
                if((walarm.Watersystem_Flow_ighorlow>>1&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129909);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129909);clearAlms.add(w);
                }
                if((walarm.Watersystem_Flow_ighorlow>>2&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129910);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129910);clearAlms.add(w);
                }
                if((walarm.Watersystem_Flow_ighorlow>>3&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129911);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129911);clearAlms.add(w);
                }
                if((walarm.Watersystem_Flow_ighorlow>>4&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129912);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129912);clearAlms.add(w);
                }
                if((walarm.Watersystem_Flow_ighorlow>>5&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129913);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129913);clearAlms.add(w);
                }
                if((walarm.Watersystem_Flow_ighorlow>>6&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129914);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129914);clearAlms.add(w);
                }
                if((walarm.Watersystem_Flow_ighorlow>>7&1)==1) {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129915);listAlarm.add(w);
                }else {
                    Water_alarm w=walarm.createWalarm(walarm.getWater_id(), 129915);clearAlms.add(w);
                }
            //}
        }
    }
    public static void main(String[] args) {
        int b=13;
        String a=Integer.toBinaryString(b>>0&1);
        System.out.println(a);
    }
}