Implementace žebříkové logiky XOR se 3 spínači s interním bitem
Implementace světelného obvodu XOR se 3 spínači SPST v LogixPro nebo RSLogix 500 pomocí bitu interního relé. Včetně pravdivostních tabulek, booleovských rovn...
Klasické cvičení — tři jednopólové spínače SPST ovládají jedno světlo tak, že sepnutí libovolného spínače přepne výstup — lze vyjádřit jako třívstupový exkluzivní OR (lichá parita). XOR se dvěma vstupy je známá dvojice zkřížených větví XIC/XIO. Rozšíření tohoto vzoru o třetí paralelní větev nefunguje: implementuje součet XORů po dvojicích, který rozsvítí světlo při třech sepnutých spínačích, ačkoli specifikace vyžaduje pouze lichou paritu. Přijatým řešením je interní reléový bit, který uchovává A⊕B, a poté druhá fáze vypočítá (A⊕B)⊕C.
Lichá parita mezi třemi udržovanými vstupy je XOR — nikoli třívětvová inkluzivní struktura.
Tabulka pravdivosti (1 = sepnuto)
| S1 | S2 | S3 | Světlo | Parita |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | sudá |
| 0 | 0 | 1 | 1 | lichá |
| 0 | 1 | 0 | 1 | lichá |
| 0 | 1 | 1 | 0 | sudá |
| 1 | 0 | 0 | 1 | lichá |
| 1 | 0 | 1 | 0 | sudá |
| 1 | 1 | 0 | 0 | sudá |
| 1 | 1 | 1 | 1 | lichá |
Základ se dvěma vstupy
|--[S1 XIC]-+-[S2 XIO]-+ | | +--( Light )--| |--[S1 XIO]-[S2 XIC]---+ |
Namapujte I:1/0, I:1/1 → O:2/0 v simulátorech LogixPro/RSLogix 500 (nebo na tagy BOOL v Logix Designeru). Před přidáním S3 ověřte všechny čtyři řádky.
Proč třetí paralelní větev nefunguje
Y = (S1⊕S2) ∨ (S1⊕S3) ∨ (S2⊕S3) se pro řádek se třemi sepnutými přepínači vyhodnotí jako true, protože každá dvojice se liší. Studenti tento příznak popisují tak, že světlo se po sepnutí dvou přepínačů „zasekne v zapnutém stavu“. Jde o inkluzivní chování po dvojicích, nikoli o XOR.
Kaskádově propojte XOR přes B3:0/0 (nebo tag BOOL) — nespojujte jednotlivé fáze OR do paralelních větví.
Implementace s interním bitem
Řádek 2 — S1 XOR S2 -> B3:0/0 |--[I:1/0 XIC]-+-[I:1/1 XIO]-+ | | +--( B3:0/0 )--| |--[I:1/0 XIO]-[I:1/1 XIC]---+ | Řádek 3 — B3:0/0 XOR S3 -> O:2/0 |--[B3:0/0 XIC]-+-[I:1/2 XIO]-+ | | +--( O:2/0 )--| |--[B3:0/0 XIO]-[I:1/2 XIC]---+ |
Protože je XOR asociativní, pořadí přepínačů nehraje roli. V Logix Designeru se stejné rovnice převedou na XOR_Mid := S1 XOR S2; Light := XOR_Mid XOR S3; pro strukturovaný text nebo shodné vzory kontaktů na tazích BOOL. Mezibit se zapisuje v jednom řádku a čte v následujícím řádku během stejného skenu, což je pro tento vzor záměrné a stabilní.
Postup v LogixPro / RSLogix 500
- Potvrďte diskrétní vstupní a výstupní moduly v simulátoru (výchozí mapování I:1 / O:2)
- Ověřte, že existuje binární soubor B3 s volnými bity, nebo v Logix Designeru vytvořte tag BOOL s názvem XOR_Mid
- Sestavte řádek 2, který řídí B3:0/0 ze S1 a S2 pomocí zkřížených kontaktů XIC/XIO
- Build rung 3 driving O:2/0 from B3:0/0 and S3 using the same crossed pattern
- Vytvořte příčku 3, která bude ovládat O:2/0 z B3:0/0 a S3 pomocí stejného kříženého vzoru
- Stáhněte program, přepněte procesor do režimu RUN a před procházením pravdivostní tabulky zrušte všechna vynucení
Krátce vynuťte každý vstupní LED indikátor a výstupní kontrolku, abyste ověřili zapojení, poté vynucení zrušte
| Plán adres a alternativy | Platforma | Mezilehlá hodnota |
|---|---|---|
| Poznámky | B3:0/0 | RSLogix 500 / SLC |
| Bit binárního souboru | XOR_Mid BOOL | Rozsah programu nebo řadiče |
| LogixPro | B3:0/0 | Odpovídá laboratorním úlohám RSLogix 500 |
Volitelné diagnostické řešení zachová oba mezivýsledky: B3:0/0 = S1 XOR S2 a B3:0/1 = mid XOR S3, poté ovládá kontrolku z B3:0/1, takže online monitory mohou přerušit řetězec v libovolné fázi. Instrukce XOR pro celá slova mohou zabalit mnoho vstupů pro kontrolu parity, ale zakrývají výukový vzor pro tři spínače. Vyhněte se rozvinutí podle De Morganových zákonů, které se snaží vyjádřit „ne libovolné dva aktivní“ lesem kontaktů — kaskáda interních bitů zůstává udržovatelnou podobou jak na školicích stolicích, tak u výrobních voličů režimu.
Před schválením projděte všech osm řádků parity
- S deaktivovanými vynuceními projděte všech osm řádků pravdivostní tabulky
- Ověřte, že tři sepnuté spínače rozsvítí kontrolku (lichá parita)
- Přepínejte každý spínač samostatně a ověřte, že se výstup přepne
- Pokud se kontrolka rozsvítí trvale při dvou vstupech, stále používáte logiku OR po dvojicích
- Volitelně: po zpoždění proti zákmitům aktivujte alarm, pokud dva aretované přepínače režimu ve skutečných strojích signalizují true
- Do komentářů příčky pro dalšího upravujícího uveďte booleovskou identitu (A XOR B) XOR C
Pojmenovávejte mezilehlé proměnné podle jejich funkce (XOR_Mid, ModeParity), nikoli jako anonymní bity, aby další úpravy zůstaly čitelné. Stejnou disciplínu uplatňujte napříč sestavami standardizovanými na systémech PLC a PAC.
O autorovi
Mark Townsend | Seniorní automatizační inženýr – systémy Allen-Bradley
Mark Townsend je seniorní automatizační inženýr s více než 18 lety zkušeností s platformami Allen-Bradley, včetně ControlLogix, CompactLogix a starších systémů SLC-500. Každodenně pracuje s logikou RSLogix / Studio 5000 a uváděním HMI FactoryTalk View do provozu na zastaralých a smíšených sestavách.