RegistrierenRegistrieren   LoginLogin   FAQFAQ    SuchenSuchen   
Encoder angle rate
 
Neue Frage »
Antworten »
    Foren-Übersicht -> Elektrik
Autor Nachricht
Markus17
Gast





Beitrag Markus17 Verfasst am: 04. Jan 2017 12:17    Titel: Encoder angle rate Antworten mit Zitat

Ich grüsse alle zusammen und ich hoffe ihr seid gut ins neue Jahr gerutscht.
Ich habe eine Frage und zwar weiss ich nicht, ob sie hier gut rein passt.

Ich habe einen Bildsensor habe der 1024x1 Pixel hat.
und einen Mikroprozessor mit 48MHz und einem 12-bit ADC mit 1 MSPS.
Die Daten vom Sensor werden ausgelesen.
Wie komme ich auf die Zeit, die der uC braucht, um den Sensor auszulesen?

Ich kann ja nicht einfach t=1/f=1024/1.000.000 rechnen, oder etwa schon?
Der Takt 48MHz spielt doch auch eine Rolle hierbei, oder? Ich bräuchte dringenden Rat.
Steffen Bühler
Moderator


Anmeldungsdatum: 13.01.2012
Beiträge: 7242

Beitrag Steffen Bühler Verfasst am: 04. Jan 2017 12:56    Titel: Antworten mit Zitat

Doch, so kannst Du das rechnen. In etwa einer Millisekunde sind alle Daten durch. Der Prozessor muss sie natürlich schnell genug abholen, wenn kein Pufferspeicher da ist. Da aber ein normaler Move-Befehl nur ein bis zwei Taktzyklen dauert, ist das bei 48MHz kein Problem.

Viele Grüße
Steffen
Markus17
Gast





Beitrag Markus17 Verfasst am: 05. Jan 2017 00:33    Titel: Antworten mit Zitat

Hi Steffen

Vielen Dank für deine schnelle Reaktion.

Dann habe ich folgendes Problem und zwar handelt es sich hier um diesen Sensor h t t p: / /w w w.neumueller.com/datenblatt/epc/EPC_901.pdf

Wenn ich da auf Seite 10 schaue, arbeitet der Sensor mit einer Taktrate von 55MHz im Differential mode.

Des Prozessors ADC hat einen Takt von 13MHz, bei 12 bit beträgt die Conversionszeit 13 Taktzyklen. Also stimmen die 1MSPS.
ht t p s: / /w w w.silabs.com/products/mcu/32-bit/efm32-leopard-gecko/pages/EFM32LG230F128-QFN64.aspx

Diese Kombination gibt es bereits und die Daten werden ausgelesen.
Was mir aber überhaupt nicht in den Kopf geht ist, dass der Sensor den eindimensionalen-Array mit einem Takt von 55MHz ausliest und der ADC aber nur mit 1MSPS sample't. Also mit 13MHz.. Der kommt doch hinten und vorne nicht nach, funktioniert aber trotzdem.

Warum?
Steffen Bühler
Moderator


Anmeldungsdatum: 13.01.2012
Beiträge: 7242

Beitrag Steffen Bühler Verfasst am: 05. Jan 2017 09:40    Titel: Antworten mit Zitat

Markus17 hat Folgendes geschrieben:
Wenn ich da auf Seite 10 schaue, arbeitet der Sensor mit einer Taktrate von 55MHz im Differential mode.


Wenn ich das richtig verstehe, zeigt diese Tabelle lediglich die Abhängigkeit der Videospannung von der zugeführten Auslesefrequenz (und weiteren Parametern). Wie schnell ausgelesen wird, bestimmt nicht der Sensor, sondern der A/D-Wandler, der seinen Lesetakt auf den READ-Pin des Sensors legt. Laut Seite 8 kann die Periode des Lesetakts zwischen 18,5ns und 10µs betragen, das sind also 100kHz bis 54MHz.

Und der Wandler wird dann wohl 1MHz auf READ legen.

Viele Grüße
Steffen
Markus17
Gast





