CPU414-5H CPU指示灯读取(修改自西门子源程序)第三部分

已锁定

柳叶飘飘

  • 帖子

    95
  • 精华

    7
  • 被关注

    194

论坛等级:侠圣

注册时间:2016-12-08

黄金 黄金 如何晋级?

CPU414-5H CPU指示灯读取(修改自西门子源程序)第三部分

688

2

2016-12-28 00:17:17

//第三部分

 // Decide R0 and R1 status  GONG

    IF N_DR= W#16#1E THEN 

       R0_RUN:=1;R1_RUN:=1;

       TEMP6 :=DR[1].CPU_LED_ID AND W#16#FF00;

       IF TEMP6=W#16#F800 THEN R0_MAST:=1;R1_MAST:=0; 

       ELSE 

        R1_MAST:=1;R0_MAST:=0;

        END_IF;

    END_IF;

    

    IF N_DR= W#16#F THEN

       TEMP6 :=DR[1].CPU_LED_ID AND W#16#FF00;

       

       IF TEMP6=W#16#F800 THEN R0_RUN:=1;R0_MAST:=1;R1_RUN:=0; R1_MAST:=0;


       ELSE 

        R0_RUN:=0;R0_MAST:=0;R1_RUN:=1; R1_MAST:=1;

        END_IF;

    END_IF;


  //  IF DR[10].LED_ON=W#16#0  THEN IFM1_OK:=1; ELSE IFM1_OK:=0; END_IF;

    

//    IF DR[11].LED_ON=W#16#0  THEN IFM2_OK:=1; ELSE IFM2_OK:=0; END_IF;

    //End decide   GONG

    

    

    TEMP2 :=TEMP3 AND DW#16#1C79B8F3;

    IF TEMP2 <> DW#16#0 THEN

        CPU_FAULT :=TRUE;

    ELSE

        CPU_FAULT :=FALSE;

    END_IF;

        


    LED_ID1 := DR[1].CPU_LED_ID;

    LED_ID2 := DR[2].CPU_LED_ID;

    LED_ID3 := DR[3].CPU_LED_ID;

    LED_ID4 := DR[4].CPU_LED_ID;  

    LED_ID5 := DR[5].CPU_LED_ID;

    LED_ID6 := DR[6].CPU_LED_ID;

    LED_ID7 := DR[7].CPU_LED_ID;

    LED_ID8 := DR[8].CPU_LED_ID;

    LED_ID9 := DR[9].CPU_LED_ID;

    LED_ID10 := DR[10].CPU_LED_ID;

    LED_ID11 := DR[11].CPU_LED_ID;

    LED_ID12 := DR[12].CPU_LED_ID;

    LED_ID13 := DR[13].CPU_LED_ID;

    LED_ID14 := DR[14].CPU_LED_ID;

    LED_ID15 := DR[15].CPU_LED_ID;

    LED_ID16 := DR[16].CPU_LED_ID;

    LED_ID17 := DR[17].CPU_LED_ID;

    LED_ID18 := DR[18].CPU_LED_ID;

    LED_ID19 := DR[19].CPU_LED_ID;

    LED_ID20 := DR[20].CPU_LED_ID;

    LED_ID21 := DR[21].CPU_LED_ID;

    LED_ID22 := DR[22].CPU_LED_ID;

    LED_ID23 := DR[23].CPU_LED_ID;

    LED_ID24 := DR[24].CPU_LED_ID;

    LED_ID25 := DR[25].CPU_LED_ID;                                                                                      

    LED_ID26 := DR[26].CPU_LED_ID;

    LED_ID27 := DR[27].CPU_LED_ID; 

    LED_ID28 := DR[28].CPU_LED_ID; 

    LED_ID29 := DR[29].CPU_LED_ID; 

    LED_ID30 := DR[30].CPU_LED_ID; 

    LED_ON :=TEMP3;

    LED_BLINK :=TEMP4;

    ;

//**********************************************************************************

// Message suppression during the startup    

//**********************************************************************************


  IF siRUNUPCNT = 0               // RUNUPCYC cycle already elapsed ?

  THEN 

    ALARM_OUT :=TRUE;

  ELSE

   siRUNUPCNT := siRUNUPCNT - 1;

  END_IF;

END_CASE;


//**************************************************************************************

// Messages with ALARM_8P

//**************************************************************************************

  

// STRING variables must not be linked to ALARM8_P as auxiliary values

// so transfer in array of bytes


 ALARM_8P_1

     (EN_R := TRUE,    // Update output ACK_STATE

      ID := 16#EEEE,         // Data channel for messages (always 16#EEEE)

      EV_ID:= EV_ID,         // Message number > 0

      SIG_1:= ALARM_OUT AND CPU_FAILURE,                        // Signal 1 to be monitored 

      SIG_2:= ALARM_OUT AND CPU_FAULT,                        // Signal 2 to be monitored 

      SIG_3:= 0,                        // Signal 3 to be monitored  

      SIG_4:= 0,                        // Signal 4 to be monitored 

      SIG_5:= 0,                        // Signal 5 to be monitored

      SIG_6:= 0,                        // Signal 6 to be monitored

      SIG_7:= 0,                        // Signal 7 to be monitored

      SIG_8:= 0,                        // Signal 8 to be monitored

      SD_1 := AUX_PR01,      // Auxiliary value 1

      SD_2 := AUX_PR02,     // Auxiliary value 2

      SD_3 := AUX_PR03,       // Auxiliary value 3

      SD_4 := AUX_PR04,       // Auxiliary value 4

      SD_5 := AUX_PR05,      // Auxiliary value 5

      SD_6 := AUX_PR06,      // Auxiliary value 6

      SD_7 := AUX_PR07,      // Auxiliary value 7

      SD_8 := AUX_PR08,      // Auxiliary value 8

      SD_9 := AUX_PR09,      // Auxiliary value 9

      SD_10:= AUX_PR10);     // Auxiliary value 10

    

    QMSG_ERR := ALARM_8P_1.ERROR;      // ERROR status parameter

    MSG_STAT := ALARM_8P_1.STATUS;     // STATUS status parameter

    MSG_ACK := ALARM_8P_1.ACK_STATE;   // Current OS confirmation status 

    

END_FUNCTION_BLOCK

//修改自西门子源程序 交流 QQ275578306

CPU414-5H CPU指示灯读取(修改自西门子源程序)第三部分 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54616条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。