Zeigerinstrument mit max. 3 Zeigern (als DLL)

Dieser Bereich ist für den Austausch FERTIGER Makros und allgemein nützlicher Schaltungen vorgesehen.
BKGMX
Beiträge: 132
Registriert: Montag 7. Dezember 2009, 10:37
Wohnort: Berlin

Zeigerinstrument mit max. 3 Zeigern (als DLL)

Beitrag von BKGMX » Dienstag 19. Januar 2010, 12:19

Hallo Leute,

Die Ausstattung des ansonsten sehr guten PL mit analogen Zeigerinstrumenten ist ja etwas
mau. Nach vielen Experimenten (auch mit dem Diaprojektor) habe ich mir auf der Basis
Profilab-DLL ein graphisches Rundinstrument erstellt. Es kann bis zu drei Zeiger darstellen
und ist damit recht flexibel was die Darstellung analoger Rundinstrumente betrifft.
Man braucht dazu lediglich ein Hintergrundbild (BMP) für die Skala des Instruments
und für jeden Zeiger ebenfalls ein Bild (BMP).

Im Rahmen meiner Möglichkeiten habe ich die DLL unter mehreren Betriebssystemen
getestet :

- Windows XP
- Windows 2003
- Windows 2008
- Windows 7

Ungetestet ist:

- Windows 2008 R2
- Windows Vista

Leider ist die Uploadkapazität bei ABACOM auf 256KB begrenzt, so daß ich die Sache hier
nicht hochladen kann.
Wenn jemand Interesse hat das Messinstrument mal zu testen, der schicke mir eine Mail.
Er bekommt dann die DLL und mehrere Profilab 4.0 Beispiele zum probieren als Zip-Datei.
Auf dieser Basis ist es dann möglich eigene Rundinstrumente zu entwickeln.
Dazu braucht man nur eine Skala (Hintergrundbild – statisch) als Bitmap und
den jeweiligen Zeiger (Vordergrundbild – dynamisch) als Bitmap zu entwerfen.
Eine Hilfe existiert leider noch nicht und die Einstellungen sind alle auf Deutsch.
Hier heißt es also, auf Basis der Beispiele rumprobieren.
Vielleicht könnte mir jemand mit englischen und französischen Texten behilflich sein.
(Config-Dialog).

Es ist wie gesagt ein Test, ob jemand anderes außer mir so was braucht, für Erweiterungen
und Änderungsvorschläge bin ich da offen.
Wenn nicht, dann verwende ich es halt nur für mich privat.

Um kurz einige Fragen zur DLL zu beantworten:
- da es ein Rundinstrument ist, akzeptiert die DLL für die Darstellung der Zeiger Werte von 0
bis 360 Grad, man muß also vorher seine Werte skalieren (an den Eingängen ZG1-ZG3)
- die Instrumente werden NUR im RUN-Modus dargestellt, da Profilab im Entwurfs-Modus
keine Schnittstellen zur Verfügung stellt. Man muß also alle Parameter über – DLL, rechte
Maustaste, Eigenschaften, Einstellungen konfigurieren.
Man kann auch die Option „Zur Laufzeit einstellbar“ aktivieren. Per Doppelklick auf das
Instrument kann man dann die Einstellungen ändern. Per gedrückter linker Maustaste kann
das Instrument auf der Frontplatte verschoben werden.
Ist alles richtig eingestellt, sollte man die Option „Zur Laufzeit einstellbar“ deaktivieren.
- das Instrument wird im RUN-Modus auf ALLEN Frontplatten dargestellt, will man das
nicht, dann muß man den Eingang ON in der entsprechenden Frontplatte auf 0 setzen
(Siehe Beispiel „Mehrere Frontplatten“)
- die Bitmaps müssen im gleichen Verzeichnis wie die DLL und das Projekt liegen
- Skalen (Hintergrund) sind mit S-XXX.BMP zu bezeichnen
- Zeiger (Vordergrund) sind mit Z-XXX.BMP zu bezeichnen
- wird das Projekt kompiliert müssen die DLL und die Bilder dem gleichen Verzeichnis
in dem sich die EXE befindet, hinzugefügt werden.

