background image

 

 

STEROWNIKI    PROGRAMOWALNE 

 - Wykład 5

 

LICZNIKI

Prowadzący: 

      

dr hab. inż. Krzysztof  

Pieńkowski

 

Instytut Maszyn, Napędów i 

Pomiarów Elektrycznych 

Politechniki Wrocławskiej

Bud. A-10,    pok. 401

krzysztof.pienkowski@pwr.wroc.pl

background image

 

 

WPROWADZENIE

 

Przy 

sterowaniu 

procesami 

dyskretnymi 

zachodzi 

często 

potrzeba 

zliczania 

liczby 

zdarzeń,  które  następują  kolejno  po  sobie  oraz 
podejmowania 

decyzji 

sterowniczych 

uzależnionych od liczby zdarzeń w procesie.

Do  typowych  zadań  sterowania  wymagających 
operacji zliczania  należą:

   

zliczanie  liczby  elementów,  np.  na  linii 

transportowej;

  procesy pakowania;

  nadzorowanie stanu wyposażenia magazynów, 
miejsc składowania, obsługi parkingów;

    kontrola  i  sterowanie  położeniem  elementów, 
których  przemieszczenia  są  mierzone  przez 
czujniki impulsowe.

background image

 

 

WPROWADZENIE

 

Przykład  procesu  przemysłowego  ze  zliczaniem 
elementów:  

Butelki transportowane na linii transportowej są zliczane i 
pakowane po 12 sztuk do transporterów

.

background image

 

 

WPROWADZENIE

 

W  konwencjonalnych    układach  sterowania 
procesami  do  realizacji  operacji  zliczania 
stosowane  są  liczniki  elektromechaniczne  lub 
elektroniczne układy licznikowe.  

Natomiast  w  sterownikach  programowalnych 
PLC 

operacje 

zliczania 

liczby 

zdarzeń 

realizowane są w postaci programowej.

Do realizacji operacji zliczania w układach sterowania 
ze 

sterownikami 

PLC 

wykorzystuje 

się 

programowalne bloki funkcyjne licznikowe, które 
realizują 

takie 

same 

funkcje 

jak 

liczniki 

elektromechaniczne lub elektroniczne.

background image

 

 

Podstawowe pojęcia 

licznikowe

Operacje zliczania związane są z 
następującymi podstawowymi pojęciami:

    

zmienna zliczana;

   zawartość licznika;

   stan licznika.

background image

 

 

Zmienna zliczana

W  niektórych  procesach  decyzje  sterownicze  są 
uzależnione  od  zliczenia  liczby  elementarnych 
czynności nazywanych zdarzeniami.

Zmienna  zliczana  jest  to  zmienna  logiczna 
(sygnał logiczny), której zmiana jest informacją o 
pojawieniu się zliczanego zdarzenia.

W  sterownikach  PLC  każdemu  występującemu 
kolejno po sobie zdarzeniu, które powinno zostać 
zliczone  należy  przypisać  odpowiednią  zmianę 
wartości  logicznej  zmiennej  zliczanej  
(pojawienie 
się lub brak sygnału sterującego). 

background image

 

 

Zmienna zliczana

      W  sterownikach  PLC  liczniki  realizowane 
programowo 

zliczają 

zbocza 

narastające 

zmiennej  zliczanej,  czyli  liczbę  zmian  wartości  tej 
zmiennej  ze  stanu  logicznego  „0”  do  stanu 
logicznego „1”. 

  Licznik programowalny w sterowniku PLC sam 
wykrywa 

zbocza 

narastające 

zmiennej 

zliczanej  -  wystarczy  tylko  przypisać  zmienną 
zliczaną  do  odpowiedniego  wejścia  programowego 
licznika.

background image

 

 

Zawartość licznika i stan 

licznika

Zawartość licznika

Zawartość  licznika  jest  to  informacja  wyrażona 
w  postaci  liczby  całkowitej  o  aktualnej  liczbie 
zliczonych  zmian  zmiennej  zliczanej  czyli  o 
aktualnej  liczbie  zdarzeń  zliczonych  przez 
licznik.

Stan licznika

Stan  licznika  jest  to  informacja  wyrażona  w 
postaci 

zmiennej 

logicznej 

(zmiennej 

dwustanowej),  która  sygnalizuje  czy  licznik 
odliczył już zadaną liczbę zdarzeń.

