Archive für Februar 2010

Kontinuität ist….

Wie hoch ist die Change, wenn Sie morgen früh einen 100­m -Lauf absolvieren, das Sie diesen unter 9,58 Sekunden bestreiten und am Nachmittag mal eben gemütlich über 42,195 Kilometer Joggen mit einer Gesamtzeit von unter 2:03:59?

Bei jeder halbwegs realistischen Betrachtungsweise wird einem klar, das hierfür kaum eine erwähnenswerte Wahrscheinlichkeit existiert (Statistiker sind gerne eingeladen, hier eine Abhandlung zu hinterlegen)

Außerdem gilt noch zusätzlich, dass ein guter Trainer jedoch noch lange kein guter Sportler ist. Bis auf ganz wenige Ausnahmen gilt dies leider auch in der Umkehrung. Jeder sollte, so wie bei seinem hoffentlich vorhandenen Hobby gewisse Techniken, Verfahren, Methoden und Sichtweisen, die für die Lösung seiner alltäglichen Aufgaben seine Effizienz steigern, erwerben und trainieren.

Wie im Sport gibt es Sprinter, Mittel- und Langstreckenläufer und in jeder dieser Disziplinen gibt es besondere Gesetzmäßigkeiten, um hierin erfolgreich an die Spitze kommen zu können. Auch gibt es hierbei Vereins-, Stadt-, Bezirks-, Landes-, Bundes-, Europa- und Weltmeister, die jedoch niemals auf die Idee kommen würden, sich außerhalb ihre jeweiligen Spezialdisziplin real miteinander vergleichen zu wollen. Wieso gelten diese logischen und über die Gesamtexistenz des Lebens etablierten Strukturen nicht bei betriebswirtschaftlichen Betrachtungsweisen.

Die meisten betriebswirtschaftlichen und internen Bewertungen sind im Verhältnis zu den möglichen Wirkungszeiträumen oft ein Vielfaches zu kurzfristig angesetzt, als das hier eine realinformative Aussage möglich wäre. Da hierbei die eingeleiteten und hoffentlich richtig angewendeten Prozesse noch gar keine Auswirkung haben können, müssen die erhaltenen Werte eine gewisse Verschönerung erfahren, da der Initiator (von der guten Idee überzeugt) sonst nicht weiterhin akzeptiert wird. Durch die nun vorgenommene Datenoptimierung werden von den Nachfolgern falsche Schlüsse gezogen, falsche Entscheidungen getroffen, die nun jedoch wiederum richtig gemacht werden müssen. …. Spirale der Desinformation … Informations -Tod!

Betrachtete man sich jedoch einmal, mit welchem Aufwand eine Neueröffnung z.B. eines Autobahnstreckenabschnittes gegenüber der notwendigen Wartung praktiziert wird, ist natürlich schon klar, welchen Stellenwert die Gesellschaft der Kontinuität bemisst. Hierbei können nun alle aktuell vorliegenden gesamtpolitischen Themen angeführt werden. Denn es gilt zu 100%, hätte man in der Vergangenheit Regelungskreise etabliert, die zu einer langfristigen Kontinuität führen, wäre nun Zeit, sich mit den wirklichen offenen Fragen der Menschheit zu beschäftigen.

Bei ELEXON gilt neben der Firmenpolitik:

Einfach … mehr ….. Wissen. ELEXON !

der Leitspruch:

Kontinuität in der Vergangenheit ist die Qualität von Heute und die Perfektion von Morgen.

An dieser Stelle noch der Hinweis; Kontinuität ist nicht gleichzusetzen mit Langsamkeit, Gestrigkeit, Inovationsfeindlichkeit…. Kontinuität ist das einzige verlässliche…in diesem Sinne bis morgen an gleicher Stelle

viel Spaß und Erfolg beim Arbeiten an Ihrer kontinuierlichen Effizienzsteigerung

Abstraktion als Leistung erkennen…..

Hallo,

auf in den Kampf, ich freue mich schon auf die nachfolgenden ­Kommentare…viel Spaß beim ­Lesen…

Wenn wir in unseren Dienstleitungen die Prozesse der realen Welt in die mathematisch, physikalisch beschreibbare EDV-Welt überführen, hört man sehr oft:

Das ist aber nur hier so einfach…

­im zweiten Satz:

….viel zu einfach, viel zu viel nicht berücksichtigt….

und der dritten Satz:

So geht das aber nicht bei mir! Nicht praxisnah, nicht umsetzbar. Unbrauchbar!