Beitrag Markus17 Verfasst am: 05. Jan 2017 11:39    Titel: Antworten mit Zitat

Hi Steffen

Vielen Dank, jetzt macht das Ganze auch Sinn. Ich dachte ich verstehe die Welt nicht mehr. Ich dachte der Sensor schiebt seine Ladungen dann einfach nach dem ersten Puls T_RD_PULSE pixelweise raus.

Verstehe ich das dann richtig? Auf Seite 14 wird beschrieben, dass um auslesen zu können ein Read pulse angelegt werden muss, der bestimmter Dauer ist T_RD_PULSE. Danach folgt die operation CDS für die Zeit T_CDS.

Die Pulse die drauffolgend kommen, sind dann also die Pulse die der ADC zwischen 18.5 und 10000ns ausführen kann. Demnach also wie du sagst zwischen 1 MHz und 54 MHz. Wobei ich die values, die ich bekomme, von den ersten 3 Pulsen ignorieren kann.

Auf Seite 13 unter 5.2 steht zwar, dass die exposure time user-defined ist, aber nirgends steht, wie lange die maximal sein kann. Muss ich das dann testen oder was kann ich maximal als worst case annehmen?

Ich benötige die effektive Zeit zwischen Shutter bis die Daten ready sind.

T_Data_Ready = T_FLUSH + T_exposure + T_SHIFT
Steffen Bühler
Moderator


Anmeldungsdatum: 13.01.2012
Beiträge: 7242

Beitrag Steffen Bühler Verfasst am: 05. Jan 2017 12:50    Titel: Antworten mit Zitat

Ja, das hast Du so richtig verstanden.

Was die Belichtungszeit betrifft: das ist ja das Wunderbare an einem CCD, dass Du ihn theoretisch tagelang offenhalten kannst, halt so lange, bis die Full-Well-Capacity erreicht ist (hier 400000 Photonen). Erst ab dann ist er übersteuert.

Du könntest also ausrechnen, wie lange es bei Deinen Lichtverhältnissen dauert, bis der CCD voll ist. Schließlich sind wir ja hier im Physikforum. Augenzwinkern

Ich persönlich würde es aber ausprobieren, ob zum Beispiel die Werte bei 100ms schon in der Sättigung liegen.
Markus17
Gast





Beitrag Markus17 Verfasst am: 05. Jan 2017 18:50    Titel: Antworten mit Zitat

hi Steffen

Wo steht das mit den 400k Photonen?
Steffen Bühler
Moderator


Anmeldungsdatum: 13.01.2012
Beiträge: 7242

Beitrag Steffen Bühler Verfasst am: 05. Jan 2017 21:15    Titel: Antworten mit Zitat

Auf Seite 9 ist die Full-Well-Capacity mit 400 ke- angegeben, also in Elektronen. Durch den inneren photoelektrischen Effekt erzeugt ein Photon die Ladung eines Elektrons.
Markus17
Gast





Beitrag Markus17 Verfasst am: 07. Jan 2017 13:18    Titel: Antworten mit Zitat

Hi Steffen

Vielen Dank für deine Hilfe.
Markus17
Gast





Beitrag Markus17 Verfasst am: 08. Jan 2017 18:49    Titel: Antworten mit Zitat

Hi Steffen

Ich hätte da noch eine weitere Frage und zwar beim I2C gibt es CS0 und CS1, die jeweils aus drei Teilen bestehen.
Wenn ich nun einen Mikrocontroller habe und 4 solcher Sensoren, benötige ich doch nur ein I2C Bus an die die 4 Sensoren angeschlossen sind und gesteuert werden.
Wie muss dann das CS0 und CS1 beschaltet werden? Mit 4-bit könnte ich ja 16 devices ansteuern. Aber mit diesen 2 Anschlüssen jedoch nur 9. Ich verstehe das irgendwie nicht so ganz. Könntest du mich da vllt. aufklären?
Neue Frage »
Antworten »
    Foren-Übersicht -> Elektrik