background image

 

 

Podział ogólny liczników 

programowalnych stosowanych w  

sterownikach PLC

W  sterownikach  PLC  stosowane  są  następujące 
rodzaje liczników programowalnych :
  liczniki  jednokierunkowe:
  dodające - zliczające ”w górę”;

  odejmujące -  zliczające ”w dół”;

  liczniki dwukierunkowe:
  o niezależnych wejściach: dodającym i 
odejmującym;

  rewersyjne - kierunek zliczania jest określany 

programowo przez dodatkową zmienną 

logiczną;

  fazowe (kwadrantowe) - kierunek zliczania jest 
zależny 

od przesunięcia fazowego zliczanych 

sygnałów  logicznych. 

background image

 

 

Zasada działania licznika 

jednokierunkowego dodającego

 

(zliczającego w górę)

CV

PV

1
0

0

+1 +1

+1

+1

+1

+1

zmienna zliczana

zawartość licznika

t

t

Input

UP

 Zliczane sygnały są podawane jako zliczana zmienna logiczna na 
wejście licznika zliczającego w górę: Input UP.

  Zbocze  narastające  każdego  zliczanego    sygnału  zwiększa  o  1 
zawartość licznika CV (Current Value).

  Gdy  licznik  zliczy  zadaną  liczbę  sygnałów  PV  (Preset  Value
nastąpi  zmiana  stanu  licznika  –  zmiana  nastawienia  wartości 
zmiennej logicznej na wyjściu licznika z wartości logicznej 0 na 1. 

background image

 

 

Zasada działania licznika 

jednokierunkowego odejmującego

 

(zliczającego w dół)

 Przed zliczaniem należy nastawić początkową zawartość licznika 
CV (Current Value) na wartość zadaną PV (Preset Value). 

 Zliczane sygnały są podawane jako zliczana zmienna logiczna na 
wejście licznika zliczającego w dół: Input DOWN

  Zbocze  narastające  każdego  zliczanego    sygnału  zmniejsza  o  1 
zawartość licznika CV.

 Gdy licznik zliczy zadaną liczbę sygnałów PV, czyli gdy zawartość 
licznika  CV  ≤  0,  to  nastąpi  zmiana  stanu  licznika  –  zmiana 
nastawienia  wartości  zmiennej  logicznej  na  wyjściu  licznika  z 
wartości logicznej 0 na 1. 

1
0

0

zmienna zliczana

zawartość licznika

t

t

CV

PV

-1

-1

-1

-1

-1

-1

Input

DOWN

background image

 

 

Zasada działania licznika 

dwukierunkowego o niezależnych 

wejściach zliczających

 

  Licznik  ma  dwa  wejścia  dla  zliczanych  sygnałów:    wejście  dla 
zliczania  w  górę  -  Input  UP  i  wejście  dla  zliczania  w  dół  -  Input 
DOWN.
 

  Zbocze  narastające  każdego  sygnału  podawanego  na  wejście 
Input  UP  zwiększa  o  1  zawartość  licznika  CV  (Current  Value),  a 
zbocze  narastające  każdego  sygnału  podawanego  na  wejście 
Input DOWN zmniejsza o 1 zawartość licznika CV. 

  Gdy  licznik  zliczy  zadaną  liczbę  sygnałów  PV,  czyli  gdy 
zawartość  licznika  CV=PV  lub  gdy  CV  ≤  0,  to  nastąpi  zmiana 
stanu  licznika  –  zmiana  nastawienia  odpowiedniej  zmiennej 
logicznej na wyjściu z 0 na 1.

CV

PV

0

+1 +1 +1

zawartość  licznika

t

1
0

zmienna zliczana UP

t

zmienna zliczana DOWN

1
0

t

-1

-1 +1 +1

+1+1+1

-1

Input

DOWN

Input

UP

background image

 

 

Zasada działania licznika 

dwukierunkowego rewersyjnego

 

 Licznik ma dwa wejścia:  wspólne wejście dla zliczania sygnałów 
w obu kierunkach Input +/-   oraz  wejście dla zadawania kierunku 
zliczania Input K. 

 Na wejście Input K jest podawana zmienna logiczna, pozwalająca 
zadawać kierunek zliczania: K=0 – zliczanie w górę, K=1 – zliczanie 
w dół.

 Zbocze narastające każdego zliczanego sygnału na wejściu  Input 
+/-
  zależnie  od  zadanej  wartości  zmiennej  K  zwiększa  o  1  lub 
zmniejsza o 1 zawartość licznika CV (Current Value).

 Gdy licznik zliczy zadaną liczbę sygnałów PV, czyli gdy zawartość 
licznika CV=PV lub gdy CV ≤ 0, to nastąpi  zmiana stanu licznika - 
zmiana nastawienia odpowiedniej zmiennej logicznej na wyjściu z 0 
na 1.

CV

PV

0

+1 +1

+1

zawartość licznika

t

1
0

zmienna zliczana

t

zmienna K kierunku zliczana

1
0

t

-1

-1 +1 +1

+1+1+1

Input

+/-

Input

K

-1

-1 -1 +1

background image

 

 

Zasada działania licznika 

dwukierunkowego fazowego 

(kwadrantowego)

Input

B

Input

A

CV

PV

0

zawartość licznika

t

1
0

zmienna zliczana  A

t

1
0

t

+1 +1

+1 +1

+1 +1

+1 +1

+1

-1

-1

-1

-1

-1

-1

....

....

zmienna zliczana  B

  Licznik ma dwa oddzielne wejścia: Input A  i Input B   do zliczania 
przesuniętych fazowo sygnałów A i B.

  Licznik wymaga współpracy ze specjalnym impulsowym układem 
czujnikowym,  który  generuje  zliczane  impulsy  A  i  B  przesunięte 
między sobą fazowo - kierunek przesunięcia fazowego sygnałów A 
i B jest zależny od kierunku ruchu. 

background image

 

 

Zasada działania licznika 

dwukierunkowego fazowego 

(kwadrantowego)

 Licznik tego typu jest stosowany do zliczania liczby obrotów lub 
określania  położenia  elementów  w  układach  mogących 
wykonywać ruch w obu kierunkach. 

  Kierunek  zliczania  (w  górę  lub  w  dół)  jest  zależny  od  kierunku 
przesunięcia fazowego między zliczanymi sygnałami logicznymi A 
i  B.  Kierunek  zliczania  jest  samoczynnie  nastawiany  przez 
działanie licznika.

  W  zależności  od  kierunku  przesunięcia  sygnałów  zbocze 
narastające każdego  zliczanego sygnału odpowiednio zwiększa o 
1 lub zmniejsza o 1 zawartość licznika CV (Current Value).

  Na  podstawie  zawartości  licznika  CV  może  być  wyznaczona 
wypadkowa wartość liczby obrotów elementu, a na tej podstawie 
określona droga kątowa  lub położenie ruchomego elementu.

background image

 

 

INNY PODZIAŁ LICZNIKÓW W PLC

Inny podział liczników jest uzależniony od właściwości 
licznika związanych z przerwaniem działania licznika  
(np.  przerwa  w  zasilaniu,  przerwanie  pracy   
sterownika, itp.).

W  zależności  od  możliwości  zapamiętania  zmiennych 
związanych z licznikiem wyróżnia się:

    Liczniki  nieremanentne  -  liczniki  bez 
podtrzymywania  w  pamięci  zawartości  licznika
 
(po  wyłączeniu  sterownika  PLC  zmienna  ta  zostaje 
wyzerowana 

zliczanie 

następuje 

od 

stanu 

początkowego);

 

 

Liczniki 

remanentne 

liczniki 

podtrzymywaniem 

pamięci 

zawartości 

licznika  (po  wyłączeniu  sterownika  PLC  zawartość 
bieżąca  licznika  zostanie  zapamiętana  -  zliczanie 
może  być  kontynuowane  po  ponownym  włączeniu 
sterownika).

background image

 

 

BLOK  LICZNIKA CTU -  

ZLICZAJĄCEGO  W GÓRĘ

SYMBOL

 BLOKU LICZNIKA CTU

 W JĘZYKU FBD: 

PRZYKŁAD ZASTOSOWANIA 

 BLOKU W  PROGRAMIE  W  FBD: 

W  języku  FBD  blok  licznikowy  CTU  jest  programowany 
jako  specjalny  blok  funkcyjny  o  nazwie  CTU  (CounTer 
Up
). 

Nazwa 
licznika

background image

 

 

Opis parametrów bloku licznika  CTU

Parame

tr

Typ

Opis

CU 

BOOL

Count Up    - Wejście do 
zliczania w górę

 

R

BOOL

Reset 

  

-  Kasowanie licznika

 

PV

INT(EGER) 

Preset Value

     

-  Wartość 

zadana dla licznika do 
zliczania

 

Q

BOOL

Output    

-

 

Wyjście   licznika

 

CV

INT(EGER) 

Current Value

    

- Stan 

bieżący zliczania licznika

 

(zawartość licznika)

background image

 

 

Diagram czasowy  działania  

licznika CTU

 

1)

