mikrocontroller.net

Forum: HF, Funk und Felder Funkbrücke für Türklingel und Türöffner gesucht


Autor: Leo B. (luigi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Servus beieinander,

Ich habe folgendes Problem. Unser Verein hat ein neues Vereinheim 
bekommen, und zwar im Keller. Leider hat jedoch dieser Hirsch von 
Architekt vergessen Glocke und Türöffner einzuplanen und jetzt haben wir 
immer ein Problem mit dem reinkommen. Daher wollte ich eine kleine 
Funkbrücke aufbauen mit welcher ich einen Klingelknopf und einen 
Türöffner bedienen kann. Am bessten wäre noch eine Gegensprechanlage, 
aber das denke ich ist nur die Deluxeversion.
An und für sich sehe ich kein Problem, lediglich kenne ich mich mit der 
Funktechnik kaum aus und habe eigentlich keine Ahnung wie ich am 
geschicktesten eine Verbindung über rund 15m und durch 2 Stahlbetonwände 
herbekomme.
Richtantennen sind da schon geplant, aber ich finde im Netz einfach 
keine ordentlichen Schaltkreise.

Kann und will mir vielleicht jemand helfen? ich bin für nahezu alles 
offen nur Kabel wären ungünstig.

Vielen Dank
luigi

Autor: Sven F. (sven0876)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nimm 2 pmr geräte und bau sie in ein gehäuse mit netzteil läuft hier 
seit ca 2 jahren 1a billig zuverlässig und stöhrsicher wenn du welche 
mit ctcss nimmst. gibts auch fertig beim C 624419 - 62 mal suchen
sven

Autor: Kabel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie siehts mit den RFM12 von Pollin aus?
Gegensprechanlage wird da schwierig, aber Klingel und Öffner müsstest 
gut hinbekommen.

Autor: Google (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Leo B. (luigi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kabel wrote:
> Wie siehts mit den RFM12 von Pollin aus?
> Gegensprechanlage wird da schwierig, aber Klingel und Öffner müsstest
> gut hinbekommen.

Das klingt sowohl preislich als auch für meine persönlich Bildung arg 
interessant, aber...
Wie gesagt ich habe null ahnung von Funk!
Wo muss ich dem Teil signale einspeißen und wann/wo bekomme ich die aus 
dem anderen Wieder raus?
Und noch viel interessanter? hat das ausreichend sendeleistung für meine 
Anwendung?


Edit:
Da sind ja pdf-Dateien dabei... die studier ich jetz mal kurz...

Nochmal Edit:
Ich glaube das überschreitet meine Kenntnisse von Microcontrollern. Hier 
Stehe ich noch ganz am Anfang und habe eigentlich noch nichtmal Ahnung 
von SPI...
Mein Kenntnisstand dürfte ungefähr dem des Tutorial dieser Seite 
entsprechen. :(

Autor: Leo B. (luigi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok also nach stunden langem recherchieren... ich verstehe Bahnhof.
Ich habe leider von diesem SPI keinen blassen Schimmer und das bei 
Pollin vorliegende Programm wirft mehr Fragen als Antworten auf.
Kann mir vielleicht jemand irgend einen kurzen aber funktionierenden 
Codefetzten liefern? irgend etwas andem dieses SPI deutlich wird?
Ich meine die Hardware und das Wesen von SPI habe ich jetzt intus, aber 
die ganzen Register etc. sind mir ein Rätsel!
und vor allem ist mir die Verbindung zu der Hardware ein riesen Rätsel.

Wenn ich das alles Richig verstanden habe läufts ja folgendermaßen:
Der 1. Microcontroller (Master) sendet irgendwelche Befehle zur 
Konfiguration über SPI an das RFM12-Modul.
Als nächstes können irgendwie Daten in einen kurzen Speicher in das 
Modul geschrieben werden. Dann wird automatisch abgesendet.
Das Empfangsmodul löst nun einen externen Interrupt am angeschlossenen 
Microcontroller (auch wieder Master im SPI) aus.
Dadurch liest jetzt der mC die Empfangenen Daten in seinen eigenen 
Speicher und kann damit weiter Arbeiten.
Richtig so?

Und nun zur Durchführung!? wie werden jetzt die einzelen Schritte in C 
verwirklicht? geht das kürzer und Kommentierter als in dem beiliegenden 
Codefetzen?

Autor: Matrix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja du hast das soweit richtig verstanden.

Hab zwar mit diesen Modulen noch nichts konkretes gemacht aber hier 
findest du sicher noch Infos zu den Modulen:

http://www.mikrocontroller.net/articles/AVR_RFM12

Schau dir am besten mal die Firmware an vlt wird dann die Ansteuerung zu 
klarer ;)

Autor: Peter F. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du kannst eine fertige Funklösung nehmen, besteht aus einem RFM12 und 
Mega32.
Kann man sehr einfach per UART ansprechen.
Benutz ich seit einer weile selber, lässt sich sehr gut auf Lochraster 
aufbauen.
Funktioniert mit Drahtantennen durch 3 Stahlbeton-Decken.

Damit kannst du sehr schnell und einfach eine "klingel, öffner" Lösung 
selber basteln, noch nicht ganz bugfrei aber es geht ;-)
Zur not auch mit USB-Interface, die Schaltpläne sind aber noch nicht auf 
der Seite, aber bei mir auf dem Rechner.

Schicke ich Florian die nächsten Wochen damit die auch ma da drauf 
kommen ;-)

http://www.flashcraft.de/index.php?lang=de

Mfg,
Peter

Autor: Leo B. (luigi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank für eure Bemühungen aber ganz schlau werde ich immer noch 
nicht.

Ich bin im Code aus dem aller ersten Post aus diesem Threat 
Beitrag "Re: Beispielprogramm für RFM12 433MHz Funk-Module"

aber die Funktion (nennt man doch Funktion oder?) "unsigned short 
rf12_trans(unsigned short wert)" macht mir probleme:
unsigned short rf12_trans(unsigned short wert)
{  unsigned short werti=0;
  unsigned char i;

  cbi(RF_PORT, CS);
  for (i=0; i<16; i++)
  {  if (wert&32768)
      sbi(RF_PORT, SDI);
    else
      cbi(RF_PORT, SDI);
    werti<<=1;
    if (RF_PIN&(1<<SDO))
      werti|=1;
    sbi(RF_PORT, SCK);
    wert<<=1;
    _delay_us(0.3);
    cbi(RF_PORT, SCK);
  }
  sbi(RF_PORT, CS);
  return werti;
}
Was passiert da?
Was macht cli und cbi? das ist doch normal Assembler (von dem ich keinen 
Befehl kann)
Was macht "werti<<=1" ?
Warum wird werti zurück gegeben? wird doch eh nicht weiter verarbeitet?! 
oder doch?

Autor: Leo B. (luigi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ah... also das "Werti<<=1" Rätsel habe ich gelöst:
http://msdn.microsoft.com/en-us/library/wdkewy4h(VS.71).aspx
Ein assignment operator ist das also...

und das rätsel mit cbi() und sbi() ist auch näherungsweise geklärt:
in der global.h steht:
#define cbi(sfr, bit)     (_SFR_BYTE(sfr) &= ~_BV(bit))
jetz müsste ich nurnoch rausfinden was _SFR_BYTE(sfr) wieder ist.
und vor allem müsste ich rausfinden was rauskommt wenn ich alle 
Definitionen rückwärts verfolge...
ich komme letztendlich dahin dass folgende 2 Zeilen gleichwertig sind.
sbi(RF_PORT, SDI)
_SFR_BYTE(PORTB) |= _BV(5)
Kurzum wird in irgend einem Register das Bit 5 gesetzt.
jetzt is mir nur nicht mehr klar welcher befehl genau die übertragung 
auslöst... irgendwie werden da ja nur ein paar bits gesetzt und gelöscht 
aber der wert an sich wird nicht gesendet?! oder was entschlüssel ich 
jetzt falsch?

Autor: Leo B. (luigi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oh man bin ich dumm... mensch das ist ja schon die ganze routine.
ich dacht irgendwie das läuft so ähnlich wie beim UART ab, wo man alles 
in ein Register reinschreibt und der Rest läuft von allein?!
jetz versteh ich auch Werti. wert is was raus geht und werti is was 
reinkommt.
So läuft der hase also!

Danke trotzdem allen.
Ich meld mich wieder wenns Fragen zum Thema gibt.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.