Programmeeritavad kontrollerid
Euroopa struktuurfondide logo
Siemens LOGO! viide Automatiseerimise viide Mehhatroonikaseadmete viide Pneumoautomaatika viide
Joonis

Ülesanne: Jooksvad tuled (käsitsi juhtimisega)

Ülesande püstitus

Kõrvuti on 8 LED indikaatorit. Vajutades surunuppu S1 peab neist esimene süttima. Iga järgmise vajutusega peab kustuma eelnev LED ja süttima järgmine. Kui rivi viimane LED on süttinud, siis järgmise nupuvajutusega peab sama protsess jätkuma äraspidiselt kuni jõutakse tagasi rivi esimese LED-ini. Jõudes tagasi algusesse hakkab kõik korduma.
Nupu all hoidmise aeg ei tohi tulemust mõjutada.

Programm

Sümbolite nimekiri

Nimi Andmetüüp Aadress Kommentaar
S1 BOOL %I0.0 Surunupp
frontmemory BOOL %M0.0 Tõusva frondi tuvastuse mälubitt
direction BOOL %M0.1 Liikumissuuna mälubitt
count USInt %MB1 koha lugemise mälu
OutByte BYTE %QB0 Väljundbait (8 LED)

Programm: Main [OB1]

SCL
IF "S1" AND NOT "frontmemory" THEN
  "OutByte":= SHL(IN:=2#1, N:="count");
  IF "direction" THEN
    "count":="count"-1;
  ELSE
    "count":="count"+1;
  END_IF;
END_IF;

IF "count" = 0 THEN "direction":=false;
ELSIF "count"= 7 THEN "direction":=true;
END_IF;

"frontmemory":="S1";
Creative Commons Licence
"Programmeeritavad kontrollerid" is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License .