Sonstige Hinweise:
- die DLL befindet sich in einer Testphase, sie sollte also nicht in lebenswichtigen Bereichen
(Heizung, Wasser usw.) eingesetzt werden.
- ich übernehme keinerlei Haftung für auftretende Fehler
- die DLL ist ausschließlich für die PRIVATE Nutzung bestimmt
- eine spätere kommerzielle Nutzung ist nicht ausgeschlossen, für den privaten Gebrauch
bleibt die DLL frei

Da ich der Firma ABACOM hier nicht ins Handwerk pfuschen möchte (die verdienen
schließlich damit Ihren Lebensunterhalt !!!) und damit die DLL nicht kommerziell#
weitervertickt wird, habe ich die Laufzeit erst mal bis zum 30.Juni 2010 begrenzt.
(wird nach Abschluss der Entwicklung für die PRIVATE Nutzung freigegeben)

Also viel Spaß beim probieren und meldet mir Fehler, Verbesserungen usw.
Am besten gleich hier im Forum. Für die Zip (528KB) bitte einfach eine Mail an
bk66(at)gmx.de senden. Das (at) natürlich vorher durch @ austauschen (hier ersetzt wegen
eventuellen Spamprogrammen).

Gruß BK

Anbei ein paar Bildschirmkopien
Dateianhänge
Kompass.JPG
Feststehende Kompaßnadel mit drehender Skale
Kompass.JPG (10.44 KiB) 14190 mal betrachtet
Drehzahl.JPG
Drehzahlinstrument von 0 - 70000 U/min
Drehzahl.JPG (22.13 KiB) 14201 mal betrachtet
Auslastung.JPG
Zwei Zeiger im Instrument
Auslastung.JPG (20.78 KiB) 14159 mal betrachtet

BKGMX
Beiträge: 132
Registriert: Montag 7. Dezember 2009, 10:37
Wohnort: Berlin

Meßgerät mit max. 3 Zeigern als DLL in Profilab 4.0

Beitrag von BKGMX » Dienstag 19. Januar 2010, 12:24

Noch ein paar Beispiele.
Dateianhänge
Uhr-Rot.JPG
Hier mal drei Instrumente mit jeweils
drei Zeigern in einem Projekt
Uhr-Rot.JPG (42.9 KiB) 14155 mal betrachtet
U0-10.JPG
0 bis 10 Volt Zeigerinstrument
U0-10.JPG (18.02 KiB) 14176 mal betrachtet

KAKTUS
Beiträge: 645
Registriert: Samstag 18. Oktober 2008, 21:12

Re: Meßgerät mit max. 3 Zeigern als DLL in Profilab 4.0

Beitrag von KAKTUS » Dienstag 19. Januar 2010, 16:26

Sehr schön gemacht, gute Arbeit!

Bitte mal ins Private Postfach gucken.
stachlige Grüße, Kaktus

compander
Beiträge: 657
Registriert: Dienstag 14. Oktober 2008, 17:06
Wohnort: Markt Schwaben

Re: Meßgerät mit max. 3 Zeigern als DLL in Profilab 4.0

Beitrag von compander » Dienstag 19. Januar 2010, 19:04

Hallo BKGMX.

Das ist ja sehr interesannt !
Bitte pn beachten.

Gruß vom C :shock: mpander.

abacom
Site Admin
Beiträge: 3313
Registriert: Dienstag 23. September 2008, 10:54
Kontaktdaten:

Re: Meßgerät mit max. 3 Zeigern als DLL in Profilab 4.0

Beitrag von abacom » Mittwoch 20. Januar 2010, 09:00

Sieht sehr gut aus. Wir sehen solche Initiativen sehr positiv. Dafür wurde die DLL-Schnittstelle ja geschaffen.
Dürfen wir die DLL bitte auch einmal testen. Email dürfte bekannt sein.
ABACOM support

BKGMX
Beiträge: 132
Registriert: Montag 7. Dezember 2009, 10:37
Wohnort: Berlin

Re: Meßgerät mit max. 3 Zeigern als DLL in Profilab 4.0

Beitrag von BKGMX » Mittwoch 20. Januar 2010, 09:24

Ich freue mich über die positive Resonanz und sehe mich grade nach "Web-Space" für den Download um. Mein Mailvolumen für diesen Monat ist bald ausgeschöpft. :D

