Produkte
Aktuelles
Demoversionen
Applikationen
Warum BaSyTec?
FAQ
Literatur
Links
Termine
Updates
Unternehmen
Impressum
Kontakt

Besuchen Sie uns


16.2.2011
München
Das Batteriebuch für den Anwender

Weitere Informationen

>> News >> Formeleditor

Verwendung von mathematischen Formeln mit dem Calculate Befehl


Der Befehl Calculate ermöglicht es frei definierbare online-Berechnungen während des Prüfablaufs durchzuführen. Im Feld Parameter steht eine Rechenvorschrift. Das Ergebnis dieser Berechnung wird in einer frei definierbaren Variablen abgespeichert. Diese Variable kann als Registriergröße und bei anderen Befehlen als Parameter und als Abbruchkriterium verwendet werden. Hierdurch sind komplexe Lade/Entladeprofile erzeugbar, wie z.B. ein sinusförmiger oder treppenförmiger Strom. Andere Möglichkeiten bestehen darin, variable Pulsladeverfahren zu programmieren (z.B. IR freie IU Ladung) oder komplexe Abbruchkriterien zu verwirklichen.

Folgender Prüfplan zeigt ein Programm bei dem der Ladestrom in 10 Stufen erhöht wird. Hierzu wird der im Ladeschritt angegebene Strom über den Calculate Befehl neu berechnet.


Für die Eingabe von Formeln steht ein Assistant zur Verfügung, so daß Syntaxfehler zuverlässig vermieden werden.

Innerhalb des Calculate Befehls kann auf folgende Größen und Funktionen zugegriffen werden:

 

Grösse / Funktion

Beschreibung

Einheit

t

Zeit seit Versuchsbeginn

s

t[label]

Zeit eines Schritts oder Zyklus

s

I

Strom

A

U

Spannung

V

P

Leistung

W

R

Widerstand

Ohm

Aux1…. Aux4

Zusatzkanal

V, A, °C

As_C, As_D

Eingeladene, bzw. entladene As seit Versuchsbeginn

As

Ws_C, Ws_D

Eingeladene, bzw. entladene Ws seit Versuchsbeginn

Ws

As_C[label],

As_C[label],

Eingeladene, bzw. entladene As innerhalb eines Schritts, bzw eines Zyklus

As

Ws_C[label],

Ws_C[label],

Eingeladene, bzw. entladene Ws innerhalb eines Schritts, bzw eines Zyklus

Ws

CycCount

Zyklenzähler (beginnend bei 1)

-----

+, -, *, /

Grundrechenarten

 

mod

Moduladivision, z.B.  a mod b

 

abs(x1)

Absolutwert von x1

 

data(x1)

Zugriff auf einen Datenpuffer. x1 gibt die Speicherstelle an. Data() kann z.B. zur Übergabe von externen Daten über eine DLL verendet werden.

 

maxval (x1; x2)

Maximalwert von x1 und x2

 

minval(x1; x2)

Minimalwert von x1 und x2

 

derv(x1; x2)

Ableitung von x1. x2 gibt das Zeitintarvall für die Berechnung an (in s, z.B. 5)

 

avg([label];x1)

Durchschnittswert von x1 innerhalb einer Zeile/ eines Zyklus

 

first([label];x1)

Erster Wert von x1 innerhalb einer Zeile/ eines Zyklus

 

last([label];x1)

Letzter Wert von x1 innerhalb einer Zeile/ eines Zyklus

 

max([label];x1)

Maximaler Wert von x1 innerhalb einer Zeile/ eines Zyklus

 

min([label];x1)

Minimaler Wert von x1 innerhalb einer Zeile/ eines Zyklus

 

rand[label];x1)

Zufallswert im Bereich 0 ...x1. Dieser wird beim Einsprung in die angegebene Zeile einmal neu berechnet.

 

min([label];x1)

Minimaler Wert von x1 innerhalb einer Zeile/ eines Zyklus

 

int([label];x1)

Integral von x1 über dt innerhalb einer Zeile/ eines Zyklus. Der Wert wird beim Einsprung auf 0 gesetzt.

 

int0([label];x1)

Integral von x1 über dt innerhalb einer Zeile/ eines Zyklus. Der Wert wird beim Einsprung sowie bei jedem neuen Durchlauf (Zyklus) auf 0 gesetzt.

 

Intpos([label];x1)

Integral von positiven x1 über dt innerhalb einer Zeile/ eines Zyklus. Der Wert wird beim Einsprung auf 0 gesetzt.

 

Intpos0([label];x1)

Integral von positiven x1 über dt innerhalb einer Zeile/ eines Zyklus. Der Wert wird beim Einsprung sowie bei jedem neuen Durchlauf (Zyklus) auf 0 gesetzt.

 

Intneg([label];x1)

Integral von negativen x1 über dt innerhalb einer Zeile/ eines Zyklus. Der Wert wird beim Einsprung auf 0 gesetzt.

 

Intneg0([label];x1)

Integral von negativen x1 über dt innerhalb einer Zeile/ eines Zyklus. Der Wert wird beim Einsprung sowie bei jedem neuen Durchlauf (Zyklus) auf 0 gesetzt.

 

<, >=, <, <=

Logischer Vergleich, ergibt 0 oder 1, z.b. x1 <= x2

 

and, nand, or, xor,

nor not

Logische Verknüpfungen, bitweise,

z.B. x1 and x2 ,      not x2

 

* In der Standardsoftware sind zudem zahlreiche mathematische Funktionen, wie z.B. sin (x1) oder ln(x1) verfügbar.