-         

Seite 1 von 4 123 ... LetzteLetzte
Ergebnis 1 bis 10 von 35

Thema: Sensor aus Flachbettscanner ansteuern/auslesen

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    13.08.2008
    Beiträge
    18

    Sensor aus Flachbettscanner ansteuern/auslesen

    Anzeige

    Guten Tag,

    ich habe vor einiger Zeit mal einen Flachbettscanner auseinander genommen, damals ging es mir eher um die Mechanik, jetzt eher um die Elektronik. Da ich demnächst etwas Zeit habe wollte ich mich mal dem Sensor des Scanners widmen. Leider konnte ich nicht rausfinden was genau das für ein Sensor ist.



    Die Platine sieht allerdings genau so aus, wie diese, die ich bei Pollin gefunden habe:

    Bildsensor NEC µPD8872CY

    Hier das
    Datenblatt µPD8872

    Meine Idee war diesen Sensor mit Optik für verschiedene Zwecke zu verwenden. Z.B. wollte ich eine damit eine Münzerkennung machen. Die Münze soll dabei an der Optik vorbeilaufen. Dadurch ergibt sich ein ca. 20 cm breiter Sensor. Aus dem eindimensionalen Bild wollte ich dann die Breite der Münze und die Laufgeschwindigkeit ermitteln. Dabei würde mit ein Farbkanal reichen.

    Da ich kürzlich meine ersten Erfahrungen mit AVRs gemacht habe wollte ich gerne einen zum Auswerten der Daten verwenden.

    Leider bin ich relativ unerfahren was das lesen von Datenblättern angeht.

    Hier mal das Blockschaltbild:

    Leider kann ich das Blockschaltbild gar nicht richtig lesen, wenn ich das mal vermuten darf, würde ich sagen, dass die Werte im Chip analog gespeichert werden. Man müsste sie also noch AD wandeln, richtig?

    Wenn ich das richtig sehe sind die Logikpegel schonmal kompatibel mit denen des AVRs. Die "Data rate" ist hier mit 2Mhz angegeben, eine minimale Rate ist nicht angegeben. 2 Mhz sind natürlich viel zu hoch für einen AVR. Es würde natürlich sicher reichen nicht jeden Wert zu nehmen, sondern die Auflösung zu halbieren und nur jeden zweiten Wert zu wandeln. Haben solche analogen Speicher eine Mindestfrequenz? Verschwinden die Ladungen nach kurzer Zeit? Ist die Ausgangsverstärkung groß und stabil genug um sie direkt mit dem AD-Wandlers zu verbinden?

    Ich würde mich wirklich freuen, wenn ihr mir helfen könnt.
    Soweit ich das bisher in diesem Forum überblicken kann sitzen hier einige echt fähige Leute.

    Uwe

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    10.08.2006
    Beiträge
    169
    Schau dir mal das hier an.

    Ich wollte das auch schon mal probieren, nur leider habe ich die Optik meines Sensors nicht mehr. Da bringt mir das leider nicht viel.

  3. #3
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Wenn es um eine Bildauswertung oder gar Bilderkennung geht ist ein 8 Bit AVR Controller überfordert, schon wegen dem sehr begrenzen Speicher.
    Es gibt für den CCD Chip auch eine Grenze nach unten, wie lansam man die Daten auslesen darf. Wenn man sehr langsam (ab etwa 1 sekunde) ausließt kriegt man etwas mehr Rauschen und vor allem Drift der Daten. Mit dem AVR internen AD geht das aber schon so einigermaßen, vor allem wenn man sich auf einen Teil des Bildes beschränkt, denn für viel mehr ist ohnehin kein Platz im Speicher. Diesen Speziellen Chip kenne ich nicht, aber oft wird da noch ein extra Offsetabgleich analog durchgefürt um den Offset des internen Verstärkers auszugleichen. Ich habe aber auch schon gelesen das dies direkt am AD Eingang eines AVR machen kann.

    Den Chip würde ich auf alle Fälle auf der kleinen Platine lasssen, denn CCDs sind oft relativ empfindlich gegen ESD. Wenn da auf der Platine noch ein bischen Schaltung mit drauf ist, kann man die wahrscheinlich mit benutzen. Oft sind Widerstände vor den Takteingängen um die Flanken-steilheit passend einzustellen, das übernmmt man am besten so.

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    13.08.2008
    Beiträge
    18
    Zitat Zitat von mikro-VIIV
    Schau dir mal das hier an.

    Ich wollte das auch schon mal probieren, nur leider habe ich die Optik meines Sensors nicht mehr. Da bringt mir das leider nicht viel.
    Super Link, das ist ja echt ein starkes Projekt!
    Schau doch mal bei Ebay, da bekommt man die Teile doch zum Preis der Versandkosten.


    Zitat Zitat von Besserwessi
    Wenn es um eine Bildauswertung oder gar Bilderkennung geht ist ein 8 Bit AVR Controller überfordert, schon wegen dem sehr begrenzen Speicher.
    Es gibt für den CCD Chip auch eine Grenze nach unten, wie lansam man die Daten auslesen darf. Wenn man sehr langsam (ab etwa 1 sekunde) ausließt kriegt man etwas mehr Rauschen und vor allem Drift der Daten. Mit dem AVR internen AD geht das aber schon so einigermaßen, vor allem wenn man sich auf einen Teil des Bildes beschränkt, denn für viel mehr ist ohnehin kein Platz im Speicher. Diesen Speziellen Chip kenne ich nicht, aber oft wird da noch ein extra Offsetabgleich analog durchgefürt um den Offset des internen Verstärkers auszugleichen. Ich habe aber auch schon gelesen das dies direkt am AD Eingang eines AVR machen kann.

    Den Chip würde ich auf alle Fälle auf der kleinen Platine lasssen, denn CCDs sind oft relativ empfindlich gegen ESD. Wenn da auf der Platine noch ein bischen Schaltung mit drauf ist, kann man die wahrscheinlich mit benutzen. Oft sind Widerstände vor den Takteingängen um die Flanken-steilheit passend einzustellen, das übernmmt man am besten so.
    Ich würde ja vermutlich eh auf den Großteil der Daten verzichten, wenn ich mehrmals pro Sekunde eine Bild auswerten möchte sind die Frequenzen so hoch, dass der AD des AVR vermutlich schon stark rauscht. Was ich brauche ist aber auch fast nur eine Threshold-Entscheidung. Vielleicht reicht es da sogar einen Komparator an den Ausgang des Chips zu löten und die Daten direkt digital zu verarbeiten.

    Scheinbar ist es aber ja sogar möglich Farbbilder mit dem AVR zu verarbeiten (siehe Link von mikro-VIIV).

    Leider ist mir immer noch nicht klar, wie ich den Chip genau verdrahten muss. Hat da jemand Erfahrung? In dem Link ist das ganze leider nur prinzipiell beschrieben. Gerade der Offset-Abgleich ist mir gar nicht klar.

    Gruß,

    Uwe

  5. #5
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Der Link hat eigentlich eine relativ gute Beschreibung. Der Offsetabgleich ist eigentlich relativ einfach:

    Das Signal wird per Kondensator (ca. 1-10 nF) an den Controller gekoppelt. Entweder zu Anfang einer Zeile, oder nach jedem Pixel wird dem CCD gesagt das die Nullreferenz anliegen soll. Dann wird der AD Eingang (oder komperator) kurz auf Ausgang und low geschaltet. Dadurch Speicher der Kondensator die Offsetspannung. Danach wird wieder auf Eingang geschaltet und dann die zu messende Intensität ausgelesen. Durch den Kondensator in Reihe fällt die Offsetspannung dann weg.

    Der Takt zum Weiterschieben der Daten muß auch nicht die ganze Zeit gleich sein. Den uninteressanten Teil kann man schnell durchschiebe und sich dann beim interessanten teil Zeit für den AD Wandler lassen. Wenn es nur um eine Schranke geht, kann man auch den AVR internen Komperator nehmen.

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    13.08.2008
    Beiträge
    18
    Zitat Zitat von Besserwessi
    Den Chip würde ich auf alle Fälle auf der kleinen Platine lasssen, denn CCDs sind oft relativ empfindlich gegen ESD.
    Da werde ich leider nicht drum herum kommen. Ich muss ja rausfinden, was genau das für ein Chip ist. Und das scheint leider auf der Unterseite zu stehen.

    Zitat Zitat von Besserwessi
    Der Link hat eigentlich eine relativ gute Beschreibung. Der Offsetabgleich ist eigentlich relativ einfach:

    Das Signal wird per Kondensator (ca. 1-10 nF) an den Controller gekoppelt. Entweder zu Anfang einer Zeile, oder nach jedem Pixel wird dem CCD gesagt das die Nullreferenz anliegen soll. Dann wird der AD Eingang (oder komperator) kurz auf Ausgang und low geschaltet. Dadurch Speicher der Kondensator die Offsetspannung. Danach wird wieder auf Eingang geschaltet und dann die zu messende Intensität ausgelesen. Durch den Kondensator in Reihe fällt die Offsetspannung dann weg.
    OK, das habe ich glaube ich verstanden. Dann ist aber vermutlich das Timing relativ entscheidend, oder? Sonst verschwindet doch die Ladung auf dem Kondensator. Werde den Chip mal auslöten und dann das korrekte Datenblatt raussuchen. Das oben könnte es sein, ganz sicher bin ich mir da aber nicht.

    Danke für die Antworten!

    Uwe

  7. #7
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Was ist denn sonst noch so auf der platine ? Ich habe es geschaft die Funktion der Pins aus der Restlichen Schaltung zu erkennen bzw. den Rest durch ausprobieren rauszukriegen. Was Ausgang, und was Eingang ist kann man oft erkenen, dann bleibt im wesentlichen noch die Art des eingans, auch da gibt es aus symmetreigründen oft schon Hinweise.

    Das timing für den Offsetabgelich ist ziehmlich unkritisch. Die größe des kondesators gibt vor wie lange der die Ladungen hält. Die Zeit zum Kondenator Laden muß dann nur noch lange genug sein. Zu lange verschenkt im wesentlichen Zeit in der man was besseres tun könnte. Es muß dann halt nur genug zeit sein das der Kondensator in der Zeit einigermaßen den stationären Zustand erreicht. Also etwas von der Größe 2*RC, wobei R der Ausgangswiderstand des Verstärkers ist. Wenn man recht oft (jedes Pixel) den Abgleich machen sollte es auch recht kurz reichen, denn der Kondensator ist dann jedesmal schon fsat richtig geladen.

  8. #8
    Neuer Benutzer Öfters hier
    Registriert seit
    13.08.2008
    Beiträge
    18
    Hallo Besserwessi,

    Auf der Platine befindet sich neben dem Sensor nur noch ein anderer Chip. Ein 74HC86D (Exkulsiv-Oder). Einige Transistoren, ich vermute mal für die Gabellichtschranke. Außerdem sind da noch ein par Kondensatoren, Widerstände und Spulen. Außerdem noch ein wenig Elektronik für die Beleuchtung. Da mein neues Multimeter noch nicht da ist kann ich das ganze Leider noch nicht durchmessen.

    Wäre nicht eigentlich auch ein Offsetabgleich per Software möglich? Indem man einfach den Offset (AD-Wert bei Referenz am Ausgang) misst und von allen anderen Werten abzieht? Natürlich würde man damit ein wenig Dynamik verschenken, aber die Schaltung würde (von meinem Standpunkt aus) ein par Fehlerquellen weniger beinhalten .

    Danke für die Hilfe. Sobald mein Multimeter da ist messe ich die Schaltung auf jeden Fall durch und werde mal versuchen einen Schaltplan des Board aufzustellen.

    Uwe

  9. #9
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Der Offset kann im Vergleich zum Signals relativ groß sein. Wenn man den Abgleich in Software machen will, dann sollte man aber wenigstens einen Poti für den Grobabgleich vorsehen.

    Der 74HC... könnte gut die Taktsignale für das CCD treiben. Damit wären dann schon mal die Takteingänge festgelegt. Durchmessen mit dem multimeter wird nicht alzuviel bringen. Nach einer groben identifikation von GND, +5V, ggf. +12V , Takt Eingängen und Ausgängen hilft dann eigentlich nur Probebetrieb mit dem Oszilloskop am Ausgang.

    Bei mir waren auf der Platine ein 74HC04 (oder so ähnlich), ein Spannungsregler, ein Transistor als Emitterfolger für den Ausgang (nur eine Farbe) und dann ein paar Widerstände / Kondensatoren.

  10. #10
    Neuer Benutzer Öfters hier
    Registriert seit
    13.08.2008
    Beiträge
    18
    Also ich habe mich mal versucht grob zu orientieren.
    Ganz ohne Multimeter und damit Durchgangsprüfer ist es leider doch recht schwer. Die drei Transistoren von denen ich dachte sie wären für die Gabellichtschranke sind wohl doch für was anderes gut. Auf ihnen steht BS (GH) t. dazu konnte ich leider gar nichts finden. Da ist drei mal die exakt gleiche Transistorschaltung aufgebaut. Leider kann ich noch nicht genau sagen wie sie verschaltet sind. Neben den Transistoren steht Q1, Q2, Q3. Deutet das darauf hin, dass es sich um Mosfets handelt? Wenn ich das richtig sehe handelt es sich um eine Basis(Gate)schaltung. Dann sind da noch 3 Widerstände 302 (sind das 3kOhm?) und drei mal 101 (100 Ohm?).

    Wenn das Multimeter da ist (ich hoffe es kommt morgen) werde ich diese Transistorschaltung mal sizzieren. Dass die Schaltung 3 mal vorkommt deutet ja vermutlich darauf hin, dass es sich dabei um eine Verstärkung der Ausgänge handelt.

    Leider besitze ich kein Oszilloskop. Darauf muss ich also wohl verzichten.
    Relativ viele Pins sind mit Masse verbunden. Leider sind einige unter dem Chip verbunden. Da sehe ich leider (noch) gar nichts.

    Also ich hoffe morgen gibts News

    Uwe

Seite 1 von 4 123 ... LetzteLetzte

Berechtigungen

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