Advertisement
Guest User

EX009_MotorControl()

a guest
Apr 22nd, 2016
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SCL 1.94 KB | None | 0 0
  1. /* ############## URUCHOMIENIE MASZYNY STANÓW ############## */
  2. // Initialization State Machine or Stop System
  3. IF(#StartSystem = FALSE AND #tempInitializationStateMachine = FALSE) THEN
  4.     #tempInitializationStateMachine := TRUE;
  5.     #tempStepMemory := #tempStep;
  6.     #tempTriggerMemory := #tempTrigger;
  7.     #tempStepDoneMemory := #tempStepDone;
  8.     #tempStepDone := TRUE;
  9.     #tempTrigger := 0;
  10.     #tempStep := 0;
  11. END_IF;
  12.  
  13. // Start State Machine
  14. IF(#StartSystem = TRUE AND #tempInitializationStateMachine  = TRUE) THEN
  15.     #tempInitializationStateMachine := FALSE;
  16.     #tempStep := #tempStepMemory;
  17.     #tempTrigger := #tempTriggerMemory;
  18.     #tempStepDone := #tempStepDoneMemory;
  19. END_IF;
  20.  
  21. /* ############## PRZEŁĄCZANIE STANÓW ############## */
  22. // State 1
  23. IF(#tempStep = "CONST_EX009_STEP_RUN_MOTOR1" AND #tempStepDone = FALSE) THEN
  24.     IF(#Presure = TRUE) THEN
  25.         #tempTrigger := "CONST_EX009_STEP_RUN_MOTOR1";
  26.         #tempStepDone := TRUE;
  27.         #tempStep := "CONST_EX009_STEP_RUN_MOTOR2";
  28.     END_IF;
  29. END_IF;
  30.  
  31. // State 2
  32. IF(#tempStep = "CONST_EX009_STEP_RUN_MOTOR2" AND #tempStepDone = FALSE) THEN
  33.     IF(#Presure = TRUE) THEN
  34.         #tempTrigger := "CONST_EX009_STEP_RUN_MOTOR2";
  35.         #tempStepDone := TRUE;
  36.         #tempStep := "CONST_EX009_STEP_RUN_MOTOR1";
  37.     END_IF;
  38. END_IF;
  39.  
  40. // State Stop State Machine
  41. IF(#tempTrigger = 0 AND #tempStepDone = TRUE) THEN
  42.     #ParametersMotor1.RunOnOff := FALSE;
  43.     #ParametersMotor2.RunOnOff := FALSE;
  44. END_IF;
  45.  
  46. /* ############## WYKONYWANE CZYNNOŚCI W DANYM KROKU ############## */
  47. // State 1
  48. IF(#tempStep = "CONST_EX009_STEP_RUN_MOTOR1" AND #tempStepDone = TRUE) THEN
  49.     #ParametersMotor1.RunOnOff := TRUE;
  50.     IF(#Presure = FALSE) THEN
  51.         #ParametersMotor1.RunOnOff := FALSE;
  52.         #tempStepDone := FALSE;
  53.     END_IF;
  54. END_IF;
  55.  
  56. // State 2
  57. IF(#tempStep = "CONST_EX009_STEP_RUN_MOTOR2" AND #tempStepDone = TRUE) THEN
  58.     #ParametersMotor2.RunOnOff := TRUE;
  59.     IF(#Presure = FALSE) THEN
  60.         #ParametersMotor2.RunOnOff := FALSE;
  61.         #tempStepDone := FALSE;
  62.     END_IF;
  63. END_IF;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement