Blok funkcyjny: pojęcie PLC wyjaśnione prostym językiem
Języki programowaniaJak jedna karta z przepisem używana do każdego ciasta, podczas gdy każde ciasto ma własny minutnik piekarnika. Blok funkcyjny to fragment programu, którego używasz wielokrotnie, a każda maszyna, która go używa, dostaje własną pamięć.
Fragment programu do wielokrotnego użytku z własnymi zapamiętanymi wartościami. Każda osobna maszyna powinna mieć własną kopię tej pamięci.
Blok funkcyjny na prawdziwej maszynie
Blok funkcyjny, czyli FB, to fragment programu do wielokrotnego użytku z własną pamięcią. Piszesz go raz i wywołujesz wszędzie, gdzie trzeba, a każde wywołanie zachowuje własne zapamiętane wartości.
W Siemens FB przechowuje te wartości w instancyjnym bloku danych. FC działa inaczej: niczego nie zachowuje między wywołaniami. FB pasuje więc do wszystkiego, co musi pamiętać, np. stanu pompy.
Timery i liczniki działają tak samo, dlatego każdy potrzebuje własnej instancji. W Rockwell najbliższym odpowiednikiem jest Add-On Instruction. Nie myl FB z diagramem bloków funkcyjnych, czyli językiem graficznym.
Blok funkcyjny: przykład z objaśnieniem
Zakład ma dziesięć identycznych pomp. Jeden FB zawiera zasady Start, Stop i zezwolenia, a program wywołuje go raz dla każdej pompy. Stan pracy pompy 3 żyje w instancji pompy 3, więc jej przycisk Start nic nie zmienia w pozostałych. Poprawka w FB trafia do wszystkich dziesięciu.
Blok funkcyjny: częsty błąd
Pomijanie wywołania, żeby wyłączyć pompę. Jeśli FB nie jest wywoływany, nic w nim się nie aktualizuje, a jego ostatnie wyjścia zostają takie, jakie były.
Nadal masz wątpliwości? Zapytaj w Szatnia.