AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Windows echtzeitfähig mit Delphi

Ein Thema von luisk · begonnen am 11. Aug 2014 · letzter Beitrag vom 14. Aug 2014
Antwort Antwort
Seite 1 von 2  1 2   
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.561 Beiträge
 
Delphi 12 Athens
 
#1

AW: Windows echtzeitfähig mit Delphi

  Alt 11. Aug 2014, 22:14
Wenn ich über einen Timer oder einen Tread triggere komme ich von System her nur auf Zykluszeit von 15 ms. also 300000 mal so langsam.
Hast Du dazu einen Multimedia-Timer verwendet? Damit kann man zumindest in einem Intervall von 1 MS triggern.

Zur Messung kann man einen Highperformancecounter (QueryPerformanceCounter) verwenden, der auch im Nanobereich messen kann (einige hundert Nanosekunden).
  Mit Zitat antworten Zitat
Benutzerbild von luisk
luisk

Registriert seit: 18. Mär 2009
402 Beiträge
 
#2

AW: Windows echtzeitfähig mit Delphi

  Alt 11. Aug 2014, 23:55
Hast Du dazu einen Multimedia-Timer verwendet? Damit kann man zumindest in einem Intervall von 1 MS triggern.
Danke für Tipp
werde ich mal testen:http://www.delphipraxis.net/172777-m...dia-timer.html

Da steht, dass timeSetEvent durch CreateTimerQueueTimer function ersetzt wurde:
http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx

http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx

timesetevent funktioniert unter Delphi 6.
Auf CreateTimerQueueTimer kann ich mit Delphi 6 nicht zugreifen. Gibt es dazu eine Unit ?

Geändert von luisk (12. Aug 2014 um 06:20 Uhr)
  Mit Zitat antworten Zitat
hanspeter

Registriert seit: 26. Jul 2003
Ort: Leipzig
1.350 Beiträge
 
Delphi XE2 Professional
 
#3

AW: Windows echtzeitfähig mit Delphi

  Alt 12. Aug 2014, 06:35
Ich habe so was mal für Prüfstände gemacht.
Da wird für einige Sensoren eine Abtastrate von 1 ms benötigt.
Gesteuert habe ich das ganze über einen hoch priorisierten Thread, der den Zeittakt erzeugt.
Das Programm ist allerdings das einzige Programm, welches auf dem Rechner läuft.
Für industrielle Aufgaben bietet sich noch eine Soft-SPS an.
Die läuft in einer Schicht unter Windows und bietet einen reproduzierbaren Zeittakt ab 100 ns an.
Auf dieser Basis habe ich auch eine größere Anlagensteuerung am Laufen.
Zwischen Prozess-Sensorik und PC eine kleine SPS, da gibt es auch einige preiswerte und fertig konfektionierte Lösungen.

Peter
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.826 Beiträge
 
Delphi 12 Athens
 
#4

AW: Windows echtzeitfähig mit Delphi

  Alt 12. Aug 2014, 07:12
Windows ist prinzipbedingt nicht echtzeitfähig. Alles was man drumherum dranflanscht macht es nur vordergründig besser, in wirklichkeit aber schlechter. Wenn Du sowas wirklich brauchst, dann benutz doch ein echtes RTOS, so wie LynxOS oder RT Linux. Freilich wirst Du mit Delphi da nicht weit kommen, aber eventuell gibts ja nen FPC dafür.

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
hanspeter

Registriert seit: 26. Jul 2003
Ort: Leipzig
1.350 Beiträge
 
Delphi XE2 Professional
 
#5

AW: Windows echtzeitfähig mit Delphi

  Alt 12. Aug 2014, 07:36
Windows ist prinzipbedingt nicht echtzeitfähig. Alles was man drumherum dranflanscht macht es nur vordergründig besser, in wirklichkeit aber schlechter. Wenn Du sowas wirklich brauchst, dann benutz doch ein echtes RTOS, so wie LynxOS oder RT Linux. Freilich wirst Du mit Delphi da nicht weit kommen, aber eventuell gibts ja nen FPC dafür.

Sherlock
Du hast schon mal mit einer industriellen Soft-SPS (z.B.) Beckhoff unter Windows gearbeitet?
Windows selbst ist vom Prinzip nicht oder nur eingeschränkt echtzeitfähig. Ist in dieser Richtung aber erweiterbar.
Dazu bieten einige Firmen industriuetaugliche Lösungen an (z.B. Beckhoff oder Kithara).
Ich habe mehrere Industrieanlagen auf Basis dieser Technologie realisiert.
Die laufen seit Jahren stabil(24/365). Im Sensorbereich wird teilweise eine Taktrate von 500 ns realisiert.
Die SPS ist in strukturierten Text (Pascal ähnlich) realisiert. Die Bedienoberfläche in Delphi.
  Mit Zitat antworten Zitat
Benutzerbild von luisk
luisk

Registriert seit: 18. Mär 2009
402 Beiträge
 
#6

AW: Windows echtzeitfähig mit Delphi

  Alt 12. Aug 2014, 12:26
Hier steht, dass timeSetEvent durch CreateTimerQueueTimer function ersetzt wurde:
http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx

http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx

timesetevent funktioniert unter Delphi 6.
Auf CreateTimerQueueTimer kann ich mit Delphi 6 nicht zugreifen.
Gibt es dazu eine Unit für Delphi 6?
  Mit Zitat antworten Zitat
Benutzerbild von stoxx
stoxx

Registriert seit: 13. Aug 2003
1.111 Beiträge
 
#7

AW: Windows echtzeitfähig mit Delphi

  Alt 12. Aug 2014, 20:11
Die läuft in einer Schicht unter Windows und bietet einen reproduzierbaren Zeittakt ab 100 ns an.
Peter
Kannst Du vielleicht bitte etwas näher darauf eingehen, wie Du das realisiert hast?
Es scheint, als sei alles auf Millisekunden unter Windows ausgerichtet ...
Danke Dir
Phantasie ist etwas, was sich manche Leute gar nicht vorstellen können.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.720 Beiträge
 
Delphi 12 Athens
 
#8

AW: Windows echtzeitfähig mit Delphi

  Alt 12. Aug 2014, 20:59
Kannst Du vielleicht bitte etwas näher darauf eingehen, wie Du das realisiert hast?
Wurde doch erwähnt?
MSDN-Library durchsuchenQueryPerformanceCounter
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.561 Beiträge
 
Delphi 12 Athens
 
#9

AW: Windows echtzeitfähig mit Delphi

  Alt 12. Aug 2014, 22:40
Übrigens, wer das noch nicht kennt: Seit - ich glaube D2010? - gibt es in Delphi die Unit Diagnostics, die

{************************************************* ******}
{ Support for high-precision timing utilities }
{************************************************* ******}

enthält.

Seit XE2 ist die Unit (System.Diagnostics) crossplattform-fähig, kann man also auch unter Windows (VCL und FMX) und MAC OS X einsetzen.

Mit dem Record TStopWatch kann man ganz einfach hochpräzise Zeitmessungen vornehmen.
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#10

AW: Windows echtzeitfähig mit Delphi

  Alt 13. Aug 2014, 07:38
Geht es immer noch um RT-Fähigkeit von Windows, oder um Versuche, das Unmögliche möglich zu machen?

Ich habe viel mit der Beckhoff-SPS gemacht: Wirklich brauchbar, das Teil.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:10 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz