AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Maschinenstatus via LED visualisieren
Thema durchsuchen
Ansicht
Themen-Optionen

Maschinenstatus via LED visualisieren

Ein Thema von Ykcim · begonnen am 22. Mai 2023 · letzter Beitrag vom 6. Jun 2023
Antwort Antwort
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.071 Beiträge
 
Delphi 10.4 Sydney
 
#1

AW: Maschinenstatus via LED visualisieren

  Alt 24. Mai 2023, 09:08
Was ist das denn für eine Maschine? Vielleicht hat der Hersteller eh was zum nachrüsten, was denn aktuellen Zustand anzeigt (rot - Fehler, gelb - sonstwas, grün - alles läuft).

Wie teuer soll denn die LED-Leuchte maximal sein?
https://www.google.com/search?q=Signalleuchten&tbm=shop
  Mit Zitat antworten Zitat
v2afrank

Registriert seit: 9. Mai 2005
Ort: Bocholt
575 Beiträge
 
Delphi XE2 Professional
 
#2

AW: Maschinenstatus via LED visualisieren

  Alt 25. Mai 2023, 07:32
Ich habe so etwas mal in einem Projekt eingesetzt
https://www.antratek.de/8-relaismodule-ethernet-eth008
Eine Relaiskarte die Du über Ethernet ansteuerst. Darüber wurden dann die verschiedenen Leuchten gesteuert
Gibt es auch mit weniger / mehr Relais, je nachdem wieviel Du ansteuern möchtest
  Mit Zitat antworten Zitat
Benutzerbild von dummzeuch
dummzeuch

Registriert seit: 11. Aug 2012
Ort: Essen
1.667 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#3

AW: Maschinenstatus via LED visualisieren

  Alt 25. Mai 2023, 08:57
Ich habe so etwas mal in einem Projekt eingesetzt
https://www.antratek.de/8-relaismodule-ethernet-eth008
Eine Relaiskarte die Du über Ethernet ansteuerst. Darüber wurden dann die verschiedenen Leuchten gesteuert
Das sieht interessant aus. Gibt's das auch mit WLAN statt Ethernet? Gesehen habe ich das auf dieser Seite nicht, aber vielleicht weißt Du das ja.

Gibt es auch mit weniger / mehr Relais, je nachdem wieviel Du ansteuern möchtest
Ich habe dort nur noch ein Modul mit 4 Relais gesehen, das hatte dann aber einige I/O-Ports. OK, man muss die ja nicht nutzen.
Thomas Mueller
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.778 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Maschinenstatus via LED visualisieren

  Alt 25. Mai 2023, 10:33
Gibt's das auch mit WLAN statt Ethernet?
.. einen Raspberry (wenn sie mal wieder günstiger sind) als Bridge WLAN-Ethernet davor schalten

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von dummzeuch
dummzeuch

Registriert seit: 11. Aug 2012
Ort: Essen
1.667 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#5

AW: Maschinenstatus via LED visualisieren

  Alt 25. Mai 2023, 10:50
Gibt's das auch mit WLAN statt Ethernet?
.. einen Raspberry (wenn sie mal wieder günstiger sind) als Bridge WLAN-Ethernet davor schalten
Ja, kann man machen. Aber dann muss man sich auch noch mit einem Raspi beschäftigen. Das erhöht den Aufwand und fügt eine potentielle Fehlerquelle hinzu.

Dann würde ich(*1) eher einen WLan-Router vorschalten, auch wenn der mehr kostet. Aber den tauscht man bei einem Fehler einfach aus, während man bei einem Rapsi dann in Versuchung kommt, das Problem zu debuggen.

(*1: Zumindest meine professionelle Persona, als Nerd würde ich den Raspi bevorzugen.)
Thomas Mueller
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Maschinenstatus via LED visualisieren

  Alt 25. Mai 2023, 13:34
WLAN von/zu LAN: Bei Google suchenVonets VAR11N-300 (Bei Google suchenMini WLAN Router)


Aber wenn es nur ums Fernschalten geht, dann ist ein selbst Raspi-ZeroW oder ComputeModule doch etwas übertrieben.
Bei Google suchenESP8266-01 bzw. Bei Google suchenESP-01
oder Bei Google suchenESP32
oder irgend ein anderer Arduino-Kompatibler an USB/WLAN/BT.
https://www.arduino.cc/en/hardware bzw. Bei Google suchenArduino Alternativen

Oder eben ein "vorprogrammiertes" USB/LAN/WLAN-Relais/Steckdose ala Shelly und Co.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (25. Mai 2023 um 13:47 Uhr)
  Mit Zitat antworten Zitat
v2afrank

Registriert seit: 9. Mai 2005
Ort: Bocholt
575 Beiträge
 
Delphi XE2 Professional
 
#7

AW: Maschinenstatus via LED visualisieren

  Alt 26. Mai 2023, 06:41
Ich habe so etwas mal in einem Projekt eingesetzt
https://www.antratek.de/8-relaismodule-ethernet-eth008
Eine Relaiskarte die Du über Ethernet ansteuerst. Darüber wurden dann die verschiedenen Leuchten gesteuert
Das sieht interessant aus. Gibt's das auch mit WLAN statt Ethernet? Gesehen habe ich das auf dieser Seite nicht, aber vielleicht weißt Du das ja.

Gibt es auch mit weniger / mehr Relais, je nachdem wieviel Du ansteuern möchtest
Ich habe dort nur noch ein Modul mit 4 Relais gesehen, das hatte dann aber einige I/O-Ports. OK, man muss die ja nicht nutzen.
Nein weiß ich leider nicht. Wir hatten in unserer Anwendung sowieso Ethernet liegen, da war es einfach machbar.