2)

3)

4)

5)

1
0

CU

R

1
0

CV

0

PV

. . .

. . .

Q

0

1

CV>=PV

. . .

. . .

. . .

. . .

t

t

t

t

background image

 

 

Opis działania bloku licznika CTU

 

1) Licznik CTU zlicza zbocza narastające sygnału logicznego podawanego 

na wejście CU. Do wejścia PV powinna być wcześniej przypisana stała 
w  postaci  liczby  całkowitej,  określająca  do  jakiej  zadanej  liczby 
powinno następować zliczanie przez licznik.

2) Przy  każdej  zmianie  sygnału  logicznego  na  wejściu  CU  z  wartości 

logicznej  ”0”  na  ”1”  zawartość  licznika  CV  jest  zwiększana  o  1 
(CV:=CV+1).  

3) Gdy  zawartość  licznika  CV  osiągnie  wartość  CV  ≥  PV,  to  wyjście 

licznika Q zostanie nastawione na wartość logiczną ”1” (zmiana stanu 
licznika  z „0” na „1”). Ten stan licznika jest następnie utrzymywany aż 
do skasowania przez wejście R. 

4) Sygnał logiczny ”1” podany na wejście kasujące R (nawet w przypadku 

gdy  jest  sygnałem  impulsowym)  powoduje  skasowanie  bieżącej 
zawartości  licznika  CV  (zostanie  nastawiona  wartość  CV=0)  i 
nastawienie  wyjścia  Q  na  wartość  logiczną  ”0”.  W  czasie  trwania 
sygnału kasującego na wejściu R zliczanie jest zablokowane.

