Analoge aritmetica

image\block_analogmath_sn.gif

Korte beschrijving

Het blok "Analoge aritmetica" rekent de waarde AQ van een vergelijking uit door de gebruiker gedefinieerde operanden en operatoren.

 

Schakeling

Omschrijving

Ingang En

Activering van het functieblok voor de analoge aritmetica.

Parameters

V1:Waarde 1: Eerste operand

V2:Waarde 2: Tweede operand

V3:Waarde 3: Derde operand

V4:Waarde 4: Vierde operand

 

Operator1: Eerste operator

Operator2: Tweede operator

Operator3: Derde operator

 

Prioriteit1: Prioriteit van de eerste operatie

Prioriteit2: Prioriteit van de tweede operatie

Prioriteit3: Prioriteit van de derde operatie

 

p: aantal plaatsen achter de komma
Waardebereik: 0, 1, 2, 3

Uitgang AQ

De uitgang AQ is het resultaat van de vergelijking uit operandenwaarden en operatoren. AQ wordt op 32767 gezet, indien zich deling door 0 of overloop voordoet. AQ wordt op -32768 gezet, indien zich negatieve overloop (onderloop) voordoet.

 

image\0ba3_logo_sn.gif

0BA1- 0BA5: Het functieblok "Analoge aritmetica" bestaat pas vanaf de modulelijn 0BA6.

 

Parameters V1, V2, V3 en V4

De waarden voor V1, V2, V3 en V4 kunnen ook een actuele waarde van een reeds geprogrammeerde andere functie zijn.

Parameter p (aantal plaatsen achter de komma)

Parameter p geldt voor de weergave van V1, V2, V3, V4 en AQ in een meldingtekst.

Functiebeschrijving

De analoge aritmetica koppelt de vier operanden en drie operatoren tot een vergelijking. De operator kan één van vier standaardoperatoren zijn: +, -, *, of /. Voor iedere operator moet u een eenduidige prioriteit High ("H"), Medium ("M") of Low ("L") instellen. De operatie met de prioriteit High wordt het eerst uitgevoerd, daarna de operatie met de prioriteit Medium en tot slot de operatie met de prioriteit Low. U moet exact een operatie met iedere prioriteit aangeven. De operandenwaarden kunnen naar een vooraf gedefinieerde functie verwijzen om de betreffende waarde te leveren.

Het aantal operandenwaarden is op 4 vastgesteld, het aantal operatoren is op 3 vastgesteld. Wanneer u minder operanden nodig heeft, gebruikt u constructies als "+ 0" of " * 1" om de overige parameters aan te geven.

U kunt ook het gedragspatroon van de functie configureren, wanneer de vrijgaveparameter En = 0 is. Het functieblok kan ofwel de laatste waarde handhaven of op 0 woorden gezet.

Mogelijke fouten: Deling door nul en overloop

Wanneer de uitvoering van het functieblok Analoge Aritmetica resulteert in deling door nul of overloop, worden er interne bits gezet die de opgetreden fout aangeven. U kunt in uw schakelprogramma een functieblok Foutdetectie analoge aritmetica programmeren om deze fouten te herkennen en het programmagedrag op de vereiste manier te sturen. U programmeert voor ieder functieblok "Analoge Aritmetica" een functieblok "Foutdetectie analoge arithmetica".

Voorbeelden

De volgende tabellen geven enkele eenvoudige voorbeelden van blokparameters voor analoge aritmetica met de resulterende vergelijking en de uitgangswaarden aan:

 

V1

Operator1

(Prioriteit 1)

V2

Operator2

(Prioriteit 2)

V3

Operator3

(Prioriteit 3)

V4

12

+ (M)

6

/ (H)

3

- (L)

1

Vergelijking: (12 + (6 / 3)) - 1

Resultaat: 13

 

V1

Operator1

(Prioriteit 1)

V2

Operator2

(Prioriteit 2)

V3

Operator3

(Prioriteit 3)

V4

2

+ (L)

3

* (M)

1

+ (H)

4

Vergelijking: 2 + (3 * (1 + 4))

Resultaat: 17

 

V1

Operator1

(Prioriteit 1)

V2

Operator2

(Prioriteit 2)

V3

Operator3

(Prioriteit 3)

V4

100

- (H)

25

/ (L)

2

+ (M)

1

Vergelijking: (100 – 25) / (2 + 1)

Resultaat: 25

 

Overzicht