Forum: Mikrocontroller und Digitale Elektronik Passender uC für Alarmanlage gesucht


von Robert R. (robertr)


Lesenswert?

Hallo,

bisher habe ich mich immer mit Analogtechnik begnügt, doch da ich nun 
mit dem Gedanken spiele eine Alarmanlage zu bauen komme ich um einen uC 
nicht herum.

Daher bin ich nun auf der Suche nach einem passenden Controller. 
Folgende Kriterien sind erwünscht/Pflicht:

-Vorzugsweise CCBAS oder alternativ ähnliche Pascalsprachen zur 
Programmierung
-Platz für min. 3 Sensoren (je ein Port)
-Min. 5 Ausgänge zur betätigung des Handys und eines Beepers/LED, ideal 
wären 15 (oder evtl noch mehr verfügbar?)
-Nach "Stromausfall" automatisches und selbstständiges Wiedereinleiten 
des Programms (ist meines Wissens nach aber immer so)

Da ich mich in Delphi sehr gut auskenne und die Sprache dem CCBAS extrem 
ähnelt wäre das natürlich ideal für mich da ich mich in dieser Sprache 
wunderbar austoben kann, auch habe ich bereits mal einen uC in CCBAS 
umprogrammiert. Andere Sprachen müsste ich erst erlernen und würde sie 
daher gerne vermeiden, zumal für meine Anwendung CCBAS absolut 
ausreicht.

Gedacht ist, dass ein Port bei den Sensoren standardmäßig immer offen, 
ein zweiter immer geschlossen sein muss und der dritte als Zusatz für 
besondere Sensoren genutzt und dementsprechend programmiert wird.

Zur Ansteuerung des Handys hatte ich mir gedacht, von der Platine zwei 
Kabel pro Taste über einen Transistor laufen zu lassen, welcher durch 
den Strom des Ports ein-/ausgeschaltet wird.
Gibt es eine Möglichkeit die Vielzahl an Transistoren zu umgehen?
Da der uC meines Wissens nach mit 5V DC betrieben wird gehe ich davon 
aus dass an den Ports ebenfalls 5v DC anliegen, stimmt das? Wie viel 
Strom fließt bei geöffneten Ports über selbige? Kann man den Strom eines 
Ports ohne Widerstand über einen Sensor wieder zurück in den uC fließen 
lassen oder resultiert daraus ein Kurzschluss?


Ebenfalls wäre es interessant zu erfahren welche sonstigen 
Baukomponenten ich benötige um den von euch empfohlenen uC zu 
programmieren und zu betreiben.

Besten Dank und schönen Gruß
Robert

von seennoob (Gast)


Lesenswert?

Hallo Robert

Das kannst mit Atmega und PIC machen. Bei µCs ist aber C eher der 
Standart.

von tom (Gast)


Lesenswert?

Robert,

Der Umstieg von einer prozeduralen Sprache wie Pascal nach C ist nicht 
schwer.
Für AVR's gibt es den freien WinAvr gcc und mit AvrStudio eine komplette 
IDE inklusive source-level debugger und simulator mit dazu. Dort wird 
der compiler von Hause aus mit integriert/unterstützt.
Du brauchst neben einer Ziel-HW dann noch einen JTAG Adapter. Ein 
AvrDragon ist für Studis recht günstig (35€ oder so) zu bekommen, ein 
Atmega32, 5V Versorgung und ein 10pol. Jtag-Stecker dazu lassen sich 
sogar auf Lochraster in ein paar Minuten aufbauen...

Viel Spass + Erfolg, tom.

von Frank B. (frank501)


Lesenswert?

Hallo,

versuch es mal mit E-Lab AVRCo. Ist eine Pascal Entwicklungsumgebung für 
AVRs, die auch die X-Mega Reihe von Atmel unterstützt.

www.e-lab.de

Als µC kannst Du fast alles verwenden, was am Markt erhältlich ist.

Frank

von David .. (david1)


Lesenswert?

Ich kann zwar nicht bei der Sprache weiterhelfen, aber geb trotzdem mal 
meinen Senf dazu.

Ich würde mich keinesfalls mit 3 Schleifen begnügen, ich hab bei unsrer 
gekauften Terxon SX 9 glaub ich, sind zwar nochnicht alle belegt aber 
mir wärs lieber ich hätt noch mehr.

Wenn man schon selber baut kann man auch Problemlos 15-20 
implementieren, aber wozu zur Hölle brauchst du 15 Ausgänge?

Ich würde dir eher raten dem Teil 1 RS485 und eine RS422 Schnittstelle 
zu spendieren, mit 485 kann man dann mit nur 2 Drähten noch zusätzliche 
Sensoren einbinden, und mit 422 hat mein eine sichere Übertragung über 
die über einen Adapter wieder ein GSM-Modem angeschlossen werden kann.

