- Labornetzteil AliExpress         
Ergebnis 1 bis 10 von 10

Thema: Mehrere Sensoren abfragen

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    05.06.2004
    Ort
    Bensheim / Hessen
    Alter
    36
    Beiträge
    153
    Hi,

    so hatte ich mir das vorgestellt (siehe Attachment).
    Zur Erläuterung:

    Taktgeber gibt Takt (vielleicht so etwas wie 100 Hz).
    Zähler zählt bei jedem Takt um eins hoch (binär).
    Zusätzlich springt auch dieses imaginäre Umschalter-IC um einen Sesnor nach rechts.
    Erläuterung dieses "Umschalt-ICs": Ich Suche eine möglichst einfach aufgebaute Schaltung, die es mir ermöglicht, bei jedem Takt einen anderen Eingang mit dem Ausgang zu verbinden, vergleichbar mit einem Lauflicht: Zuerst wird S0 mit dem Ausgang verbunden, beim nächsten Takt ist nur S1 mit dem Ausgang verbunden, dann S2, usw.
    Der noch analoge Wert aus dem "Umschalter-IC" (ursprünglich aus den Sensoren wird im A/D-Wandler zu einem 8-Bit-Code umgewandelt und zusammen mit dem Code des Zählers als Adressierung in einem Speicher-IC gespeichert (siehe Datenblatt oben).
    Beispiel:
    Sensorwert: 10101101 = 173 dezimal = z.B. 30°C vom Temperatursensor (kommt vom Digitalwandler)
    Adressierung: 00000010 = 2 dezimal = der 2te abgefragte Sensor (kommt vom Zähler)
    Wenn der letzte Eingang des "Umschalt-ICs" erreicht ist, wird der Pin I/O (Lesen/Schreiben) auf "Lesen" gesetzt, damit der PC die Werte aus dem Speicherchip lesen darf. Außerdem wird der Zähler auf Null gesetzt (Reset) und der Takt unterbrochen.
    Ich sehe gerade, dass der Transistor für U (Takt zum Unschalter-IC) unsinnig ist, da der Takt ja sowieso unterbrochen wird.
    Weiter unten (links) sieht man die 8 Ausgänge des LPT-Ports des PCs (die Leitung, die Dioden und der Transistor (links) bitte wegdenken, auch die sind unsinnig). Wenn man nun auf die Ausgänge die Adresse eines Sensorwerts angibt, wird er auf den I/O - Ports des Speicher-ICs ausgegeben, wenn I (Transistor links) durchschaltet (I/O auf "High" = Lesezugriff). Wenn er nicht durchschaltet, bekommt der Parallelport keine Informationen (nicht auf der Zeichnung enthalten, die Ausgänge des Parallelports bekommen auch noch Transistoren, damit nur Werte nach aussen gegeben werden, wenn Lesezugriff besteht).

    Jetzt fragen sich vielleicht einige: Warum Lesebeschränkung? Ganz einfach: Man kann bei dem Speicher-IC nur lesen ODER schreiben, die Ports A0 bis A7 (A/D-Wandler->Speicher) werden sowohl als Eingänge als auch als Ausgänge benutzt, je nach Stand vom Pin "I/O". Bis nun alle Sensorwerte des Roboters im Speicher-IC sind, verstreicht natürlich Zeit (Bei 20 Sensoren und einer Taktfrequenz von 100 Hz sind dies 0,2 Sekunden). In dieser Zeit kann der PC die Speicherwerte des ICs nicht lesen, da - wie gesagt - die Pins des ICs lesen ODER schreiben aufeinmal können. Nach den 0,2 Sekunden wird nun der IC für den Lesezugriff geöffnet und der PC kann die Sensordaten lesen.
    Nicht auf meiner Skizze: Nach der Zeit, die zum Schreiben benötigt wird, gibt es eine Taktunterbrechung, die wiederrum nur einige Zeit andauert. In dieser Unterbrechungsphase darf der PC die Daten der Sensoren lesen (geht ja relativ schnell).

    Lest es euch ein paar Mal durch, ich hoffe IRGENDJEMAND versteht, was ich will.
    Das einzige Problem, was ich habe: Ich brauche so einen "Umschaltschaltkreis", der mir bei jedem neuen Takt einen neuen Eingang auf den Ausgang des Schaltkreises legt.
    Oder ihr sagt: Das ist alles schwachsinn, das macht man anders! Dann sagt es mir bitte!!!

    Danke im Voraus, euer
    Victor
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken schaltung_350.jpg  
    Victor Negoescu

Berechtigungen

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

12V Akku bauen