Advertisement
Guest User

Untitled

a guest
Dec 6th, 2018
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SCL 1.50 KB | None | 0 0
  1. // Detekcja zbocza narastającego
  2. IF ((#ramp_up = 1) AND ("Zmienne_globalne".cien_up = 0)) THEN              
  3.     #zbocze_up := 1;
  4. ELSE
  5.     #zbocze_up := 0;
  6. END_IF;
  7. "Zmienne_globalne".cien_up := #ramp_up;
  8.  
  9.  
  10. // Detekcja zbocza opadającego
  11. IF ((#ramp_down = 0) AND ("Zmienne_globalne".cien_down = 1)) THEN
  12.     #zbocze_down := 1;
  13. ELSE
  14.     #zbocze_down := 0;
  15. END_IF;
  16. "Zmienne_globalne".cien_down := #ramp_down;
  17.  
  18.  
  19. //obsługa stanu silnika
  20. IF #zbocze_up = 1 THEN
  21.     "Zmienne_globalne".motor_state := 1;
  22. ELSIF #zbocze_down = 1 THEN
  23.     "Zmienne_globalne".motor_state  := 0;
  24.     //"Zmienne_globalne".PWM := 0;
  25. END_IF;
  26.  
  27.  
  28. //deklaracja timera
  29. "IEC_Timer_0_DB_1".TP(IN:=#timer_init_1,PT:=T#500ms,Q=>#timer_state_1);
  30. "IEC_Timer_0_DB".TP(IN:=#timer_init_2,PT:=T#500ms,Q=>#timer_state_2);
  31.  
  32.  
  33.  
  34.  
  35. //Wyzwalanie timera zwiększającego wartośc
  36. IF ("Zmienne_globalne".motor_state = 1) THEN
  37.     IF ((#timer_state_1 = 0) AND ("Zmienne_globalne".PWM <> 27648)) THEN
  38.         #timer_init_1 := 1;
  39.         "Zmienne_globalne".PWM := LIMIT(IN := "Zmienne_globalne".PWM + #step, MN := 0, MX := 27648);
  40.     ELSE
  41.         #timer_init_1 := 0;
  42.     END_IF;
  43. ELSIF ("Zmienne_globalne".motor_state = 0) THEN
  44.     //Wyzwalanie timera zmniejszajcego wartośc
  45.     IF ((#timer_state_2 = 0) AND ("Zmienne_globalne".PWM > 0)) THEN
  46.         #timer_init_2 := 1;
  47.         "Zmienne_globalne".PWM := LIMIT(IN := "Zmienne_globalne".PWM - #step, MN := 0, MX := 27648);
  48.     ELSE
  49.         #timer_init_2 := 0;
  50.     END_IF;
  51.    
  52. END_IF;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement