AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Raspberry PI to Delphi

Raspberry PI to Delphi

Ein Thema von Hobbycoder · begonnen am 22. Nov 2019 · letzter Beitrag vom 23. Nov 2019
Antwort Antwort
Hobbycoder
Registriert seit: 22. Feb 2017
Ich arbeite viel mit dem Raspberry zur Steuerung und Zustandserfassung. Bisher immer mit Fremdtools direkt auf dem Raspberry. Datenaustausch habe ich meist über eine Datenbank gemacht.
Bis ich kürzlich mal auf die Schnelle ein paar Termeraturen erfassen wollte. Auf der Suche nach einer schnellen Lösung, die sich ohne großen Installationsaufwand realisieren lässt, und auch von Linux nicht so viel Ahnung haben, bin ich zu diesem Projekt gekommen.

Herausgekommen ist eine Delphi-Klasse und ein paar Python-Scripte, die per Shell-Script immerhalb von Sekunden als Service auf eine Raspi installiert sind.
Dieses Konzept möchte ich euch hier zur Verfügung stellen.

Im Wesentlichen besteht das Ganze seitens dem Raspberry aus 2 Python-Scripten.
Das 1. liest laufend alle installierten DS18x20-Temperatursensor und über mittelt laufend die aktuellen Temperaturen per UDP an einen Host.
Das 2. steuert die GPIO-Ports. Zum einen empfängt es ebenfalls über UDP Befehle um einen GPIO-Port auf high oder low zu setzen, und zum anderen könenn andere GPIO-Ports z.B. an einen Taster/Schalter angeschlossen werden, dessen Zustand dann per UDP an eine Host gesendet werden.

Seitens Delphi gibt es die Klasse TRaspiList bzw TRaspi, welche nehmen ein paar Parametern die Liste der GPIO-Ports und DS18x20-Temperaturfühler je Raspi darstellt. Weiterhin beinhaltet die Klasse TRaspi noch eine Thread für den Datenaustausch per UDP.
Das Ganze ist erstmal experimentell und auch relativ schnell von mir erstellt. Die Temperatursensoren funktionieren sehr gut. Auch das Schalten von GPIO-Ports funktionniert sehr gut. Beim Erfassen er GPIO-Eingänge gibt es noch Handlungsbedarf, da diese noch nicht sooo zuverlässig übertragen. Möglicherweise stelle ich das doch teilwiese um auf TCP.

Aber in meiner kleinen Demo kann man damit schon was anfangen.

Zur Zeit funktionieren folgende Peripherie:
  • DS18x20 - 1-Wire-Temperaturfühler
  • Zustandanzeige per LED an einem GPIO
  • Schalten von 220V mittel Relais an GPIO
  • Taster/Schalter an GPIO z.B: Öffnungskontakt Servertür, etc
  • PIR an GPIO - Bewegungsmelder
Hinzufügen möchte ich noch:
  • Raumklimaerfassung über BMP o.ä.
  • Abrufen von Kamerabildern
  • evtl. Abrufen von Linux-System-Informationen
  • Lesen von 433 MHz-Empängern
  • Senden von 433 MHz

Wer das also mal ausprobieren will, und/oder mit einem Raspberry rumspielen will, sei gerne dazu eingeladen. Wer gerade hinsichtlich der Linux-Python-Scripte etwas dazu beitragen will, sei ebenfalls herzlich eingeladen.
Auch die Delphi-Units sind erstmal fix zusammengeklöppelt und sind inhaltlich allenfalls im Alpha-Stadium. Also nicht zuviel erwarten.

Wer es testen möchte, hier noch der Hinweis: In den Python-Scripten müssen noch IP-Adresse und GPIO-Ports angepasst werden, damit das funktioniert. Gleichermaßen natürlich im der Demo.

Im angehänten Archiv befinden sich 3 Archive:
- Pi2Delphi_Units.rar (Beinhaltet 2 Units)
- RaspberryDemo.rar (Ganz einfaches Beispielprogramm, Pi2Delphi-Units sind enhalten)
- p2dinst.tar.gz (Das muss auf dem Raspberry z.B: im Verzeichnis /home/pi enpackt werden und mit "sudo sh instpi2delphi.sh" installiert werdnen)
Miniaturansicht angehängter Grafiken
img_7812.jpg   img_7813.jpg   img_7814.jpg   screenshot.png  
Angehängte Dateien
Dateityp: rar Pi2Delphi.rar (19,9 KB, 56x aufgerufen)
Gruß Hobbycoder
Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.
 
TurboMagic
Online

 
Delphi 12 Athens
 
#2
  Alt 22. Nov 2019, 22:51
Danke für's Teilen! Das könnte für den einen oder anderen hilfreich sein.
Schon mal daran gedacht, das auf Github als Repository zur Verfügung zu stellen?
Evtl. finden such dann weitere Mitstreiter?
  Mit Zitat antworten Zitat
DelTurbo

 
Delphi 2007 Architect
 
#3
  Alt 23. Nov 2019, 10:42
Hi,
ich habe auch schon einige Programme für den Raspi und ODroid gemacht. Ich nehme immer CodeTyphon. Meistens sind nur ganz kleine anpassungen notwendig wenn überhaupt. Ich schreibe die sachen meistens in Delphi (weil mir die IDE besser gefällt) und Importierte die dann in CodeTyphon. Dann kann ich das Projekt auf arm oder sogar aarch64 laufen lassen. Das mache ich ebenfalls wenn ich genrell was für Linux entwickeln möchte.

Vielleicht hilft euch das weiter.
  Mit Zitat antworten Zitat
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 17:08 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz