Advertisement
Guest User

Untitled

a guest
Nov 21st, 2019
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.03 KB | None | 0 0
  1. /////Program
  2.  
  3. CASE StateVar OF
  4. 0:
  5. IF RFIDReader.xReady THEN
  6. StateVar := 1;
  7. END_IF
  8. 1:
  9. RFIDReader.Connect(usiNodeId:=32 , usiNetworkId:=0 , usiChannel:=1 );
  10. GVL.xQA1_RIGHT:=TRUE;
  11. GVL.M1:=FALSE;
  12. GVL.M2:=FALSE;
  13. StateVar := 2;
  14. 2:
  15. IF RFIDReader.xConnected THEN
  16. StateVar := 3;
  17. END_IF
  18. IF NOT fbTcpClient.xActive AND NOT fbTcpClient.xBusy AND NOT fbTcpClient.xDone THEN
  19. xConnect := TRUE;
  20. ELSIF fbTcpClient.xDone THEN
  21. xConnect := FALSE;
  22. END_IF
  23. fbTcpClient(xEnable := xConnect, ipAddr := GVL.gc_stIpAddr, uiPort := GVL.gc_uiPort, udiTimeOut := 0);
  24. 3:
  25. IF GVL.xBG21 AND NOT GVL.M2 THEN
  26. RFIDReader.ReadTag(uiStartAddress := 0, uiDataLength := SIZEOF(DataSt), ADR(DataSt) );
  27.  
  28. StateVar := 4;
  29. END_IF
  30.  
  31. 4:
  32. IF RFIDReader.xReady THEN
  33. CarrierID := dc_ecp.SwapWORD(DataSt.uiCarrierID);
  34. ONo := dc_ecp.SwapDWORD(DataSt.stMesData.udiONo);
  35. OPos := dc_ecp.SwapWORD(DataSt.stMesData.uiOPos);
  36. stateVar := 5;
  37. fbTcpWrite(xExecute := FALSE);
  38. END_IF
  39.  
  40. 5:
  41. IF NOT GVL.M1 THEN
  42. fbTcpWrite(xExecute := xConnect,hConnection := fbTcpClient.hConnection, udiTimeOut := 0, szSize := SIZEOF(CarrierID), pData := ADR(CarrierID));
  43. GVL.M1:=TRUE;
  44. stateVar:=6;
  45. END_IF
  46.  
  47. 6:
  48. fbTcpRead(xEnable := xRead AND xConnect, hConnection := fbTcpClient.hConnection, szSize := SIZEOF(abyInput), pData := ADR(abyInput), szCount => udiRead);
  49. IF fbTcpRead.xReady THEN
  50. timer_active:=TRUE;
  51. input_data:=abyInput[0];
  52. udiLastAck := SysTimeRtc.SysTimeRtcGet(udiResult);
  53. stateVar:=7;
  54. ELSIF fbTcpRead.xError THEN
  55. fbTcpRead(xEnable := FALSE);
  56. END_IF
  57. 7:
  58. input_data:=input_data*1000;
  59. ton_1(IN:=timer_active,PT:=INT_TO_TIME(input_data));
  60. stateVar:= 8;
  61.  
  62. 8:
  63. ton_1(IN:=timer_active);
  64. IF ton_1.Q THEN
  65. GVL.xMB20:=TRUE;
  66. GVL.M2:=TRUE;
  67. stateVar:=9;
  68. END_IF
  69. 9: //create timer sort of here.
  70. IF NOT GVL.xBG21 THEN
  71. GVL.M2:=FALSE;
  72. GVL.xMB20:=FALSE;
  73. GVL.M1:=FALSE;
  74. stateVar:=3;
  75. ton_1(IN:=FALSE);
  76. END_IF
  77.  
  78. END_CASE
  79.  
  80. RFIDReader();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement