Ich möchte ein Spekrometer bauen und das Resultat der Optik mit einem CCD linear sensor aufnehmen> Ansteuerung und Auslesen habe ich schon gemacht. Als CCD linear sensor habe ich Sony ILX554B.Als Mikrocontroller Atmega 644. Als Ausgangswert bekonmme ich Vout(für jeder Pixel=2048) = 0.8V-3.8V (2048) Wie kann man dieser Vout jetzt auswerten (als Spektralfarben interpritieren)? Gibts vieleicht irgendwelche Literatur dafür? Hoffe mir kann jemand helfen?
Alex schrieb: > Gibts vieleicht irgendwelche Literatur dafür? Ja. Im aktuellen Funkamateur (06/2015) ist ein Projekt drin. Ebenfalls ein Literaturhinweis auf das Vorgängerprojekt aus dem Jahre 2010. Sowie hier im Forum: Beitrag "PC-Spektrometer - Problem mit Linien-CCD (AVR)" sowie http://www.mikrocontroller.net/articles/Digitales_PC-Spektrometer
Alex schrieb: > Wie kann man dieser Vout jetzt auswerten (als Spektralfarben > interpritieren)? Die Position des Pixels auf dem Sensor hat mit der Spektralfarbe zu tun, die Spannung ist die Intensität ("Helligkeit"). Das ist jedenfalls so, wenn Du den Sensor so angeordnet hast, daß Dein Prisma rotes Licht auf das eine, und violettes Licht auf das andere Ende des Sensors projiziert.
Alex schrieb: > Wie kann man dieser Vout jetzt auswerten (als Spektralfarben > interpritieren)? Die Spannung hat ja nichts mit der Wellenlänge zu tun, ausser daß die Umwandlungseffizienz je nach Wellenlänge anders ist. Du musst ein bekanntes Spektrum aufnehmen und weisst dann, welche Pixel zu welcher Wellenlänge passen. Und mit der Empfindlichkeitskurve des Silizium multiplizieren wenn du Energien ermitteln willst. Aber seit dem Digitalkameras billig sind, lohnt der Aufbau mit einem Linie-CCD nicht mehr, so lange man nur Spektren im sichtbaren Bereich messen will. http://www.lehrer-online.de/eigenbau-spektrometer-mit-digicam.php Hier steht auch was zur Kalibrierung.
Rufus Τ. Firefly schrieb: > wenn Du den Sensor so angeordnet hast, daß Dein > Prisma rotes Licht auf das eine, und violettes Licht auf das andere Ende > des Sensors projiziert. Und dazu brauchst du ein dispersives Element. Entweder ein Prisma, oder ein reflektives oder ein transmissives Beugungsgitter. Jedes davon hat Vor- und Nachteile, und die Optik ist die eigentliche Kunst beim Spektrometer. Die Elektronik ist, bis auf Extremfälle, eher eine Fingerübung.
@All: Danke auch von mir als Mitleser für Euer Feedback! MaWin schrieb: > Aber seit dem Digitalkameras billig sind, lohnt der Aufbau mit einem > Linie-CCD nicht mehr Ansichtssache. Eine Digitalkamera fest verbauen? Oder ständig aus- und einbauen? Ich finde es schöner, wenn das komplette Spekrometer in die Hemdentasche passt. MaWin schrieb: > Hier steht auch was zur Kalibrierung Für die Wellenlänge, ja. :-) Und für die spektrale Empfindlichkeit würde ich mit Sonnenlicht (planckscher Strahler) anfangen. Irgendwo habe ich mal 'ne Tabelle mit Jahreszeit, Breitengrad und Farbtemperatur gesehen. Alex schrieb: > Ich möchte ein Spekrometer bauen Ich auch. Alex schrieb: > Als CCD linear sensor habe ich Sony ILX554B Davon habe ich seit November 2014 auch drei Stück. Passt! :-) lrep schrieb: > Beugungsgitter Ich habe das hier aus dem Astroshop: http://astromedia.eu/Bastelspass-der-Wissen-schafft/Das-Handspektroskop::132.html PS: Bei rakuten.de und astromedia.eu gibt es die Durchlicht-Beugungsgitter mit 1.000 Linien pro mm in der Größe für vier Dias. Wegen des Portos könnte sich eine Sammelbestellung lohnen, die Folie könnten wir geschickt klein schneiden; es muss hierfür ja kein ganzes Dia sein. PPS: Meine Zusammenfassung unter: https://github.com/TorstenC/Notizblog/wiki/Digitales-Spektrometer
:
Bearbeitet durch User
@Alex: Was hast Du als Spalt verwendet bzw. was willst Du als Spalt verwenden? M.N. schrieb: > Im aktuellen Funkamateur (06/2015) ist ein Projekt drin. Ebenfalls > ein Literaturhinweis auf das Vorgängerprojekt aus dem Jahre 2010. Meinst Du den HF-Spektrumanalysator für Messungen bis 2 GHz? Selbst fernes Infrarot hat bereits 600GHz. Oder wie war der Hinweis gemeint? Ansonsten: Hat jemand das Heft 'Funkamateur 11/2010'? Man könnte es zwar bestellen, aber trotz Paypal muss man dort erst einen Account erstellen. Über die Hürde müsste man erstmal springen. Was wurde dort als Spalt verwendet? Im Artikel Digitales PC-Spektrometer wurde Tonpapier mit einem etwa 1mm breiten Spalt genutzt. Wie wäre es mit einem Dia, vielleicht aus einer Bitmap-Datei von einem Belicher-Dienstleister? Vielleicht könnte man auch gleich mehrere Schlitze auf das Dia machen, zum wechseln, je nach Lichtstärke und dem damit erreichbaren Auflösungsvermögen. Z.B.: 0,2mm - 0,5mm - 1mm - 2mm
Torsten C. schrieb: > Meinst Du den HF-Spektrumanalysator für Messungen bis 2 GHz? Selbst > fernes Infrarot hat bereits 600GHz. Oder wie war der Hinweis gemeint? Nein, ich meine das optische Spketrometer vom Dr. Sander: "Messwerterfassung für das Spektrum des sichtbaren Lichts" Seite 630 (ff.)
Danke fürs ihre Antworten! > Das ist jedenfalls so, wenn Du den Sensor so angeordnet hast, dass Dein > Prisma rotes Licht auf das eine, und violettes Licht auf das andere Ende > des Sensors projiziert. Aber wenn man verschiedene Lichtquellen ausprobieren will dann funktioniert das nicht mehr(Lichtquellen haben unterschiedlichen roten Anteil von Spektrum schmales oder breiter) Wofür ist Empfindlichkeit Graphik? bei ILX554B sieht man z.B. dass bei 800nm Empfindlichkeit fast 0.2 – heißt es den Sensor kann nicht dieser licht von 800nm sehen?
Alex Werner schrieb: > heißt es den Sensor kann nicht dieser licht von 800nm sehen? Er kann 800nm sehen! Nicht so gut wie 550nm, aber 'blind' ist er bei 800nm nicht. http://www.filmscanner.info/Fotometrie.html sagt: > In der Fotometrie wird Licht nicht nach seiner physikalischen > Leistung oder Energie bewertet, sondern es wird die physiologische > Helligkeitsempfindung des menschlichen Auges zugrunde gelegt. Du musst also - je nachdem was Du ausgeben willst - eine Kennlinie überlagern (physikalisch/radiometrisch oder physiologisch). Ggf. musst Du mehrere Kennlinien addieren. Zur Kalibrierung der 'Spektral.png' dachte ich, wie gesagt, an einen planckschen Strahler^^ (Sonnenlicht). Was meint Ihr? Macht das Sinn?
:
Bearbeitet durch User
Hi, ich habe auch vor mir so eins zu bauen, mich würde interessieren, was deine Beweggründe waren einen ILX554B zu verwenden? Habe mich da mal vor 2 Wochen ein bisschen eingelesen und dann ein paar Stück vom ILX554A bestellt, der hat meiner Meinung nach eine viel bessere spektrale Empfindlichkeit? Bzw. lässt sich die meiner Meinung besser(mit weniger Fehler) korrigieren,kann aber sein dass ich da falsch liege. Das Bild vom 554b hat eh schon jemand vor mir gepostet. lg Thomas
> Zur Kalibrierung der 'Spektral.png' dachte ich, wie gesagt, an einen > planckschen Strahler^^ (Sonnenlicht). Was meint Ihr? Macht das Sinn? Ich habe mir gedacht zur Kalibrierung laserpointer verschiedene farben benutzen dann weißt man genau 'nm' und kann genau messen welche wert sensor ausgibt (in V).Dann kann man genauer Kalibrierung. http://www.ebay.de/itm/2in1-LED-Laserpointer-Laser-Pointer-6-Farben-/301572618963?pt=LH_DefaultDomain_77&var=&hash=item463720fad3 Vieleicht wissen sie andere (günstigere) Möglichkeit?
Thomas schrieb: > Hi, > ich habe auch vor mir so eins zu bauen, mich würde interessieren, was > deine Beweggründe waren einen ILX554B zu verwenden? Habe mich da mal vor > 2 Wochen ein bisschen eingelesen und dann ein paar Stück vom ILX554A > bestellt, der hat meiner Meinung nach eine viel bessere spektrale > Empfindlichkeit? > > Bzw. lässt sich die meiner Meinung besser(mit weniger Fehler) > korrigieren,kann aber sein dass ich da falsch liege. Das Bild vom 554b > hat eh schon jemand vor mir gepostet. > > lg Thomas Ja dem wollte ich auch aber war nirgendwo zu kaufen.ILX554A ist natürlich besser. Wo wollen sie ihm kaufen?
Alex Werner schrieb: > Ja dem wollte ich auch aber war nirgendwo zu kaufen.ILX554A ist > natürlich besser. > Wo wollen sie ihm kaufen? Hi, ja schaut so aus als wäre der schon vor längerem Eol, ich habe 10Stk zum experimentieren bei aliexpress bestellt und bereits erhalten, hab aber noch aus Zeitgründen nix damit machen können. Es besteht dort halt immer die Gefahr das man nicht das bekommt was draufsteht aber als Bastler bin ich das Risiko mal eingegangen :) von diesem Händler habe ich bestellt, da muss man aber mit gut 3Wochen Lieferzeit rechnen. http://de.aliexpress.com/item/ILX554A-CDIP-2048-pixel-CCD-Linear-Sensor-B-W-for-Single-5V-Power-Supply-Bar-code/675311438.html lg Thomas
Alex Werner schrieb: >> Zur Kalibrierung der 'Spektral.png' dachte ich, wie gesagt, an einen >> planckschen Strahler^^ (Sonnenlicht). > Ich habe mir gedacht zur Kalibrierung laserpointer verschiedene farben > benutzen Nochmal: Wir reden von zwei verschiedenen Dingen: a) Die Kalibrierung auf die Wellenlänge (Pixel-Zuordnung), da hatte MaWin^^ schon auf die Methode verwiesen, das Spektrometer mithilfe der bekannten Spektrallinien einer Energiesparlampe zu kalibrieren. Laser gehen auch, aber ob die genauer sind? b) Die Kalibrierung der Emfindlichkeit als Kennlinie in Abhängigkeit der Wellenlänge. Dafür (und nur dafür) hatte ich Sonnenlicht vorgeschlagen. Thomas schrieb: > ich habe 10Stk zum experimentieren bei aliexpress bestellt und > bereits erhalten Kann ich Dir eins abkaufen? * Gegen xx€ oder * gegen yy€ + ILX554B? Mit yy < xx. ;-) Mir würde eines zum Vergleich reichen. Wenn ich PCBs bei OSH Park bestelle, sind es immer 3 Stück, dann hätte ich 2x ILX554B + 1x ILX554A.
:
Bearbeitet durch User
Torsten C. schrieb: > Laser gehen auch, aber ob die genauer sind? Frequenzverdoppelte grüne Laser (DPSS) sowie deren 808nm Pumpdioden beim richtigen Strom sind ok, aber sonst sind Laserdioden sind relativ ungenau und temperaturabhängeig. Leider aber eignen sich Laser, auch die genauen Gaslaser, wie HeNe oder Kr+ oder Ar+ Ionenlaser, generell nicht besonders gut für Spektrometer, weil das koheränte Licht Probleme macht. Am einfachsten sind wirklich die Linienspektren von Gasentladungslampen zu verwenden.
Es ist ja auch immer die Frage, wofür das Spektrometer hinterher verwendet werden soll. Wenn z.B. ein Spektrophotometer aufgebaut werden soll, kann einfach mit der verwendeten Lampe eine Untergrundmessung stattfinden. Kalibrierung der Wellenlängen erfolgt wie oben beschrieben mittels Energiesparlampe o.ä.
butsu schrieb: > Untergrundmessung Hmmm, irgendwie reden wir noch aneinander vorbei. Mit der Untergrundmessung ermittelst Du m.E. das Grundrauschen bzw. die unterschiedlichen Empfindlichkeiten von Pixel zu Pixel. Aber z.B. 3mV bei Blau sind halt 'ne andere Helligkeit als 3mV bei Grün, also so wie in ilx554a.JPG^^ oder ilx554b.JPG^^ zu sehen. Natürlich hat hinter dem Beugungsgitter jeder Pixel seine eigene zugeordnete Wellenlänge. Es muss also nicht für alle Wellenlängen und jeden Pixel ein ganzes Kennfeld aufgebaut werden. Aber wenigstens eine Kennlinie. Oder? Wie erstellt man diese Kennlinie? Misst man die o.g. Kurve aus dem Datenblatt mit einem Lineal auf Papier aus und überträgt die Werte in ein Array? Oder wie würest Du die spektrale Empfindlichkeit zur Kalibrierung ermitteln, wenn nicht mit Sonnenlicht?
:
Bearbeitet durch User
Torsten C. schrieb: > Wie erstellt man diese Kennlinie? Wenn du Absorption messen willst, brauchst du eigentlich nur die Wellenlänge zu kennen. Ausreichende Intensität bei der Messwellenlänge muß vorhanden sein und stabil, aber der absolute Betrag ist unwichtig. Emissionsmessungen sind schwieriger, weil man dafür Normlichtquellen braucht. Da verlässt man sich vielleicht am einfachsten auf die vom CCD-Hersteller angegebene Empfindlichkeitskurve, und darauf, dass die optischen Bauteile im interessierenden Bereich nicht gefärbt sind. Mit den Gitterfolien aus Kunststoff kann man ohnehin nicht im UV messen, weil dort mit Sicherheit starke Absorptionsbanden liegen. Außerdem besteht da die Gefahr, dass Identifikation der Wellenlänge nicht mehr eindeutig ist, weil die 2. Beugungsordnung auf den Chip wandert. Die von der Wellenlänge abhängige Absorption (und Brechungsindex) der verschiedenen Materialien ist auch der Grund, weshalb in kommerziellen Spektrometern i.d.R. keine Transmissionsgitter sondern Reflexionsgitter und keine Linsen, sondern Oberflächenspiegel verwendet werden. Ausnahmen bestätigen die Regel, aber dann bestehen die durchstrahlten Bauteile aus mehr oder weniger exotischen Materialien, wie Quarz, Calciumfluorid, Steinsalz etc.. Ansonsten ist hauptsächlich die Linearität des Detektors wichtig. Die Pixels des CCD selbst werden sich linear verhalten, solange sie nicht überbelichtet werden, aber der Ausleseverstärker hat evtl. einen Linearitätsfehler. Die Linearität kann man sogar mechanischen Mitteln, wie Blenden oder Drahtgittern kontrollieren. Schwache Lichtintensitäten kann man mit langen Belichtungszeiten messen, aber da kann das thermische Rauschen störend wirken. Dagegen hilft es den Detektor mit einem Peltierelement zu kühlen. Aufpassen, dass sich dabei kein Kondenswasser auf dem Fenster des Detektors und seinen Anschlüssen(!) bilden kann.
@Thomas(Gast): Kannst Du mir bitte eine PN schicken? lrep schrieb: > Emissionsmessungen sind schwieriger, weil … Ja genau das war meine Frage! :-) Die vom Hersteller angegebene Kurve mit einem Lineal (Bildbe- arbeitungsprogramm mit Messen-Funktion) in ein Array wandeln? Meinst Du wirklich? Bei einer Schwarzer-Körper-Kalibrierung würde man auch die sonstigen optischen Bauteile im Gesamtsystem berücksichtigen und hätte eine individuelle Kennlinie für seinen Sensor und keinen 'allgemeinen Durchschnitt'. Das macht für mich erstmal mehr Sinn. Sehe ich das falsch? lrep schrieb: > keine Transmissionsgitter sondern Reflexionsgitter Ist ein CD-Rohling geeignet? Ich kann mir vordtellen, dass es was besseres gibt. Aber was? Und wo kann man das kaufen? lrep schrieb: > Mit den Gitterfolien aus Kunststoff kann man ohnehin nicht im UV messen, > weil dort mit Sicherheit starke Absorptionsbanden liegen. Die Absorptionskurve könnte man bei der Schwarzer-Körper-Kalibrierung ja erfassen und in gewissen Grenzen korrigieren. > Außerdem besteht da die Gefahr, dass Identifikation der Wellenlänge > nicht mehr eindeutig ist, weil die 2. Beugungsordnung auf den Chip > wandert. Ich habe noch keinen Preisvorstellung von Reflexionsgittern. Aber falls Reflexionsgitter vieiel teurer sein sollten, könnte man die 2. Beugungsordnung vom gemessenen Signal doch wieder abziehen. Oder? lrep schrieb: > keine Linsen, sondern Oberflächenspiegel Am einfachsten wäre, wenn man im Lasercutting-Gehäuse einen Parabel-Schlitz erzeugt und dann ein gebogenes federndes Blech in den Schlitz steckt. Oder wie würdet Ihr das machen? Welches Spiegel-Blech käme in Frage? Siehe auch * Beitrag "CAD-SW für Laser Cut Objekte" * Beitrag "Best Practise Acryl-Gehäuse/-Verbau"
:
Bearbeitet durch User
Torsten C. schrieb: > Die vom Hersteller angegebene Kurve mit einem Lineal (Bildbe- > arbeitungsprogramm mit Messen-Funktion) in ein Array wandeln? > Meinst Du wirklich? Zum Bleistift. Präzisionsmessungen werden das mit einem klapperigen Aufbau aus Heißkleber und Pappkarton sowieso nicht werden. Torsten C. schrieb: > Bei einer Schwarzer-Körper-Kalibrierung würde man auch die sonstigen > optischen Bauteile im Gesamtsystem berücksichtigen Wohnst du in Braunschweig und hast gute Kontakte zur PTB? Dann mach das so. Der Wolframdraht in gewöhnlichen Glühlampen ist ein einigermaßen grauer Strahler, und man kann seine Temperatur über den elektrischen Widerstand einigermaßen abschätzen, aber genau geht anders. Andere Strahler, für die der Bastler ein Thermometer hat, werden nicht heiß genug um nennenswerte Mengen kurzwelligen Lichts zu emittieren, und wie schwarz sie in der Gluthitze sind, weiß man i.d.R. auch nicht. Torsten C. schrieb: > Ist ein CD-Rohling geeignet? Eher nicht. Dafür gibt es mehrere Gründe. Zum Ersten ist auch das kein Oberflächenspiegel, das Licht müsste dort also sogar zweimal durch 1,6mm Kunststoff, zum Zweiten befindet sich auf der Reflexionsschicht ja ein absorbierender Farbstoff, sonst könnte man die CD gar nicht brennen, und zum Dritten ist die Spur gar nicht so exakt gleichmäßig, wie es den Anschein hat, sondern sie schlängelt sich absichtlich etwas hin und her, wodurch im Servoverstärker ein, iirc, 25kHz Fehlersignal ensteht, das zur Regelung auf die richtige Geschwindigkeit dient. Torsten C. schrieb: > Aber falls Reflexionsgitter > vieiel teurer sein sollten, könnte man die 2. Beugungsordnung vom > gemessenen Signal doch wieder abziehen. Oder? Reflexionsgitter sind deutlich teurer und genauer, denn dort wird ein sehr präzises Gittermuster auf eine etliche Millimeter dicke Glasplatte aufgebracht und anschliessend mit Aluminium bedampft. Subtrahieren kannst du die 2.Ordnung nicht, weil sie das Spektrum 1.Ordnung überlagert und man es ja i.d.R. mit vielen Linien zu tun hat. Es gibt aber Gitter, die absichtlich wenige Linien/mm haben und bis zu hohen Ordnungen, über 80, betrieben werden um hohe Auflösung zu erzielen. Dabei überlagern sich viele Ordnungen, und um dieses "Kuddelmuddel" aufzulösen, zieht man das das Spektrum mit einem Quarzprisma bescheidener Auflösung senkrecht auseinander. Das Bild, das dabei entsteht, kannst du z.B. hier sehen: http://de.wikipedia.org/wiki/Echellegitter Mit so einem Echelle-Spektrometer, dessen Gitter nur 69 Linien/mm besass, habe ich mal zwei nur 6pm voneinander entfernte Eisenlinien bei 2xy nm sauber voneinander getrennt. Deshalb musste ich etwas schmunzeln, als ich im anderen Thread dies las: I_ H. schrieb: > Auf einem anderen Bild hatte ich Linienbreiten von 500pm, und da müsste > noch ein bisschen was gehen (vll 300..400). Insgesammt scheint das neue > Spektrometer also zu funktionieren. > > Viel mehr macht dann aber glaub ich auch keinen Sinn mehr. Von der > relativen Genauigkeit her dürften sehr gute Laborspektrometer auch nicht > viel besser sein, Torsten C. schrieb: > Welches Spiegel-Blech käme in Frage? Gar keines. Wie gesagt, sind bestehen die Gitter und Spiegel aus mit Aluminium bedampften Glas. Gib dir nicht allzu viel Mühe damit. Die professionellen Spektrometer sind verwindungssteife schwere Metallkisten mit Thermostatisierung, und Lage und Winkel der optischen Elemente werden mittels Justierschrauben fein justiert. Die billigen Gitterfolien werden wohl stets wellig oder krumm und schlecht justiert sein, und dann kann werden sie eben ungefähr das leisten, was man mit dem Pappschachtel-Spektrometer sehen kann, - aber auch nicht mehr.
@Thomas(Gast): Kannst Du mir bitte eine PN schicken? lrep schrieb: > Präzisionsmessungen werden das mit einem klapperigen Aufbau aus > Heißkleber und Pappkarton sowieso nicht werden. Danke für Deine Antworten. :-) Aber wieso Pappkarton? Mit einer Verwindungs-steifen Konstruktion aus verklebten Lasercutting-Teilen (3D-Puzzle) kann man die 2048 Pixel sicherlich sinnvoll nutzen. Metall oder Kuststoff ist ja nur eine Kosten-Frage. Der Bauplan kann nahezu identisch sein. Um den CRI oder CQS abzuschätzen oder zu unterscheiden, ob ein Chinese die LEDs in der versprochenen Wellenlänge geliefert oder verbaut hat, wird's schon reichen. ;-) Ich denke: So genau wie möglich für ca. 25€ bis 30€, um sich am CCD-Preis zu orientieren. @Alex Werner: * Möchtest Du ein Präzisionsmessgerät bauen? * Spiegel oder Linse? Was hast Du vor? * Reflexionsgitter oder Durchlicht-Beugungsgitter? Ich habe mal die Funkamateur-Hefte bestellt. Kein Paypal, sondern Vorkasse. Wie im letzten Jahrtausend. Egal, vielleicht kommen wir damit weiter! :-) PS: Interessante Links: http://www.kruschwitz.com/cri.htm (CRI berechnen) http://de.wikipedia.org/wiki/Farbqualit%C3%A4tsskala > Mit dem steigenden Anteil an LED-Lichtquellen wurden Änderungen der > Farbmetrik nötig, da der Farbwiedergabeindex bestimmte LED-Lichtquellen > gegenüber anderen Lichtquellen benachteiligt. Woher bekommt man so eine CQS-Testkarte?
:
Bearbeitet durch User
In ebay 310669323257 ist ein Sony ILX511 drin. Warum? Ist der besser? http://www.spectralproducts.com/sm200400 http://de.aliexpress.com/item/-/1792883555.html (€11,23/Stück)
:
Bearbeitet durch User
MaWin schrieb: > Aber seit dem Digitalkameras billig sind, lohnt der Aufbau mit einem > Linie-CCD nicht mehr OK, geht auch, da muss ich Dir Recht geben: Das ist zwar auch nur ein 'klapperiger Aufbau aus Heißkleber und Pappkarton'^^, aber einer für die Hemdentasche: http://publiclaboratory.org/wiki/smartphone-spectrometer Keine Ahnung, ob man mit dem CCD präziser wird. Ich denke schon. Aber es gibt auch schon wieder was Neues, weder mit Digitalkameras noch mit CCD-Streifen, den C12666MA: http://image-sensors-world.blogspot.de/2014/12/hamamatsu-predicts-rise-of-consumer.html > a new compact and cost-effective spectrometer for consumer applications http://www.hamamatsu.com/resources/pdf/ssd/c12666ma_kacc1216e.pdf Der wäre mir und sicher auch dem TE aber noch zu teuer: https://www.tindie.com/products/PureEngineering/arduino-c12666ma-micro-spectrometer-/
:
Bearbeitet durch User
Hallo . Ich hab versucht Sony ILX554B Auszulesen aber kriege immer wieder fast gleiche Werte bei jedem Pixel(2,85V bei der Dunkelheit). Beim Spektrum (egal welchem entweder 0,5V(jeder Pixel) oder 2,1V(jeder Pixel)). Sieht so aus als ob er nur 1 Pixel 2048Mal ausliest und ausgibt. Belichtungszeit bei mir ist 4,2ms() und Auslesungzeit ist 417ms(Weil ADC zu langsam ist) Ich hoffe dass mir jemand helfen kann.
Das Auslesen sollte im Datenblatt beschrieben sein. Das timing muss eingehalten werden, sonst ist eh nichts. Ueblicherweise macht man bei jedem Pixel wieder eine Referenzmessung, da nur die Differenz gemessen werden kann. Moeglicherweise auch nicht mehr.
Jetzt N. schrieb: > Das Auslesen sollte im Datenblatt beschrieben sein. Das timing > muss > eingehalten werden, sonst ist eh nichts. Das macht er sicher (Ich habe mit Osziloskop gemessen) Ueblicherweise macht man bei > jedem Pixel wieder eine Referenzmessung, da nur die Differenz gemessen > werden kann. Moeglicherweise auch nicht mehr. Referenzmessung macht er auch (wie in Datenblatt jedes mal wenn flanke clk oben ist(und unten als dummy auslesung).
Hast Du das Problem nur bei den ersten Messungen oder dauernd? Ich frage, wegen: > Normal output signal is not obtained immediately after device switch on. > Use the output signal added 22500 pulses or above to φCLK clock pulse. Hast Du mal mit S/H (Pin 4) beide Varianten ausprobiert, nur mal um den Fehler einzukreisen?
:
Bearbeitet durch User
Hallo du musst viel schneller auslesen. Während du ausliest wird der CCD belichtet und "läuft" voll. Deswegen die vielen Dummytakte. Wenn du kontinuierlich belichten und auslesen willst dann muß in der Belichtungszeit deine Zeile ausgelesen sein. Bei einzelnen Zeilen musst du immer die Ladung der "Vorgeschichte" entfernen. Wenn du ROG setzt ist die Ladung im CCD das summierte Signal aus der Zeit vor ROG. Die musst du "raustakten" z.B. mit 1MHz. Mit dem nächsten ROG ist die Belichtungszeit der Abstand zum letzten ROG. Ob der CCD die Ladung 400ms halten kann weiß ich nicht.
karadur schrieb: > Hallo > > du musst viel schneller auslesen. Während du ausliest wird der CCD > belichtet und "läuft" voll. Deswegen die vielen Dummytakte. > > Was meinen Sie mit schneller.Ich meine wie schnell muss Auslesungzeit sein? In datenblatt steht dass muss nicht schneller als 2Mhz sein aber wie langsam kann es sein steht nichts.Deswegen gehe ich davon aus dass man "so lange wie man will" auslesen kann. Ich mache so: ROG Belichtungzeit(4,2ms=2100*2µs)ROG..ROG..Auslesung(400ms)..ROG Oder kan man zuerst Sensor belichten lassen und dann Auslesen geht das auch? Wo kann man das genauer nachlesen? Was bedeutet Integrationzeit ist das nicht Belichtungzeit?
Torsten C. schrieb: > Hast Du das Problem nur bei den ersten Messungen oder dauernd? > Ich frage, wegen: >> Normal output signal is not obtained immediately after device switch on. > > Hast Du mal mit S/H (Pin 4) beide Varianten ausprobiert, nur mal um den > Fehler einzukreisen? Ich habe dieser Problemm ständig.Und ich habe beide varianten ausprobiert Ergebnis ist gleich. >> Use the output signal added 22500 pulses or above to φCLK clock pulse. Dieser auch.Ich habe sogar 30000 pulses.
BTW mal 'ne Frage an Erik Werner: Welchen ADC nutzt Du? 0 bis 3,3V müssten doch reichen, oder? Ich mache gerade ein PCB-Layout für den STM32F103R8T6 (12 Bit und getrennte Versorgung für den Analog-Teil) und ich frage lieber nochmal nach. Erik Werner schrieb: > Oder kan man zuerst Sensor belichten lassen und dann Auslesen geht das > auch? Ja, während Du ausliest, wird die nächste Belichtung gemacht. Falls der ADC langsam ist: * erstmal schnell auslesen (am besten mehrfach) * das letzte "auslesen" ist die letzte Belichtung * dann langsamer (die letzte Belichtung) auslesen. So habe ich es jedenfalls verstanden. > Wo kann man das genauer nachlesen? Das müsste eigentlich ein Grundprinzip der CCDs sein: https://en.wikipedia.org/wiki/Charge-coupled_device Erik Werner schrieb: >>> Use the output signal added 22500 pulses or above to φCLK clock pulse. > Dieser auch. Ich habe sogar 30000 pulses. Mit 1MHz? Allein die "thermische Strahlung" füllt Dir bei Dunkelheit die 'Kondensatoren' in den CCD-Elementen, wenn Du zu langsam ausliest. karadur schrieb: > Ob der CCD die Ladung 400ms halten kann weiß ich nicht. Dort sind quasi 2048 einstufige "Eimerketten" drin, oder?
:
Bearbeitet durch User
Ich nutze ADC von Atmega 1284P Ich habe ADC auf 156kHz eigestellt(6µs*13 Zyklen=83µs(Convesiontime)) Torsten C. schrieb: > BTW mal 'ne Frage an Erik Werner: > > Welchen ADC nutzt Du? 0 bis 3,3V müssten doch reichen, oder? Ich mache > gerade ein PCB-Layout für den STM32F103R8T6 und ich frage lieber nochmal > nach. Ich nutze ADC von Atmega 1284P Ich habe ADC auf 156kHz eigestellt(6µs*13 Zyklen=83µs(Convesiontime)).Er ist leider extrem langsam. > Das müsste eigentlich ein Grundprinzip der CCDs sein: > https://en.wikipedia.org/wiki/Charge-coupled_device Da steht leider nichts über Belichtungzeit. > Erik Werner schrieb: >>>> Use the output signal added 22500 pulses or above to φCLK clock pulse. >> Dieser auch.Ich habe sogar 30000 pulses. > > Mit 1MHz? Muss man unbedingt mit 1MHz. Ich habe schneller gemacht mit 10MHz(20Mhz Quarz)
Erik Werner schrieb: > Ich habe schneller gemacht mit 10MHz Datenblatt: Maximum clock frequency: 2MHz Halt möglichst schnell, aber nicht über der "Maximum clock frequency". Erik Werner schrieb: >> 0 bis 3,3V müssten doch reichen Saturation output voltage ~ 1V Mehr hast Du auf deinem Oszi auch nicht, oder? Erik Werner schrieb: > Belichtungzeit Je länger Du belichtest, desto mehr Elektronen sammeln sich an.
:
Bearbeitet durch User
Torsten C. schrieb: > Erik Werner schrieb: >> h habe schneller gemacht mit 10MHz > > Datenblatt: Maximum clock frequency: 2MHz > > Halt möglichst schnell, aber nicht über der "Maximum clock frequency". > > Erik Werner schrieb: >>> 0 bis 3,3V müssten doch reichen > > Saturation output voltage ~ 1V > Mehr hast Du auf deinem Oszi auch nicht, oder? Nein ich kriege bei der Dunkelheit 2,85V(Erste Pixel) und 2,4V (2048 Pixel). Wenn ich versuche Spektrum zu messen dann entweder wird mein sensor schnell "Überlichtet" 3,5V(Alle Pixel) oder wird Wert aus erstem Pixel 2048 Mal Ausgelesen.
> Saturation output voltage: Typ. 1,0V Erik Werner schrieb: > "Überlichtet" 3,5V(Alle Pixel) Verstehe ich nicht. Es wird Zeit, dass ich meinen CCD auch mal in Betrieb nehme. Erik Werner schrieb: > Wenn ich versuche Spektrum zu messen Benutzt Du ein Prisma oder ein Gitter? Einen Spiegel oder eine Linse? Welchen/welche? Aus Interesse, weil ich noch unschlüssig bin.
:
Bearbeitet durch User
Ich benutze ein Gitter 1.000 Linien pro mm. http://astromedia.de/Material-fuer-Selbermacher/OPTI-Media-Filterfolien/Das-Durchlicht-Beugungsgitter::153.html Linse => 2 linsen vergütet von Astromedia Wenn 2MHz nimmt dann kriegt man 50ns => 50ns*2087 1ms fürs auslesung und ich gehe davon aus das ist max Belichtungzeit oder? Wie schnell muss dan ADC sein?
Erik Werner schrieb: > In datenblatt steht dass muss nicht schneller als 2Mhz sein aber wie > langsam kann es sein steht nichts.Deswegen gehe ich davon aus dass man > "so lange wie man will" auslesen kann. Das hängt stark von der Temperatur und von Unregelmäßigkeiten im Silizium ab. Dieser Sperrstrom bzw. die Entladegeschwindigkeit kann sich auch von Pixel zu Pixel stark unterscheiden. Ich habe vor sehr langer Zeit mal DRAMs untersucht, die noch nicht bei jedem Zugriff einen Refresh machten. Row- und Column- Adressen aus einem Binärzähler auf zwei DACs gegeben und die Analogsignale zur X-Y-Ablenkung eines Scopes benutzt. Den Datenausgang des Speicherchips für die Z-Modulation. Wenn man dann einmal lauter Einsen in den Chip schreibt, was zur Dunkeltastung der Röhre führt, kann man während der darauf folgenden Sekunden schön sehen, wie die Speicherzellen ihre Ladung verlieren. Das Bild erinnert an die Fenster eine Hochhauses, in dem Abends in zufälliger Folge nach und nach die Lichter angegehen., Ich schätze, dass bei Zimmertemperatur die ersten Speicherzellen nach 0,5s ihre Ladung verloren hatten, aber viele auch über 10 Sekunden durchhielten. Kühlung verbessert den Ladungserhalt dramatisch und bei mir bekannten Spektrometern werden die Chips sogar mittels mehrstufiger Peltier- oder Kompressorkühlung bei -70°C betrieben. Die Astromonen kühlen ihre Kamerachips sogar mit flüssigem Stickstoff.
Erik Werner schrieb: > Wie schnell muss dan ADC sein? Das hängt u.a. davon ab, wieviel Bits er hat, also wie genau die Spannung sich in der zur Verfügung stehenden Zeit einstellen muss.
Hallo zum Verständnis CCD. Nach anlegen der Versorgung werden eintreffende Photonen pro Pixel als Strom in einem Kondensator als Ladung gespeichert. Je mehr Licht desto mehr Ladung. Irgendwann ist der Kondensator voll. Weitere Ladung fließt auch in die Nachbarzellen. Das muss vermieden werden um brauchbare Signale zu erhalten. Mit dem ROG-Puls wird die Ladung in den Transferspeicher geladen und mit jedem Takt an Clock an die Ausgangsstufe geleitet. Deshalb entleert man den Transferspeicher. In der Zeit wird aber schon wieder belichtet. Um kontinuierlich Zeilensignale zu erhalten muss man schneller auslesen als die Belichtungszeit dauert. Für einzelne Zeilen muss man immer erst die Ladung aus der Zeit vor dem ersten ROG entfernen. Evtl. muss wegen der Empfindlichkeit der CCD der Lichtstrom mit einer Blende reduziert werden oder mit einem mech. Shutter die Bel.-Zeit gemacht werden.
Ohne mich um den genauen chip gekuemmert zu haben.. Es gibt 2 sorten CCD. Der Eine ist einfach eine Eimerkette, da wird waehrend dem Rausschieben weiterbelichtet. Detr andere schiebt die Pixelladung erst mal in abgedunkelte Kondensatoren grad daneben. Dh die Pixel haben nur die halbe Flaeche. Und die werden dann per eimerkette rausgeschoben. Dafuer erreicht man kuerzere Belichtungszeiten. Ich erachte den ADC eines Mega als viel zu langsam. Denn man muss 2 Messungen pro pixel machen. Unter einem 500kSample wuerd ich nicht anfangen.
Hallo die Dummypixel auf dem CCD liefern eine Referenz für den Dunkelstrom. Wenn man CDS verwendet kann man den Dunkelstrom aus dem Ausgangssignal entfernen.
Könnte sein das Sensor Sehr Empfindlich ist und deswegen kriegt man ständige überlichtung? Vieleicht muss man irgendwelche filter benutzen um licht zu reduzieren?
Die Sensoren sind äusserst empfimdlich und daher gleich überbelichtet, also entsprechend aufpassen. Das Auslesen geht sogar mit Bascom, werde ich aber demnächst auf LunaAVR umschreiben. Im Beispiel wird aus Performancegründen nur jedes 4. Pixel ausgewertet.
1 | '--------------------------------------------------------- |
2 | ' Spectroscopy mit ILX551B 2048-pixel CCD Linear Sensor |
3 | '--------------------------------------------------------- |
4 | |
5 | $regfile = "m168def.dat" |
6 | $crystal = 14745600 ' Quarz für exakte 115200 baud |
7 | $hwstack = 40 |
8 | $swstack = 40 |
9 | $framesize = 40 |
10 | $baud = 115200 |
11 | |
12 | Dim Exposure As Word |
13 | Dim Integrate_time As Word |
14 | |
15 | Dim Buffer(512) As Byte |
16 | |
17 | Dim N As Word |
18 | Dim M As Byte |
19 | Dim X As Word |
20 | |
21 | Clk Alias Portb.1 |
22 | Prog Alias Portb.0 |
23 | Config Portd.6 = Output |
24 | |
25 | Ddrc = &B00000000 'Port C aufs Eingang |
26 | Portc = &B11111110 'Port C auf High ausser PortC.0 |
27 | Ddrb = &B00000011 'Port B Pin 0 / 1 Ausgänge |
28 | |
29 | Config Adc = Single , Prescaler = 8 , Reference = Avcc |
30 | Set Admux.5 |
31 | Start Adc |
32 | |
33 | Exposure = 1000 ' Belichtungszeit in µS |
34 | Integrate_time = Exposure ' Dummy weil sonst Exposure falsch |
35 | |
36 | Set Prog |
37 | Waitms 1 |
38 | Portd.6 = 0 |
39 | |
40 | Do |
41 | X = 0 |
42 | M = 0 |
43 | |
44 | '------------------------- Dummy Lauf , Dauer ca. 10 ms |
45 | Reset Prog |
46 | Waitus 200 |
47 | Set Prog |
48 | For N = 0 To 2086 |
49 | Reset Clk |
50 | Waitus 1 ': Nop : Nop : Nop : Nop : Nop |
51 | Set Clk |
52 | Next N |
53 | |
54 | '------------------------- Belichtungszeit einstellen |
55 | Reset Prog |
56 | Waitus Exposure 'Exposure Integrate_time us |
57 | Set Prog |
58 | |
59 | Portd.6 = 0 |
60 | Portd.6 = 1 : Nop : Nop : Nop 'Puls für Oszi Trigger |
61 | Portd.6 = 0 |
62 | |
63 | '------------------------- Mess Lauf , ca. 18 ms, jedes 4.Pixel lesen |
64 | For N = 0 To 2086 ' Adc auslesen |
65 | Incr M |
66 | |
67 | Reset Clk |
68 | Waitus 1 |
69 | Set Clk |
70 | |
71 | If M = 4 Then |
72 | Nop : Nop |
73 | Set Adcsra.adsc |
74 | While Adcsra.adsc = 1 |
75 | Wend |
76 | Buffer(x) = Adch |
77 | M = 0 |
78 | Incr X |
79 | End If |
80 | Next N |
81 | |
82 | '--------------- Daten an serielle Schnittstelle schicken |
83 | Print "++" |
84 | Print Exposure ; " us" |
85 | Print "Start Data #####################" |
86 | For X = 0 To 512 |
87 | Print Buffer(x) |
88 | Next |
89 | |
90 | '---------------- Serielle Schnitstelle lesen |
91 | ' noch implementieren: Start Messung + Exposure Time von PC empfangen |
92 | |
93 | Loop |
Hier noch das einfache Test-Frontend für obiges Programm. Dargestellt wird das (nichtkalibrierte) Spektrum eines Billiglasermoduls.
lrep schrieb: > Erik Werner schrieb: >> Wie schnell muss dan ADC sein? > Das hängt u.a. davon ab, wieviel Bits er hat, also wie genau die > Spannung sich in der zur Verfügung stehenden Zeit einstellen muss. Diesen Satz habe ich nicht verstanden, was ist mit 'Spannung einstellen' gemeint? Jetzt N. schrieb: > Denn man muss 2 Messungen pro pixel machen. Warum? Und dann den Mittelwert nehmen, oder wie meinst Du das?
lrep schrieb: > Das hängt u.a. davon ab, wieviel Bits er hat Jetzt N. schrieb: > 2 Messungen pro pixel Oder weiss sonst jemand, was das soll?
Kennt man wo man schon fertige CCD Spektrometer kaufen kann? Oder zu mindestens dieser Teil wo man Spektrum von Licht bekommt(ich kann nicht Spektrum auf Sensor kriegen) Ich hoffe das weist jemand.
Kennt man wo man schon fertige CCD Spektrometer kaufen kann? Oder zu mindestens dieser Teil wo man Spektrum von Licht bekommt(ich kann nicht Spektrum auf Sensor kriegen) Ich hoffe das weist jemand.
Alex schrieb: > Oder zu mindestens dieser Teil wo man Spektrum von Licht bekommt So etwas nennt sich Prisma.
Eine Runde Gurgeln nach "CCD Spektrometer" ergab: Ungefähr 41.600 Ergebnisse (0,37 Sekunden) Zusammen mit jeder Menge kommerzieller Anzeigen von Leuten die sich freuen würden Dir so ein Ding zu verkaufen... Ist aber schrecklich schwer nachzuvollziehen;)
Das ist mir klar aber auser Prisma muss man noch was dazu basteln aber lieber kaufen Weist du vieleicht wo?(ich meine komplete Systeme)
Alex schrieb: > Kennt man wo man schon fertige CCD Spektrometer kaufen kann? z.B. bei Zeiss http://www.zeiss.de/microscopy/de_de/produkte/spektrometermodule/monolithic-miniature-spectrometer--mms-.html
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.