Erstaunlich ist, das in der Alltagswelt eine mathematisches Grundbedingung der Gleichungstheorie scheinbar außer Kraft gesetzt ist. Hier werden plötzlich Systeme lösbar, bei denen viel mehr (meist sogar in der mehrfachen Potenz) Unbekannte wie unabhängige Gleichungen existieren. Ein Phänomen.

Gleich zu Anfang wird das zu untersuchende System mit einer Komplexität abgebildet, bis die Lösungssuche für die gestellte Aufgabe (das zu lösende Problem) eigentlich nur im totalen Frust enden kann. Das Einfache erkennen, das was wirklich wichtig ist und danach erst die noch unbedingt notwendigen Wechselwirkungen in die Aufgabenlösung einbeziehen wird nicht als die eigentliche Leistung verstanden.

Es werden Systeme heute angeblich aus Erfahrung heraus beherrscht, und wenn dann z.B. eine neue Maschine oder ein neues Verfahren (also eine Prozessänderung stattfindet) zum Einsatz kommen muss, funktioniert erst einmal gar nichts mehr. Natürlich war in einer solchen Situation das Alte besser. Aber nun auf die Idee zu kommen es liege daran, das das Neue nichts tauge, ist, wenn man auch bereit war, etwas Geld in die Hand zu nehmen, schlicht weg falsch. Denn auch der Hersteller des neuen Produktes sollte seine Hausaufgaben gemacht haben. Eher ist nun die Suche nach dem “Erfahrungswissen” angesagt. Denn ein Nachteil dieses “Wissens” ist, das es sich hierbei nicht wirklich um Wissen handelt. Sondern eher um ein, in der Vergangenheit aufgrund eines längerfristigen Optimierungsprozess erhaltendes Ergebnis. Somit um ein Einstellen eines regelungstechnischen Sachverhaltes auf einem lokalen Verharrungsbereich. Solange nun nichts Gravierendes verändert wurde, hatte man die Prozesse unter “scheinbar” Kontrolle. Denn wirkliche Kontrolle würde bedeuten, dass man das System auch bei der Einwirkung einer definierten Störgröße möglichst schnell aber zu mindestens überhaupt wieder kontrollieren kann.

Der Austausch einer Maschine oder eines Gerätes in der Prozesskette ist nichts anderes wie eine Störgröße im Gesamtprozess.

in diesem Sinne …. viel Spaß heute und ran an das Abstrahieren….

Politik auf all Deinen Wegen….

Die Mitarbeit in eigentlich unabhängigen Gremien wird immer mehr zum Spießrouten- Lauf gegen die Lobbyarbeit von den jeweiligen marktbeherrschenden Firmen. Wenn innerhalb von Veranstaltungen, Sitzungen und Vorträgen plötzlich Grundsatzdiskussionen sich in den Vordergrund schieben und nicht mehr die aktuell vorgesehenen Themen behandelt werden, bringt es so manchen der Verantwortlichen in prekäre Situationen. Wer hier die jeweiligen Wortführer personell oder haltungstechnisch einer bestimmten Sparte zuzuordnen weis, der kann der wirklich zugrunde liegenden Motivation ohne Probleme folgen. Für all die sich mit den technisch relevanten Sachverhalten real auseinandersetzen bleiben verschiedene Argumentationsketten ein ewiges Geheimnis. Hier wünscht man sich zukünftig so viel Mut der anderen Anwesenden, das die jeweilig bekannten Verquickungen & Strukturen offengelegt werden, denn sonst werden immer weniger technisch Versierte bereit sein, fachlich wertvolle gut aufbereitete Vorträge firmenneutral und rein sachlich zu halten.

….auf einen informativen Austausch bei dem nächsten Treffen….

Assistenten sind nicht so ….

Aufgrund der Erfahrung mit Assistenten, in dem einem oder anderen Office -Tool hat, sich die Grundhaltung etabliert:

“Assistenten sind etwas für Anfänger”

