首页 自动化软件 正文

回复

谁帮忙看一下这段CITECT程序,帮忙分析一下程序结构,多谢!

自动化软件 浏览:470 回复:0 收藏

神宇  2006-03-16 17:00

Gather_00_log:


FUNCTION
Gather_00_log()
INT Gather_00_Rand;

  M_00_GL_FLAG = 0; 
  M_00_MAIN_RAND = Rand(32767); 
  WHILE M_00_MAIN_RAND = 0 DO
        M_00_MAIN_RAND = Rand(32767);    END
  TagWrite("S_00_MAIN_RAND",M_00_MAIN_RAND);  Sleep(4); 
  Gather_00_Rand = TagRead("S_00_MAIN_RAND");  
M_00_MAIN_CON = TagRead("S_00_MAIN_CON");
  
  IF Gather_00_Rand = M_00_MAIN_RAND AND M_00_MAIN_CON = 3 THEN
     TagWrite("S_00_MAIN_CON",2);     Sleep(35);
     WHILE BIAOZHI = 1 DO
           Sleep(5);
     END(如果BIAOZHI = 1说明有其它井怎在传输采集好的功图文件,所以一直等待到BIAOZHI = 0为止)
     Tran_00_File();
     
     CONVERT_00_File();
  END
END

FUNCTION
Tran_00_File()
STRING Clear_Str;

  BIAOZHI = 1;
  IF D_COMPUTER_STIME = 1 THEN
     Clear_Str = "^"c:\SIXNET Tools\Programs\sxlogview.exe^" ^"E:\工程文件\sixnet\S19_1900.6PJ^" -clear -Device=Ethernet -IPaddr=141.0.0.17 -Transfer=^"Trans_S_1900^"";
  ELSE
     Clear_Str = "^"c:\SIXNET Tools\Programs\sxlogview.exe^" ^"E:\工程文件\sixnet\S19_1900.6PJ^" -clear -Device=Ethernet -IPaddr=141.0.0.17 -Transfer=^"Trans_C_1900^"";
  END                   
  Exec(Clear_Str,6);
  Sleep(120);
  TagWrite("S_00_MAIN_RAND",-1);
  TagWrite("S_00_MAIN_CON",0);   

  BIAOZHI = 0;
END

FUNCTION
CONVERT_00_File()STRING Log_File_Name,Read_File_Str,Start_Data,Start_Time,Mid_Data,Mid_Time,Write_File_Str;
INT HFile_Sxstatus,RECORD_SIZE,End_Flag,Start_Ms,Mid_Ms,Start_Time_Ms,Read_Str_length,
    Mid_Time_Ms,Period_Sec,i_for;
REAL k_00,w_00,t_00,Mid_WeiYi_00;
 
  IF D_COMPUTER_STIME = 1 THEN  
     Log_File_Name = "D:\DATA\LOG\LOG_1900_S.csv";
  ELSE
     Log_File_Name = "D:\DATA\LOG\LOG_1900_C.csv";
  END

  ErrSet(1);
  HFile_Sxstatus = FileOpen(Log_File_Name,"r");
  IF HFile_Sxstatus <> -1 THEN
     Read_File_Str = FileReadLn(HFile_Sxstatus);
     Read_File_Str = FileReadLn(HFile_Sxstatus);
     Read_File_Str = FileReadLn(HFile_Sxstatus);
     Read_File_Str = FileReadLn(HFile_Sxstatus);
     
     End_Flag = FileEOF(HFile_Sxstatus);
     RECORD_SIZE = 1;
        
     Start_Data = StrLeft(Read_File_Str,10);
     Start_Time = StrMid(Read_File_Str,11,8);
    &n
我知道了