Außerdem würde ich die Bedienung ebefalls über den Bus laufen lassen, so 
dass man im ganzen Haus "Bedienstationen", sei es RFID, Code oder 
Schlüsselschalter installieren kann, das alles ist für mich wichtig und 
fehlt mir derzeit leider in manchen Teilen, bzw das macht das System 
dann auch ziemlich Zukunftssicher und Ausbaufähig.

von oldmax (Gast)


Lesenswert?

Hi
Nun, auch ich bin der Meinung, für die Ausgabe reicht ein Relais für 
"lauten" Alarm und vielleicht noch eine Betriebsmelde-LED.
Viel netter sind die Alarmanlagen mit einem "stillen" Alarm, wo der 
Bösewicht auf frischer Tat erwischt werden kann. Ich hab  mal sowas für 
ein Handy programmiert, um ein paar "Außenposten" zu überwachen. Da bei 
der Überwachung von Alarmschleifen fast nur Logik programmiert werden 
muß, bietet sich auch mal Assembler an. Die Anlage wird mit einem 
Delphi-Programm mit Rufnummern gefüttert, die für verschiedene Aufgaben 
angerufen werden:
Da ist ein regelmäßiger Kontrollruf in einem vorzugebenden Zeitraster.
Natürlich gibt's auch eine Überwachung der Betriebsspannung.
Auch wird ein Fehlalarm an eine Rufnummer gemeldet. *
Bei einem Alarm werden die vorgegebenen Rufnummern mehrfach nacheinander 
per RS 232 und AT- Befehlen aufgerufen.
Die Alarmleitungen können zu Gruppen verbunden werden, so das ein Alarm 
nur eintritt, wenn 2, 3 oder vier Alarmeingänge gleichzeitig 
angesprochen werden. Fehlalarm wird dann erkannt, wenn nicht die gesamte 
Gruppe ausgelöst wurde. Auch kann festgelegt werden, ob Öffner oder 
Schließer auf den Eingängen liegen.
Die Parameter werden über ein kleines Delphi-Programm in den Controller 
übertragen. Zur Zeit liegt's allerdings mal wieder auf Eis wegen 
Zeitmangel. Das Programm ist auf beiden Seiten zwar fertig, aber es 
scheitert noch am geeigneten Handy mit entsprechender Schnittstelle. Ein 
altes C 35 hat leider den Geist aufgegeben.....
Ach ja, wenn du bereits Erfahrungen mit dem Programmieren hast, ist 
Assembler auch kein so großes Problem und bei µC's mußt du sowieso 
umdenken.
 Gruß oldmax

von Robert R. (robertr)


Lesenswert?

Hallo,

danke für eure Antworten.

@ David1: Prinzipiell reichen wie geschrieben 5 Ausgänge, somit hätte 
man ein Beeper/LED und 4 Tasten auf dem Telefon. Möchte man jedoch die 
Sache weiterführen, um entsprechend des Events eine passende Information 
per SMS zusenden, benötigt man schon mal 10 Ausgänge für die 
Zahlen(Buchstaben) und noch Weitere zum verarbeiten der SMS.
Die Verbindung zum PC zwecks Programmierung sowie die Verbindung zum 
Mobiltelefon soll so simpel wie möglich gehalten werden. Da ich ein 
altes S/W Handy benutzen möchte fallen irgendwelche Datenkabel flach, 
die möchte ich auch gar nicht. Jeweils 2 Drähte werden pro Taste auf der 
Platine verlötet und außen auf einer Platine via Transistor verbunden.
Ebenfalls sind "moderne Erweiterungen" absolut unerwünscht, die 
Alarmanlage soll in einer Lagerhalle eingesetzt werden, bei der es 
schlicht darum geht, die Alarmanlage so klein und unauffällig wie 
möglich zu belassen (damit sie möglichst nicht entdeckt wird) und ganz 
simpel funktioniert - programmieren, zusammenbauen, 12v Autobatterie 
anschließen und das wars. Eine solche Alarmanlage haben wir bereits 
woanders verbaut, allerdings habe ich die nicht selber gebaut sondern 
nur ein mal etwas umgeschrieben.

@ Tom: So ein ähnliches Kabel hatte ich auch damals verwendet. 
Allerdings verstehe ich das mit dem Adapter und der Ziel-HW noch nicht 
ganz. Beim Adapter vermute ich, dass der uC von der Platine abgesteckt 
und im Adapter aufgesteckt wird zwecks Programmierung, ist das so 
richtig? Hatte damals zum Programmieren auch eine separate Platine wenn 
ich mich recht erinnere. Und was ist mit Ziel-HW gemeint?

@ frank501: Danke für den Tipp, leider sind die Infos darüber nicht ganz 
so ausführlich was ich eben über Google gesehen habe, aber es kommt 
sicherlich als eine mögliche Alternative in Betracht da ich ungern auf 
eine andere Sprache umlernen will. Pascal (Delphi) kann ich recht gut 
und habe da auch schon so manche Programme (PC) geschrieben, also 
reichts für uCs sicher dicke aus. Nur ist mir die Materie schon so 
kompliziert genug, da sollte wenigstens die Sprache für mich 
verständlich sein sonst hätte ich bei einem Fehler keinen blassen 
Schimmer obs nun an der Hard- oder Software liegt. Als Einstieg denke 
ich wäre es am Besten, alles so simpel wie möglich zu gestalten.