Diese werden von wahren “Profis” verpönt. Doch wie es so immer im Leben ist, die Wahrheit liegt irgendwo dazwischen, denn auch ein Profi kann nicht auf allen Gebieten perfekt sein. Somit sollten zumindest einmal die bereitgestellten Assistenten zum Einstieg in ein neues Metier durchgearbeitet werden, damit eine kleine Idee vorliegt, auf was man bei einer individuellen Bearbeitung des Problems geachtet werden sollte. Denn in vielen Programmen ist die Motivation des Programmierers sich dadurch erschließbar, das man einmal geführt durchspielt wie er es sich gedacht hat mit seiner Applikation umzugehen. Wenn dann die Bedienphilosophie klar ist, kann man dann die jeweilig durchaus noch optimierbare Struktur der Anwendungen angegangen werden. Denn ein wirklich nicht von der Hand zu weisenden Nachteil der Assistenten ist der universelle Zugriff auf eine Vielzahl von Applikationsvarianten und somit kommt bei ihrer Anwendung nicht unbedingt der optimale (zeit/strukturoptimierte) Code heraus. Dieser sollte dann in einer individuellen Neuerstellung für die nun vorliegende Aufgabe entstehen. Doch an vielen Stellen wird den Assistenten auch Unrecht getan. Ein Beispiel hierzu aus der Welt der Datenformate.

Binäre Zeichen im IO-Assitenten verwenden
folgt an dieser Stelle

Parametervariation for-Schleife (Scilab)

parametervariation.jpgSinus- und Kosinusfunktionen mit Amplitudenvariation von 1 bis 10 können über über eine Schleife realisiert werden. Scilabs matrizenorientierte Abarbeitung erspart den separaten Zähler. Die beiden Datensätze werden im zusammen dargestellt, sind aber eigenständige Datensätze, da durch das Apostroph die Matrix in Spalten umgebrochen wird. Deshalb werden in der grafischen Darstellung automatisch verschiedene Farben zugewiesen.

clf()
Sinus=sin([0:1/1000:2]*%pi);
plot2d(Sinus)
Cosinus=cos([0:1/1000:2]*%pi);
plot2d(Cosinus)
for Amplitude=1:10
  plot2d([Amplitude*Sinus' Amplitude*Cosinus'])
end

-> Scilab Schulungen

Schreiben einer ASCII Datei (Scilab)

unser1mal1.jpgFür Dateizugriffe stehen in Scilab eine Reihe von Befehlen zur Verfügung.

Wir können mit dem fprintfMat() Befehl eine Matrix in ein Datenfile im aktuellen Datenverzeichnis schreiben, z. B.:

x=[1:10]'; z=x*x'; fprintfMat("Unser1x1.txt",z,'%5.2f');

Das Format %5.2 entspricht 5 möglichen Vorkomma- und 2 Nachkommastellen.

Im Explorer finden wir unter dem aktuellen Verzeichnis die entsprechende Textdatei “Unser1×1.txt”:

Grafikfenster strukturieren (Scilab)

Die Funktion subplot() strukturiert das Grafikfenster in verschiedene Teilfenster und adressiert das aktuelle Unterfenster, z. B.

subplot(2,2,1);

subplot.jpgDie Aufteilung erfolgt in 2 Zeilen und 2 Spalten. Adressiert wird hier Fenster 1.
Die Fenster werden in Leserichtung (von links nach rechts, Zeile für Zeile) durchnummeriert.

Der Inhalt der Fenster wird mit einem plot() Befehl nach Adressierung des Teilfensters durch subplot() übertragen.

-> Scilab Schulungen, IT Dienstleistungen

Legende neu positionieren (Scilab)

positionierung.jpgDie an der Standardposition eingeblendete Legende soll an eine andere Position verschoben werden. Dazu müssen wir Zugriff auf die Eigenschaften des Grafik-Fensters nehmen. Die Eigenschaften des Grafik-Fensters lassen sich mit dem Befehl gca() auslesen, z. B.:

Achse=gca()

und erhalten als Ergebnis die Eigenschaften und Einstellungen des aktuellen Grafik-Fensters in der Konsole ausgegeben:

achshandle.jpg

Das Pendant dazu findet sich im Axes-Editor, in dem die meisten dieser Eigenschaften dem Benutzer grafisch zur manuellen Bedienung zugänglich gemacht wurden. Im Objekt-Browser des Dialogs sehen wir auch die hierarchische Struktur des Grafikbrowsers. Combound (Grafikobjekte, Komponenten) und Legend (Legende) liegen eine Ebene tiefer als das Axes Objekt.


achs-dialog.jpg

Diese hierarchische Beziehung wird auch in der Konsolenausgabe der Achsen-Eigenschaften deutlich.

parent: Figure

children: ["Compound";"Legend"]

Combound und Axes sind die Kinder (children) des Axes-Objekts, Figure ist das dazugehörige Elternobjekt (parent). Die Begriffe stammen aus der objektorientierten Programmierung und da Scilab eine objektorientierte Programmiersprache ist, folgt der Zugriff auf die Legende durch Referenzierung auf das zweite children Objekt in dieser Form:

Legende=Achse.children(2);