Gruß BK

BKGMX
Beiträge: 132
Registriert: Montag 7. Dezember 2009, 10:37
Wohnort: Berlin

Re: Meßgerät mit max. 3 Zeigern als DLL in Profilab 4.0

Beitrag von BKGMX » Mittwoch 20. Januar 2010, 09:59

Um die diversen Rückfragen zu beantworten:
- im Entwurfsmodus ist auf der Frontplatte NICHTS zu sehen
und das kann auch nicht geändert werden (DLL-Schnittstelle)
- die Darstellung erfolgt also nur im RUN-Modus
- damit die Darstellung im RUN-MODUS einfacher angepaßt werden kann:
sollte man die Option "Zur Laufzeit einstellbar" anwählen
- so ist es möglich mit gedrückter linker Maustaste das Meßgerät zu verschieben
und per Doppelklick das Config-Menü aufzurufen und Änderungen vorzunehmen
- wenn alles zur Zufriedenheit eingestellt ist, sollte man diese Option wieder abwählen
(unbeabsichtigtes Verschieben)
- die Option Mittelpunkt Zeiger X bezieht sich immer auf die Orginalgröße des
Hintergrundbildes (im Windows-Explorer, rechte Maustaste, Eigenschaften, Dateiinfo)
Man sollte also erst mit der Originalgröße arbeiten, und wenn alles fertig ist
die Größe ändern
- die Option Nullpunkt Zeiger X bezieht sich auf den Wert, der beim Eingangswert Null
angezeigt wird, wobei Null (wie bei der Uhr) oben ist, d.h. 90 Grad ist rechts waagerecht,
180 Grad ist unten, 270 Grad ist links waagerecht (ich weiß, das wird vielen nicht passen,
aber der Ursprung dieses Meßgerätes war halt der Entwurf einer Analoguhr)

So das zu den ersten Fragen. Auf weitere Kommentare bin ich schon gespannt.

Gruß BK

Blupf
Beiträge: 27
Registriert: Mittwoch 20. Januar 2010, 12:16
Wohnort: Venio (NL), z.zt. Potsdam (DE)

Re: Meßgerät mit max. 3 Zeigern als DLL in Profilab 4.0

Beitrag von Blupf » Mittwoch 20. Januar 2010, 12:26

Hallo BKGMX,
danke für das Zusenden der DLL. Ein paar Fragen habe ich aber noch.
Ist es möglich JPGs zu laden, daß wäre doch effizienter als BMPs?
Wenn man die Dateien verschicken will, z.B.
Bei dem Beispiel "Mehrere Frontplatten" ist mir aufgefallen,
dass da im Beispiel nur 3 Frontplatten vorhanden sind. Was ist, wenn man mehr hat?
Wie erstellst Du Deine Skalen? Gibts da ein Programm?

MFG Blupf

Mike D
Beiträge: 502
Registriert: Dienstag 14. Oktober 2008, 14:48
Wohnort: Elbe- Weser-Dreieck

Re: Meßgerät mit max. 3 Zeigern als DLL in Profilab 4.0

Beitrag von Mike D » Mittwoch 20. Januar 2010, 12:51

Hallo BK,
super gemacht.
Wärst du bereit zumindest im Ansatz zu verraten wie du aus der DLL auf die Frontplatte malst?
Welche Programmiersprache nimmst du?

Grüße

Mike

BKGMX
Beiträge: 132
Registriert: Montag 7. Dezember 2009, 10:37
Wohnort: Berlin

Re: Meßgerät mit max. 3 Zeigern als DLL in Profilab 4.0

Beitrag von BKGMX » Mittwoch 20. Januar 2010, 13:15

Hallo Blupf,
schön das hier mal jemand das Forum nutzt und nicht meine Mailadresse.
Da wissen wenigstens gleich alle Bescheid.