5) Podanie  na  wejście  kasujące  R  sygnału  logicznego    ”1”  podczas 

trwania  procesu  zliczania  powoduje  skasowanie  bieżącej  wartości 
licznika  CV  i  przejście  licznika  do  nowego  procesu  zliczania  od 
początku.  Poprzedni  nie  zakończony  proces  zliczania  zostaje 
skasowany.

background image

 

 

BLOK  LICZNIKA CTD -  

ZLICZAJĄCEGO  W DÓŁ

SYMBOL

 BLOKU LICZNIKA CTD

 W JĘZYKU FBD: 

PRZYKŁAD ZASTOSOWANIA 

 BLOKU CTD 

W  PROGRAMIE  W  FBD: 

W  języku  FBD  blok  licznikowy  CTD  jest  programowany 
jako  specjalny  blok  funkcyjny  o  nazwie  CTD  (CounTer 
Down
). 

Nazwa 
licznika

background image

 

 

Opis parametrów bloku licznika  CTD

Parame

tr

Typ

Opis

CD 

BOOL

Count Down    - Wejście do 
zliczania w dół

 

LD

BOOL

LoaD 

  

-  Załadowanie do 

licznika wartości z wejścia PV

 

PV

INT(EGER) 

Preset Value

     

-  Wartość 

zadana dla licznika do 
zliczania

 

Q

BOOL

Output    

-

 

Wyjście   licznika

 

CV

INT(EGER) 

Current Value

    

- Stan 

bieżący zliczania licznika

 

(zawartość licznika)

background image

 

 

Diagram czasowy  działania  

licznika CTD

 

1)

2)

3)

4)

5)

1
0

CD

LD

1
0

CV

0

PV

. . .

. . .

Q

0

1

CV<=0

. . .

. . .

. . .

. . .

t

t

t

t

background image

 

 

Opis działania bloku licznika CTD

 

1) Licznik CTD zlicza zbocza narastające sygnału logicznego podawanego 

na wejście CD. Do wejścia PV powinna być wcześniej przypisana stała 
w  postaci  liczby  całkowitej,  określająca  od  jakiej  zadanej  liczby 
powinno  następować  zliczanie  przez  licznik.  Przy  podaniu  sygnału 
logicznego  „1”  na  wejście  LD  następuje  załadowanie  wartości  PV  do 
zawartości licznika CV   (CV=PV). 

