Alarmanlage

:wink: :wink: :wink:
Gute Nacht

Hallo Savana,
was man auch noch berücksichtigen sollte, z.B. das scharf stellen an mehreren Stellen und vor
allem auch eine gewisse Zeitverzögerung beim Auslösen des Alarms. Ich will ja wenigstens Zeit genug
haben, die Anlage zu starten oder zu beenden, wenn ich das Haus betrete oder verlasse.
Ich setzt man voraus, das der Schalter dafür im Haus ist und nicht draußen angebracht ist.

Hallo savana!

Bei einer selbstgebauten Alarm-Anlage nimmt dir die Versicherung nicht den Schaden ab ( Wenn es dann doch zum Schaden kommt ).

Wenn du es dennoch versuchen willst: empfehle ich Hall-ICs und Magnete. ( Den Magnet klebst du auf einer Seite an, den Hall-IC auf der anderen. )

Damit hast du digitale Signale. Keine Rost-Stellen, keine "in etwa Alarme" etc. , weil das alles kontaktlos funktioniert.

MfG

Hallo Gurkengraeber
Wenn Du Deine Beitrag geben willst rate ich Dir alle bisherigen Diskussionsbeiträge zu lesen. savana hatte schon gesagt, daß er die Alarmanlage nicht als solche einsetzen will, sondern sie aus didaktischen Gründen bauen will..

savana:
... Ich habe schon 2 Alarmanlagen Zuhause, zudem komme ich aus diesem Bereich habe dies über viele Jahre Praktiziert .
Mir Persönlich geht es um das Ding mit dem Arduino, ob dies möglich Ist. Brauche ich vieleicht weitere Hardware um dies zu realisieren? Wie sieht die programmier Logik dazu aus usw usw...
Ich möchte den Arduino nicht wirklich als Alarmanlage gebrauchen.
...

Da savana aus dem Metier kommt glaube ich, daß er sich auskennt.
Darum ist Dein Beitrag für savana überflüssig.

Was dann maverick1509 machen will ist eine andere Sache.

Einen Hall-Sensor oder Magnetsensor als Tür-Fensteröffnungssensor zu nehmen sehe ich nicht sinnvoll da dieser eine Versorgungsspannung benötigt. Ein Reedkontakt ist da effektiver und einfacher.

Viele Grüße Uwe

Wenn Du Deine Beitrag geben willst rate ich Dir alle bisherigen Diskussionsbeiträge zu lesen.

Vielleicht schreibt Uwe schneller, als er lesen kann.

Einen Hall-Sensor oder Magnetsensor als Tür-Fensteröffnungssensor zu nehmen sehe ich nicht sinnvoll da dieser eine Versorgungsspannung benötigt. Ein Reedkontakt ist da effektiver und einfacher.

Hall-Sensoren lassen sich durch das Magnetfeld beeinflussen. Permanent-Magnete brauchen keinen Strom. Ein Reed-Relais ist natürlich auch eine Lösung, aber der Abstand zwischen Reed-Relais und Magnet muss dazu sehr gering sein. Hall-Sensoren haben da eine größere Toleranz.

http://imperia.mi-verlag.de/imperia/md/content/ai/ae/fachartikel/ei/2006/07/ei06_07_067.pdf

MfG

Hallo maverick1509,

Zum Thema Scharfschalten der Alarmanlage gibt es zwei Möglichkeiten zum einen die externe Schärfung oder die interne Schärfung.
Bei der externen Schärfung befinden sich die Scharfschalteinrichtungen außen z.B vorderer Eingang oder auch Kellertür als Eingang von beiden Stellen aus kannst du dann scharf oder unscharf schalten.
Wenn du also extern schärfen möchtest sind die Scharschalteinrichtungen meistens am Eingang bzw. Ausgang angebracht. Eine Scharfschalteinrichtung kann z.B ein Berührungsloser Leser sein der mit einem Transponder geschärft wird.
Scharfschalteinrichtungen als solches viele.
Sollte dann jemand versuchen bei dir einzubrechen um deinen Arduino zu klauen, geht dann sofort der Alarm los.
Bei der internen Schärfung wie es der Name schon sagt, schärfst du, während Du im Haus bist die Anlage intern scharf, z.B dein Haus ist sehr groß und möchtest Nachts wenn du schon im Bett liegst
mitbekommen ob jemand versucht in deinen Keller einzubrechen.
Gewisse Räume in denen du dich bewegst, müssen natürlich deine IR Melder aus deinem internen Bereich deaktiviert sein wie auch z.B das Fenster im Schlafzimmer wenn du vielleicht Nachts lüften möchtest.
Der Platz der internen Scharfschalteinrichtung sollte gut platziert sein wenn möglich nicht im
gesicherten Bereich, wenn ja muss dein Alarm Zeitverzögert sein (meistens sind das so 30 – 60 sec.) so dass du die Möglichkeit hast zu entschärfen bevor deine Interne Sirene Alarm gibt.
Kommst du vielleicht trotzdem in deinen überwachten Bereich hinein wird von der Alarmanlage ein sogenannter Voralarm gestartet dieser wiederum ist nur ein Warnsignal (Summer) das gleich die Interne Sirene losgeht. In 30-60 sec.
Ich hoffe ich konnte deine Frage(n) beantworten.

