-
        

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 16

Thema: RN Controll & DCF-RS232 Wandler DCF-RS1

  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    11.12.2008
    Ort
    Köln
    Beiträge
    459

    RN Controll & DCF-RS232 Wandler DCF-RS1

    Anzeige

    Hallo Zusammen,
    ich habe den DCF-RS232 Wandler DCF-RS1 von Robotikhardware an meine RnControll angeschloßen.
    Am DCF-RS1 hängt ein DFC Empfänger von ELV.

    Der Empfänger gibt die Impulse weiter an den DCF-RS1. Die Impulse stimmen soweit, die hab ich mim Oszi geprüft.
    Nach ein paar Minuten geht die LED am DCF-RS1 an und er hat das Signal erkannt und verarbeitet.

    Ich habe jetzt meine RNControll über einen Leiter an Pin7 des DCF-RS1 angeschloßen und das Beispielprogramm von der Robotikhardware CD über Bascom AVR auf dem Mega32 der RnControll geflasht.

    Am anfang kommt immer das die Uhrzeit nicht verifiziert werden konnte, was soweit ok ist.
    Sobald die LED leuchtet und der DCF-RS1 bereit ist fragt der Mega32 per RS232 an und bekommt werte.
    Diese stimmen hinten und vorne nicht! Die Werte ändern sich auch nicht. Woran kann sowas liegen?

    Ich hab das Beispielprogramm von der beiligenden CD genommen, welches auch in Handbuch steht.

    Meine Bascom Version ist schon älter, kann es daran liegen?

    Hier ein Link zu dem IC: http://www.shop.robotikhardware.de/s...roducts_id=277

    Gruß Dominik

  2. #2
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    24558
    Alter
    39
    Beiträge
    1.356
    Hallo Dominik,

    ich schätze es liegt an DCF-RS1 "GND nicht verbunden" mit RN-Control GND oder an "Baudrate falsch eingestellt an RN-Control". Klassische Fehler.

    Viele Grüße
    Jörg
    "Es ist schwierig, jemanden dazu zu bringen, etwas zu verstehen, wenn er sein Gehalt dafür bekommt, dass er es nicht versteht" [Upton Sinclair] gez-boykott

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    11.12.2008
    Ort
    Köln
    Beiträge
    459
    Abend Jörg,

    vielen Dank für deine Antwort

    Das mit der Baud werde ich gleich mal schauen.

    GND ist verbunden. Ich greife die 5V für das IC und den empfänger von der RnControll ab, also daran kann es nicht liegen.

    Am anfang vom Code steht:
    $baud = 9600 'Baudrate (Übertragungsgeschwindigkeit)
    Baud = 9600
    Ist das richtig? Müsste nicht normal das 2te baud wegfallen?

    Ansonsten hab ich folgende Zeile:
    Open "comd.5:2400,8,n,1" For input As #1

    Inputbin #1,bstart,uhr_tag,uhr_monat,uhr_jahr,uhr_std,
    uhr_min,uhr_sek,uhr_wochentag,uhr_sommerzeit,uhr_z eitumschaltung,uhr_sync,bende
    Close #1

    Die besagt doch das die Baud 2400 ist.

    Gruß Dominik

  4. #4
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    11.12.2008
    Ort
    Köln
    Beiträge
    459
    Also ich hab die Zeile "Baud 9600" aus dem code genommen, da sie nicht notwendig ist.
    Die Baud von 2400 für das IC sollte ja auch stimmen (steht auch so in der Anleitung).

    Ich bin am verzweifeln
    Würde Euch vieleicht Weiterhelfen was genau ich im terminal empfange?

    Gruß Dominik

  5. #5
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.791
    Hi Dominik,

    hast du auch den Pullup-Widerstand R2 vorgesehen (Datenblatt des DCF-RS1 Schaltplan S.4) und einen 100nF an VCC?
    Es schadet auch nicht, einen kleineren Elko (10µF) an VCC parallel zum 100nF einzubauen.

    Was du dann noch probieren kannst:
    - Abstand von Störquellen (RN-Control, PC, Handy, Elektrokabel ...) vergrößern, Antenne nach Frankfurt ausrichten, Antenne an ein Fenster in Richtung Frankfurt stellen, Pullup-Widerstand 10kOhm an Pin 3 des DCF-RS1 einbauen ...
    Gruß
    Dirk

  6. #6
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    11.12.2008
    Ort
    Köln
    Beiträge
    459
    Hi Dirk,

    vielen lieben Dank für die Tipps. Ich habe mich die letzen Tage nochmal mit dem Probelm befasst, aber keine Lösung gefunden. Ich bin da echt am verzweifeln.

    Ich habe den 27kOhm Widerstand wie er im Schaltplan ist eingebaut. Zusätzlich habe ich jetzt einen 100nF Kondensator und einen 20yF Elko direkt am IC zwischen GND und VCC.

    Das IC ist auf einer Steckplatine und die Rn-Controll ist davon 30cm entfernt. Einen Pullup von 10k habe ich auch mal in die Leitung mit reingemacht, keine Verbesserung.

    Die LED am IC leuchtet und ich kann mit der RN Controll auch was abfragen, bekomme aber immer nur Folgendes raus:

    Heute haben wir denn 227.3.2 5:223:240 Wochentag 246

    Ich komme da einfach nicht mehr weiter. Das Signal von DCF Empfänger habe ich direkt am IC mit dem Oszzi gemessen, das ist sauber und gut.

    Gruß Dominik

  7. #7
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    24558
    Alter
    39
    Beiträge
    1.356
    Zeig oder verlinke mal bitte das ganze Programm das Du aktuell benutzt. Das Programm ist für RN-AVR Universal - hast Du das ggf berücksichtigt?

    Erscheint diese Daten im Terminal oder auf einem Display am Board.
    Kommt immer die selbe Telegramm oder ändert es sich z.B. im Bereich der Sekunde? Ist eine Prüfsumme mit dabei? Ändert sich der Wochentag aufwärts?

    Welchen Mode hast Du gewählt? Stell den nochmal zum testen um, jenachdem wie er jetzt schon ist.

    GND des DSF Empfängers ist auch mit der Schaltung verbunden, nicht nur GND des IC's?

    Ich vermute eine Routine greift nicht richtig auf die Daten zu, oder die Daten liegen falsch vor und werden somit falsch ausgegeben.

    Berichtige oder prüfe bitte die Variable "uhr_z eitumstellung" auf richtige Schreibweise.

    Gibt es sonst Fehlermeldungen von Bascom? Dazu sollte natürlich die Fehlerausgabe in Bascomeinstellungen eingestellt sein.

    Ansosnten muss das "Sternzeit" sein
    Geändert von HeXPloreR (18.06.2014 um 16:27 Uhr)
    "Es ist schwierig, jemanden dazu zu bringen, etwas zu verstehen, wenn er sein Gehalt dafür bekommt, dass er es nicht versteht" [Upton Sinclair] gez-boykott

  8. #8
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    11.12.2008
    Ort
    Köln
    Beiträge
    459
    Hallo,

    ersmal hier das Programm:

    Code:
    '##############################################################
    'DCF_Decoder3.bas
    '
    'Das Programm liest die Uhrzeit aus dem digetalen DCF-Decoder aus
    'und gibt die Zeit über RS232 aus
    'Den digitalen DCF Decoder gibt es nur bei Robotikhardware.de
    'Es muss lediglich PIN PD7 mit dem DOUT Pin des Chips DCF-RS1 verbunden werden
    'Natürlich auch GND und VCC
    '
    'Wenn ein USB Modul an RN-AVR UNIVERSAL angesteckt oder eingelötet wurde
    'dann wird das Ergebnis  über USB zu einem virtuellen COM Port übertragen
    'und kann auch mit allen Programmen oder Terminalprogramm empfangen werden
    '
    ' (c) Frank roboternetz.de
    'Bezug: www.robotikhardware.de
    'Weitere Beispiele auf DVD oder im www.Roboternetz.de und rn-wissen.de
    '######################################################################
    Declare Sub DCF_UhrzeitLesen()
    '$programmer = 12                'MCS USB  (Zeile weglassen wenn anderer Programmer)
    
    $regfile = "m32def.dat"
    
    $framesize = 32
    $swstack = 32
    $hwstack = 64
    $crystal = 8000000                                          'Quarzfrequenz
    $baud = 9600                        'Baudrate (Übertragungsgeschwindigkeit)
    
    'Baud = 9600
    
    Config Pind.6 = Output                                      'LED
    Led1 Alias Portd.6
    'Diese Variablen enthalten nach dem Abruf die Uhrzeit und Datum Informationen
    Dim uhr_sek As byte
    Dim uhr_min As byte
    Dim uhr_std As byte
    Dim uhr_tag As byte
    Dim uhr_monat As byte
    Dim uhr_jahr As byte
    Dim uhr_wochentag As byte
    Dim uhr_sommerzeit As byte
    Dim uhr_zeitumschaltung As byte
    Dim uhr_sync As byte
    dim bstart as byte   'Enthaelt Byte Zeilenanfang  immer 126
    dim bende as byte    'Enthaelt Byte Zeilenanfang  immer 127
    dim zeitgueltig as byte
    zeitgueltig=0
    wait 1
    Do
       DCF_UhrzeitLesen
       if zeitgueltig=1 then
         Print "Heute haben wir den: "; uhr_tag;".";uhr_monat;".";uhr_jahr;" ";uhr_std;":"; 
    uhr_min;":";uhr_sek;" Wochentag:";uhr_wochentag
         if uhr_sommerzeit=1 then print "Es gilt Sommerzeit!"
         print "Die Uhr wurde von "; uhr_sync; " Minuten per Funk verglichen"
         print
       endif
       Wait 3
       toggle led1
    Loop
    'Hilfsfunktion
    'Diese Funktion ruft der Zeit im binären Modus ab
    'und uerbergibt diese den globalen Uhr Variablen
    Sub DCF_UhrzeitLesen()
       Config Pind.5 = Input
    
       if Pind.5 =1 then 'DCF Uhrzeit bereits vorhanden?
    
         'Kurz auf GND setzen um DCF Decoderzeit ausgeben zu lassen
         Config PORTD.5 = output
    
         PORTD.5=0
    
         waitus 1
         Config Pind.5 = Input
    
         Open "comd.5:2400,8,n,1" For input As #1
    
         Inputbin  #1,bstart,uhr_tag,uhr_monat,uhr_jahr,uhr_std, 
    uhr_min,uhr_sek,uhr_wochentag,uhr_sommerzeit,uhr_zeitumschaltung,uhr_sync,bende
         Close #1
         Config Pind.5 = Input
    
         uhr_tag=uhr_tag-65
         uhr_monat =uhr_monat-65
         uhr_jahr =uhr_jahr-65
         uhr_std=uhr_std-65
         uhr_min =uhr_min-65
         uhr_sek  =uhr_sek-65
         uhr_wochentag  = uhr_wochentag-65
         uhr_sommerzeit=uhr_sommerzeit-65
         uhr_zeitumschaltung=uhr_zeitumschaltung-65
         uhr_sync=uhr_sync-65
         zeitgueltig=1
      else
         Print "Zeit noch nicht verifiziert!"
         zeitgueltig=0
      endif
    end sub
    -Die Daten sende ich per RN-Controll auf das Terminal in Bascom AVR auf meinem PC. Dort ändert sich auch im Bereich der Sekunden garnichts. Es kommen immer die selben Werte.

    - Einen Mode am IC habe ich nicht gewählt - Also Pin 1 nicht beschaltet = als Text ausgeben, wobei ich die Anleitung so verstanden habe das der Mode Pin nur für Pin 5 ist, der 1mal die Minute die Daten per RS232 aussendet.
    Ich habe jedoch Pin 7 "DOUT" Mit der RN Controll verbunden um die Daten geziehlt im Birärcode abzugragen.

    - GND ist mit dem Empfäger und dem IC verbunden. Ich nutze für beides die 5V DC die an der RNControll zur verfügung stehen.

    - "uhr_z eitumstellung" ist richtig geschrieben

    - In Bascom kommen werden keine Fehler angezeigt. Sobald ich einen falschen Befehl zum testen in den Code reinschreibe, wird ein Fehler angzeigt = Fehlerausgabe in Bascomeinstellungen aktiviert?!

    Ich hoffe wirklich das ihr mir weiterhelfen könnt. Ich kann einfach nicht verstehen, woran der Fehler noch liegen könnte

    Viele Grüße
    Dominik

  9. #9
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    24558
    Alter
    39
    Beiträge
    1.356
    Hallo,

    naja bleibt ja nicht mehr viel übrig was man aus der Ferne abfragen kann: Die RN-Controll läuft sicher mit 8Mhz?

    Was mir beim Code und Beschreibung lesen aufgefallen ist, das in der Info von Port D7 gesprochen wird, im Code selbst aber nur Port D5 als input umgeschaltet wird - von D7 keine Spur mehr?

    Also prüfe nochmal Deinen Aufbau diesbezüglich.
    Schreibe in die Sub direkt unter den Aufruf: Sub DCF_UhrzeitLesen() mal ein Print "Sub DCF" ...um zu sehen ob die Sub überhaupt angesprungen wird.

    Ich fühle das irgendwo da der Fehler sein muss

    Viele Grüße
    Jörg
    Geändert von HeXPloreR (19.06.2014 um 20:35 Uhr)
    "Es ist schwierig, jemanden dazu zu bringen, etwas zu verstehen, wenn er sein Gehalt dafür bekommt, dass er es nicht versteht" [Upton Sinclair] gez-boykott

  10. #10
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    11.12.2008
    Ort
    Köln
    Beiträge
    459
    Hi,

    ja die RnControll läuft mit nem 8Mhz Quarz. Ich habe es auch mal mit nem 16Mhz Quarz getestet, das brachte keine besserung.
    Pin D7 ist an der RNControll mit dem PizzoSummer belegt, daher nutze ich D5.

    Das SUB wird auch aufgerufen, ich habe mal nen Print befehl reingemacht und der erscheint auch im terminal.

    Wenn das IC noch keine Zeit hat, kommt im Terminal die Meldung das die Zeit noch nicht verifiziert ist, allso soweit ok.
    Das Problem ist dass sobald die zeit "erkannt" wurde nur müll rauskommt.

    Ich glaube langsam das IC von Robotikhardware, bzw. der Attiny (ist gar kein IC sondern ein Attiny) ist defekt!
    Der TX Pin der 1x pro Minute die Zeit aussenden sollte ist permanent auf +5V (habs an nem Osszi beobachtet).
    Wenn ich denn Pin an meinen Max232 anschließe und das Terminal am PC passend einstelle kommt auch nichts an

    Langsam verliere ich die Lust. Das ist jetzt mein 3ter DCF Empfänger, 2 von Conrad wurden defekt geliefert und jetzt ist das blöde IC von Robotikhardware hin. Den Conde gibts nicht zufällig irgendwo hier im Forum?

    Gruß Dominik

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. DCF 77 Empfang
    Von karlmonster im Forum PIC Controller
    Antworten: 5
    Letzter Beitrag: 03.05.2008, 14:54
  2. Dcf
    Von coolmann1056 im Forum Robby CCRP5
    Antworten: 6
    Letzter Beitrag: 18.02.2007, 14:20
  3. DCF-Empfänger
    Von *René1988 im Forum Controller- und Roboterboards von Conrad.de
    Antworten: 8
    Letzter Beitrag: 22.06.2006, 13:14
  4. dcf - 77 assemblercode
    Von NickD im Forum Elektronik
    Antworten: 15
    Letzter Beitrag: 05.08.2005, 21:23
  5. DCF-77
    Von x-ryder im Forum Elektronik
    Antworten: 1
    Letzter Beitrag: 04.09.2004, 14:41

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •