Forum: PC-Programmierung Sensormatten programmieren


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Philipp (pinus82)


Lesenswert?

Könnte mir jemand bei folgendem Projekt behilflich sein?

Ich möchte gerne eine Sensormatte programmieren, die bei betreten der 
Matte einen Befehl auslöst. Sie soll als Einbruchsprävention dienen. Bei 
betreten der Matte ab 22 Uhr und einem Gewicht größer 50kg soll der 
Gartensprenger angehen und den potentiellen Einbrecher nassspritzen.

Ich würde mich über Eure Hilfe freuen.
Viele Grüße
Philipp

von F. (radarange)


Lesenswert?

Na klar! Das Tolle an der PC-Programmierung ist ja, dass es insbesondere 
nicht notwendig ist, die verwendete Hardware und Schnittstellen zur 
Ansteuerung zu spezifizieren. Hier mal ein Code für den Raspberry Pi. 
Die Logik wird durch Prolog spezifiziert, während Python-Code für die 
Hardware-Ansteuerung verantwortlich ist.
1
from pyswip import Prolog
2
import RPi.GPIO as GPIO
3
import time
4
5
# GPIO initialisieren
6
GPIO.setmode(GPIO.BCM)  # Verwenden des Broadcom-Numberings
7
GPIO.setup(15, GPIO.OUT)  # GPIO-Pin 15 als Ausgang konfigurieren
8
9
# Prolog-Initialisierung
10
prolog = Prolog()
11
12
# Prolog-Logik einbetten
13
prolog.assertz("einbrecher_erkannt(Zeit, Gewicht) :- Zeit >= 22, Gewicht > 50")
14
prolog.assertz("aktion_sprenger_an(Zeit, Gewicht) :- einbrecher_erkannt(Zeit, Gewicht)")
15
16
# Funktion zur Steuerung des Gartensprengers
17
def schalte_gartensprenger_an():
18
    GPIO.output(15, GPIO.HIGH)  # GPIO-Pin 15 aktivieren
19
    print("Gartensprenger aktiviert!")
20
    time.sleep(5)  # Sprinkler für 5 Sekunden aktiv halten
21
    GPIO.output(15, GPIO.LOW)  # GPIO-Pin 15 deaktivieren
22
    print("Gartensprenger deaktiviert!")
23
24
# Funktion zur Überprüfung der Sensordaten
25
def überprüfe_matte(zeit, gewicht):
26
    abfrage = list(prolog.query(f"aktion_sprenger_an({zeit}, {gewicht})"))
27
    if abfrage:
28
        schalte_gartensprenger_an()
29
    else:
30
        print("Keine Aktion erforderlich.")
31
32
# Beispiel: Simulation der Sensormatte
33
try:
34
    while True:
35
        # Sensordaten simulieren (hier durch Benutzereingabe)
36
        aktuelle_zeit = int(input("Geben Sie die aktuelle Stunde ein (0-23): "))
37
        gemessenes_gewicht = float(input("Geben Sie das gemessene Gewicht ein (kg): "))
38
39
        überprüfe_matte(aktuelle_zeit, gemessenes_gewicht)
40
        time.sleep(1)  # Wiederholung alle 1 Sekunde
41
except KeyboardInterrupt:
42
    print("Programm beendet.")
43
finally:
44
    GPIO.cleanup()  # GPIO-Pins zurücksetzen

von Harald K. (kirnbichler)


Lesenswert?

Wieviel Flash-ROM hat die Sensormatte?

von Sherlock 🕵🏽‍♂️ (rubbel-die-katz)


Lesenswert?

Woher sollen wir wissen, ob und wie deine unbekannte Sesormatte 
programmierbar ist? So wie du fragst, hast du vermutlich noch nie etwas 
programmiert und auch noch keine Sensormatte in der Hand gehabt.

Suche dir erst mal eine konkrete Sensormatte aus, die auf das gewünschte 
Gewicht reagiert. Dann schauen wir weiter.

Die Sache mit dem Gartensprenger solltest du nochmal überdenken. Ich 
würde nicht den Garten sprengen wollen. Ein Rasensprinkler ginge schon 
eher, ist aber im Winter aus mehreren Gründen problematisch. Du kommst 
bestimmt selbst drauf, wenn du etwas länger darüber nachdenkst.