2) Przy  każdej  zmianie  sygnału  logicznego  na  wejściu  CD  z  wartości 

logicznej  ”0”  na  ”1”  zawartość  licznika  CV  jest  zmniejszana  o  1 
(CV:=CV-1).  

3) Po  zakończeniu  zliczania,  gdy  zawartość  licznika  CV  osiągnie  wartość 

CV=0,  to  wyjście  licznika  Q  zostanie  nastawione  na  wartość  „1” 
(zmiana  stanu  licznika    z  „0”  na  „1”)  i    ten  stan  na  wyjściu  Q  jest 
utrzymywany aż do skasowania. 

4) Po zakończeniu zliczania sygnał ”1” podawany na wejście LD powoduje 

ponowne  załadowanie wartości PV do zawartości licznika CV  (CV=PV) 
oraz  ma  działanie  kasujące  -  powoduje  skasowanie  wyjścia  Q 
(nastawienie  Q=0).  W  czasie  trwania  na  wejściu  LD  sygnału  ”1” 
zliczanie przez licznik jest zablokowane.

5) Podanie  na  wejście  LD  sygnału  logicznego  ”1”  przed  zakończeniem 

procesu  zliczania  (uzyskaniem  CV=0)  powoduje  skasowanie  bieżącej 
wartości  licznika  CV  i  przejście  licznika  do  procesu  zliczania  od 
początku – od stanu (CV=PV). 

background image

 

 

BLOK  LICZNIKA CTUD -  

ZLICZAJĄCEGO  W  GÓRĘ  I  W  DÓŁ

SYMBOL

 BLOKU 

LICZNIKA CTUD

 W JĘZYKU FBD: 

PRZYKŁAD 

ZASTOSOWANIA 

 LICZNIKA CTUD

 W  PROGRAMIE

  W  FBD: 

W  języku  FBD  blok  licznikowy  CTUD  jest  programowany 
jako  specjalny  blok  funkcyjny  o  nazwie  CTUD  (CounTer 
Up/Down
). 

Nazwa 
licznika

background image

 

 

Opis parametrów bloku licznika  CTUD

Parametr

Typ

Opis

CU 

BOOL

Count Up    - Wejście do zliczania w górę 

CD 

BOOL

Count Down    - Wejście do zliczania w dół 

R

BOOL

Reset   -  Kasowanie licznika 

LD

BOOL

LoaD   -  Załadowanie do licznika wartości z 

wejścia PV 

PV

INT(EGER) 

Preset Value     -  Wartość zadana dla 

licznika do zliczania 

QU

BOOL

Output  Up  - Wyjście   licznika (stan ”1” gdy 

  CV>=PV) 

QD

BOOL

Output  Down  - Wyjście   licznika (stan ”1” 

gdy   CV<=0) 

CV

INT(EGER) 

Current Value    - Stan bieżący zliczania 

licznika (zawartość licznika)

background image

 

 

Diagram czasowy  działania  licznika 

CTUD

 

1)

2)

3)

4)

5)

1
0

CU

1
0

CD

. . .

. . .

1
0

1
0

R

LD

QU

0

1

CV >= PV

QD

0

1

CV <= 0

CV

0

PV

. . .

. . .

CV >= PV

CV <= 0

. . .

. . .

t

t

t

t

t

t

t

background image

 

 

Opis działania bloku licznika CTUD

 

1) Podanie  sygnału  logicznego  ”1”  na  wejście  R  powoduje  skasowanie 

bieżącej  zawartości  licznika  -  nastawienie  (CV=0)  oraz  nastawienie 
wyjścia QU na wartość (QU=0) i wyjścia QD na wartość (QD=1). 

2) Przy  każdej  zmianie  sygnału  na  wejściu  CU  z  wartości”0”  na  ”1” 

zawartość  licznika  CV  jest  zwiększana  o  1  (  CV:=  CV  +  1),  a    przy 
każdej zmianie sygnału na wejściu CD z wartości”0” na ”1” zawartość 
licznika CV jest zmniejszana o 1 ( CV:= CV - 1).

3) Gdy  zawartość  licznika  CV  osiągnie  wartość  CV  >=  PV,  to  wyjście 

