TIA Portal Instruktioner

Ordlogik-operationer
Binärt & Val

Manipulera data i hjärtat av registren. Från bit-för-bit binär maskering till komplex multiplexering — optimera bearbetningen av dina dataord.

Vad är ordlogik-operationer i TIA Portal?

Ordlogik-operationer gör det möjligt att utföra booleska beräkningar på alla bitar i ett ord (Word, DWord, LWord). De är nödvändiga för bitmaskering, jämförelse av binära mönster eller förenklad hantering av grupperade signaler.

Detta avsnitt innehåller även kraftfulla valfunktioner som SEL och MUX, som gör det möjligt att dynamiskt välja ett värde bland flera baserat på ett villkor eller ett index, samt verktyg för kodning (ENCO) och avkodning (DECO) för statushantering.

Bitvis logik

Boolesk bearbetning på Word och DWord

AND / OR / XOR — Binära operationer

AND

Vad den gör

Utför en logisk operation (AND, OR, Exklusiv OR) på varje motsvarande bit mellan två eller flera ingångar. Resultatet ges i ett ord av samma storlek.

När den ska användas

Maskera specifika bitar (AND med en mask), kombinera larm eller detektera statusförändringar bit för bit.

Proffstips

AND är perfekt för att 'stänga av' bitar, OR för att 'slå på' dem.

XOR är idealisk för att jämföra två ord och identifiera vilka bitar som skiljer sig.

Du kan lägga till extra ingångar i blocket genom att klicka på den gula ikonen.

INVERT — Ettkomplement

INV

Vad den gör

Inverterar statusen för varje bit i ingångsordet (0 blir 1, 1 blir 0).

När den ska användas

Invertera en grupp givarsignaler eller förbereda specifika binära beräkningar.

Proffstips

Motsvarar NOT-operatorn i klassisk programmering men tillämpad på hela ordet.

Mycket användbart för kommunikation med tredjepartsutrustning med inverterad logik.

Var försiktig så att du inte förväxlar det med tvåkomplement (NEG).

Val & Multiplexering

Dynamisk värdeomdirigering

SEL — Binärt val

SEL

Vad den gör

Väljer en av två ingångar (IN0 eller IN1) baserat på statusen för en binär ingång G (G=0 -> IN0, G=1 -> IN1).

När den ska användas

Välja mellan ett manuellt och ett automatiskt börvärde, eller växla mellan två temperaturtrösklar.

Proffstips

Grafisk motsvarighet till den ternära operatorn (villkor ? a : b).

Mer kompakt än ett IF-block eller två villkorliga överföringsnätverk.

Fungerar med nästan alla datatyper (Int, Real, Time...).

MUX / DEMUX — Multiplexorer

MUX

Vad de gör

MUX väljer en ingång bland N baserat på ett index K. DEMUX dirigerar en ingång till en av N utgångar baserat på index K.

När den ska användas

Recepthantering (val via index), dynamisk HMI-visning eller datadirigering till olika arbetsstationer.

Proffstips

Index K börjar på 0. Om K=0 väljs IN0.

Använd ELSE-ingången på MUX för att definiera ett standardvärde om indexet är utanför intervallet.

DEMUX är mycket kraftfullt för att distribuera en mätning till olika historikloggar.

Kodning & Avkodning

Konvertering mellan index och bitposition

DECO — Avkodning

DECO

Vad den gör

Aktiverar den bit vars nummer motsvarar ingångsvärdet. Alla andra bitar i utgångsordet sätts till 0.

När den ska användas

Konvertera ett stegnummer till en binär signal för att styra en specifik utgång.

Proffstips

Om ingången är 3, kommer bit 3 (den 4:e) i utgångsordet att vara 1.

Gör det enkelt att gå från ett heltal till en bitmask.

Idealisk för att styra signaltorn eller statusindikatorer.

ENCO — Kodning

ENCO

Vad den gör

Returnerar numret på den minst signifikanta biten (LSB) som är i tillstånd 1 i ingångsordet.

När den ska användas

Identifiera vilket fel som uppstod i ett larmord för att visa motsvarande meddelande.

Proffstips

Om ingångsordet innehåller 2#0000_1000, returnerar ENCO 3.

Omvänd operation till DECO.

Mycket användbart för att omvandla signaler från diskreta positionsgivare till ett numeriskt värde.

Ordbearbetning vs Individuell bit

Varför arbeta på hela ordet?

ScenarioOrdlogik-metodFördel
Tvinga 8 utgångar till 0MOVE 0 -> Word1 nätverk vs 8 kontakter
Maskera en byteAND 16#00FFKirurgisk precision
Invertera 16 signalerINVERTExekveringshastighet
Välj 1 värde / 10MUXMaximal läsbarhet
Dirigera en mätningDEMUXFlexibel logik
LarmprioritetENCOOmedelbar diagnostik

Vanliga frågor

Vad är skillnaden mellan MUX och en Array?

MUX är en hårdkodad instruktion för ett fåtal värden (ofta < 10). För hundratals värden, använd en Array med dynamisk indexering [i] i SCL.

Kan jag utföra AND på REAL-typer?

Nej, bitvisa logikoperationer (AND, OR, XOR) är endast tillåtna på binära typer (Byte, Word, DWord, LWord).

Hur fungerar DEMUX-indexet?

K-ingången definierar till vilken utgång IN-värdet kopieras. Om K=2 kopieras IN till OUT2. Alla andra utgångar förblir vid sitt tidigare värde eller 0 beroende på konfiguration.

Ändrar INVERT tecknet på ett tal?

Nej, INVERT flippar bitar. För att ändra tecken (tvåkomplement), använd instruktionen NEG (Matematik) eller multiplicera med -1.

Optimera din datamanipulering

Behöver du en komplex multiplexer eller en specifik bitmask? T-IA Connect genererar dina ordlogik-block omedelbart.