Das hier hat doch zum Beispiel nur zwei Relais
https://www.antratek.de/eth002
  Mit Zitat antworten Zitat
pesi

Registriert seit: 29. Aug 2003
Ort: 36217 Ronshausen
117 Beiträge
 
Delphi XE5 Professional
 
#8

AW: Maschinenstatus via LED visualisieren

  Alt 26. Mai 2023, 08:08
Auf der Seite von Antratek gibt es aber auch WiFi Module...
https://www.antratek.de/i-o-controllers/wireless
  Mit Zitat antworten Zitat
v2afrank

Registriert seit: 9. Mai 2005
Ort: Bocholt
575 Beiträge
 
Delphi XE2 Professional
 
#9

AW: Maschinenstatus via LED visualisieren

  Alt 26. Mai 2023, 09:52
Stimmt sehen auch interessant aus
  Mit Zitat antworten Zitat
Ykcim

Registriert seit: 29. Dez 2006
Ort: NRW
856 Beiträge
 
Delphi 12 Athens
 
#10

AW: Maschinenstatus via LED visualisieren

  Alt 5. Jun 2023, 21:18
Hallo Zusammen,
ich will man eine erste Erfolgsmeldung zurückgeben.

Ich habe mir die Shelly RGBW2 Steuerung beschafft, einen Mini-Traffo um von 230V auf 24V zu kommen und eine LED-Signal-Leuchte. Habe alles wie im Bild verkabelt.
ACHTUNG: ICH BIN KEIN ELEKTIKER UND KANN KEINE VERANTWORTUNG FÜR NACHBAUTEN ÜBERNEHMEN!

Ich habe mit der Shelly App die Steuerung ins WLAN gebracht und dann die ersten Verbindungsversuche vorgenommen.
Ich musste auf den Modus WHITE stellen, damit die Leuchte korrekt angesteuert wurde.

Über den Browser und der IP-Adresse konnte ich auf ein vorhandenes Web-Interface zugreifen und die Leuchte an sich ausprobieren.

Die SupportSite von Shelly war wirklich hilfreich:
Mit http://IP-Adresse/white/0?turn=on kann ich die oberste Leuchte einschalten
Mit http://IP-Adresse/white/0?turn=off kann ich die oberste Leuchte wieder ausschalten

Mit http://IP-Adresse/white/0?brightness= [1-100] kann die Helligkeit gesteuert werden

Bei jeder Aktion und bei der Abfrage http://IP-Adresse/white/0 bekommt man einen String mit dem aktuellen Status von der Steuerung als Rückgabewert:
{"ison":false,"mode":"white","brightness":70,"power":1.26,"overpower":false}
Ich habe diesen bis jetzt ale ein String behandelt, geht aber mit Sicherheit charmanter:
Delphi-Quellcode:
function TForm1.MyStreamToString(aStream: TStream): string;
var    SS: TStringStream;
begin
   Result := '[';
   if aStream <> nil then begin
      SS := TStringStream.Create('');
      try
         SS.CopyFrom(aStream, 0);
         Result := Result + SS.DataString;
         Result := Result + ']';
      finally
         SS.Free;
      end;
   end else begin
      Result := '';
   end;
end;
Ich habe ein kleines Test-Programm geschrieben. Beim Start frage ich den Status der Einzelleuchten ab und tragen den ON/OFF Status und die Eingestellte Helligkeit in meine Maske ein.

Delphi-Quellcode:
procedure TForm1.Get_Status_JSON(LStream: TMemoryStream; Swtch: TToggleSwitch; edt_Brightness: TAdvEdit);
var ClientItem: TJSONValue;
      ClientList: TJSONArray;
      ResultString: string;
      Status: boolean;
      Brightness: integer;
      I: integer;
begin
   ClientList := TJSONArray.Create;
   Try
      ResultString := MyStreamToString(LStream);
      ClientList := TJSONObject.ParseJSONValue(ResultString) as TJSONArray;
      for ClientItem in ClientList do begin
         if not ClientItem.TryGetValue<boolean>('ison', Status) then
            ShowMessage('Fehler: Status nicht gefunden.');
         if not ClientItem.TryGetValue<integer>('brightness', Brightness) then
            ShowMessage('Fehler: Brightness nicht gefunden.');
      end;

      if Status then
         Swtch.State := tssOn;
      if not Status then
         Swtch.State := tssOff;

      edt_Brightness.Text := IntToStr(Brightness);
   Finally
      ClientList.Free;
   End;
end;
Delphi-Quellcode:
procedure TForm1.FormShow(Sender: TObject);
var ResultString: string;
      LStream: TMemoryStream;
begin
   LStream := TMemoryStream.Create;
   Try
   Client1.get(lbl_Basic_0.Caption + edt_Channel_0.Text, LStream);
   Get_Status_JSON(LStream, Swtch_0, edt_Bright_0);
   LStream.SetSize(0);
   Client1.get(lbl_Basic_1.Caption + edt_Channel_1.Text, LStream);
Get_Status_JSON(LStream, Swtch_1, edt_Bright_1);
   LStream.SetSize(0);
   Client1.get(lbl_Basic_2.Caption + edt_Channel_2.Text, LStream);
   Get_Status_JSON(LStream, Swtch_2, edt_Bright_2);
   Finally
      LStream.Free;
   End;
end;
Aktuell prüfe ich noch, wie ich die Leuchte blinken lassen kann.

So viel zum jetztigen Zeitpunkt als Feedback.

Vielen Dank für Eure Anregungen und Unterstützung
Patrick
Angehängte Grafiken
Dateityp: jpg 20230604_004815_IMG_4445_Edited.jpg (75,4 KB, 51x aufgerufen)
Patrick

Geändert von Ykcim ( 6. Jun 2023 um 00:32 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


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 06:45 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 by Thomas Breitkreuz