licznika  QU  zostanie  nastawione  na  wartość  (QU=1).    Stan  wyjścia 
QU=1 jest utrzymywany aż do momentu podania na wejście R sygnału 
kasującego ”1” lub wystąpienia warunku CV<PV.

4) Podanie  sygnału”1”  na  wejście  LD  powoduje  nastawienie  bieżącej 

zawartości  licznika  CV  na  wartość  PV    (CV=PV).  Wyjście  licznika  QU 
zostanie nastawione na wartość logiczną (QU=1). 

5) Gdy  zawartość  licznika  CV  osiągnie  wartość  CV  <=  0,  to  wyjście 

licznika QD zostanie nastawione na wartość logiczną ”1” i ten stan jest 
utrzymywany aż do wystąpienia warunku CV>0.

background image

 

 

Opis działania bloku licznika CTUD

 

  Licznik CTUD stanowi połączenie działania licznika CTU i licznika 
CTD.

    Licznik  CTUD  zlicza  zbocza  narastające  sygnałów  logicznych 
podawanych  na  wejście  CU  (zliczania  w  górę)    i    zbocza 
narastające  sygnałów  logicznych  podawanych  na  wejście  CD 
(zliczania w dół).

  Do wejścia PV licznika powinna być przypisana stała w postaci 
liczby całkowitej, określającej do jakiej liczby powinno następować 
zliczanie lub od jakiej liczby  powinno następować zliczanie.

    Podanie  sygnału  logicznego  ”1”  na  wejście  R  powoduje 
skasowanie  bieżącej  zawartości  licznika  (CV=0),  a  podanie 
sygnału  logicznego  ”1”  na  wejście  LD  powoduje  załadowanie 
wartości zadanej PV do bieżącej zawartości licznika (CV=PV). 

  Przy jednoczesnym podaniu sygnału logicznego  ”1” zarówno na 
wejście R i wejście LD dominujące działanie będzie miało wejście 
R.

background image

 

 

PROGRAMOWANIE  BLOKÓW LICZNIKOWYCH W 

 LD

 

Przykład programowania licznika CTU w języku 
LD
:

 

W  podobny  sposób  programowane  są  liczniki 
typu CTD i CTUD.

Bloki licznikowe nie mają realizacji programowej z wykorzystaniem 
tylko elementów języka drabinkowego LD.

języku 

LD 

do 

programowania 

bloków 

licznikowych 

wykorzystywane    są  elementy  LD:  styki  i  cewki    oraz  symbole 
bloków licznikowych z języka FBD. 

background image

 

 

PROGRAMOWANIE  BLOKÓW LICZNIKOWYCH  W  IL

 

Przykład realizacji licznika 
CTU
 w języku IL : 

VAR
   ………………….
   WE_CU  : BOOL;         (* Deklaracja zmiennych
 wejściowych i wyjściowych *)
   WE_R  :  BOOL;
   WY_Q  : BOOL;
   VAL_PV  : INTEGER:=100;   (* Deklaracja i zadanie wartości na wejściu PV 
 *)
   VAL_CV : INTEGER;
   LICZ1    : CTU;          (* Deklaracja nazwy i typu licznika
 *)
   ………………….
END_VAR
……………..
LD    WE_CU                (* Wczytanie zmiennej zliczanej licznika
  *)
ST     LICZ1.CU            (* Przypisanie zmiennej zliczanej do wejścia
 CU  *) 
LD     WE_R                  (* Wczytanie zmiennej kasowania
 *)
ST     LICZ1.R               (* Przypisanie zmiennej kasowania
 do wejścia R *) 
LD     VAL_PV              (* Wczytanie zadanej wartości licznika
 *)
ST     LICZ.PV              (* przypisanie zadanej wartoścido wejścia PV 
*)
CAL   LICZ1 

(* Wywołanie podprogramu bloku licznika LICZ1 *) 

LD     LICZ1.Q           (* Wczytanie wartości zmiennej na wyjściu Q  *)
ST     WY_Q              (* Przypisanie wartości z wyjścia Q do zmiennej WY_Q
 *) 
LD     LICZ1.CV            (* Wczytanie wartości zmiennej na wyjściu CV 
 *)
ST     VAL_CV               (* Przypisanie wartości z wyjścia CV do zmiennej VAL_CV
 *)
………………

background image

 

 

Problem 1 zliczania w 

sterownikach PLC

