TIA Portal Instruktioner

Konverteringsoperationer
Skalning & Typer

Datakonvertering är bron mellan den fysiska världen och digital kod. Behärska skalning av analoga signaler och transformering av datatyper.

Vad är konverteringsoperationer i TIA Portal?

Konverteringsoperationer gör det möjligt att transformera ett värde från en datatyp till en annan (t.ex. från heltal till realtal) eller manipulera precisionen hos flyttal. De inkluderar även verktyg för normalisering och skalning, nödvändiga för att bearbeta analoga signaler.

TIA Portal erbjuder moderna instruktioner som SCALE_X och NORM_X som ersätter de gamla SCALE/UNSCALE-blocken från S7-300, vilket ger större flexibilitet och precision.

Typkonvertering

Transformering och avrundning av numeriska format

CONVERT — Konvertera värde

CONV

Vad den gör

Konverterar ett värde från en källdatatyp till en måldatatyp. Hanterar konverteringar mellan heltal, realtal, tecken, tid och strängar.

När den ska användas

Förbereda ett heltal för komplexa beräkningar genom att omvandla det till Real, eller konvertera en felkod till String för HMI.

Proffstips

I LAD, klicka på blockets datatyper för att välja källa och mål.

I SCL: myReal := INT_TO_REAL(myInt);

Se upp för precisionsförlust vid konvertering från stora typer till kortare.

ROUND / TRUNC

ROUND

Vad de gör

ROUND avrundar ett flyttal till närmaste heltal. TRUNC tar helt enkelt bort decimaldelen (trunkering).

När den ska användas

Visa ett fysiskt mätvärde som ett enkelt heltal eller konvertera ett Real-resultat till ett array-index (Int).

Proffstips

Om decimaldelen är exakt .5 avrundar ROUND till närmaste jämna heltal (IEC-standard).

TRUNC är att föredra om du bara vill ignorera decimaler utan avrundning.

Båda accepterar Real/LReal och returnerar vanligtvis en DInt.

CEIL / FLOOR

CEIL

Vad de gör

CEIL (Tak) genererar närmast högre eller lika heltal. FLOOR (Golv) genererar närmast lägre eller lika heltal.

När den ska användas

Beräkna antal behållare som behövs (avrunda alltid uppåt med CEIL).

Proffstips

CEIL(10.1) = 11 ; FLOOR(10.9) = 10.

Viktigt för logistikalgoritmer.

Användbart för att säkerställa att ett värde stannar inom strikta heltalsgränser.

Skalning (Scaling)

Bearbetning av analoga signaler

NORM_X — Normalisera

NORM_X

Vad den gör

Transformerar ett värde inom ett område [MIN..MAX] till ett normaliserat värde mellan 0.0 och 1.0.

När den ska användas

Läsa ett rått analogvärde (t.ex. 0-27648) och omvandla det till procent.

Proffstips

Följs vanligtvis omedelbart av ett SCALE_X-block.

Om ingången överskrider gränserna kommer utgången överskrida 0.0 eller 1.0.

Se till att MIN skiljer sig från MAX.

SCALE_X — Skala

SCALE_X

Vad den gör

Tar ett normaliserat värde [0.0..1.0] och projicerar det på ett fysiskt område (t.ex. 0-100°C).

När den ska användas

Konvertera resultatet från NORM_X till en läsbar teknisk enhet.

Proffstips

Kombinationen NORM_X + SCALE_X är den moderna Siemens-standarden.

Gör det enkelt att byta givarområde.

Kan även användas för det omvända: skicka ett fysiskt börvärde till en analog utgång.

Legacy-instruktioner

S7-300 kompatibilitet (FC105 / FC106)

SCALE / UNSCALE

Vad den gör

Gamla block som utför direktkonvertering i ett enda steg.

När den ska användas

Underhåll av program migrerade från Step 7 Classic.

Proffstips

SCALE motsvarar gamla FC105.

Använd BIPOLAR för negativa signaler (+/- 10V).

Föredra NORM_X/SCALE_X för nyutveckling.

Jämförelse av metoder

Välj rätt instruktion efter behov

Du vill...RekommenderadExempel
Byta typ (Int -> Real)CONVERTExakt beräkning
Ta bort decimalerTRUNCEnkel temperaturvisning
AvrundaROUNDStatistik
4-20mA givareNORM_X + SCALE_XTryck 0-16 bar
Säkerhetsavrundning uppåtCEILBeräkning av pallar
Gammal S7-300 kodSCALE (FC105)Migrering

Vanliga frågor

Varför använda NORM_X och SCALE_X istället för ett enda block?

Det ger större flexibilitet att filtrera eller begränsa det normaliserade värdet innan skalning.

Vad är standardvärdet för Siemens analogingångar?

Vanligtvis 0 till 27648 för unipolära signaler.

Hur konverterar jag till String?

CONVERT gör det inbyggt, eller använd VAL_STRG för mer kontroll.

Skillnad mellan ROUND och TRUNC?

ROUND avrundar till närmaste, TRUNC klipper helt enkelt bort decimalerna.

Optimera dina analoga beräkningar

T-IA Connect genererar dina optimerade skalningsnätverk.