Nun können die aktuellen Einstellungen und Eigenschaften des referenzierten Objekts in der Konsole ausgegeben werden.

legendehandle.jpg

Auf die Position der Legende kann nun wie folgt Einfluss genommen werden:
Legende.legend_location ="in_upper_right";
Weitere locations sind z. B:

“in_upper_right” : rechte obere Ecke im Koordinatensystem
“in_upper_left”: linke obere Ecke
“in_lower_right”: untere rechte Ecke
“in_lower_left”: untere linke Ecke
“out_upper_right”: rechte obere Ecke außerhalb des Koordinatensystems
“out_upper_left”: außen obere linke Ecke
“out_lower_right”: außen untere rechte Ecke
“out_lower_left”: außen untere linke Ecke
“upper_caption”: oberhalb der linken Ecke des Koordinatensystems
“lower_caption”: unterhalb der linken Ecke der Achsen

-> Scilab Schulungen, Programmierdienstleistungen

Plot der Funktion sinx/x - Nullstellendivision (Scilab)

kardinalsinus.jpgUm eine Funktion darzustellen, benötigt man einen Wertevorrat, sonst ist das Ergebnis der Funktionsanwendung nur ein Einzelwert. Ein sinnvoller Wertevorrat für den Sinus läuft von -pi bis pi bzw. ein Vielfaches davon. Damit die Darstellung mit ausreichender Werteanzahl aufgelöst ist: Schrittweite von 1/100.

p=3
x=[-p:1/100:p]*%pi;

y=sin(x)/x;
plot2d(x,y)

Wenn jetzt eine Fehlermeldung in der Scilab Konsole auftaucht, liegt es zunächst daran, dass wir mit y eine Vektordivision durchgeführt haben, deren Ergebnis ein Einzelwert ist. Damit kann der Grafikplot nicht durchgeführt werden. Die Durchführung eine Elementdivision wird mit einen . (punkt) codiert, also:

y=sin(x)./x;

Nun ist das Operationsergebnis korrekt. Da dabei aber eine Division durch 0 durchgeführt wird, kommt es zu einer erneuten Fehlermeldung. Diese können wir vermeiden, indem wir z.B. zuvor eine Ausnahme definieren, z. B. durch den Befehle ieee(2). Der sorgt dafür, dass die Werte, die eine Fehlermeldung produzieren auf nan gesetzt werden. Nan steht für not a number. Diese Werte werden dann nicht ausgewertet.

Alternativ können vor der Berechnung die mit find() gefundenen Nullstellen des Wertevorrats als %nan definiert werden.

Nullenstellen=find(x==0);
x(Nullenstellen)=%nan;

Jetzt funktioniert die Darstellung der Funktion problemlos!

Die versierten Mathematiker erkennen in der Funktion sin(x)/x den Kardinalsinus, für den es in Scilab die Funktion sinc() gibt. Hier verkürzt sich unser Darstellungsproblem auf diese Zeilen:

sinusK=sinc([-3:1/100:3]*%pi)
plot2d(sinusK)

-> Scilab Schulungen

Ereignisanalyse - Schwellwert (Scilab)

schwellwertuberschreitung.jpg

Für die Messdatenauswertung ein unschätzbares Werkzeug: Logikoperationen. Diese lassen sich einsetzen, um z. B. kanalübergreifende Ereignisse zu finden.

Als Beispieldatensatz generieren wir eine Sinusfunktion.

ds=[0:1/1000:1]*2*%pi;

  Sinus=sin(ds);plot2d(ds,Sinus) Es sollen alle Werte im Datensatz gefunden werden, die einen Schwellwert von 0.5 überschreiten:

Status=(Sinus>0.5);

Das Ergebnis der Operation soll wieder grafisch dargestellt werden. Da mit plot2d() aber nur Zahlenwerte dargestellt werden können, das Ergebnis einer Logischen Operation aber eine Boolesche Variable mit den Werten True und False darstellt, muss das Ergebnis erst noch in einen Vektor konvertiert werden.

Status=bool2s(Status) ;

Die Darstellung im Grafik-Fenster mit Linienfarbe rot:

plot2d(ds,Status,5)

Der find() Befehl liefert die Postionen der Werte in Sinus, die den Schwellwert überschreiten. Die dazugehörigen y-Werte des Sinus schreiben wir in einen eigenen Datenvektor, den wir uns farbig im Grafikfenster anzeigen lassen.

Positionen=find(Status);yWerte=Sinus(Positionen);plot2d(ds(Positionen),yWerte,3)

-> Scilab Schulungen