Diff of /hmi_at135_v1b_aladdin/Device/Plc Logic/Application/Gestion_Client_NTP/NTP_Management/svnobj [000000] .. [r15]  Maximize  Restore

Switch to unified view

a b/hmi_at135_v1b_aladdin/Device/Plc Logic/Application/Gestion_Client_NTP/NTP_Management/svnobj
1
Gx_lz1!0…jüo‘"&Â8ÂÁ¢y.lSystem.StringL{6f9dac99-8de1-4efc-8465-68ac443b7d08}SpecialFuncL{0db3d7bb-cde0-4416-9a7b-ce49a0124323}NoneImplementationL{3b83b776-fb25-43b8-99f2-3c507c9143fc}TextDocument    L{f3878285-8e4f-490b-bb1b-9acbb7eb04db}
2
TextLinesL{a5de0b0b-1cb5-4913-ac21-9d70293ec00d}Id
longTagTextêsdtNtpDateAndTime  :=   OSCAT_BASIC.DT_TO_SDT(dtNtpDateAndTime);      //Convert NTP date and time > Structured date and timeªdateNtpDate        :=   OSCAT_BASIC.SDT_TO_DATE(sdtNtpDateAndTime);    //Extract Date From SDT¶todNtpTime        :=  OSCAT_BASIC.SDT_TO_TOD(sdtNtpDateAndTime);      //Extract Time Of Day from SDT²uiExtracted_year    :=   LIMIT(1970,INT_TO_UINT(OSCAT_BASIC.YEAR_OF_DATE(dateNtpDate)),2099); ¬uiExtracted_month    :=  LIMIT(1,INT_TO_UINT(OSCAT_BASIC.MONTH_OF_DATE(dateNtpDate)),12);uiExtracted_day     :=  INT_TO_UINT(OSCAT_BASIC.DAY_OF_MONTH(dateNtpDate));®uiExtracted_hour  :=  LIMIT(0,INT_TO_UINT(OSCAT_BASIC.HOUR_OF_DT(dtNtpDateAndTime)),23);¶uiExtracted_minute    :=  LIMIT(0,INT_TO_UINT(OSCAT_BASIC.MINUTE_OF_DT(dtNtpDateAndTime)),59);¶uiExtracted_second    :=  LIMIT(0,INT_TO_UINT(OSCAT_BASIC.SECOND_OF_DT(dtNtpDateAndTime)),59);CASE eState OF   t CLIENT_STATE.CREATE:   //Création de l'état sur le port UDP    fbUdpPeer      (*         xEnable    := TRUE,            ipAddr      := , !6         uiPort      := uiPortClient,"*       ipMultiCast := ,  #    );$6    IF fbUdpPeer.xActive THEN%D         eState   := CLIENT_STATE.WAITING;&:    ELSIF fbUdpPeer.xError THEN'D         ;             // Traitement des erreurs(      END_IF)’    CLIENT_STATE.WAITING: // Attente des commandes ecritures sur serveur UDP*H    fbSendTrig(CLK:=xStart_reception);+    ,,    IF fbSendTrig.Q THEN-@       fbResponseTimeout(IN:=FALSE);.>         eState   := CLIENT_STATE.SEND;/*   CLIENT_STATE.SEND:      0       fbUdpSend1         (2*            xExecute   :=   TRUE,3>            hPeer    :=   fbUdpPeer.hPeer, 46            ipAddr      :=   stIpServer, 5:          uiPort      :=   uiPortServer, 6H          pData    :=   ADR(c_abyNtpRequest), 7L          szSize      :=   SIZEOF(c_abyNtpRequest)8
3
          );9       :4       IF fbUdpSend.xDone THEN;>            fbUdpSend(xExecute:=FALSE);<H            eState   :=  CLIENT_STATE.RECEIVE;=<         ELSIF fbUdpSend.xError THEN>N            ;  //Envoi de la demande au serveur?         END_IF@. CLIENT_STATE.RECEIVE: A       fbResponseTimeout(IN:=TRUE, PT:=T#1S); //Etape de reception du serveurB    fbUdpReceiveC*       xEnable :=   TRUE,  D<         hPeer :=  fbUdpPeer.hPeer, EF         pData :=  ADR(abyNtpResponse),  FJ       szSize   :=  SIZEOF(abyNtpResponse) Gò     // si des données sont reçues - nous récupérons l'horodatage, nous nous attendons à ce que la prochaine commande écriveH:      IF fbUdpReceive.xReady THENI,         wsMessage       :=  "";Jt         dtNtpDateAndTime   :=   NTP_DATA_TO_DT(abyNtpResponse, 2); KL         eState            :=  CLIENT_STATE.WAITING;L@      ELSIF fbUdpReceive.xError THENM<       ; // traitement des erreursN      END_IF   O:    IF fbResponseTimeout.Q THENPEND_CASEQInterfaceRL{a9ed5b7e-75c5-4651-af16-d2c27e98cb94}S:FUNCTION_BLOCK NTP_ManagementTVAR_INPUTUr   xStart_reception: BOOL;             // Commande pour l'émission Vt uiPortClient:    UINT;             // Port client : 3000 par défautW~ uiPortServer:    UINT;             // Port du serveur  : 123 par défaut Xf   iUtc_offset:      INT;                 // Offset UTC de -12...14YEND_VARZVAR_OUTPUT[p eState:                CLIENT_STATE; // étape du statut du client\ˆ    dtNtpDateAndTime:       DT;          // variable date et temps du serveur ntp]l uiExtracted_year:       UINT;          // Extraction de l'année^f uiExtracted_month:         UINT;       // Extraction du mois_d   uiExtracted_day:         UINT;       // Extraction du jour `f uiExtracted_hour:       UINT;       // Extraction de heureal uiExtracted_minute:       UINT;       // Extraction du minutebp   uiExtracted_second:       UINT;       // Extraction du seconde   cVARdv stIpServer:       NBS.IP_ADDR    :=   (sAddr:= '192.168.0.254');      e–    sdtNtpDateAndTime:   OSCAT_BASIC.SDT;     // variable structured date and timef²    dateNtpDate:      DATE;             // variable date uniquement converti du STRUCTURED DATE AND TIMEg°    todNtpTime:       TOD;               // variable heure uniquement convert du STRUCTURED DATE AND TIMEhz fbUdpPeer:        NBS.UDP_Peer;       // création de l'homologue UDPi~ fbUdpReceive:       NBS.UDP_Receive;      // réception des données UDPjt fbUdpSend:        NBS.UDP_Send;       // émission des données UDPk²  abyNtpResponse:    ARRAY [0..47] OF BYTE;   // Stockage de la réponse serveur dans un ARRAY l` fbSendTrig:       R_TRIG;             // Trigger d'émissionmR   fbResponseTimeout:  TON;               // "imeout n\   wsMessage:         WSTRING;            // Statut du sondageoVAR CONSTANTp~   c_abyNtpRequest:  ARRAY [0..47] OF BYTE :=   [16#1B, 47(0)]; // q"UniqueIdGeneratorr326sPOULeveltL{8e575c5b-1d37-49c6-941b-5c0ec7874787}uStandardv ChildObjectGuidsw8System.Collections.ArrayListx,AddAttributeSubsequentyboolÐÐ-ÐÐ  E