Habt ihr noch Informationen zu meinen anderen Fragen aus dem Startpost? 
Die wären recht interessant zu wissen um sich schon mal um eine mögliche 
Platine zur Ansteuerung des Handys und der Sensoren Gedanken zu machen.


Danke!

Robert

von Robert R. (robertr)


Lesenswert?

Hoch damit!

von cave (Gast)


Lesenswert?

Gibt da auch noch BASCOM zum programmieren...sehr einfach zu erlernen, 
noch einfacher als c....Als Controller nimmste einfach irgendwas ab 
atmega8 - je nachdem wie groß dein Programm wird.

von nicht_eingeloggt (Gast)


Lesenswert?

Normalerweise gibt es doch bei einem solchen OP immer jemand der sowas 
sagt wie: "Fang mit einer blinkenden LED an!"
Muss ich das machen? Es ist doch irgendwie offensichtlich dass das für 
den TO ein etwas zu hoher Einstieg ist, oder?

von ich (Gast)


Lesenswert?

nicht_eingeloggt schrieb:
> Muss ich das machen? Es ist doch irgendwie offensichtlich dass das für
> den TO ein etwas zu hoher Einstieg ist, oder?

Naja ansich schon, aber so kompliziert ist eine Alarmanlage auch nicht, 
finde ich. Warscheinlich wird er nicht drumrum kommen, aber ich denke, 
bei Alarmanlagen ist es hauptsächlich die Überlegung, welche Sensoren 
schließe ich mit welchen zusammen und wie Schalte ich scharf bzw. was 
muss gegeben sein, damit Scharfgestellt werden kann oder eben, was löst 
den Alarm aus. Könnte man evtl. als simple Version mit Logik-Gattern 
aufbauen ;)


@Robert:
von der Firma "mikroelektronika" gibt es für PICs und AVRs einen 
Pascal-Compiler:
http://www.mikroe.com/eng/products/view/10/mikropascal-pro-for-pic/
http://www.mikroe.com/eng/products/view/227/mikropascal-pro-for-avr/

Gibt es mit beschränkter Dateigröße auch als Freeware.

Robert R. schrieb:
> 12v Autobatterie
> anschließen und das wars.

Dann musst du aber auch eine Batterieüberwachung machen, die dir sagt, 
wenn die Batterie allmählich leer wird.

Ich hab in meiner Ausbildung auch eine Alarmanlage gebaut. Daher würde 
ich dir Raten pro Sensor-Art (also z.B. Bewegungsmelder) mindestens eine 
Schleife zu machen, da du so auswerten kannst, welcher Sensor bzw welche 
art Sonsor ausgelöst hat. Zudem ist es üblich, ALLE Sensoren und somit 
auch ALLE Schleifen als Öffner zu beschalten, damit auch ausgelöst wird, 
wenn ein Kabel durchgeschnitten wird.

Und solltest du eine Sirene kaufen wollen, ich meine mich zu erinnern, 
das es länger als 2 Minuten NICHT ERLAUBT ist. Lichtsignale können aber 
solange du es willst leuchten.

Als µC kannst du ansich jeden nehmen, der mehr als 20 IOs hat.

Ich bin ein PIC-Benutzer, also könntest du z.B. den PIC18F4550 nehmen, 
der hat 35 IOs (z.B. 14 Ausgänge fürs Handy, 1 Ausgang Sirene, 1 
Ausgang, 10 Schleifen-Eingänge, 3 Ausgänge für Status-LEDs, 1 Eingang 
für Schlüsselschalter -> 30 IOs) und lässt dir die Möglichkeit eine 
USB-Kommunikation zu programmieren, um z.B. Fehler/Meldungen auszulesen.
Als Ein-Ausgänge musst du nur überlegen, was du brauchst. Willst du als 
Eingabe ein Tastenfeld mit 8 Beinchen haben oder noch ein Display, das 
auch nochmal 7 Pins braucht, wirds allmählich knapp. Es gibt aber auch 
PICs die mehr IOs haben.


Robert R. schrieb:
> Möchte man jedoch die
> Sache weiterführen, um entsprechend des Events eine passende Information
> per SMS zusenden, benötigt man schon mal 10 Ausgänge für die
> Zahlen(Buchstaben) und noch Weitere zum verarbeiten der SMS.

Hier solltest du überlegen, ob und wie du es machst. Denn sollte da z.B. 
mal das T9 zwischen kommen oder sonstiges, was einen Standardmäßigen 
Ablauf behindert, wird das nicht so klappen, wie es soll und es wird 
evtl nochnicht mal abgeschickt. Hier gibt es aber auch ein SMS-Modul, 
das Befehle bekommt und die SMS von sich aus abschickt.

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.