Gruss savana

Hallo an Alle,

habe versucht meine Alarmanlage zu erweitern, mit einer 2ten Alarmlinie.
Habe dazu meinen bestehenden Quell Code angepasst.
Beim Komplilieren ist kein Fehler aufgetreten trotz alle dem löst die 2te Alarmlinie nicht aus.
Komme momentan nicht weiter.
Vieleicht hat jemand eine Idee was im Quellcode nicht stimmt.

/*******************
*   Alarmanlage    *
********************/
int StatusEingang1 = A0;
int ledPinAlarm = 13;
int Alarmlinie1 = 0;
int StatusEingang2 = A1;
int ledPinAlarm2 = 12;
int Alarmlinie2 = 0;

void setup()         // Initialisierung 
{                             
 pinMode(ledPinAlarm,OUTPUT); // LED-Pin als Alarm
 pinMode(ledPinAlarm2,OUTPUT);
 Serial.begin(9600);
} 

void loop()           // Endlosschleife
{ 
   StatusEingang1=analogRead(Alarmlinie1);   // Alarmlinie wird eingelesen Widerstandswert
   StatusEingang2=analogRead(Alarmlinie2);
   Serial.println (StatusEingang1); 
   Serial.println (StatusEingang2);
 
  if (StatusEingang1 <400 || StatusEingang1>620) // Abfrage ob kleiner oder größer Wert 512
  {
   digitalWrite(ledPinAlarm, HIGH);   // Alarm LED einschalten für 5 sec
          
  } 
   else 
  {
   digitalWrite(ledPinAlarm, LOW);   // Alarm LED Aus
  }
  
  if (StatusEingang2 <400 || StatusEingang2>620) // Abfrage ob kleiner oder größer Wert 512
  {
   digitalWrite(ledPinAlarm2, HIGH);   // Alarm LED einschalten für 5 sec
          
  } 
  else
  {
   digitalWrite(ledPinAlarm2, LOW);   // Alarm LED Aus
  }
  
}

besten Dank vorab

Gruss savana

Hallo savana
Füge einige Seriel.print() ein um Veriablen auszugeben und zu sehen ob die Werte die sind dide Du Dir erwartest.
Su kannst Serial.print("schleife a"); auch verwenden um zu sehen ob bestimmte Programmteile überhaupt angesprungen werden.
Das ist die Theorie;
Die Praxis ist, daß da wenig Variablen sind und wenig auszugeben [schluchts] und das was auszugeben ist Du schon ausgegeben hast.

Was gibt
Serial.println (StatusEingang1);
Serial.println (StatusEingang2);
für Werte aus?

Blöde Frage:
Hast Du auf Pin 12 eine Led hingeschaltet?
Grüße Uwe

Hallo Uwe,

Danke für Deine schnelle Antwort,

habe am Ausgang Pin12 eine LED angeschlossen LED leuchtet munter vor sich hin ,habe den serial Monitor Pararlell dazu beobachtet habe einen Wert von ca. 120-150 ( Serial.println (StatusEingang2) der sich nicht grosartig ändern lässt.
Alarm Linie 1 ist funktionstüchtig.

Komme trotz alle dem nicht weiter.

Vielleicht kannst du mir im Quellcode zeigen was ich falsch gemacht habe.
Meine Programmier kenntnisse sind noch ganz am Anfang.

Gruss savana

Was mich ein wenig irritiert ist die Zuweisung am Anfang:

int StatusEingang1 = A0;
int StatusEingang2 = A1;

Die Variablen A0/A1 sind nicht definiert, kann man das so machen?
Wäre es nicht besser so:

int StatusEingang1;
int StatusEingang2;

@Schwarzfuss
Ich muß Dir widersprechen. A0 und A1 sind definiert. Das sind "Systemvariablen" die in einer Library (weiß jetzt nicht auswendig welche) mit #define deklariert sind und die Pins für die Analogen Eingänge sind.

Die 2 Zuweisungen

int StatusEingang1 = A0;
int StatusEingang2 = A1;

definieren die analogen Pins von denen die Werte gelesen werden.

@savana
Ich finde in dem Kode keinen Fehler.
Darum tippe ich auf einen Beschaltungsfehler.
Wenn der analoge Wert, obwohl Du den Widerstand des "Sensors" änderst, immer um 120-150 liegt heißt das, Daß mit der Schaltung etwas nicht stimmt. Kontrolliere nochmal den Schaltungsaufbau und die Widertandswerte.

Grüße Uwe

Vielen Dank für die Info Uwe,
dann ist das zumindest soweit klar und ich möchte hier nicht länger stören. 8)

