Programowalny sterownik logiczny, czyli PLC to komputer z wbudowanym systemem operacyjnym. Ten system operacyjny jest wysoce wyspecjalizowany i zoptymalizowany do obsługi zdarzeń przychodzących w czasie rzeczywistym, a więc w momencie ich wystąpienia. Sterownik PLC posiada linie wejściowe, do których podłączone są czujniki powiadamiające o zdarzeniach, oraz linie wyjściowe, do których podłączone są siłowniki, aby wpływać lub sygnalizować reakcje na zdarzenia przychodzące.
System umożliwia programowanie PLC przez użytkownika
Używa języka o nazwie RLL (Relay Ladder Logic). Nazwa tego języka oznacza, że symulowana jest logika sterowania wcześniejszych urządzeń, zbudowana z przekaźników. Programowalny sterownik logiczny, sterownik programowalny lub sterownik programowalny to komputer cyfrowy używany do automatyzacji typowo przemysłowych procesów elektromechanicznych, takich jak sterowanie maszynami na liniach montażowych fabryki, przejażdżki rozrywkowe lub oprawy oświetleniowe. Sterowniki PLC są używane w wielu maszynach w wielu gałęziach przemysłu.
Sterowniki PLC są przeznaczone do wielu konfiguracji wejść i wyjść cyfrowych i analogowych, rozszerzonych zakresów temperatur, odporności na zakłócenia elektryczne oraz odporności na wibracje i uderzenia. Programy sterujące pracą maszyny są zwykle przechowywane w pamięci podtrzymującej baterię lub pamięci trwałej. Sterownik PLC jest przykładem „twardego” systemu czasu rzeczywistego, ponieważ wyniki wyjściowe muszą być generowane w odpowiedzi na warunki wejściowe w ograniczonym czasie, w przeciwnym razie wystąpi niezamierzona operacja.
Przed PLC, sterowanie, sekwencjonowanie i logika blokowania bezpieczeństwa dla produkcji samochodów składały się głównie z przekaźników, sekwentatorów bębnów i dedykowanych kontrolerów w pętli zamkniętej. Ponieważ mogły one być liczone w setkach lub nawet tysiącach, proces aktualizacji takich obiektów do corocznego przełączania modelu był bardzo czasochłonny i kosztowny, ponieważ elektrycy musieli indywidualnie przeprogramować przekaźniki, aby zmienić ich charakterystyki operacyjne. Komputery cyfrowe, będące urządzeniami programowalnymi ogólnego przeznaczenia, zostały wkrótce zastosowane do sterowania procesami przemysłowymi.
Wczesne komputery wymagały specjalistycznych programistów i rygorystycznej kontroli środowiska pracy pod względem temperatury, czystości i jakości energii. Korzystanie z komputera ogólnego przeznaczenia do sterowania procesami wymagało ochrony komputera przed warunkami panującymi w hali produkcyjnej. Przemysłowy komputer sterujący miałby kilka atrybutów: tolerowałby środowisko sklepu, wspierałby dyskretne (bitowe) wprowadzanie danych i wyjście w łatwy do rozciągnięcia sposób, nie wymagałby długich lat treningu i pozwoliłby na monitorowanie jego działania.
Czas reakcji dowolnego systemu komputerowego musi być wystarczająco szybki, aby był przydatny do sterowania; wymagana prędkość różni się w zależności od charakteru procesu. Ponieważ w wielu procesach przemysłowych czasy odpowiedzi są łatwo skorygowane o milisekundowe czasy odpowiedzi, nowoczesne (szybkie, małe, niezawodne) układy elektroniczne znacznie ułatwiają budowanie niezawodnych kontrolerów, zwłaszcza, że wydajność można wymieniać na niezawodność.
W 1968 roku, automatyczny dział General Motors wydał wniosek o elektroniczną wymianę twardych przekaźników na podstawie białej księgi napisanej przez inżyniera Edwarda R. Clarka. Zwycięska propozycja pochodzi od Bedford Associates z Bedford w stanie Massachusetts. Pierwszym PLC, oznaczony był jako 084, ponieważ był to osiemdziesiąty czwarty projekt Bedford Associates. Firma Bedford Associates założyła nową firmę zajmującą się opracowywaniem, produkcją, sprzedażą i serwisem tego nowego produktu.
Jedną z osób, które pracowały nad tym projektem był Dick Morley, który jest uważany za ojca PLC. Przemysł motoryzacyjny wciąż jest jednym z największych użytkowników sterowników PLC. Wczesne sterowniki PLC zostały zaprojektowane w celu zastąpienia systemów logicznych przekaźników. Sterowniki te zostały zaprogramowane w logice „drabinowej”, która bardzo przypomina schemat logiki przekaźnika.
Ta notacja programowa została wybrana w celu zmniejszenia zapotrzebowania na szkolenia dla obecnych techników. Inne wczesne sterowniki PLC używały programowania list instrukcji w oparciu o oparty na stosie układ logiczny. Nowoczesne sterowniki programowalne mogą być programowane na różne sposoby, od logiki drabinowej, a skończywszy na językach programowania.