: Bearbeitet durch User
von Harald K. (kirnbichler)


Lesenswert?

Sherlock 🕵🏽‍♂️ schrieb:
> Die Sache mit dem Gartensprenger solltest du nochmal überdenken.

Ach, ein paar Gramm C2, ein Zünder, und schon hat sich das erledigt.

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

> eine konkrete Sensormatte
Hier beispielsweise:
https://www.conrad.de/de/p/pentatech-alarmtrittmatte-indexa-schwarz-95-db-33620-1175154.html
Inklusive Alarmgeber, auch als Katzenklingel verwendbar

von Sherlock 🕵🏽‍♂️ (rubbel-die-katz)


Lesenswert?

Christoph db1uq K. schrieb:
> auch als Katzenklingel verwendbar

Genau das wollte er ja gerade nicht, sondern ab 50 kg.

: Bearbeitet durch User
von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Großkatzen
wenn der Löwe zweimal klingelt
Es gibt keine genauen Angaben zum Schalter, jedenfalls ist das rein 
digital, Löwe steht auf der Matte oder nicht.

von Harald K. (kirnbichler)


Lesenswert?

Für die Programmierbarkeit wäre also eine analoge Sensormatte 
angesagt, also eine, die ein mit der Belastung korrelierbares Signal 
abgibt.

(Welcher Einbrecher alledings stellt sich auf die Fußmatte, und macht 
nicht stattdessen die Terrassentür auf?)

von Adrian (bizzi)


Lesenswert?

Die Fußbodenmatte kann man sich sicherlich selbst bauen: Einfach eine 
Personenwaage auseinanderbauen.

von Harald K. (kirnbichler)


Lesenswert?

Aber ist das dann programmierbar? Und in welcher Programmiersprache? 
Nutzt man Container, macht man das ganze webbasiert, und wenn man Teile 
des Codes in einer Cloud laufen lässt, Azure oder AWS?

Das muss doch erst mal geklärt werden.

von Adrian (bizzi)


Lesenswert?

Schlachte doch einfach die Sensoren aus einer Personenwaage aus, kleb 
die unter einer Matte und schließ das ganze an GPIO eines Raspberry's an 
oder so - Dann kannst du deine Programmiersprache frei wählen (ob nun 
Python, C++, Java oder gar Javascript mittels Node.js wäre Wurscht).

von Sherlock 🕵🏽‍♂️ (rubbel-die-katz)


Lesenswert?

Adrian schrieb:
> Schlachte doch einfach die Sensoren aus einer Personenwaage aus, kleb
> die unter einer Matte

Wenn das mal so einfach wäre, und Wetterfest.

> und schließ das ganze an GPIO eines Raspberry's an oder so

Ziemlich naiv.

: Bearbeitet durch User
von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Es gäbe auch noch die umweltfreundliche Version, ohne Strom oder 
Trinkwasserverschwendung. Nennt sich Furzkissen oder Quietscheente.

Ich habe so eine Matte vor Jahrzehnten in einem Anfall geistiger 
Umnachtung bei Völkner mitbestellt. Ohne Alarmgeber oder Kabel, nur die 
Matte. Wenn ich sie wiederfinde, kann ich ja mal die Charakteristik 
aufnehmen.

von Jens B. (dasjens)


Lesenswert?

Harald K. schrieb:
> Sherlock 🕵🏽‍♂️ schrieb:
>> Die Sache mit dem Gartensprenger solltest du nochmal überdenken.
>
> Ach, ein paar Gramm C2, ein Zünder, und schon hat sich das erledigt.

Was hat Citroen damit zu tun?
Ich würde Zeh4 nehmen.

von Franko S. (frank_s866)


Lesenswert?

Bei Wind fliegt dir die Matte davon bzw. baumelt lustig wie eine Fahne 
im Wind, solange das Kabel noch hält.

von Martin M. (wellenkino)


Lesenswert?

lustiges Feld zum experimentieren.
Ein Blechstückchen an einen offenen Verstärkereingang und mal messen wie 
hoch der Brummpegel ansteigt wenn die Katze draufgeht :-)

von Joachim B. (jar)


Lesenswert?

Philipp schrieb:
> Ich möchte gerne eine Sensormatte programmieren