Also zu 1. - ist es möglich JPGs zu laden...?
Nein, der Standard ist BMP. Ich verwende für die DLL Delphi, mit der freien Bibliothek
GR32_RotLayer von Alex A. Denisov
Ich habe zuerst mit eigenen Lösungen für rotierende Bilder experimentiert, aber
GR32_RotLayer schlägt meine Lösungen bezüglich Geschwindigkeit um Längen.
(Siehe auch Versionen.txt). Warum also das Rad zweimal erfinden?
GR32_RotLayer wird leider nicht mehr weiterentwickelt (nach meinem Kenntnisstand)
und die jpg-Unterstützung ist leider nicht so recht für mein Projekt brauchbar, weil es
Artefakte bei der Darstellung zeigt.
Aus dem gleichen Grund gibt es auch keinen Hinweistext, der sonst bei allen
Profilabelementen verfügbar ist. Vorgesehen ist das schon, aber halt nicht realisierbar.
Dann zu 2. - Bei dem Beispiel "Mehrere Frontplatten" ...
Hier muß man schon etwas mitdenken, aber dafür ist doch Profilab da! Es gibt genügend
fertige Bausteine die fast alle Eventualitäten abdecken. Also ruhig mal selber versuchen.
Am Schluß zu 3. - Wie erstellst Du Deine Skalen? ...
Na einfach mit dem FrontDesigner von Abacom. :D

BKGMX
Beiträge: 132
Registriert: Montag 7. Dezember 2009, 10:37
Wohnort: Berlin

Re: Meßgerät mit max. 3 Zeigern als DLL in Profilab 4.0

Beitrag von BKGMX » Mittwoch 20. Januar 2010, 13:31

Hallo Mike D,
im Ansatz schon, man erzeuge ein Fenster und juble es dem
Parentfenster (Eltern sind hier die Frontplatten von Profilab)
als Kuckucksei (Kind) unter.
Die Hürden für eine Implementierung graphischer Elemente
sind aber ganz woanders und im Moment sehe ich noch nicht
die Notwendigkeit Internas freizugeben. Warten wir erst mal
die Testphase ab. Schwierigkeiten kommen immer aus Bereichen
wo man sie nie vermutet hätte. (Alte Programmiererweisheit)

Also nix für Ungut

Gruß BKGMX

BKGMX
Beiträge: 132
Registriert: Montag 7. Dezember 2009, 10:37
Wohnort: Berlin

Re: Meßgerät mit max. 3 Zeigern als DLL in Profilab 4.0

Beitrag von BKGMX » Mittwoch 20. Januar 2010, 13:57

Antworten für den Rest der Emailflut:
- Ja, ich suche im Moment einen neuen Job, allerdings nicht im Bereich Software,
sondern eher im Bereich Elektronikentwicklung oder IT-Administration (Windows)
- Nein, ich ziehe nicht nach München, auch wenn ihr mir da eine Wohnung beschafft.
- Und auch nicht nach Hagen.
- Und erst recht nicht nach Frankfurt(Oder)

Also jetzt bleibt mal locker Jungs,

PL ist für mich eigentlich ein sehr gutes Instrument um Dinge zu visulisieren. Die nicht
sichtbaren Kabel und die Elektronik im Hintergrund baue ich lieber selbst.
Also Ende diesbezüglicher Anfragen.

Gruß BK

Blupf
Beiträge: 27
Registriert: Mittwoch 20. Januar 2010, 12:16
Wohnort: Venio (NL), z.zt. Potsdam (DE)

Re: Meßgerät mit max. 3 Zeigern als DLL in Profilab 4.0

Beitrag von Blupf » Mittwoch 20. Januar 2010, 16:05

Noch mal der Blupf,
auch wenn ich vielleicht nerve, aber ich habe 5 Frontplatten und möchte
nur auf einer Frontplatte eins von deinen Meßgräten darstellen.
Wie macht man so was?

Gruß Blupf

BKGMX
Beiträge: 132
Registriert: Montag 7. Dezember 2009, 10:37
Wohnort: Berlin

Re: Meßgerät mit max. 3 Zeigern als DLL in Profilab 4.0

Beitrag von BKGMX » Mittwoch 20. Januar 2010, 17:32

Hallo Blupf,
also das Beispiel "Mehrere Frontplatten" war ein Beispiel für 3 Frontplatten und eine von vielen
möglichen Profilab-Lösungen. Wenn man noch mehr Frontplatten benötigt, bei Dir also fünf, dann
empfehlen sich andere Lösungen.
Verbinde einfach im angefügten Beispiel die LED XXX mit dem Eingang ON der MGR.DLL und schon wird das Meßgerät nur auf der Frontplatte XXX angezeigt, die Du ausgewählt hast.

