- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 5 von 5

Thema: Ereigniszählung mit M-Unit 2.0 funktioniert.

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    11.05.2004
    Ort
    München
    Alter
    55
    Beiträge
    444

    Ereigniszählung mit M-Unit 2.0 funktioniert.

    Hallo,

    hier mal statt einer Frage ein Ergebnis.

    Nachdem ich mich schwergetan hatte, zu den Frequenzeingängen im Ereigniszählermode Infos zu finden, hab' ich mich hingesetzt und probiert.

    Ermutigendes Ergebnis im Klartext:

    Mit der Sequenz im neuesten Workbench

    declare MyConfig byte
    config.init
    config.get MyConfig
    config.put (MyConfig or 6)
    config.off

    setzt man die beiden Freq-Eingänge auf Ereigniszählung. Soweit reichen Manual und Online-Hilfe.

    Dann kommts:
    Sie zählen.
    Sie sind 16 Bit Werte.
    Sie gehen bis 32768 und bleiben dann auf diesem Wert stehen, schlagen also nicht nach negativ um oder gehen wieder durch 0 durch.
    Ohne weitere Impulse bleiben sie auf dem gezählten Wert stehen, werden nicht nach 1 s gelöscht oder so.
    Man kann sie durch die Anweisung Freq = 0 oder Freq2 = 0 auf Null zurücksetzen.

    Das ist doch ganz in Ordnung, da kann man doch eine schöne Odometrie, Wegmessung, geregelte Geradeausfahrt usw. realisieren...

    Ich werd mich jetzt erstmal hinsetzen und ein schönes Slaveprogramm mit Befehlen wie "Fahre xxx cm geradeaus" und "drehe xxx Grad" schreiben.

    Ciao
    Tom.

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    06.12.2003
    Beiträge
    163

    Re: Ereigniszählung mit M-Unit 2.0 funktioniert.

    Zitat Zitat von toemchen
    Hallo,

    hier mal statt einer Frage ein Ergebnis.

    Nachdem ich mich schwergetan hatte, zu den Frequenzeingängen im Ereigniszählermode Infos zu finden, hab' ich mich hingesetzt und probiert.

    Guck mal....
    In der Code-Library steht das Beispiel, das auch bei der C-Control
    Installation dabei ist.
    http://www.fdos.de/ccforum/codelib/b...Z%C4HLER_1.bas

    Im Kopf des Programms stehen auch die Erklärungen:
    '--------------------------------------------------------------------
    ' Dieses Beispiel zeigt die Vorgehensweise um die beiden Frequenzzähler
    ' als Ereigniszähler zu konfigurieren und abzufragen. Die Konfiguration
    ' erfolgt über ein KONFIGURATIONS-REGISTER, das wie alle erweiterten
    ' Funktionen Bestandteil eines OBJECTS ( hier CONFIG)ist. Das Register
    ' kann gelesen u. beschrieben werden.
    '--------------------------------------------------------------------
    ' Das Konfigurations-Register bietet folgende Optionen.
    '
    ' Bit 0 Schaltet beide PWM-DACs in den SERVO-Mode
    ' Bit 1 Schaltet den Frequenzzähler 1 in den EREIGNISZÄHLER Mode
    ' Bit 2 Schaltet den Frequenzzähler 2 in den EREIGNISZÄHLER Mode
    ' Bit 3 Aktiviert die PULLUP-Widerstände an PORT 1 bis 8
    ' Bit 4 Aktiviert die PULLUP-Widerstände an PORT 9 bis 15
    ' Bit 5 Zeigt an wenn die interne Uhr mit DCF77 synchronisiert wurde
    ' Bit 6 Signalisiert einen Fehler bei der IIC-Kommunikation
    ' Bit 7 Zustand der Start-Taste
    '---------------------------------------------------------------------
    ' Einzelheiten darüber finden Sie in den Demos zu den EXTENDED FUNCTIONS
    ' - LCD OBJECT über die zusätzlichen Funktionen für das LCd
    ' - CONFIG OBJECT über die zusätzlichen Funktionen für die Konfiguraton
    '
    ' Beschreibung:
    ' FREQ1 und FREQ2 sind Systemvariablen die nicht separat angelegt werden
    ' müssen. Ist der Zähler als Ereigniszähler konfiguriert, beeinhalten diese
    ' Variablen den aktuellen Zählerstand von Ereignissen.
    ' Im CONFIG-REGISTER bestimmen Bit 1 und Bit 2 die Funktion von FREQ1 u. FREQ2
    ' Beide Eingänge können getrennt konfiguriert werden, d.h. während einer
    ' der Eingänge ein Ereigniszähler ist kann der andere auch ein Frequenzzähler
    ' sein.
    ' Die Zähler können gelöscht werden, wenn den Systemvariablen jeweils der Wert 0
    ' zugewiesen wird.
    ' Ausserdem können Sie den Zählern beliebige Anfangswerte zuweisen, z.B.
    ' einem Zählerstand vom Vortag
    ' Der Ereigniszähler kann einen max. Wert von 32767 annehmen und zählt dann
    ' nicht mehr weiter
    ' Wenn Sie einen Frequenzgenerator an diese Eingänge anschliessen werden
    ' die registrierten Impulse im LCD angezeigt.
    ' Behelfsweise können Sie den DA1 Ausgang mit dem Frequenzzählereingang
    ' verbinden. Er erzeugt etwa 1880 Impulse pro Sekunde.
    '
    ' In diesem Beispiel wird der Zähler 1 bei Null und der Zähler 2 bei 1000
    ' gestartet. Beide Zähler werden bei 32767 gelöscht.

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    11.05.2004
    Ort
    München
    Alter
    55
    Beiträge
    444
    Soso, hm, ok, da stehts. Grummel.

    Aber warum so versteckt im Kopf eines Beispielprogramms in der siebten Ordnungs-Unterebene? Ich glaube, ich muß mich nicht schämen, daß ich es nicht gefunden hab. In M-Unit Manual steht nur lapidar, welche Bits im Config den Ereigniszähler-Modus einschalten, und in der Online-Referenz für Basic++ steht nur, wie sich die Config-Bytes ansprechen lassen und wie man den Freq-Wert ausliest.

    Immerhin kommen Probieren und Studieren auf das gleiche Ergebnis, auch schon was.

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    06.12.2003
    Beiträge
    163
    Zitat Zitat von toemchen
    Soso, hm, ok, da stehts. Grummel.

    Aber warum so versteckt im Kopf eines Beispielprogramms in der siebten Ordnungs-Unterebene? Ich glaube, ich muß mich nicht schämen, daß ich es nicht gefunden hab. In M-Unit Manual steht nur lapidar, welche Bits im Config den Ereigniszähler-Modus einschalten, und in der Online-Referenz für Basic++ steht nur, wie sich die Config-Bytes ansprechen lassen und wie man den Freq-Wert ausliest.

    Immerhin kommen Probieren und Studieren auf das gleiche Ergebnis, auch schon was.
    Hallo.....
    Es gibt zur M 2.0 mehr als 180 B++ Demos, ich hätte sie auch in ein einziges
    Verzeichnis schreiben können. Aber so stehen sie halt im Verzeichnis
    --> /EXTENDED-FUNCTIONS/CONFIG_OBJECT/CONFIG1
    Aber deswegen musst du dich natürlich nicht schämen.
    Aber du sparst dir evtl. viel Zeit, wenn du mal durch die DEMOS blätterst.

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    03.06.2004
    Ort
    Düsseldorf
    Alter
    39
    Beiträge
    158

    Re: Ereigniszählung mit M-Unit 2.0 funktioniert.

    Zitat Zitat von toemchen
    declare MyConfig byte
    config.init
    config.get MyConfig
    config.put (MyConfig or 6)
    config.off
    Hallo,

    nur zur Info nebenbei: der Code wird so nicht laufen. Declare bitte durch Define ersetzen. Übrigens ist Declare bei BPP 2006 nicht mehr notwendig.

    Gruß,

    Stefan
    http://www.tappertzhofen.eu/bpp2

    Basic++ Programmiersprache
    für den C-Control I Mikrocontroller

Berechtigungen

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

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad