whyclj
2020-09-19 02706f6f7a5962945c6eded9c0325aa02b93c7b6
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
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 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 = 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.replace_water_rt(conn_pool, wrt);
                    
                    //**************************** ¸üÐÂË®Àäϵͳ·Ö֧ʵʱÐÅÏ¢ *****************************//*
                    //readWater_brach(master,wbrach);
                    readMutilWater_brach(master, wbrach);
                    Water_Task_SQL.replace_water_brach(conn_pool, wbrach);
                    
                    //**************************** ¸üÐÂË®Àäϵͳ״̬ÐÅÏ¢ *****************************//*
                    //readWater_state(master,wstate);
                    readMutilWater_state(master, wstate);
                    Water_Task_SQL.replace_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.insertOrUpdateDeviceConnectState(conn_pool, winf.water_id, master);
                
                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>();
        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);
                }
                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);
                }
            }
        }
    }
    public static void main(String[] args) {
        int b=13;
        String a=Integer.toBinaryString(b>>0&1);
        System.out.println(a);
    }
}