Czas  cyklu  pracy  sterownika  PLC  jest  zależny  od  liczby  i  rodzaju 
instrukcji zastosowanych w programie sterowania.
Czas  cyklu  nie  jest  ściśle  określony  –  program  sterowania  może 
np.  zawierać  instrukcje  wykonywane  warunkowo  lub  zależne  od 
rodzaju sterowanego procesu. 
Czas  cyklu  określa  częstotliwość  odczytywania  stanów  wejść 
sterownika  i  częstotliwość  zapisywania  i  nastawiania  stanów 
wyjść. 
Przy  typowych  zastosowaniach  czas  cyklu  sterownika  wynosi  od 
100  do  10  ms.  Przy  tych  czasach  cyklu  oznacza  to  możliwość 
odczytywania  wejść  i  zapisywania  wyjść  z  maksymalnymi 
częstotliwościami w zakresie 10 – 100 Hz. 
Jest to  istotne ograniczenie możliwości zastosowań sterownika do 
procesów  zliczania  –  podawane  na  wejście  sterownika  impulsy  o 
czasie trwania krótszym od 10 ms mogą pozostać nie wykryte.

background image

 

 

Problemy zliczania w sterownikach 

PLC

tp - czas cyklu programu 

sterownika

 

Jak  widać  sygnały  zbyt  krótkie  mogą  zostać  nie  policzone 
przez licznik
.
Należy  zakładać,  że  impuls  na  wejściu  licznika  powinien  trwać 
przynajmniej dwa razy dłużej niż cykl programu, to samo dotyczy 
przerwy między zliczanymi sygnałami . 

Sygnały 
niezliczone

background image

 

 

Problem 2 zliczania w 

sterownikach PLC

W  sterownikach  PLC  zliczających  sygnały  pochodzące  od 
czujników  stykowych  występuje  problem  tzw.  migotania 
styków
.  Blok  programowalny  licznika  PLC  zlicza  zbocza 
narastające sygnału podawanego na wejście bloku.

Popularnie  stosowany  przycisk  generuje  podczas  naciśnięcia 
zamiast  jednego  impulsu  kilka  impulsów  w  których  za  każdym 
razem  występuje  przejście  ze  stanu  „0”  na  „1”,  czyli  zbocze 
narastające  sygnału.  Jest  to  spowodowane  drganiami  styku  i 
nazywane migotaniem styku.

Większość  produkowanych  obecnie  sterowników  PLC  ma 
możliwość  nastawienia  niezbędnej  długości  trwania  impulsu 
wejściowego  o  wartości  1,  aby  wejście  się  uaktywniło.  Wartość 
tego  nastawianego  przedziału  czasu  wynosi  1-32  ms.  Typowa 
wartość nastawianego przedziału czasu wynosi 8 ms.

background image

 

 

Szybkie liczniki w PLC

W  sterownikach  PLC  nie  jest  możliwe  zliczanie  ciągu 
impulsów, które pojawiają się w odstępach krótszych 
niż  czas  niezbędny  do  wykonania  przez  sterownik 
pojedynczego cyklu programowego. 
Zliczanie  takich  impulsów  przez  standardowe  bloki 
funkcyjne  liczników  np.:  przez  bloki  CTU  lub  CTUD 
powodowałoby  zjawisko  tzw.  "gubienia"  zliczanych 
impulsów  i  w  efekcie  powstanie  błędów  w  procesie 
zliczania.

Z  tych  względów  sterowniki  PLC  coraz  częściej  są 
wyposażane  w  tzw.  szybkie  liczniki  HSC  (High 
Speed Counter
) do zliczania sygnałów impulsowych 
o dużej częstotliwości. 

background image

 

 

Szybkie liczniki w PLC

W  sterownikach  PLC  stosowane  są  dwa  typy  szybkich 
liczników HSC:

  Liczniki szybkie realizowane jako  funkcje sprzętowe 
sterownika PLC;

  Moduły szybkiego licznika.

background image

 

 

Liczniki szybkie jako funkcje 

sprzętowe

Licznik  szybki  realizowany  jako  funkcja  sprzętowa 
zlicza  impulsy  o  dużej  częstotliwości  podawane  na 
odpowiednie wejście lub wejścia sterownika. 

Zliczanie  impulsów  jest  niezależne  od  programu 
głównego – nie absorbuje to pamięci i jednostki CPU 
sterownika.