4
fÐÐ
­DÚÐ-ÐÐ
­%ÚÐ-ÐÐ
­(ÚÐ-ÐÐ
­+ÚÐ-ÐÐ
­/ÚÐ-ÐÐ
­0ÚÐ-ÐÐ
­1ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ ÚÐ-ÐÐ
­FÚÐ-ÐÐ
­EÚÐ-ÐÐ
­$ÚÐ-ÐÐ
­!ÚÐ-ÐÐ
­"ÚÐ-ÐÐ
­#ÚÐ-ÐÐ
­½ÚÐ-ÐÐ
­¾ÚÐ-ÐÐ
­¿ÚÐ-ÐÐ
­ÀÚÐ-ÐÐ
­ÁÚÐ-ÐÐ
­ÂÚÐ-ÐÐ
­ÃÚÐ-ÐÐ
­ÄÚÐ-ÐÐ
­ÅÚÐ-ÐÐ
­ÆÚÐ-ÐÐ
­ÇÚÐ-ÐÐ
­ÈÚÐ-ÐÐ
­ÉÚÐ-ÐÐ
­ÊÚÐ- ÐÐ
­ËÚÐ-!ÐÐ
­ÌÚÐ-"ÐÐ
­ÍÚÐ-#ÐÐ
­ÎÚÐ-ÐÐ
­ÏÚÐ-$ÐÐ
­ÐÚÐ-%ÐÐ
­ÑÚÐ-&ÐÐ
­ÒÚÐ-'ÐÐ
­ÓÚÐ-(ÐÐ
­ÔÚÐ-ÐÐ
­ÕÚÐ-ÐÐ
­ÖÚÐ-)ÐÐ
­×ÚÐ-ÐÐ
­ØÚÐ-*ÐÐ
­ÙÚÐ-+ÐÐ
­ÚÚÐ-,ÐÐ
­ÛÚÐ--ÐÐ
­ÜÚÐ-.ÐÐ
­ÝÚÐ-(ÐÐ
­ÞÚÐ-ÐÐ
­ßÚÐ-ÐÐ
­àÚÐ-/ÐÐ
­áÚÐ-ÐÐ
­âÚÐ-+ÐÐ
­ãÚÐ-0ÐÐ
­äÚÐ-1ÐÐ
­åÚÐ-2ÐÐ
­æÚÐ-3ÐÐ
­çÚÐ-4ÐÐ
­èÚÐ-5ÐÐ
­éÚÐ-6ÐÐ
­êÚÐ-7ÐÐ
­ëÚÐ-8ÐÐ
­ìÚÐ-9ÐÐ
­íÚÐ-:ÐÐ
­îÚÐ-;ÐÐ
­ïÚÐ-<ÐÐ
­ðÚÐ-=ÐÐ
­ñÚÐ->ÐÐ
­òÚÐ-?ÐÐ
­óÚÐ-+ÐÐ
­ôÚÐ-9ÐÐ
­õÚÐ-@ÐÐ
­öÚÐ-ÐÐ
­÷ÚÐ-AÐÐ
­øÚÐ-+ÐÐ
­ùÚÐ-BÐÐ
­úÚÐ-ÐÐ
­ûÚÐ-CÐÐ
­üÚÐ-DÐÐ
­ýÚÐ-EÐÐ
­þÚÐ-FÐÐ
­ÿÚÐ-#ÐÐ
­ÚÐ-+ÐÐ
­ÚÐ-GÐÐ
­ÚÐ-HÐÐ
­ÚÐ-IÐÐ
­ÚÐ-JÐÐ
­ÚÐ-KÐÐ
­ÚÐ-LÐÐ
­ÚÐ-MÐÐ
­ÚÐ-NÐÐ
­   ÚÐ-+ÐÐ
­
5
ÚÐ-OÐÐ
­ÚÐ-IÐÐ
­ÚÐ-KÐÐ
­
ÚÐ-(ÐÐ
­ÚÐ-PÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­   ÚÐ-ÐQRÐ   E
6
5ÐÐ
­”ÚÐ-SÐÐ
­•ÚÐ-ÐÐ
­–ÚÐ-TÐÐ
­:ÚÐ-ÐÐ
­ÚÐ-UÐÐ
­˜ÚÐ-VÐÐ
­™ÚÐ-WÐÐ
­šÚÐ-XÐÐ
­;ÚÐ-ÐÐ
­›ÚÐ-YÐÐ
­œÚÐ-ÐÐ
­ÚÐ-ZÐÐ
­<ÚÐ-ÐÐ
­žÚÐ-[ÐÐ
­=ÚÐ-ÐÐ
­ŸÚÐ-\ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-]ÐÐ
­ÚÐ-^ÐÐ
­ÚÐ-_ÐÐ
­ÚÐ-`ÐÐ
­ÚÐ-aÐÐ
­¢ÚÐ-bÐÐ
­>ÚÐ-ÐÐ
­£ÚÐ-YÐÐ
­¤ÚÐ-ÐÐ
­¥ÚÐ-cÐÐ
­@ÚÐ-dÐÐ
­AÚÐ-ÐÐ
­5ÚÐ-eÐÐ
­6ÚÐ-ÐÐ
­7ÚÐ-fÐÐ
­4ÚÐ-gÐÐ
­8ÚÐ-+ÐÐ
­¨ÚÐ-hÐÐ
­©ÚÐ-iÐÐ
­ªÚÐ-jÐÐ
­«ÚÐ-ÐÐ
­¬ÚÐ-ÐÐ
­­ÚÐ-kÐÐ
­®ÚÐ-ÐÐ
­¯ÚÐ-lÐÐ
­°ÚÐ-ÐÐ
­±ÚÐ-ÐÐ
­²ÚÐ-mÐÐ
­³ÚÐ-ÐÐ
­´ÚÐ-nÐÐ
­µÚÐ-YÐÐ
­¶ÚÐ-ÐÐ
­·ÚÐ-oÐÐ
­¸ÚÐ-pÐÐ
­¹ÚÐ-YÐÐ
­ÚÐ-Ðq-rÐst-uvwÐxy­