wenn du eine programmierbare Sensormatte findest, optimal nach 
Datenblatt programmmieren.
Sonst muß sie wohl erst erfunden werden.

von Rainer W. (rawi)


Lesenswert?

Christoph db1uq K. schrieb:
> Inklusive Alarmgeber, auch als Katzenklingel verwendbar

Welche Katze bringt schon 50 kg auf die Waage?

von F. (radarange)


Lesenswert?

Rainer W. schrieb:
> Christoph db1uq K. schrieb:
>> Inklusive Alarmgeber, auch als Katzenklingel verwendbar
>
> Welche Katze bringt schon 50 kg auf die Waage?

Tiger.

von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Eine Sensormatte ist genau das, was der Name verspricht, ein 
mattenförmiger Sensor. Ein Sensor ist per Definition erstmal nur ein 
Wandler einer nicht-elektrischen Größe (hier mechanischer Druck)in die 
Veränderung einer zunächst analogen elektische Größe, z.B. Widerstand, 
Kapazität oder Induktivität.

Folgen aus diesen Änderungen wie Frequenzen, Strom, Spannung,
PWM-Verhältnisse oder Schaltvorgänge sind schon sekundär und werden 
durch eine nachfolgene Elektronik realisiert.

Das muss dann nur noch digitalisiert oder direkt ausgewertet werden ... 
an der Matte selbst wird dabei nichts programmiert.

: Bearbeitet durch User
von Rolf M. (rmagnus)


Lesenswert?

Sherlock 🕵🏽‍♂️ schrieb:
> ie Sache mit dem Gartensprenger solltest du nochmal überdenken. Ich
> würde nicht den Garten sprengen wollen. Ein Rasensprinkler ginge schon
> eher, ist aber im Winter aus mehreren Gründen problematisch.

Den Sprinkler braucht man erst nach der Sprengung, um das Feuer zu 
löschen. Aber wer hat schon einen überdachten Rasen?

Jens B. schrieb:
>> Ach, ein paar Gramm C2, ein Zünder, und schon hat sich das erledigt.
>
> Was hat Citroen damit zu tun?
> Ich würde Zeh4 nehmen.

Also wenn schon Zitrön, dann den Klassiker 2CV.

F. schrieb:
>> Welche Katze bringt schon 50 kg auf die Waage?
>
> Tiger.

Die sind bei uns recht selten geworden. Aber klar, wenn doch mal einer 
vorbei kommt, ist es gut, die Gewissheit zu haben, dass er nassgespritzt 
wird.

von Benedikt L. (Firma: Dem Ben seine Leiche) (dembenseineleiche) Flattr this


Lesenswert?

Wägezellen mit HX711 unter die Fußmatte!
Dann weiste auch sofort wie fett deine Besucher sind und kannst auch 
noch ein Nahrungsaufnahme ermitteln. Rein mit 85kg und raus mit 95 kg. 
Also hat der Delikwent dich um 10 kg erleichert.

von Jens B. (dasjens)


Lesenswert?

Rolf M. schrieb:

> Jens B. schrieb:
>>> Ach, ein paar Gramm C2, ein Zünder, und schon hat sich das erledigt.
>>
>> Was hat Citroen damit zu tun?
>> Ich würde Zeh4 nehmen.
>
> Also wenn schon Zitrön, dann den Klassiker 2CV.
>

Es ging eher um die Knete von Semtex.

von Daniel F. (df311)


Lesenswert?

Jens B. schrieb:
> Rolf M. schrieb:
>
>> Jens B. schrieb:
>>>> Ach, ein paar Gramm C2, ein Zünder, und schon hat sich das erledigt.
>>>
>>> Was hat Citroen damit zu tun?
>>> Ich würde Zeh4 nehmen.
>>
>> Also wenn schon Zitrön, dann den Klassiker 2CV.
>>
>
> Es ging eher um die Knete von Semtex.

ähm, der bekannte Plastiksprengstoff heißt C4. Und Semtex ist ebenfalls 
ein Sprengstoff.

von Harald K. (kirnbichler)


Lesenswert?

Daniel F. schrieb:
> ähm, der bekannte Plastiksprengstoff heißt C4.

C1 bis C3 gibt es aber auch, die haben nur ein abweichendes 
Mischungsverhältnis.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.