W  głównym  programie  sterowania  należy  tylko 
jednorazowo 

dokonać 

parametryzacji 

funkcji 

zliczania 

oraz 

dokonać 

uruchomienia 

funkcji 

zliczania. 

background image

 

 

Parametryzacja funkcji licznika

Przy parametryzacji funkcji sprzętowej licznika należy 
podać:

  Na które wejścia sterownika będą  podawane zliczane impulsy;
  Jaki będzie kierunek zliczania i jak będzie on nastawiany;
  Jak będzie zerowany licznik – sprzętowo, czy programowo;
  Do jakiej wartości będą zliczane impulsy.

Parametryzacji dokonuje się przez podanie nazwy (numeru) 
licznika, trybu pracy licznika oraz wpisanie kodów rozkazów 
licznika do specjalnych obszarów pamięci sterownika.

background image

 

 

LICZNIKI SPRZĘTOWE HSC 

W STEROWNIKACH S7

Liczba  zaimplementowanych  w  sterowniku  szybkich 
liczników  sprzętowych  zależy  od  typu  jednostki 
centralnej sterownika.

W sterownikach S7 firmy SIEMENS:

 S7 z CPU212 posiada jeden szybki licznik  - HSC0;

  S7  z    CPU214  posiada  trzy  szybkie  liczniki  -  HSC0, 
HSC1 i HSC2; 

 S7 z  CPU221 i CPU222 posiada cztery szybkie liczniki 
- HSC0, HSC3, HSC4 i HSC5;

 S7 z  CPU 224, CPU 224XP i CPU 226 posiada sześć 
szybkich liczników - HSC0, HSC1, HSC2, HSC3, HSC4 i 
HSC5.

background image

 

 

LICZNIKI HSC W STEROWNIKACH 

S7

Numer  licznika  określa  maksymalną  częstotliwość 
impulsów  zliczanych  przez  licznik
  oraz  typ 
licznika
, np.: 

    Licznik  HSC0  jest  licznikiem  dwukierunkowym. 
Zmianę  kierunku  zliczania  realizuje  się  programowo 
przez 

odpowiedni 

bit 

kontrolny. 

Maksymalna 

częstotliwość impulsów zliczanych przez licznik wynosi 
2kHz. 

    Liczniki  HSC1  oraz  HSC2  są  licznikami 
uniwersalnymi,  w  których  można  ustawić  programowo 
jeden  z  dwunastu  trybów  pracy  (dwukierunkowy, 
dwufazowy 

lub 

dwukwadrantowy). 

Maksymalna 

częstotliwość pracy liczników HSC1 oraz HSC2 wynosi 7 
kHz.

background image

 

 

Moduł szybkiego licznika

Moduł  szybkiego  licznika  jest  oddzielnym  modułem 
włączanym do dowolnego gniazda płyty sterownika. 
Moduł  umożliwia  bezpośrednie  zliczanie  impulsów  o   
dużej  częstotliwości,  najczęściej    do  około  100  kHz,  a 
najnowsze do 1 MHZ.
Moduł  HSC  może  realizować  bezpośrednie  operacje 
zliczania  i  sterowania  swoimi  wyjściami  samodzielnie 
bez  potrzeby  komunikacji  z  jednostką  centralną  CPU 
sterownika.
Wyjścia  modułu  mogą  pełnić  funkcje  sterujące  i 
sygnalizacyjne.
Przez  odpowiednie  nastawienia  konfiguracji  moduł 
może realizować funkcje jednoczesnego działania kilku 
liczników o różnych typach działania.

background image

 

 

Moduł HSC (High Speed Counter

)

background image

 

 

Tryby pracy modułu HSC

Licznik 
jednokierunkowy

Licznik 
dwukierunkowy

Licznik kwadrantowy

Licznik kwadrantowy z bezpośrednim sterowaniem 
wyjść

background image

 

 

Parametry typowego modułu HSC

Module Type

Intelligent

I/O Points Assigned

16 input, 32 output

Modules per CPU

8

Count Signal Level

4.75VDC–30 VDC less than 10 

mA

Maximum Count 
Speed

100kHz (50% duty cycle)

Minimum Input 
Pulse Width

5µs

background image

 

 

Zastosowanie liczników do cięcia 

odcinków o zadanej długości

background image

 

 

Zastosowanie liczników do 

detekcji  uszkodzenia wiertła


Document Outline