Du störst nicht!!
Es ist nur etwas schwierig Fehler im Sketch zu finden wenn keine da sind. :wink: :wink: :wink:
Ciao Uwe

Hallo Uwe,

Habe den Schaltungsaufbau kontrolliert und festgestellt das ein Poti defekt ist.
Wenn ich jetzt ein Funktionierendes Poti nehme und am Analogeingang 1 die Werte verändere ,verändert sich auch der LEDPin 13 Zustand also soweit alles korrekt.
Wenn ich jetzt das gleich Funktionierende Poti nehme und am Analogeingang 2 die Werte verändere ,verändert sich der LEDPin 12 Zustand nicht, aber dafür LEDPin 13 . Das ist ja nicht gewünscht !!

Wenn es es von Deiner Seite aus kein Problem ist, Zeichne mir doch bitte den Schaltungsaufbau für 2 Potis.
zum Arduino Board auf.Da der QuellCode von Deiner Seite aus in Ordnung ist kann es nur noch das sein.

Besten Dank vorab

Gruss Savana

Habe den Schaltungsaufbau kontrolliert und festgestellt das ein Poti defekt ist.

Aha!

Wenn ich jetzt das gleich Funktionierende Poti nehme und am Analogeingang 2 die Werte verändere ,verändert sich der LEDPin 12 Zustand nicht, aber dafür LEDPin 13 . Das ist ja nicht gewünscht !!

Laut dem geposteten Kode schaltet
Eingang A0 die LED an PIN 13 und
Eingang A1 die LED an PIN 12.

Mehr kann ich dazu nicht sagen. Kontrollier bitte nochmal.
Schaltung einfach Poti zwischen + und Masse schalten und Schleifer an Analogen Eingang. LED mit Vorwiderstand von Ausgang auf Masse.

Wie groß ist der Poti?

Die Analogeingänge haben zwar einen relativ hohen Eingangswiderstand aber ein Sample- Kondensator im ATmega wird in kurzer Zeit geladen und wenn die Spannungsquelle zu hochohmig ist ergibt das komische Reaktionen. Notfalls einen Spannungsfolger mit einem Operationsverstärker einfügen.

Grüße Uwe

Hallo Uwe,

habe nochmals alles kontrolliert, und meinen Aufbau gezeichnet.
Zeichnung ist anbei.

Gruss savana

Poti ist jeweils 100Kohm groß

Hast Du einen Vorwiderstand am LED?
Wie groß sind die Poties?
Grüße Uwe

Hallo Uwe,

Ich habe 820 Ohm vorgeschaltet ohne Erfolg.
Spannungsfolger mit einem Operationsverstärker habe ich nicht zur Hand.

Gruss savana

Hallo Uwe,

habe mir vor lauter Verzweiflung einen Arduino Mega 2560 von einem Bekannten ausgeliehen.
Und siehe da es funktioniert.
Uwe kann es sein das der Bootloader im Arduino UNO etwas hat.
Vor ein paar Tagen wollte der Arduino UNO den Bootloader laden ,ist dann aber willkürlich abgebrochen beim laden.
Muss dieser vielleicht richtig nachgeladen werden.Wenn ja wie?

Sorry für die Umstände Uwe und besten Dank für Deine Hilfe.

@ All nochmals vielen Dank für den Support .

Gruss savana

Der Bootloader ist sowieso eine ständige Kummerquelle. Wenn es nicht auf jeden Euro ankommt, dann kauf Dir einen ISP. Den AVR ISP MK II gibt's schon unter 30 Euro (inkl. Versandkosten) http://de.rs-online.com/web/search/searchBrowseAction.html?method=getProduct&R=6962563. Damit lassen sich alle Bootloader Probleme nachhaltig umgehen und außerdem wird das Flashen dadurch schneller.