Hallo Arduino-Freunde!
Bin ein 60j. ANFÄNGER! in Sachen Arduino, kann nur Sketche abschreiben oder .ino Dateien kopieren.
Weil man mir meinen Drahtzaun, den ich nicht sehe, weil Sträucher dazwischen sind, mehrmals im Jahr beschädigt und der Verursacher immer abhaut ohne sich zu melden, möchte ich an den 5 Metallzaunsäulen 5x Nirosta Rohr mit isoliertem "Klöppel" wie bei einer Glocke anbringen, der kontakt gibt wenn die Zaunsäule schief zu stehen kommt. (Klöppel verbindet sich mit dem Rohr).
Denke an einen ESP8266-01 der im Schlafmodus ist und wenn Kontakt ist, aufwacht und zum 2. ESP8266-01 an dem ein Relais hängt, Alarm gibt. (Relais schaltet Hupe oder ähnliches).
Bräuchte hierzu zwei Programmiercodes für beide ESP8266-01. Biite helfen, DANKE!
Hi
Was Du suchst, wird ein Neige-Sensor sein - hat den Vorteil, daß das Teil in sich dicht ist und Dem die Umwelt-Einflüsse 'herzlich egal' sind.
Stichwort Umwelt: Wie soll der ESP vor der Umwelt geschützt werden und wie möchtest Du Diesen versorgen?
Was soll passieren, wenn der Sensor Alarm schlägt?
Denke, Es wird wenig sinnvoll sein, wenn Du alle zwei Wochen die Batterien 'der Reihe herum' austauscht und wohl auch, wenn Du mit erhobener Grabegabel dem Zaunbieger entgegen gehst.
Was sagen die Kollegen 'in Grün' zu den Vandalismus-Schäden?
MfG
... liebling-hast-du-die-selbstschussanlage-ausgestell
(leider auch Nichts mehr los, beim Darwin-Preis ...)
Alle 5 Klöppel der Zaunsäulen sind parallel miteinander verbunden. Also brauch ich nur einen ESP8266, der wird aus einem Kleinen Accu mit einer kleinen Solarzelle und entsprechender Ladeautomatik versorgt wird. Also Stromversorgung ist gesichert..
Zum Alarm..es genügt mir wenn beim 2. ESP8266 eine Led zum Leuchten kommt. Signal kann ich dann selbst weiterverarbeiten.
Brauche also nur die beiden Softwaren, 1x für den Sende ESP und 1x für den Empfang ESP.
Danke.
Geggi1958:
Brauche also nur die beiden Softwaren, 1x für den Sende ESP und 1x für den Empfang ESP.
Du möchtest somit, dass wir dir den Sketch schreiben ?
Das ist nicht Sinn des Forums. Hier heißt es "Hilfe zur Selbsthilfe".
Also schreiben deinen Sketch und wir helfen dir dabei.
Es gibt übrigens sehr viele Beispiele in den Libraries zum ESP8266, da kannst du mit üben und anfangen.
Das was du suchst, ist als Beispiel bereits in der IDE dabei bzw. im Internet zu finden.
Du kannst mit den Klöppeln auch eine Selbsthalteschaltung triggern, damit erst den ESP anwerfen, senden, Rückbestätigung auswerten und Selbsthalteschaltung ausschalten. So braucht der uC gar keinen Strom.
ElEspanol:
So braucht der uC gar keinen Strom.
Das ist wohl etwas zu optimistisch. Viel weniger wäre besser.
Gruß Tommy
Tommy56:
Das ist wohl etwas zu optimistisch. Viel weniger wäre besser.
Klöppel offen -> Selbsthalteschaltung aus -> KEIN Stromverbrauch im standby.
Im Alarmfall nur Stromverbrauch für maximal wenige Minuten. Einziger Nachteil ist eine Verzögerung von wenigen Sekunden, bis sich die beiden verbunden haben.
ElEspanol:
Klöppel offen -> Selbsthalteschaltung aus -> KEIN Stromverbrauch im standby.
Im Alarmfall nur Stromverbrauch für maximal wenige Minuten. Einziger Nachteil ist eine Verzögerung von wenigen Sekunden, bis sich die beiden verbunden haben.
Das ist aber mehr als nichts
Gruß Tommy
Hallo ElEspanol!
Ja, genau das wär das Richtige, aber leider verstehe ich nur "Bahnhof"..hab in der IDE gelesen von einem Server und AP usw...wie gesagt, kann flashen, elektrisch anschliessen, noch den SSID und PW ändern, aber dann hat es sich. Bin eh beim lernen, aber bin halt leider nicht so wie Ihr in eine gute Schule gegangen, wohne am Land, leider, aber wenn mir ein bisserl helfen würdest, oder tipps geben, wäre ich schon zu frieden.
Wenn ich nur wüsste wie man einen ESP zum starten bringt, ausser die 3,3Vanzulegen, und wenn ich wüsste wie der ESP zum anderen ein Signal schickt mit dem Befehl die Led einzuschalten, wäre ich schon zu frieden....Bitte Danke, gib Dir einen Ruck, Du weisst es bestimmt, das hab ich jetzt gelesen von Dir, Danke
Da kommt es erst mal darauf an, welche ESP8266 Du verwenden willst.
Die ESP8266-01 werden meist mit dem AT-Befehlssatz ausgeliefert (der ist nervig) und benötigen ansonsten einen USB-Serial-TTL-Wandler zur Programmierung.
Die WEMOS D1 mini pro oder die WEMOS 1.0 haben einen ESP8266-12E-Chip und vor allem auch die Hardware für den USB-Anschluss zum Programmieren mit drauf. Damit lässt es sich einfacher in der IDE entwickeln.
Wenn Du dann später aus Stromspargründen zu den anderen wechseln willst, ist das ja kein Problem, Du kannst aber bequem entwickeln.
Auch als Empfehlung: benutze portabele IDE, davon kannst Du mehrere parallel betreiben. Z.B. kannst Du eine für den AP und eine für den Sensor nutzen und problemlos von beiden Debugausgaben erhalten. Das vereinfacht die Entwicklung ungemein.
Gruß Tommy
Die Geschichte geht u.U. Sogar nich einfacher. Sobald sich der client am AP anmeldet, gibt der AP Alarm. wifi_softap_get_station_num();
Du sollest mal etwas über „arduino selbsthaltung“ googeln und dich da etwas einlesen. Anstatt des Startknopfes verwendest du eben deine Klöppel. Und zum Ausschalten sendest du per udp vom AP aus einen passenden Befehl
Ich hab hier mal ein kleines Beispiel für Dich, wie das so ablaufen könnte. Ich verwende das für verschiedene Haustürklingeln. Der Sender ist ein ESP8266-01, der Empfänger ein Raspberry Pi, zur direkten Auswertung. Es sollte aber auch mit einem zweiten ESP als Empfänger aufzubauen sein.
Hier mal mein Sketch:
#include <ESP8266WiFi.h>
#include <WiFiUDP.h>
//Identifier des Moduls (bei mehreren Klingeln)
//18:FE:34:DC:ww:xx = 10
//18:FE:34:DC:ww:yy = 20
//18:FE:34:D2:ww:zz = 30
//Zugangsdaten Accesspoint(WLAN)
#define SSID "XXXXXX"
#define PASSWORD "YYYYYY"
//kontaktierter Melde-Server
#define HOST "192.168.100.74"
//lausche auf folgendem Port
#define PORT 5444
WiFiUDP udpServer;
int conn_time;
int sensorID;
String mac;
void setup() {
//seriellen Monitor initialisieren, zur Kontrolle
Serial.begin(9600);
delay(10);
//Verbinden mit WiFi-Netzwerk
Serial.println();
Serial.println();
Serial.print("Verbinde mit ");
Serial.println(SSID);
WiFi.begin(SSID, PASSWORD);
//feste IP / Signatur der config-Funktion ist: „IP, DNS, SUBNET, [DNS-Server]“,
WiFi.config(IPAddress(192,168,100,198), IPAddress(192,168,100,2), IPAddress(255,255,255,0), IPAddress(192,168,100,2));
while (WiFi.status() != WL_CONNECTED) {
delay(500);
}
if (WiFi.status() == WL_CONNECTED) {
Serial.println("");
Serial.println("WiFi Verbindung");
Serial.print("IP address: ");
Serial.println(WiFi.localIP());
Serial.print("mac address: ");
mac = WiFi.macAddress();
Serial.println(mac);
}
else {
Serial.println("");
Serial.println("keine WiFi Verbindung");
ESP.deepSleep(100000);
Serial.println("gehe schlafen");
}
//Sensor-ID zuweisen (für Auswertung am Server)
if (mac == "18:FE:34:DC:ww:xx") {
sensorID = 10;
}
if (mac == "18:FE:34:DC:ww:yy") {
sensorID = 20;
}
if (mac == "18:FE:34:D2:ww:zz") {
sensorID = 30;
}
Serial.print("Sensor ID: ");
Serial.println(sensorID);
// UDP-Server starten
udpServer.begin(PORT);
udpServer.beginPacket(HOST, PORT);
udpServer.print(sensorID + 2); //Beispiel-Kennung für Glockenschlag
udpServer.endPacket();
delay(100);
ESP.deepSleep(0, WAKE_RF_DEFAULT);
}
void loop() {
}
Die Schaltung wird mit zwei AA-Batterien betrieben. Dein "Klöppel" fungiert prktisch als Klingelknopf und schaltet ein. Der ESP arbeitet die Setup-Sequenz ab und legt sich am Ende zurück in den Tiefschlaf. Du solltest zusätzlich noch die Betriebs-LED des ESP entfernen, sonst lutscht diese die Batterei in wenigen Tagen leer.
Bei mir sind derzeit 3 dieser Geräte im Dauereinsatz, eines davon seit einem dreiviertel Jahr mit noch immer dem ersten Batteriesatz.
Nachteile: 1. Dein W-Lan muß weit genug reichen und stabil sein und 2. gibt es in dieser Version keine Rückmeldung.
Frohes Schaffen
eMeS
Hallo Freunde!
Ja jetzt bin ich total vom Hocker, dass Ihr mir helft finde ich SUPER! Danke an Alle die mir helfen. Werd mich gleich morgen daran machen die Bauteile zu bestellen und zu entwerfen, Danke erstmals. Gebe Euch dann Bescheid!
Hallo eMeS!
Habe heute mal abgetippt, hatte beim Abtippen einige Fehler...konnte aber alle beseitigen bis zur Zeile:
WiFi.config(IPAddress(192,168,100,198), IPAddress(192,168,100,2), IPAddress(255,255,255,0), IPAddress(192,168,100,2));
Da bleibt er stehen mit dem Fehler: In funktion 'void setup()': error:expected ')' before 'while'
Expected ')' before 'while'
Glaube dass da eine Klammer zuviel oder zu wenig ist.
Bitte kontrolliere nochmals. Vielen Danke!
Du bist ja mal wirklich lustig!
Wie sollen wir denn deine Tippfehler finden und korrigieren...?
Glaube dass da eine Klammer zuviel oder zu wenig ist.
Ja. Glaube ich auch.
Nur nicht in der Zeile, die du zeigst.
WiFi.config(IPAddress(192,168,100,198), IPAddress(192,168,100,2), IPAddress(255,255,255,0), IPAddress(192,168,100,2));
sieht man doch
WiFi.config (IPAddress(192,168,100,198), IPAddress(192,168,100,2), IPAddress(255,255,255,0), IPAddress(192,168,100,2) );
sieht man
war ja auch noch früh am Morgen