Gruß BKGMX
Dateianhänge
Mehrere Frontplatten - 2.prj
(2.03 KiB) 383-mal heruntergeladen

Blupf
Beiträge: 27
Registriert: Mittwoch 20. Januar 2010, 12:16
Wohnort: Venio (NL), z.zt. Potsdam (DE)

Re: Meßgerät mit max. 3 Zeigern als DLL in Profilab 4.0

Beitrag von Blupf » Mittwoch 20. Januar 2010, 18:59

Hallo noch mal,
funktioniert klasse mit der DLL, ich hätte nicht gedacht das
es so leicht ist. Noch eine kurze Frage, wenn ich die DLL auf
zwei von den fünf Frontplatten haben möchte?
Brauche ich dann 2 DLLs ?

Blupf

BKGMX
Beiträge: 132
Registriert: Montag 7. Dezember 2009, 10:37
Wohnort: Berlin

Re: Meßgerät mit max. 3 Zeigern als DLL in Profilab 4.0

Beitrag von BKGMX » Mittwoch 20. Januar 2010, 19:18

Einfach an die zwei Ausgänge des DMUX die Du haben willst,
ein OR-Gattter hängen. Den Ausgang dann an On der DLL.
Dann braucht man keine zweite DLL.
Es ist ohne weiteres möglich mehrere MGR.dll in einem Projekt zu verwenden.
(theoretisch bis 99 Stück, was ich aber noch nicht probiert habe)

BKGMX

BKGMX
Beiträge: 132
Registriert: Montag 7. Dezember 2009, 10:37
Wohnort: Berlin

Re: Meßgerät mit max. 3 Zeigern als DLL in Profilab 4.0

Beitrag von BKGMX » Mittwoch 20. Januar 2010, 19:26

Entschuldigung noch mal für eventuell unbeantworte Mails,
ich hatte nicht mit dieser Nachfrage gerechnet und mein
Account war "voll".
Also alle die die MGR.zip bisher noch nicht bekommen haben,
noch mal eine neue Mail schicken.

Gruß BKGMX

abacom
Site Admin
Beiträge: 3313
Registriert: Dienstag 23. September 2008, 10:54
Kontaktdaten:

Re: Meßgerät mit max. 3 Zeigern als DLL in Profilab 4.0

Beitrag von abacom » Donnerstag 21. Januar 2010, 09:17

@BKGMX:
Leider ist die Uploadkapazität im Forum auf 256KB begrenzt.
Das sollte im Regelfall auch reichen. Wir können die DLL aber auch gerne
in unseren Download-Bereich aufnehmen, damit Sie nicht so viele Emails verschicken müssen.
Dazu sollte dann aber keine Zeitbeschränkung mehr darin sein.
Auch bei uns funktioniert die DLL prima. Sehr gelungen!
ABACOM support

Mike D
Beiträge: 502
Registriert: Dienstag 14. Oktober 2008, 14:48
Wohnort: Elbe- Weser-Dreieck

Re: Meßgerät mit max. 3 Zeigern als DLL in Profilab 4.0

Beitrag von Mike D » Donnerstag 21. Januar 2010, 14:27

Ich habe als ersten Versuch mal das U0-10V Beispiel um 2 Min-Max-Schleppzeiger erweitert.

Mike
Dateianhänge
Schleppzeiger.prj
(3.93 KiB) 379-mal heruntergeladen

funkybaer
Beiträge: 399
Registriert: Mittwoch 22. Oktober 2008, 08:51
Wohnort: Kitzingen

Re: Meßgerät mit max. 3 Zeigern als DLL in Profilab 4.0

Beitrag von funkybaer » Donnerstag 21. Januar 2010, 14:53

Hallo BKGMX

Funktioniert sehr gut .
In Deiner DLL wird bei Einstellungen dem 3. Zeiger Mittelpunkt Zeiger 2 statt 3 angezeigt.
Gruss Gerhard

Antworten

Zurück zu „Makros & Schaltungen“