| | |
| | | return false;
|
| | | }
|
| | | DataSet ds_stat = tmp_ds_stat.copy();
|
| | | boolean[] alm = new boolean[] {false,false,false,false,false};
|
| | | int size_cnt_stat = ds_stat.getMembers().size();
|
| | | c = new String[size_cnt_stat];
|
| | | String[] split = null;
|
| | | split = new String[2];
|
| | | m_Association.getDataSetValues(ds_stat);
|
| | | String sb = null;
|
| | | String temp = "%s";
|
| | | //限制当前告警个数
|
| | | size_cnt_stat = 5;
|
| | | int mon_alm_idx = 0;
|
| | | |
| | | for (int n = 0; n < size_cnt_stat; n++) {
|
| | | //System.err.println(ds_stat.getMembers().get(n).getName());
|
| | | if(null == ds_stat.getMembers().get(n).getChild("stVal")) {
|
| | | //System.err.println(ds.getMembers().get(n).getChild("mag").toString1());
|
| | | continue;
|
| | | }
|
| | | FcModelNode fc_mode = (FcModelNode) ds_stat.getMembers().get(n).getChild("stVal");
|
| | | split = fc_mode.toString().split(": ");
|
| | | c[n] = split[1];
|
| | | if(n>0) {
|
| | | temp += ",%s";
|
| | | if(fc_mode instanceof BdaBoolean) {
|
| | | //JTextField tf_t = (JTextField) data.getValueField();
|
| | | //System.out.println("n:"+n+" "+fc_mode.toString1());
|
| | | String fc_mode_str = fc_mode.toString1();
|
| | | if(fc_mode_str.contains(FBSDeviceName + "/ncdGGIO1.Alm1")){
|
| | | //通信蓄电池远程核容装置常闭接触器K1告警
|
| | | alm[0] = ((BdaBoolean)fc_mode).getValue();
|
| | | }else if(fc_mode_str.contains(FBSDeviceName + "/ncdGGIO1.Alm2")){
|
| | | //通信蓄电池远程核容装置通讯告警
|
| | | alm[1] = ((BdaBoolean)fc_mode).getValue();
|
| | | }else if(fc_mode_str.contains(FBSDeviceName + "/ncdGGIO1.Alm3")){
|
| | | //通信蓄电池远程核容装置过温告警
|
| | | alm[2] = ((BdaBoolean)fc_mode).getValue();
|
| | | }else if(fc_mode_str.contains(FBSDeviceName + "/ncdGGIO1.Alm4")){
|
| | | //通信蓄电池远程核容装置二极管D1告警
|
| | | alm[3] = ((BdaBoolean)fc_mode).getValue();
|
| | | }else if(fc_mode_str.contains(FBSDeviceName + "/ncdGGIO") && fc_mode_str.contains(".Alm5")){
|
| | | //干接点输入故障-10个干接点点位有一个告警即触发干接点告警
|
| | | alm[4] = (alm[4] || ((BdaBoolean)fc_mode).getValue());
|
| | | }else if(fc_mode_str.contains(FBSDeviceName + "/btgGGIO1.Alm1")) {
|
| | | //电池组端电压告警
|
| | | m_FBS_VCData.groupvolalm[0] = ((BdaBoolean)fc_mode).getValue();
|
| | | }else if(fc_mode_str.contains(FBSDeviceName + "/celGGIO1.Alm")) {
|
| | | //电池组单体告警
|
| | | if(0 <= mon_alm_idx && mon_alm_idx < 24) {
|
| | | //单体电压告警
|
| | | m_FBS_VCData.monvol_alm[mon_alm_idx] = ((BdaBoolean)fc_mode).getValue();
|
| | | }else if(24 <= mon_alm_idx && mon_alm_idx < 48) {
|
| | | //单体内阻告警
|
| | | m_FBS_VCData.monres_alm[mon_alm_idx-24] = ((BdaBoolean)fc_mode).getValue();
|
| | | }else if(48 <= mon_alm_idx && mon_alm_idx < 72) {
|
| | | //单体温度告警
|
| | | m_FBS_VCData.montmp_alm[mon_alm_idx-48] = ((BdaBoolean)fc_mode).getValue();
|
| | | }else if(72 <= mon_alm_idx && mon_alm_idx < 96) {
|
| | | //单体剩余容量告警
|
| | | m_FBS_VCData.moncap_alm[mon_alm_idx-72] = ((BdaBoolean)fc_mode).getValue();
|
| | | }
|
| | | mon_alm_idx ++;
|
| | | }
|
| | | }
|
| | | sb = String.format(temp, (Object[])c);
|
| | | }
|
| | | |
| | | getFBS9100MonAlmData(m_FBS_VCData);
|
| | | |
| | | String sb = String.format("%b,%b,%b,%b,%b",alm[0],alm[1],alm[2],alm[3],alm[4]);
|
| | | m_FBS_VCData.m_SysState.last_dev_61850alam = m_FBS_VCData.m_SysState.dev_61850alam; // 记录上一次告警状态
|
| | | m_FBS_VCData.m_SysState.dev_61850alam = sb;
|
| | |
|
| | |
| | | //System.out.println(FBSDeviceName + "/LLN0.dsDevState 节点数:"+size_cnt);
|
| | | m_Association.getDataSetValues(ds);
|
| | | // 屏蔽当前根节点下新添加的ukey内容
|
| | | for (int n = 0; n < size_cnt && n < 120; n++) {
|
| | | for (int n = 0; n < size_cnt ; n++) {
|
| | | if(null == ds.getMembers().get(n).getChild("mag") || null == ds.getMembers().get(n).getChild("mag").getChild("f")) {
|
| | | //System.err.println(ds.getMembers().get(n).getChild("mag").toString1());
|
| | | continue;
|
| | |
| | | }else if (fc_mode_str.contains(FBSDeviceName+"/ncdGGIO1.AnIn110.mag.f")) {
|
| | | fod_state.RestTime_four = ((BdaFloat32) fc_mode).getFloat();
|
| | | //fod_state.RestTime_four = (int)readFloatNodeData(FBSDeviceName+"/ncdGGIO1.AnIn110.mag.f", Fc.MX);
|
| | | }else if(fc_mode_str.contains(ZJDYCPSS + "/cheGGIO1.LoBatAh.mag.f")) {
|
| | | //核容终止时剩余容量
|
| | | m_FBS_VCData.test_end_cap[0] = ((BdaFloat32) fc_mode).getFloat();
|
| | | }else if(fc_mode_str.contains(FBSDeviceName + "/ncdGGIO1.AnIn4.mag.f")) {
|
| | | //核容终止时组端电压
|
| | | m_FBS_VCData.test_end_vol[0] = ((BdaFloat32) fc_mode).getFloat();
|
| | | }else if(fc_mode_str.contains(FBSDeviceName + "/ncdGGIO1.AnIn3.mag.f")) {
|
| | | //核容终止时间
|
| | | m_FBS_VCData.test_timelong[0] = ((BdaFloat32) fc_mode).getFloat()*60*60;
|
| | | //System.out.println("test_timelong:" + ((BdaFloat32) fc_mode).getFloat());
|
| | | }
|
| | |
|
| | | }
|