Hi, ich versuche gerade einen linearen CCD Sensor auszulesen, genauer gesagt einen TCD1304AP. Hier ist das Datenblatt: http://www.oceanoptics.com/technical/detectortoshibatcd1304ap.pdf Von der Software her ist alles klar, jedoch habe ich eine Frage zur Schaltung, welche auf Seite 12 erwähnt wird. Dort ist zwischen den Eingängen des CCD Sensors und dem Mikrocontroller ein TC74HC04P, also ein Inverter. Hat jemande eine Idee wieso? Soll das eine Art Schmitt-Trigger darstellen, um steile Signalflanken zu haben? Und der Transistor TR1 soll ein "2SA1015-Y" sein, kennt da jemand einen gängigeren Ersatztyp? Eigentlich sollte dieser nicht kritisch sein oder? Jz
Hi, der 74xx04 wird gerne als Treiber verwendet. Auch hier ist die Kapazität am SH-Pin 600pF. Das überfordert die meisten Steuer-ICs(µC). Das der 74xx04 invertiert ist eben so. Macht aber nichts aus. Der Transistor kann bei der niedrigen Taktfrequenz auch z.B. ein 2N2369 sein. Kommt nicht drauf an. Allerdings musst du das Timing genau einhalten. Einmal einen Glitch in den Signalen oder zur falschen Zeit geschaltet und die Ladungen im Sensor landen im Irgendwo; nur nicht mehr im Ausgangsverstärker.
Hi, danke für die schnelle Antwort. Das mit der großen Kapazität des SH Pins habe ich nicht gesehen, das ergibt Sinn. Hast du diesen CCD Sensor schon verwendet? Laut Datenblatt ist ja die Versorgungsspannung typ. 4V, max. 5,5V. Sind 5V dann in Ordnung als Spannung, oder nimmt einem der Sensor das auf Dauer übel? Falls nicht wäre ein 74LVX04 als Treiber + Pegelwandler eine Idee, oder? Wegen den Timings bin ich schon auf Assembler umgestiegen, sonst wird es schwierig diese so genau einzuhalten....
CCD-Versteher schrieb: > Der Transistor > kann bei der niedrigen Taktfrequenz auch z.B. ein 2N2369 sein. BC557C ist dann doch gängiger.
hinz schrieb: > BC557C ist dann doch gängiger. Das ist ein PNP-Transistor, der geht nicht. Es sollte schon ein schneller NPN-Transistor sein. Wobei ich noch nie einen CCD bei so geringen Frequenzen betrieben habe. Das waren immer deutliche 2-stellige MHz.
>> BC557C ist dann doch gängiger. > > Das ist ein PNP-Transistor, der geht nicht. Es sollte schon ein > schneller NPN-Transistor sein. Wobei ich noch nie einen CCD bei so > geringen Frequenzen betrieben habe. Das waren immer deutliche 2-stellige > MHz. Laut Beispielschaltung sollte es ein PNP Transistor sein, und ich wollte den CCD bei 0,8 MHz betreiben, d.h. nur 0,2 MHz Datentakt.
Jz schrieb: > Hast du diesen CCD Sensor schon verwendet? Laut Datenblatt ist ja die > Versorgungsspannung typ. 4V, max. 5,5V. Sind 5V dann in Ordnung als > Spannung, oder nimmt einem der Sensor das auf Dauer übel? Falls nicht > wäre ein 74LVX04 als Treiber + Pegelwandler eine Idee, oder? Hi, nein, diesen nicht. Aber viele andere. Dieser Sensor ist auch ein wenig was besonderes, da er nur mit einer Taktphase läuft. Das ist ungewöhnlich. Meist sind das 2 oder mehr. Ausserdem hat er keinen Reset für den Ausgangsverstärker, so dass eine CDS-Abtastung nicht möglich ist. Vielleicht ist im dem 'Logic Block' eine entsprechende Schaltung enthalten. Dazu steht leider nicht im Datenblatt. Wenn im Datenblatt steht, dass er bis 5,5V funktioniert, dann ist das auch so. Allerdings geht die Performance von CCDs schleichend in den Keller. Mit jedem Parameter, der nicht 'nominal' entspricht handelt man sich potentiell eine Verschlechterung ein. Mach doch einfach zwei Schottkydioden in die Versorgungsleitung. Der 74LVX04 ist eher ungeeignet, da er insgesamt nur wenig Strom liefern kann. Besser ist ein HC-Typ. Wenn es noch viel schneller werden soll kann man die AC-Typen nehmen und dabei mehrere Gatter parallel schalten. Das würde ich auch bei dem HC-Typen am SH-Pin machen.
Jz schrieb: > Laut Beispielschaltung sollte es ein PNP Transistor sein, und ich wollte > den CCD bei 0,8 MHz betreiben, d.h. nur 0,2 MHz Datentakt. Ja sorry, da habe ich mich geirrt. An fast allen CCDs wird ein NPN-Transistor verwendet. Dieser CCD ist anscheinend doch etwas 'anders'.
Hallo Jz, Ich bin auch gerade dabei eine Ansteuerung für einen TCD1304 zu entwickeln. Das ganze soll dabei ein Arduino Mega2560 übernehmen. Vorerst habe ich einmal versucht nur die Ansteuersignale über Portmanipulation zu programmieren, um die Analogausgabe auf einem Oszilloskop darstellen zu können. Dabei habe ich auch die Schaltung wie im Datenblatt beschrieben verwendet und den CCD mit 1MHz CLK betrieben. Jetzt bekomme ich zwar ein Signal am Analogausgang, das ganze sieht aber so aus als würden sich alle Pixel wie 1 Pixel verhalten. Habe schon alles mögliche probiert, Stundenlang in Google gesucht und weiß jetzt nicht mehr weiter. Du hast geschrieben das für dich von der Software her alles klar wäre. Welches System verwendest du für die Ansteuerung? Könntest du deinen Programmcode hier mal posten? Hast du den TCD1304 schon erfolgreich auslesen können? Wäre dir für deine Hilfe sehr dankbar!!!
Wenn keine Optik vor dem Sensor ist überblendet er meist, dadurch springt die Ladung von einem zum nächsten Pixel (Blooming) und du bekommst nur Müll. Versuch den Sensor mal abzudunkeln, was dann passiert. Möglicherweise ist auch ein Fehler in der SW (Timing). Werner
Werner schrieb: > Wenn keine Optik vor dem Sensor ist überblendet er meist, dadurch > springt die Ladung von einem zum nächsten Pixel (Blooming) und du > bekommst nur Müll. > Versuch den Sensor mal abzudunkeln, was dann passiert. Danke für deinen Hinweis. Der Sensor ist abgedeckt, ich habe einen IR-Filter davor angebracht und leuchte dann mit einer IR-LED auf den Sensor um in zu Belichten. Mein Ziel ist es später zwischen IR-LED und dem Sensor, einen Bolzen zu platzieren, um über den Schatten der auf dem Sensor entsteht den Durchmesser des Bolzens zu ermitteln. Werner schrieb: > Möglicherweise > ist auch ein Fehler in der SW (Timing). Das mit dem Timing ist wirklich nicht einfach und ich habe schon sehr viel probiert. Seit dem letzten mal als ich hier gepostet habe hat sich auch etwas verändert. Am Oszilloskop erkennt man jetzt beim Belichten eine Veränderung, die aussieht als wären es 2 Pixel. Der Rest verhält sich so, dass sich der Spannungspegel durchgehend gleich erhöht. Ich habe einmal ein paar Oszilloskopbilder erstellt, die das Timing von ICG, SH, fM und den Analogausgang des Sensors zeigen. Weiters ist mir noch aufgefallen das der Inverter den ich Verwende (HEF4069UB) kein sehr schönes Signal liefert. Vielleicht ist das auch ein Grund warum die Pixel nicht ausgelesen werden können? Werde mir auf jedenfall noch den im Datenblatt des TCD1304DG vorgeschlagenen TC74HC04P besorgen.
Michael schrieb: > Der Rest verhält > sich so, dass sich der Spannungspegel durchgehend gleich erhöht. Was ich noch hinzufügen sollte, die Spannung sinkt erst wieder wenn der Sensor ganz abgedeckt ist. Also meiner Meinung nach sollte es sich so verhalten, dass wenn ich etwas zwischen IR-LED und Sensor halte, z.B einen Kugelschreiber, sich der Teil der Pixel die sich im Schatten befinden weniger Spannung ausgeben sollten. Das schließe ich daraus, weil ich das bereits mit einem TAOS TSL1406R probiert habe und mit dem funktioniert es. Daher denke ich, sollte das mit dem TCD1304DG, auch funktionieren. Oder liege ich da falsch??
Möglicherweise funktioniert auch das Löschen der Pixel nicht richtig. Ich habe ein ähnliches Projekt mit einem ILX558K, bei dem ich den Schattenwurf auswerte. Ich belichte den Sensor nur kurz (ca. 50ms) mit einer roten LED und lese dann aus, dannach lese ich ohne zu belichten aus, dadurch wird die Ladung der Pixel gelöscht.
Hört sich interessant an, danke. Werde es auch einmal so probieren.
Das Signal nach dem Inverter sieht nicht so toll aus. Nimm doch mal einen 74HC04 und versuch mal ein Oszibild mit einem kompletten Auslesevorgang zu machen (ohne Belichtung, mit voller Belichtung und mit einem Schatten) Werner
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.