Kameramodul Anleitung - phyCAM-P/phyCAM-S+ VM-012 Global Shutter (L-873d.A0)

Table of Contents


Global Shutter Anleitung - phyCAM-P/phyCAM-S+ VM-012 (L-873d.A0)
Document TitleGlobal Shutter Anleitung - phyCAM-P/phyCAM-S+ VM-012 (L-873d.A0)
Document TypeHardware Guide
Article NumberL-873d.A0
Release Date01.03.2021
Is Branch ofGlobal Shutter Anleitung - phyCAM-P/phyCAM-S+ VM-012 (L-873d.Ax) Head

Im Buch verwendete Bezeichnungen für Erzeugnisse, die zugleich ein eingetra­genes Warenzeichen darstellen, wurden nicht besonders gekennzeichnet. Das Fehlen der ã Markierung ist demzufolge nicht gleichbedeutend mit der Tatsa­che, dass die Bezeichnung als freier Warenname gilt. Ebenso wenig kann anhand der verwendeten Bezeichnung auf eventuell vorliegende Patente oder einen Ge­brauchsmusterschutz geschlossen werden.

Die Informationen in diesem Handbuch wurden sorgfältig überprüft und können als zutreffend angenommen werden. Dennoch sei ausdrücklich darauf verwiesen, dass die Firma PHYTEC Messtechnik GmbH weder eine Garantie noch die juristi­sche Verantwortung oder irgendeine Haftung für Folgeschäden übernimmt, die auf den Gebrauch oder den Inhalt dieses Handbuches zurück­zuführen sind. Die in diesem Handbuch enthaltenen Angaben können ohne vorherige Ankündigung geändert werden. Die Firma PHYTEC Messtechnik GmbH geht damit keinerlei Verpflichtungen ein.

Ferner sei ausdrücklich darauf verwiesen, dass PHYTEC Messtechnik GmbH we­der eine Garantie noch die juristische Verantwortung oder irgendeine Haftung für Folgeschäden übernimmt, die auf falschen Gebrauch oder falschen Einsatz der Hard- bzw. Software zurückzuführen sind. Ebenso können ohne vorherige An­kündigung Layout oder Design der Hardware geändert werden. PHYTEC Messtechnik GmbH geht damit keinerlei Verpflichtungen ein.

Copyright 2021 PHYTEC Messtechnik GmbH, D-55129 Mainz.

Alle Rechte vorbehalten. Kein Teil dieses Buches darf in irgendeiner Form ohne schriftliche Genehmigung der Firma PHYTEC Messtechnik GmbH unter Einsatz entsprechender Systeme re­produziert, verarbeitet, vervielfältigt oder verbreitet werden.

 

EUROPE

NORTH AMERICA

FRANCE

INDIACHINA

Address:

PHYTEC Messtechnik GmbH
Robert-Koch-Str. 39
D-55129 Mainz
GERMANY

PHYTEC America LLC
203 Parfitt Way SW
Bainbridge Island, WA 98110
USA

PHYTEC France
17, place Saint-Etienne
F-72140 Sillé-le-Guillaume
FRANCE

PHYTEC Embedded Pvt. Ltd
No. 1688, 25th A Cross
27th Main, 2nd Sector, Opp. PEP School
V2, HRS Layout
Bangalore 560102
INDIA

PHYTEC Information Technology (Shenzhen) Co. Ltd.
2106A, Block A, Tianxia Jinniu Square,
Taoyuan Road, Nanshan District,
518052 Shenzhen, Guangdong,
CHINA

Ordering Information:

+49 6131 9221-32
sales@phytec.de

+1 800 278-9913
sales@phytec.com

+33 2 43 29 22 33
info@phytec.fr

+91-80-4086 7046/48
sales@phytec.in
+86-755-3395-5875
sales@phytec.cn

Technical Support:

+49 6131 9221-31
support@phytec.de

+1 206 780-9047
support@phytec.com


support@phytec.fr

+91-80-4086 7047
support@phytec.in

support@phytec.cn

Fax:

+49 6131 9221-33

+1 206 780-9135

+33 2 43 29 22 34


+86-755-3395-5999

Web Site:

http://www.phytec.de
http://www.phytec.eu

http://www.phytec.com

http://www.phytec.fr

http://phytec.inhttp://www.phytec.cn

phyCAM-P VM-012 Global Shutter

Hinweis

Die Standardeinstellungen in diesem Handbuch sind durch fettgedruckte, blaue Schrift gekennzeichnet.

Technische Daten

Charakteristische Merkmale

  • 1,3 MPixel – Sensor (1.310.720 Pixel)
  • monochrom (VM-012-BW) oder color (VM-012-COL)
  • phyCAM-P – Schnittstelle
  • Framerate: 37 fps (volle Auflösung)
  • Framerate: 130 fps bei VGA
  • Global Shutter und Rolling Shutter (umschaltbar)
  • Externer Trigger und Strobe
  • zusätzlicher Steckverbinder mit Trigger, Strobe (optional)

VM-012 (phyCAM-P) (Vorderseite / Rückseite)

Spezifikation

Funktion

VM-012-BW[1]

VM-012-COL[2]

Kameracharakteristik



Auflösung

1,3 MPixel

1,3 MPixel

Auflösung (H x V)

1280 x 1024

1280 x 1024

Sensorgröße

1/2"  6,18 mm x 4,95 mm

1/2"  6,18 mm x 4,95 mm

Pixelgröße

4,8 µm x 4,8 µm

4,8 µm x 4,8 µm

Farbe / monochrom

monochrom

color

Sensortechnologie

CMOS

CMOS

Sensorchip

ON Semiconductor VITA 1300
(NOIV2SN1300A-QDC)

ON Semiconductor VITA 1300
(NOIV2SE1300A-QDC)

Scan-System

progressive

progressive

Shutter-Typ

global oder rolling

global oder rolling

Bildrate (fps)

37 fps (volle Auflösung)

37 fps (volle Auflösung)

130 fps bei VGA

130 fps bei VGA

Video-Auflösung

n/a

n/a

Empfindlichkeit

4,6 V/lux.sec (bei 550 nm)

4,6 V/lux.sec (bei 550 nm)

Dynamikbereich

60 dB (Rolling Shutter Mode)
53 dB (Global Shutter Mode)

60 dB (Rolling Shutter Mode)
53 dB (Global Shutter Mode)

hoher Dynamikbereich

90 dB

90 dB

Belichtungszeit

programmierbar

programmierbar

Verstärkung

programmierbar

programmierbar

AEC

ja, abschaltbar

ja, abschaltbar

AGC

ja, abschaltbar

ja, abschaltbar

Gammakorrektur

n/a

n/a

Weißabgleich/AWB

n/a

n/a

ext. Trigger / Sync.

Trigger / Strobe

Trigger / Strobe

ROI

ja, bis zu 8

ja, bis zu 8

Skipping

2x2

2x2

Binning

2x2

2x2

Mirror

n/a

n/a

Image Processor

n/a

n/a

LED-Beleuchtung

n/a

n/a

Sonderfunktionen

siehe Sonderfunktionen

siehe Sonderfunktionen

elektrisches Interface



Videoausgang Typ

digital

digital

Anschluss

phyCAM-P

phyCAM-P

Datenformat

8 / 10 Bit parallel

8 / 10 Bit parallel

Interface-Mode

Y8 / Y10

8 / 10 Bit RGGB (Bayer)

Dataline-Shifting

n/a1

n/a1

Kameraeinstellung

I²C

I²C

Versorgungsspannung

3,3 V

3,3 V

Leistungsaufnahme

450 mW

450 mW

Leistungsaufn. Standby

26 mW

26 mW

mechanische Daten



Objektivanschluss

kein / M12 / C-CS

kein / M12 / C-CS

Objektiv

n/a

n/a

Gehäuse

n/a

n/a

Abmessungen (mm)

34 x 34

34 x 34

Befestigung

4 x M2.5

4 x M2.5

Gehäusefarbe

n/a

n/a

Gewicht (PCB)

5 g

5 g

Betriebstemperatur

-25...85°C

-25...85°C

Anschlüsse



Signalausgang

FFC 33 pol.

FFC 33 pol.

Trigger / Sync.

FFC + JST 3 pol.

FFC / JST 3 pol.

Iris-Ansteuerung

n/a

n/a

Sonderfunktionen

n/a

n/a

VM-012 (phyCAM-P) Technische Daten 

1.

n/a: nicht zutreffend. Alle Angaben können technischen Änderungen unterliegen

2.
WARN: short cite used before fully qualified cite

Interface-Charakteristik

 

Symbol

min.

typ.

max.

Einheit

Betriebsspannung

VCAM

3,1

3,3

3,6

V

Stromaufnahme

ICAM

tbd

450

tbd

mA

Input high voltage

VIH

2

-

VCAM +0,3

V

Input low voltage

VIL

-0,3

-

0,8

V

Output high voltage

VOH

2,4

-

-

V

Output low voltage

VOL

-

-

0,5

V

Voltage Set Resistor

R31

-

0

2

W

Betriebstemperatur[2]

TOP

-25

-

85

°C

Lagertemperatur[2]

TSTG

-25

-

85

°C

 

Symbol

min.

typ.

max.

Einheit

Masterclock Frequenz

fMCLK

20

-

62

MHz

Clock Tastverhältnis

dutycyleMCLK

40

50

60

%

Input Clock jitter

tj

-

20

-

ps

MCLCK zu PCLK delay

tCP


tbd.


ns

PCLK zu data valid

tPD


tbd.


ns

PCLK zu FV high

tPFH


tbd.


ns

PCLK zu FV low

tPFL


tbd.


ns

PCLK zu LV high

tPLH


tbd.


ns

PCLK zu LV low

tPLL


tbd.


ns

I²C Taktrate[3]

fI2C

-

100

400

kHZ

2.
WARN: short cite used before fully qualified cite
3.

-30°C  ohne die optionale Trigger/Strobe-Buchse

  

Datenformate

monochrom (VM-012-BW):

  • Y8 : 8 Bit Graustufenauflösung
  • Y10: 10 Bit Graustufenauflösung

color (VM-012-COL):

  • RGGB (Bayer-Pattern) 8 Bit Farbtiefe
  • RGGB (Bayer-Pattern) 10 Bit Farbtiefe

Hinweis

Durch entsprechende Beschaltung des Interfaces kann eine niedrigere Farb- / Graustufenauflösung erzielt werden.

Dazu werden die niederwertigen unteren Datenleitungen der Kamera nicht verbunden und die höherwertigen rechtsbündig an das Controllerinterface angeschlossen. Manche Controller erlauben auch eine softwaremäßige Konfiguration der Schnittstelle.

Spektrale Empfindichkeit

VM-012-BW / COL (phyCAM-P) Spektrale Empfindlichkeit

Hinweis

Detaillierte technische Daten entnehmen Sie bitte dem Datenblatt des Kamerasensors.

Feature Pins

Signal

Pin

Funktion

I/O

Konfiguration



CAM_CTRL1



7

offen

-

J11:NOMT

I²C-Adress-Select

I

J11:1+2

Monitor Out

O

J11:2+3



CAM_CTRL2



30

GND

-

J5:1+2

Trigger Input

I

J5:2+3

offen

-

J5:NOMT

CAM_RST

3

/Camera Reset

I

aktiv low

CAM_OE

32

intern / reserviert

-

default: Eingang ohne Funktion


CAM_MCLK


29

Master Clock

I

J1:2+4

offen

-

J1:1+2

VM-012 (phyCAM-P) Feature Pins

Hinweise

Konfiguration: Interne Konfiguration des Kameramoduls, um diese Funktion zu aktivieren.

Sonderkonfigurationen können bei Serienlieferungen von PHYTEC vorkonfiguriert werden. Bitte sprechen Sie dazu mit unseren Vertriebsmitarbeitern.

NOMT = not mounted = unbestückt

„nicht x+y“ = dieser Jumper muss sich in einer anderen als der angegebenen Stellung befinden.

Jumperplan

VM-012 (phyCAM-P) Jumperplan (PL1420.1)

VM-012 (phyCAM-P) Jumperplan (PL1420.1)

Pixelreinhefolge

Bedingt durch den internen Aufbau des Kamerasensors VITA 1300 werden Pixel nicht konsekutiv sequenziell entsprechend der physikalischen Anordnung auf dem Sensor entsprechend ausgegeben.

Die Zeilen des Pixel-Arrays sind vielmehr in so genannte Kernels unterteilt, die Gruppen aus jeweils 8 Pixeln darstellen (8 Pixel in x-Richtung je Zeile):

VM-012 (phyCAM-P) Anordnung der Pixel-Kernel auf dem Sensor-Array

VM-012 (phyCAM-P) Anordnung der Pixel-Kernel auf dem Sensor-Array

Die Reihenfolge, in der die Pixeldaten ausgegeben werden, ist an den Kernels orientiert und abhängig vom Subsampling-Modus.

Kein Subsampling

Die Pixelreihenfolge ist in geraden und ungeraden Kerneln unterschiedlich entsprechend der folgenden Grafik:

VM-012 (phyCAM-P) Pixelreihenfolge ohne Subsampling

VM-012 (phyCAM-P) Pixelreihenfolge ohne Subsampling

Mit Subsampling (monochromer Sensor)

Im Subsampling-Modus werden zwei benachbarte Kernels zu einem Kernel zusammengefasst (siehe Grafik). Dadurch wird die Anzahl der ausgegebenen Pixel halbiert. Es werden immer die geraden Pixel entnommen.

Im Gegensatz zur Betriebsart ohne Subsampling gibt es keinen Unterschied in der Pixelreihenfolge von geraden und ungeraden Kernels.

VM-012 (phyCAM-P) Pixelreihenfolge mit Subsampling im Monochrome-Modus

VM-012 (phyCAM-P) Pixelreihenfolge mit Subsampling im Monochrome-Modus

Mit Subsampling (Color Sensor)

Im Subsampling-Modus werden zwei benachbarte Kernels zu einem Kernel zusammengefasst (siehe Grafik). Dadurch wird die Anzahl der ausgegebenen Pixel halbiert. Es werden immer 2 benachbarte Pixel entnommen und dann 2 Pixel übersprungen.

Im Gegensatz zur Betriebsart ohne Subsampling gibt es keinen Unterschied in der Pixelreihenfolge von geraden und ungeraden Kernels.

VM-012 (phyCAM-P) Pixelreihenfolge mit Subsampling im Color-Modus

VM-012 (phyCAM-P) Pixelreihenfolge mit Subsampling im Color-Modus

Hinweise

Die ausgegebenen Pixel müssen durch die nachfolgende Verarbeitungseinheit (in der Regel durch Software) in die richtige Reihenfolge gebracht werden bzw. die Pixelreihenfolge bei der Verarbeitung berücksichtigt werden.

Bei der Definition einer ROI auf dem Sensor-Array müssen die ROI-Ränder mit den Kernel-Grenzen übereinstimmen. Idealerweise wird der Beginn einer ROI so organisiert, dass er immer auf den gleichen Kernel-Typ (gerade Kernels) fällt.

PHYTEC liefert eine Bibliotheks- und GStreamer-Funktion zum Sortieren der Kernels mit den Development-Kits mit.

Weitere Informationen dazu finden Sie in der Application Note „VM-012 Remapping“.

I2C Adressen


Device


I²C-Adresse

Konfiguration

CAM_CTRL1

J11

J9

J10

Variante







Kamerasensor

0x90

GND

1-2

2-4

1-2 







alle

x

x

2-3

0x98

VCAM

1-2

2-4

1-2

x

x

1-2

0xB0

GND

1-2

2-4

2-3

x

x

2-3

0xB8

VCAM

1-2

2-4

2-3

x

x

1-2

VM-012 (phyCAM-P) I2C Adressen


Device


I²C-Adresse

Konfiguration


Variante

J2

J3

J4







EEPROM

0xA0

1+2

1+2

1+2







optional

0xA2

2+3

1+2

1+2

0xA4

1+2

2+3

1+2

0xA6

2+3

2+3

1+2

0xA8

1+2

1+2

2+3

0xAA

2+3

1+2

2+3

0xAC

1+2

2+3

2+3

0xAE

2+3

2+3

2+3

VM-012 (phyCAM-P) EEPROM Adressen

Default-Konfiguration des Kamerasensors (fett gedruckt): 0x90  (CAM_CTRL1 = low).

Die I²C-Adressen sind hexadezimal in 8 Bit – Darstellung angegeben. In Linux wird ggf. mit 7 Bit – Darstellung gearbeitet. In diesem Fall ist der Adresswert eine Stelle nach rechts zu shiften.

Die Angabe bezieht sich auf die Schreibadresse (Bit 0 = 0), die Leseadresse ist entsprechend Bit 1 = 1 um 1 erhöht.

Beschreibung des I2C Interface

Die phyCAM Schnittstellen besitzen zur Kommunikation mit den Komponenten auf den Kameramodul (Sensor, EEPROM, usw.) eine I²C Schnittstelle. Diese ist sowohl bei phyCAM-P als auch bei phyCAM-S(+) vorhanden.

Von der CPU können über die I²C-Schnittstelle alle Register des Kamerasensors entsprechend der gewünschten Konfiguration eingestellt werden.

Der auf der VM-012 befindliche Sensor VITA 1300 verwendet ein SPI-Interface für den Zugriff auf seine Register. Auf der VM-012 sorgt ein zusätzlicher Microcontroller für die Umsetzung des I²C-Busses auf den SPI-Bus.

Daraus ergeben sich einige Besonderheiten, die beim I²C Zugriff auf den Kamerasensor beachtet werden müssen.

Die I²C Schnittstelle der VM-012 ist mit einer Wortbreite von 8 Bit organisiert:

  • 8 Bit Deviceadresse
  • 8 Bit Registeradresse
  • 2 x 8 Bit Datenzugriffe

Der Zugriff auf die I²C Schnittstelle der VM-012 erfolgt immer als 16-Bit Write- oder 16-Bit Read-Sequenz.

Entsprechend der I²C Spezifikation werden Schreib- und Lesezugriffe durch den Zustand des LSB in der Deviceadresse unterschieden.

  • Schreibzugriff: LSB in der Deviceadresse = 0
  • Lesezugriff: LSB in der Deviceadresse = 1

16-Bit Schriebsequenz

Eine typische Bytefolgezum Schreiben in ein16 Bit-Register des Kamerasensors ist unten gezeigt. Die Sequenz wird vom Master durch das Startbiteingeleitet, gefolgt von der Registeradresse und zwei Daten-Bytes. Dabei wird der höherwertige Teil des 16 Bit breiten Datenwerts zuerst gesendet und dann der niederwertige Teil.

Die VM-012liefert nach jedem Byte die Empfangsbestätigung (ACK). Alle 16 Datenbits müssenübertragen werden, bevordas Registeraktualisiert wird.Der Masterbeendet den Schreibvorgang durch Senden des Stop-Bits.

Schreiben des Wertes 0x0284 auf Register 0x09 an Device 0x90

Schreiben des Wertes 0x0284 auf Register 0x09 an Device 0x90

Hinweis

Erst nach der vollständigen Übernahme der beiden Daten-Bytes wird der Datenwert über die SPI-Schnittstelle in das angegebene Register des Kamerasensors übertragen.

Ein weiterer I²C-Zugriff darf erst nach Beendigung des internen SPI-Schreibzugriffs erfolgen. Zur Einhaltung dieser Vorgabe können zwei Methoden verwendet werden:

Methode 1:
Es wird eine feste Zeit nach einem I²C Schreibzugriff gewartet, bevor ein nächster I²C-Befehl gesendet wird. In der Firmware-Version V0.4 der VM-012 müssen mindestens 250µs nach einem I²C-Write-Befehl gewartet werden. 

Methode 2:
Verwendung des Statusflags „SPI_WRITE“ im VM012_STATUS-Register 0x99. Das Statusflag wird vom Microcontroller des Kameramoduls verwaltet.

Nach dem Erkennen eines Schreibbefehls wird dieses Bit automatisch gesetzt und nach Beendigung des SPI-Schreibvorgangs zurückgenommen. Das Status-Register wird im nachfolgenden Abschnitt beschrieben.

Note

Der Zugriff auf die Register:  VM012-STATUS, VM012-CONTROL und auf VM012_FIRMWARE ist ohne Einhaltung von Wartezeiten möglich. Weiterhin ist der Zugriff auf diese Register auch während der noch aktiven SPI-Schreibsequenz möglich.

16-Bit Lesesequenz

Eine typische 16-Bit Lesesequenzist unten dargestellt.Zunächst muß derMaster die Adresses des Registers senden, dessen Inhalt gelesen werden soll. Dazu wird in einerSchreibsequenz nur die Registeradresse an das Kameramodul gesendet.

Danach wird vom Master ein Lesevorgang über einen 16 Bit-Wert begonnen, indem er ein erneutes Start-Bitund die Deviceadresse mit gesetztem LSB (Lesekennung) sendet.

Mit den folgenden Clock-Takten sendet das Kameramodul in zwei Datenbytes den 16 Bit breiten Registerinhalt. Dabei wird zuerst das High-Byte und dann das Low-Byte übertragen.Der Master sendetnach jeder8-Bit-Übertragung einBestätigungs-Bit (ACK). Die Datenübertragung wirdbeendet, indem derMaster einNo-Acknowledge-Bit (NACK) nach den 16 Bit Daten sendet.

Lesen des Wertes 0x0284 aus Register 0x09 von Device 0x90

Lesen des Wertes 0x0284 aus Register 0x09 von Device 0x90

Hinweis

Nach dem einleitenden Schreibbefehl innerhalb der Lesesequenz muss keine Wartezeit eingehalten werden. Es kann sofort der nachfolgende Lesebefehl begonnen werden.

Nachdem der Microcontroller der VM-012 den einleitenden I²C-Write-Befehl und die Deviceadresse mit gesetztem Lesebit empfangen hat, benötigt er in der Regel ca. 200µs zur Bearbeitung des internen SPI-Lesebefehls. In dieser Zeit muß der Master an der I²C- Schnittstelle warten, bevor er mit dem Einlesen der Daten beginnen kann. Dazu wird vom Microcontroller der VM-012 der Mechanismus des  „Clock-Stretching“ verwendet. Das „Clock-Stretching“ wird nur einmal vor dem ersten Datenbyte verwendet. Das zweite Datenbyte wird sofort nach Anforderung gesendet.

Hinweis

Der I²C-Master muss das Verfahren des Clock-Stretching unterstützen.

I2C Registerzuordnung

Paging

Der Kamerasensor VITA 1300 auf der VM-012 besitzt eine Registermap mit 511 Registern. Eine Vielzahl von I²C-Routinen unterstützen jedoch nur einen Adressraum von 255 Registern.

Deshalb wurde der I²C-Adressraum auf der VM-012 durch Verwendung eines Page-Bits erweitert.

Page-Bit

I²C-Registeradresse der VM-012

Registeradresse des VITA 1300 Kamerasensors

0

0x00 bis 0xFF

0x000 bis 0x0FF

1

0x00 bis 0xFF

0x100 bis 0x1FF

Die adressierte Registeradresse des Kamerasensors entspricht also der an der I²C-Schnittstelle übergebenen Registeradresse zuzüglich des Werts des Page-Bits als MSB:

Sensor-Registeradresse = Page-Bit . 0x100 + I²C-Register-Adresse.

Das „PAGE_BIT“ befindet sich im „VM012_CONTROL“ Register.

Informationen zu den Registern des Kamerasensors VITA 1300 finden Sie im Datenblatt des Sensors.

Control- und Statusregister

Hinweis

Die folgende Registerbeschreibung bezieht sich auf die Firmware-Version V0.5

Zur Steuerung des Microcontrollers auf dem Kameramodul und zum Auslesen von Statusinformationen werden in die Registermap des Kamerasensors drei zusätzliche Register eingeblendet.

Über den Lese- bzw. Schreibzugriff auf diese Register kann der I²C-Master direkt den Microcontroller der VM-012 ansprechen. Dafür werden drei Adressen verwendet, die im Adressraum des VITA 1300 nicht belegt sind.

I²C Register Adresse der VM-012

Page-Bit[4]

Read

Write

Funktion

0x97

x

ja

nein

Firmware-Version der VM-012

0x98

x

ja

ja

VM_012_CONTROL Register

0x99

x

ja

nein

VM_012_STATUS Register

4.

x=keinen Einfluss

Diese drei Adressen werden nicht an das SPI Interface des Kamerasensors weitergeleitet, sondern nur im Microcontroller ausgewertet. Diese drei Register unterliegen keinen Wartezeiten beim Lesen oder Schreiben auf der I²C Schnittstelle.

Registerbeschreibung VM012_FIRMWARE; 0x97 (151 dezimal).

0x97 – VM012_FIRMWARE

Bit

Bit Name

Bit Beschreibung

Default Hex (Dec)

Zulässige Werte (Dec)

Read/Write

7...0

MINOR_REVISION

Version Firmware Nachkommastelle

-

0...255

R

15...8

MAJOR_REVISION

Version Firmware Vorkommastelle

-

0...255

R

Registerbeschreibung VM012_CONTROL;  0x98 (152 dezimal).

0x98 – VM012_CONTROL

Bit

Bit Name

Bit Beschreibung

Default Hex (Dec)

Zulässige Werte (Dec)

Read/Write



0


PAGE_BIT

Auswahl Register-Page des Kamerasensors:
0 = Register 0x000 bis 0x0FF

1 = Register 0x100 bis 0x1FF

Der Zustand des PAGE_BITs bleibt nach dem Kamerareset erhalten


0


0 ; 1


R/W




1




AUTO_SENSOR_RESET

Auto Software-Reset Kamerasensor

0 = Grundzustand

1 = Reset Kamerasensor auslösen

Es wird das Reset-Signal des Kamerachips aktiviert und die Spannungsversorgungen des Kamerachips abgeschaltet. Nach einer Wartezeit von 100ms werden die Spannungen wieder zugeschaltet und der Reset wieder deaktiviert. Danach wird das Bit selbstständig zurückgesetzt.




0




0 ; 1




R/W




2




SENSOR_RESET

Bildsensor Reset aktivieren

0 = Grundzustand

1 = Es wird das Reset-Signal des Kamerachips aktiviert und die Spannungsversorgungen des Kamerachips abgeschaltet. Erst wenn das Bit vom Anwender zurückgesetzt wird, werden die Spannungen wieder zugeschaltet und der Reset deaktiviert.

Diese Funktion kann benutzt werden, um das Kameramodul in einen energie­sparenden Modus zu versetzen.




0




0 ; 1




R/W
3...7RESERVEDreserviert für interne / zukünftige Funktionen---




8




VM-012_RESET

Software-Reset Kamerasmodul

0 = Grundzustand

1 = Reset Kameramodul auslösen

Wenn dieses Bit gesetzt wird, dann erfolgt ein Reset des Kamerasensors und der Microcontroller auf dem Sensorboard führt ein Softwarereset durch. Danach stehen alle Register wieder auf  den Default-Werten.




0




0 ; 1




R/W
9...15RESERVEDreserviert für interne / zukünftige Funktionen---

Registerbeschreibung VM012_STATUS; 0x99 (153 dezimal).

0x99 – VM012_STATUS

Bit

Bit Name

Bit Beschreibung

Default Hex (Dec)

Zulässige Werte (Dec)

Read/Write





0





SPI_READ

0 = SPI-READ-Vorgang ist inaktiv

1 = SPI-READ-Vorgang läuft. Es darf nur auf die Register 0x97, 0x98 und 0x99 zugegriffen werden.

Hinweis: Beim Verwendung von Clock-Stretching erfolgt die Bearbeitung innerhalb des I²C Zugriffszyklus. Eine besondere Beachtung des Flags ist nicht erforderlich.

'



0





0 ; 1





R


1


SPI_WRITE

0 = SPI-WRITE-Vorgang ist inaktiv

1 = SPI-WRITE-Vorgang läuft. Es darf nur auf die Register 0x97, 0x98 und 0x99 zugegriffen werden.


0


0 ; 1


R

2..15

RESERVED

reserviert für interne / zukünftige Funktionen

-

-

-

Sonderfunktionen

Windowing / ROI

Der Kamerasensor der VM-012 ermöglicht – wie andere phyCAM-Module auch – die Verringerung der effektiven Bildauflösung durch Definition von Auslesefenstern (Window oder ROI = Region of Interest). Dadurch lässt sich auch die erzeugte Datenmenge optimal an die Anforderungen der Anwendung anpassen. Durch die Reduzierung der Auflösung kann außerdem die Bildwiederholrate erhöht werden.

Abhängig von der Betriebsart können mehrere ROIs definiert werden:

  • Global Shutter Mode: bis zu 8 ROIs
  • Rolling Shutter Mode: bis zu 1 ROI

Beachten Sie, daß bei Verwendung mehrerer ROIs die Ausgabereihenfolge der Pixel nach wie vor von der Lage der Pixel auf dem Sensor bestimmt wird. ROIs maskieren also den Sensor, sie bestimmen aber nicht die Reihenfolge der Pixel. Gegebenenfalls werden die aktiven Pixel mehrerer ROIs verschachtelt.

Trigger

Der Triggereingang stellt folgende Sonderfunktionen zur Verfügung:

  • Triggered Shutter Master Mode
    In diesem Modus wird der Zeitpunkt der Bildaufnahme durch das Trigger-Signal gesteuert. Eine steigende Flanke Triggereingang löst eine Bildaufnahme aus. Die Belichtungszeit wird durch die Registereinstellungen des Sensors gesteuert.
  • Pipelined Shutter Slave Mode
    In diesem Modus wird der Zeitpunkt der Bildaufnahme und die Belichtungszeit über den Triggereingang gesteuert. Eine steigende Flanke startet die Bildaufnahme, eine fallende Flanke beendet die Aufnahme.

Hinweise

Der Trigger darf nicht in der Frame Overhead Time (FOT) aktiviert werden. Zur Erkennung des Bildanfangs kann die First Line Indication des Monitor-Signals verwendet werden, s. unten.

Einzelheiten zur Triggerung finden Sie im Datenblatt des Kamerasensors.

Der Triggereingang ist am CAM_CTRL2 – Pin des phyCAM-P Steckers verfügbar (wenn J5 auf 2+3 steht). Weiterhin ist er zusätzlich an Pin 1 des Erweiterungssteckers X2 vorhanden.

Pin

Dir

Funktion

1

I

TRIGGER0_IN

2

-

GND (Signalmasse)

3

O

MONITOR_OUT

VM-012 (phyCAM-P) Belegung des Erweiterungssteckers X2

Steckverbinder-Typ: JST BM03B-SRSS-TB
passende Steckergehäuse: JST SHR-03V-S

Monitor-Out

Der Monitor-Ausgang kann wahlweise auf das Monitor0 oder Monitor1 – Signal des VITA1300 konfiguriert werden:

Signal

Funktion

I/O

Konfiguration

MONITOR_OUT

MONITOR0

O

J7:2-3

MONITOR1

O

J7:1-2

Das Signal MONITOR_OUT ist an folgenden Steckverbindern verfügbar:

  • CAM_CTRL1 - Pin 7 des phyCAM-P Steckers (optional, abhängig von der Konfiguration des Kameramoduls: J11 = 2-3)
  • Pin 3 des Erweiterungssteckers X2

Die Funktion des Signals kann im Register MONITOR_SELECT des Sensors eingestellt werden.

Übersicht über die Funktionen:

Funktion

Monitor0

Monitor1

Bemerkung

0

x

x

konstant low

Integration Time

x


1 während Belichtung

ROT Indication

x

x

‘1’ during ROT, ‘0’ outside

Dual/Triple Slope Integration


x

asserted during DS/TS FOT sequence

Start of x-Readout Indication

x

x


Black Line Indication


x

‘1’ during black lines, ‘0’ outside

Frame Start Indication

x



Start of ROT Indication


x


First Line Indication

x


‘1’ during first line, ‘0’ for all others

Start of X-readout Indication for Black Lines

x



Start of X-readout Indication for Image Lines


x


(ROT = Row Overhead Time; FOT = Frame Overhead Time)

Reset

Ein Low-Pegel am Reset-Eingang versetzt den Bildsensor in den Reset-Zustand. Alle Register des Bildsensors werden auf die Default-Einstellungen gesetzt.

Der Eingang sollte mit dem /RESET-Signal des Microcontroller-Boards verbunden werden. Das /RESET Signal sollte erst nach Anlegen der Spannung und MCLK deaktiviert wird. Während des Betriebs des Kamerasensors muss das Reset-Signal High-Pegel besitzen.

Durch Aktivierung des Signals wird ein Reset des Kamera-Sensors ausgelöst und die Sensor-Spannungsversorgung abgeschaltet. Die Sensorversorgung bleibt ausgeschaltet so lange das Reset-Signal aktiv (low) gehalten wird. Wird das Reset-Signal inaktiv (high) so ist ein I²C-Zugriff auf die VM-012 Register nach ca. 100 ms möglich.

Ein Sensor-Reset kann auch durch Software ausgelöst werden. Dazu wird das Bit AUTO_SENSOR_RESET auf 1 gesetzt. Das Bit wird nach Ende des Sensor-Reset-Zyklus’ automatisch zurückgesetzt.

Der Bildsensor kann per Software dauerhaft in den Reset-Zustand versetzt werden wobei die Stromversorgung des Sensors abgeschaltet ist. Dies kann beispielsweise dazu genutzt werden, die Strom­auf­nahme des Kameramoduls zu reduzieren.

Dieser Zustand kann erreicht werden, indem das Bit SENSOR_RESET  auf 1 gesetzt wird. Der Sensor bleibt in dem Zustand, bis das Bit wieder auf 0 gesetzt wird. Danach wird die Versorgungsspannung des Bildsensors wieder eingeschaltet und der Reset deaktiviert. Nach ca. 100 ms ist ein Zugriff auf den Sensor wieder möglich.

Hinweis

Nach einem Sensor-Reset sind alle Register des Bildsensors auf ihre Default-Werte gesetzt.

Führen Sie keine Registerzugriffe auf den Bildsensor aus, während sich der Sensor im Resetzustand befindet. Auf die in die Register-Map eingeblendeten Kontroll- und Statusregister kann auch während eines Sensor-Resets zugegriffen werden.

Ein vollständiger Reset des Kameramoduls kann ausgelöst werden durch:

  • Aus- und Einschalten der Betriebsspannung des Kameramoduls
  • per Software durch Aktivierung des Bits VM-012_RESET

Der vollständige Reset kann durch Setzen des Bits VM-012_RESET ausgelöst werden. Danach führen der Bildsensor und der interne Microcontroller einen Reset durch.

Alle Register werden auf ihre Default-Werte zurückgesetzt. Das Bit VM-012_RESET wird automatisch zurückgesetzt.

Eine Änderung der I²C-Adresse wird erst nach Durchführung eines vollständigen Reset übernommen.

Output-Enable

Der Output-Enable – Eingang (Pin 32) besitzt bei diesem Kameramodul keine Funktion. Daten- und Signalleitungen sind unabhängig vom Zustand dieses Eingangs immer aktiv. Der Pin ist intern kontaktiert und besitzt die gleiche Eingangscharakteristik wie die übrigen Eingangspins.

I2C-EEPROM (optional)

Das Kameramodul VM-012 kann optional mit einem EEPROM ausgestattet werden. In diesem können anwendungsspezifische Daten (z.B. Kalibrierungsdaten) gespeichert werden.

Das EEPROM ist vom Typ M24C02-RMC6TG und besitzt eine Speichergröße von 2 kBit. Die Default I2C-Adresse lautet 0xAE. Alternative Adressen können per Jumper eingestellt werden (siehe I2C Adressen). Datenübertragungsrate: 100 kHz Standard Mode / 400 kHz Fast Mode.

Weitere Informationen finden Sie im Datenblatt des EEPROMs.

Onboard MCLK Erzeugung

Bei Bedarf besteht die Möglichkeit, einen Oszillator auf dem Kameramodul zu bestücken. Dieser kann den Masterclock MCLK für den Kamerasensor erzeugen. Damit ist es nicht mehr erforderlich, den MCLK-Takt über Pin 29 des phyCAM-P – Steckers einzuspeisen.

Zur Verwendung des internen Masterclocks muss OZ1 bestückt sein und Jumper J1 auf 1+2 gesetzt werden.

Entwicklungskits

Zur Inbetriebnahme der Kamera und Unterstützung der Entwicklung sind Entwicklungskits für verschiedene Controller-Plattformen und Betriebssysteme erhältlich. Das Sortiment an passenden Kits wird ständig erweitert.

Bitte informieren Sie sich auf unserer Webseite über aktuell erhältliche Kits. Der PHYTEC-Vertrieb berät sie gerne bei der Zusammenstellung von Kits und Komponenten.

phyCAM-S+ VM-012 Global Shutter

Technische Daten

Charakteristische Merkmale

  • 1,3 MPixel – Sensor (1.310.720 Pixel)
  • monochrom (VM-012-LVDS-BW) oder color (VM-012-LVDS-COL)
  • phyCAM-S+ – Schnittstelle
  • Framerate: 37 fps (volle Auflösung)
  • Framerate: 130 fps bei VGA
  • Global Shutter und Rolling Shutter (umschaltbar)
  • Externer Trigger und Strobe
  • zusätzlicher Steckverbinder mit Trigger, Strobe (optional)

VM-012 (phyCAM-S) (Vorderseite / Rückseite)

Spezifikation

Funktion

VM-012-LVDS-BW[5]

VM-012-LVDS-COL[5]

Kameracharakteristik



Auflösung

1,3 MPixel

1,3 MPixel

Auflösung (H x V)

1280 x 1024

1280 x 1024

Sensorgröße

1/2"  6,18 mm x 4,95 mm

1/2"  6,18 mm x 4,95 mm

Pixelgröße

4,8 µm x 4,8 µm

4,8 µm x 4,8 µm

Farbe / monochrom

monochrom

color

Sensortechnologie

CMOS

CMOS

Sensorchip

ON Semiconductor VITA 1300
(NOIV2SN1300A-QDC)

ON Semiconductor VITA 1300
(NOIV2SE1300A-QDC)

Scan-System

progressive

progressive

Shutter-Typ

global oder rolling

global oder rolling

Bildrate (fps)

37 fps (volle Auflösung)

37 fps (volle Auflösung)

130 fps bei VGA

130 fps bei VGA

Empfindlichkeit

4,6 V/lux.sec (bei 550 nm)

4,6 V/lux.sec (bei 550 nm)

Dynamikbereich

60 dB (Rolling Shutter Mode)
53 dB (Global Shutter Mode)

60 dB (Rolling Shutter Mode)
53 dB (Global Shutter Mode)

hoher Dynamikbereich

90 dB

90 dB

Belichtungszeit

programmierbar

programmierbar

Verstärkung

programmierbar

programmierbar

AEC

ja, abschaltbar

ja, abschaltbar

AGC

ja, abschaltbar

ja, abschaltbar

Gammakorrektur

n/a

n/a

Weißabgleich/AWB

n/a

n/a

ext. Trigger / Sync.

Trigger / Strobe

Trigger / Strobe

ROI

ja, bis zu 8

ja, bis zu 8

Skipping

2x2

2x2

Binning

2x2

2x2

Mirror

n/a

n/a

Image Processor

n/a

n/a

LED-Beleuchtung

n/a

n/a

Sonderfunktionen

Siehe Sonderfunktionen

Siehe Sonderfunktionen

elektrisches Interface



Videoausgang Typ

digital

digital

Anschluss

phyCAM-S+

phyCAM-S+

Datenformat

8 Bit seriell LVDS

8 Bit seriell LVDS

Interface-Mode

Y8

8 Bit RGGB (Bayer)

Dataline-Shifting

n/a

n/a

Kameraeinstellung

I²C

I²C

Versorgungsspannung

3,3 V

3,3 V

Leistungsaufnahme

620 mW

620 mW

Leistungsaufn. Standby

85 mW

85 mW

mechanische Daten



Objektivanschluss

kein / M12 / C-CS

kein / M12 / C-CS

Objektiv

n/a

n/a

Gehäuse

n/a

n/a

Abmessungen (mm)

34 x 34

34 x 34

Befestigung

4 x M2.5

4 x M2.5

Gehäusefarbe

n/a

n/a

Gewicht (PCB)

5 g

5 g

Betriebstemperatur

-25...85°C

-25...85°C

Anschlüsse



Signalausgang

Hirose 8 pol. Crimp

Hirose 8 pol. Crimp

Trigger / Sync.

JST 3 pol. Crimp

JST 3 pol. Crimp

Iris-Ansteuerung

n/a

n/a

Sonderfunktionen

n/a

n/a

VM-012-xxx-LVDS (phyCAM-S+) Technische Daten 

5.

n/a: nicht zutreffend. Alle Angaben können technischen Änderungen unterliegen

Interface-Charakteristik

 

Symbol

min.

typ.

max.

Einheit

Betriebsspannung

VCAM

3,0

3,3

3,6

V

Stromaufnahme

ICAM

-

200

-

mA

Input high voltage[6]

VIH

2

-

VCAM +0,3

V

Input low voltage[6]

VIL

-0,3

-

0,8

V

Output high voltage[6]

VOH

2,8

-

-

V

Output low voltage[6]

VOL

-

-

0,2

V

Betriebstemperatur[7]

TOP

-25

-

70

°C

Lagertemperatur[7]

TSTG

-25

-

70

°C

 

Symbol

min

typ

max

Einheit

Masterclock Frequenz

fMCLK

20

-

62

MHz

Clock Tastverhältnis

dutycycleMCLK

40

50

60

%

I²C Taktrate[8]

fI2C

-

100

400

kHz

 

Symbol

min

typ

max

Einheit

LVDS-Treiber

Output differential voltage

IVODI

200

290

-

mV

Output offset voltage

VOS

1,05

1,1

1,3

mV

VOS change between complementary out states

DVOS

-

-

35

mV

Output current when short to GND

IOS

-

-56

-90

mA

Output current in Tri-State

IOZ

-10

±1

+10

µA

LVDS-Empfänger

Input differential, positive

VIDTH+

-

-

100

mV

Input differential, negative

VIDTH–

-100

-

-

mV

Abschlusswiderstand

RSHUNT


100


W

6.

CAM_SDA, CAM_SCL, I=+/-100µA

7.

auf -30°C erweiterbar ohne die optionale Trigger/Strobe-Buchse X2

8.

der I²C-Master muss das Verfahren des Clock-Streching unterstützen

Datenformate

monochrom (VM-012-BW-LVDS):

  • Y8 : 8 Bit Graustufenauflösung

color (VM-012-COL-LVDS):

  • RGGB (Bayer-Pattern) bis 8 Bit Farbtiefe

Spektrale Empfindlichkeit

VM-012-xxxx-LVDS (phyCAM-S+) Spektrale Empfindlichkeit

Hinweis

Detaillierte technische Daten entnehmen Sie bitte dem Datenblatt des Kamerasensors.

Jumperplan

VM-012-xxxx-LVDS (phyCAM-S+) Jumperplan (PL1420.1)

Pixelreihenfolge

Bedingt durch den internen Aufbau des Kamerasensors VITA 1300 werden Pixel nicht konsekutiv sequenziell entsprechend der physikalischen Anordnung auf dem Sensor entsprechend ausgegeben.

Die Zeilen des Pixel-Arrays sind vielmehr in so genannte Kernels unterteilt, die Gruppen aus jeweils 8 Pixeln darstellen (8 Pixel in x-Richtung je Zeile):

VM-012-xxxx-LVDS (phyCAM-S+) Anordnung der Pixel-Kernel auf dem Sensor-Array

Die Reihenfolge, in der die Pixeldaten ausgegeben werden, ist an den Kernels orientiert und abhängig vom Subsampling-Modus.

Kein Subsampling

Die Pixelreihenfolge ist in geraden und ungeraden Kerneln unterschiedlich entsprechend der folgenden Grafik:

VM-012-xxxx-LVDS (phyCAM-S+) Pixelreihenfolge ohne Subsampling

Mit Subsampling (monochromer Sensor)

Im Subsampling-Modus werden zwei benachbarte Kernels zu einem Kernel zusammengefasst (siehe Grafik). Dadurch wird die Anzahl der ausgegebenen Pixel halbiert. Es werden immer die geraden Pixel entnommen.

Im Gegensatz zur Betriebsart ohne Subsampling gibt es keinen Unterschied in der Pixelreihenfolge von geraden und ungeraden Kernels.

VM-012-xxxx-LVDS (phyCAM-S+) Pixelreihenfolge mit Subsampling im Monochrome-Modus

Mit Subsampling (color Sensor)

Im Subsampling-Modus werden zwei benachbarte Kernels zu einem Kernel zusammengefasst (siehe Grafik). Dadurch wird die Anzahl der ausgegebenen Pixel halbiert. Es werden immer 2 benachbarte Pixel entnommen und dann 2 Pixel übersprungen.

Im Gegensatz zur Betriebsart ohne Subsampling gibt es keinen Unterschied in der Pixelreihenfolge von geraden und ungeraden Kernels.

VM-012-xxxx-LVDS (phyCAM-S+) Pixelreihenfolge mit Subsampling im Color-Modus

Hinweise

Die ausgegebenen Pixel müssen durch die nachfolgende Verarbeitungseinheit (in der Regel durch Software) in die richtige Reihenfolge gebracht werden bzw. die Pixelreihenfolge bei der Verarbeitung berücksichtigt werden.

Bei der Definition einer ROI auf dem Sensor-Array müssen die ROI-Ränder mit den Kernel-Grenzen übereinstimmen. Idealerweise wird der Beginn einer ROI so organisiert, dass er immer auf den gleichen Kernel-Typ (gerade Kernels) fällt.

PHYTEC liefert eine Bibliotheks- und GStreamer-Funktion zum Sortieren der Kernels mit den Development-Kits mit. Weitere Informationen dazu finden Sie in der Application Note „VM-012 Remapping“.

I2C Adressen


Device


I²C-Adresse

Konfiguration


Variante

J9

J10




Camera Sensor

0x90

2+3

1+2




alle

0x98

1+2

1+2

0xB0

2+3

2+3

0xB8

1+2

2+3

VM-012-xxxx-LVDS (phyCAM-S+) I2C Adressen


Device


I²C-Adresse

Konfiguration


Variante

J2

J3

J4







EEPROM

0xA0

1+2

1+2

1+2







optional

0xA2

2+3

1+2

1+2

0xA4

1+2

2+3

1+2

0xA6

2+3

2+3

1+2

0xA8

1+2

1+2

2+3

0xAA

2+3

1+2

2+3

0xAC

1+2

2+3

2+3

0xAE

2+3

2+3

2+3

VM-012-xxxx-LVDS (phyCAM-S+) Feature Pins

Die I²C-Adressen sind hexadezimal in 8 Bit – Darstellung angegeben. In Linux wird ggf. mit 7 Bit – Darstellung gearbeitet. In diesem Fall ist der Adresswert eine Stelle nach rechts zu shiften.

Die Angabe bezieht sich auf die Schreibadresse (Bit 0 = 0), die Leseadresse ist entsprechend Bit 1 = 1 um 1 erhöht.

Beschreibung des I2C Interface

Die phyCAM Schnittstellen besitzen zur Kommunikation mit den Komponenten auf den Kameramodul (Sensor, EEPROM, usw.) eine I²C Schnittstelle. Diese ist sowohl bei phyCAM-P als auch bei phyCAM-S(+) vorhanden.

Von der CPU können über die I²C-Schnittstelle alle Register des Kamerasensors entsprechend der gewünschten Konfiguration eingestellt werden.

Der auf der VM-012 befindliche Sensor VITA 1300 verwendet ein SPI-Interface für den Zugriff auf seine Register. Auf der VM-012 sorgt ein zusätzlicher Microcontroller für die Umsetzung des I²C-Busses auf den SPI-Bus.

Daraus ergeben sich einige Besonderheiten, die beim I²C Zugriff auf den Kamerasensor beachtet werden müssen.

Die I²C Schnittstelle der VM-012 ist mit einer Wortbreite von 8 Bit organisiert:

  • 8 Bit Deviceadresse
  • 8 Bit Registeradresse
  • 2 x 8 Bit Datenzugriffe

Der Zugriff auf die I²C Schnittstelle der VM-012 erfolgt immer als 16-Bit Write- oder 16-Bit Read-Sequenz.

Entsprechend der I²C Spezifikation werden Schreib- und Lesezugriffe durch den Zustand des LSB in der Deviceadresse unterschieden.

  • Schreibzugriff: LSB in der Deviceadresse = 0
  • Lesezugriff: LSB in der Deviceadresse = 1

16-Bit Schreibsequenz

Eine typische Bytefolgezum Schreiben in ein16 Bit-Register des Kamerasensors ist unten gezeigt. Die Sequenz wird vom Master durch das Startbiteingeleitet, gefolgt von der Registeradresse und zwei Daten-Bytes. Dabei wird der höherwertige Teil des 16 Bit breiten Datenwerts zuerst gesendet und dann der niederwertige Teil.

Die VM-012liefert nach jedem Byte die Empfangsbestätigung (ACK). Alle 16 Datenbits müssenübertragen werden, bevordas Registeraktualisiert wird.Der Masterbeendet den Schreibvorgang durch Senden des Stop-Bits.

Schreiben des Wertes 0x0284 auf Register 0x09 an Device 0x90

Schreiben des Wertes 0x0284 auf Register 0x09 an Device 0x90

Hinweis

Erst nach der vollständigen Übernahme der beiden Daten-Bytes wird der Datenwert über die SPI-Schnittstelle in das angegebene Register des Kamerasensors übertragen.

Ein weiterer I²C-Zugriff darf erst nach Beendigung des internen SPI-Schreibzugriffs erfolgen. Zur Einhaltung dieser Vorgabe können zwei Methoden verwendet werden:

Methode 1:
Es wird eine feste Zeit nach einem I²C Schreibzugriff gewartet, bevor ein nächster I²C-Befehl gesendet wird. In der Firmware-Version V0.4 der VM-012 müssen mindestens 250µs nach einem I²C-Write-Befehl gewartet werden. 

Methode 2:
Verwendung des Statusflags „SPI_WRITE“ im VM012_STATUS-Register 0x99. Das Statusflag wird vom Microcontroller des Kameramoduls verwaltet.

Nach dem Erkennen eines Schreibbefehls wird dieses Bit automatisch gesetzt und nach Beendigung des SPI-Schreibvorgangs zurückgenommen. Das Status-Register wird im nachfolgenden Abschnitt beschrieben.

Hinweis

Der Zugriff auf die Register:  VM012-STATUS, VM012-CONTROL und auf VM012_FIRMWARE ist ohne Einhaltung von Wartezeiten möglich. Weiterhin ist der Zugriff auf diese Register auch während der noch aktiven SPI-Schreibsequenz möglich.

16-Bit Lesesequenz

Eine typische 16-Bit Lesesequenzist unten dargestellt.Zunächst muß derMaster die Adresses des Registers senden, dessen Inhalt gelesen werden soll. Dazu wird in einerSchreibsequenz nur die Registeradresse an das Kameramodul gesendet.

Danach wird vom Master ein Lesevorgang über einen 16 Bit-Wert begonnen, indem er ein erneutes Start-Bitund die Deviceadresse mit gesetztem LSB (Lesekennung) sendet.

Mit den folgenden Clock-Takten sendet das Kameramodul in zwei Datenbytes den 16 Bit breiten Registerinhalt. Dabei wird zuerst das High-Byte und dann das Low-Byte übertragen.Der Master sendetnach jeder8-Bit-Übertragung einBestätigungs-Bit (ACK). Die Datenübertragung wirdbeendet, indem derMaster einNo-Acknowledge-Bit (NACK) nach den 16 Bit Daten sendet.

Lesen des Wertes 0x0284 aus Register 0x09 von Device 0x90

Lesen des Wertes 0x0284 aus Register 0x09 von Device 0x90

Hinweis

Nach dem einleitenden Schreibbefehl innerhalb der Lesesequenz muss keine Wartezeit eingehalten werden. Es kann sofort der nachfolgende Lesebefehl begonnen werden.

Nachdem der Microcontroller der VM-012 den einleitenden I²C-Write-Befehl und die Deviceadresse mit gesetztem Lesebit empfangen hat, benötigt er in der Regel ca. 200µs zur Bearbeitung des internen SPI-Lesebefehls. In dieser Zeit muß der Master an der I²C- Schnittstelle warten, bevor er mit dem Einlesen der Daten beginnen kann. Dazu wird vom Microcontroller der VM-012 der Mechanismus des  „Clock-Stretching“ verwendet. Das „Clock-Stretching“ wird nur einmal vor dem ersten Datenbyte verwendet. Das zweite Datenbyte wird sofort nach Anforderung gesendet.

Hinweis

Der I²C-Master muss das Verfahren des Clock-Stretching unterstützen.

I2C Registerzuordnung

Paging

Der Kamerasensor VITA 1300 auf der VM-012 besitzt eine Registermap mit 511 Registern. Eine Vielzahl von I²C-Routinen unterstützen jedoch nur einen Adressraum von 255 Registern.

Deshalb wurde der I²C-Adressraum auf der VM-012 durch Verwendung eines Page-Bits erweitert.

Page-Bit

I²C-Registeradresse der VM-012

Registeradresse des
VITA 1300 Kamerasensors

0

0x00 bis 0xFF

0x000 bis 0x0FF

1

0x00 bis 0xFF

0x100 bis 0x1FF

Die adressierte Registeradresse des Kamerasensors entspricht also der an der I²C-Schnittstelle übergebenen Registeradresse zuzüglich des Werts des Page-Bits als MSB:

Sensor-Registeradresse = Page-Bit . 0x100 + I²C-Register-Adresse.

Das „PAGE_BIT“ befindet sich im „VM012_CONTROL“ Register.

Informationen zu den Registern des Kamerasensors VITA 1300 finden Sie im Datenblatt des Sensors.

Control - und Statusregister

Zur Steuerung des Microcontrollers auf dem Kameramodul und zum Auslesen von Statusinformationen werden in die Registermap des Kamerasensors drei zusätzliche Register eingeblendet.

Über den Lese- bzw. Schreibzugriff auf diese Register kann der I²C-Master direkt den Microcontroller der VM-012 ansprechen.

Dafür werden drei Adressen verwendet, die im Adressraum des VITA 1300 nicht belegt sind.

I²C Register Adresse der VM-012

Page-Bit[9]

Read

Write

Funktion

0x97

x

ja

nein

Firmware-Version der VM-012

0x98

x

ja

ja

VM_012_CONTROL Register

0x99

x

ja

nein

VM_012_STATUS Register

9.

x=keinen Einfluss

Hinweis

Diese drei Adressen werden nicht an das SPI Interface des Kamerasensors weitergeleitet, sondern nur im Microcontroller ausgewertet. Diese drei Register unterliegen keinen Wartezeiten beim Lesen oder Schreiben auf der I²C Schnittstelle.

Registerbeschreibung VM012_FIRMWARE; 0x97 (151 dezimal).

0x97 – VM012_FIRMWARE

Bit

Bit Name

Bit Beschreibung

Default Hex (Dec)

Zulässige Werte (Dec)

Read/Write

7...0

MINOR_REVISION

Version Firmware Nachkommastelle

-

0...255

R

15...8

MAJOR_REVISION

Version Firmware Vorkommastelle

-

0...255

R

Registerbeschreibung VM012_CONTROL;  0x98 (152 dezimal).

0x98 – VM012_CONTROL

Bit

Bit Name

Bit Beschreibung

Default Hex (Dec)

Zulässige Werte (Dec)

Read/Write



0



PAGE_BIT

Auswahl Register-Page des Kamerasensors:
0 = Register 0x000 bis 0x0FF

1 = Register 0x100 bis 0x1FF

Der Zustand des PAGE_BITs bleibt nach dem Kamerareset erhalten



0



0 ; 1



R/W





1





AUTO_SENSOR_RESET

Auto Software-Reset Kamerasensor

0 = Grundzustand

1 = Reset Kamerasensor auslösen

Es wird das Reset-Signal des Kamerachips aktiviert und die Spannungsversorgungen des Kamerachips abgeschaltet. Nach einer Wartezeit von 100ms werden die Spannungen wieder zugeschaltet und der Reset wieder deaktiviert. Danach wird das Bit selbstständig zurückgesetzt.





0





0 ; 1





R/W






2






SENSOR_RESET

Bildsensor Reset aktivieren

0 = Grundzustand

1 = Es wird das Reset-Signal des Kamerachips aktiviert und die Spannungsversorgungen des Kamerachips abgeschaltet. Erst wenn das Bit vom Anwender zurückgesetzt wird, werden die Spannungen wieder zugeschaltet und der Reset deaktiviert.

Diese Funktion kann benutzt werden, um das Kameramodul in einen energie­sparenden Modus zu versetzen.






0






0 ; 1






R/W

3...7

RESERVED

reserviert für interne / zukünftige Funktionen

-

-

-





8





VM-012_RESET

Software-Reset Kamerasmodul

0 = Grundzustand

1 = Reset Kameramodul auslösen

Wenn dieses Bit gesetzt wird, dann erfolgt ein Reset des Kamerasensors und der Microcontroller auf dem Sensorboard führt ein Softwarereset durch. Danach stehen alle Register wieder auf  den Default-Werten.





0





0 ; 1





R/W

9...15

RESERVED

reserviert für interne / zukünftige Funktionen

-

-

-

Registerbeschreibung VM012_STATUS; 0x99 (153 dezimal).

0x99 – VM012_STATUS

Bit

Bit Name

Bit Beschreibung

Default Hex (Dec)

Zulässige Werte (Dec)

Read/Write




0




SPI_READ

0 = SPI-READ-Vorgang ist inaktiv

1 = SPI-READ-Vorgang läuft. Es darf nur auf die Register 0x97, 0x98 und 0x99 zugegriffen werden.

Hinweis: Beim Verwendung von Clock-Stretching erfolgt die Bearbeitung innerhalb des I²C Zugriffszyklus. Eine besondere Beachtung des Flags ist nicht erforderlich.




0




0 ; 1




R


1


SPI_WRITE

0 = SPI-WRITE-Vorgang ist inaktiv

1 = SPI-WRITE-Vorgang läuft. Es darf nur auf die Register 0x97, 0x98 und 0x99 zugegriffen werden.


0


0 ; 1


R

2..15

RESERVED

reserviert für interne / zukünftige Funktionen

-

-

-

Sonderfunktionen

Windowing / ROI

Der Kamerasensor der VM-012 ermöglicht – wie andere phyCAM-Module auch – die Verringerung der effektiven Bildauflösung durch Definition von Auslesefenstern (Window oder ROI = Region of Interest). Dadurch lässt sich auch die erzeugte Datenmenge optimal an die Anforderungen der Anwendung anpassen. Durch die Reduzierung der Auflösung kann außerdem die Bildwiederholrate erhöht werden.

Abhängig von der Betriebsart können mehrere ROIs definiert werden:

  • Global Shutter Mode: bis zu 8 ROIs
  • Rolling Shutter Mode: bis zu 1 ROI

Beachten Sie, daß bei Verwendung mehrerer ROIs die Ausgabereihenfolge der Pixel nach wie vor von der Lage der Pixel auf dem Sensor bestimmt wird. ROIs maskieren also den Sensor, sie bestimmen aber nicht die Reihenfolge der Pixel. Gegebenenfalls werden die aktiven Pixel mehrerer ROIs verschachtelt.

Trigger / Monitor

Der Triggereingang stellt folgende Sonderfunktionen zur Verfügung:

  • Triggered Shutter Master Mode
    In diesem Modus wird der Zeitpunkt der Bildaufnahme durch das Trigger-Signal gesteuert. Eine steigende Flanke Triggereingang löst eine Bildaufnahme aus. Die Belichtungszeit wird durch die Registereinstellungen des Sensors gesteuert.
  • Pipelined Shutter Slave Mode
    In diesem Modus wird der Zeitpunkt der Bildaufnahme und die Belichtungszeit über den Triggereingang gesteuert.

Eine steigende Flanke startet die Bildaufnahme, eine fallende Flanke beendet die Aufnahme.

Hinweis

Der Trigger darf nicht in der Frame Overhead Time (FOT) aktiviert werden. Zur Erkennung des Bildanfangs kann die First Line Indication des Monitor-Signals verwendet werden, s. unten. Einzelheiten zur Triggerung finden Sie im Datenblatt des Kamerasensors.

Der Triggereingang ist an Pin 1 des Erweiterungssteckers X2 vorhanden.

Pin

Dir

Funktion

1

I

TRIGGER0_IN

2

-

GND (Signalmasse)

3

O

MONITOR_OUT

VM-012-xxx-LVDS (phyCAM-S+) Belegung des Erweiterungssteckers X2

Steckverbinder-Typ: JST BM03B-SRSS-TB
passende Steckergehäuse: JST SHR-03V-S

Monitor Out

Der Monitor-Ausgang kann wahlweise auf das Monitor0 oder Monitor1 – Signal des VITA1300 konfiguriert werden:

Signal

Funktion

I/O

Konfiguration

MONITOR_OUT

MONITOR0

O

J7:2-3

MONITOR1

O

J7:1-2

Das Signal MONITOR_OUT ist an Pin 3 des Erweiterungssteckers X2 verfügbar.

Die Funktion des Signals kann im Register MONITOR_SELECT des Sensors eingestellt werden.

Übersicht über die Funktionen:

Funktion

Monitor0

Monitor1

Bermerkung

0

x

x

konstant low

Integration Time

x


1 während Belichtung

ROT Indication

x

x

‘1’ during ROT, ‘0’ outside

Dual/Triple Slope Integration


x

asserted during DS/TS FOT sequence

Start of x-Readout Indication

x

x


Black Line Indication


x

‘1’ during black lines, ‘0’ outside

Frame Start Indication

x



Start of ROT Indication


x


First Line Indication

x


‘1’ during first line, ‘0’ for all others

Start of X-readout Indication for Black Lines

x



Start of X-readout Indication for Image Lines


x


(ROT = Row Overhead Time, FOT = Frame Overhead Time)

Reset

Bei Anlegen der Versorgungsspannung wird ein Reset-Zyklus des Kamera-Sensors ausgelöst. Nachdem der interne Resetzyklus durchgeführt wurde ist ein I²C-Zugriff auf die VM-012 Register nach ca. 100 ms möglich.

Ein Sensor-Reset kann auch durch Software ausgelöst werden. Dazu wird das Bit AUTO_SENSOR_RESET auf 1 gesetzt. Das Bit wird nach Ende des Sensor-Reset-Zyklus’ automatisch zurückgesetzt.

Der Bildsensor kann per Software dauerhaft in den Reset-Zustand versetzt werden wobei die Stromversorgung des Sensors abgeschaltet ist. Dies kann beispielsweise dazu genutzt werden, die Strom­auf­nahme des Kameramoduls zu reduzieren.

Dieser Zustand kann erreicht werden, indem das Bit SENSOR_RESET  auf 1 gesetzt wird. Der Sensor bleibt in dem Zustand, bis das Bit wieder auf 0 gesetzt wird. Danach wird die Versorgungsspannung des Bildsensors wieder eingeschaltet und der Reset deaktiviert. Nach ca. 100 ms ist ein Zugriff auf den Sensor wieder möglich.

Hinweis

Nach einem Sensor-Reset sind alle Register des Bildsensors auf ihre Default-Werte gesetzt. Führen Sie keine Registerzugriffe auf den Bildsensor aus, während sich der Sensor im Resetzustand befindet. Auf die in die Register-Map eingeblendeten Kontroll- und Statusregister kann auch während eines Sensor-Resets zugegriffen werden.

Ein vollständiger Reset des Kameramoduls kann ausgelöst werden durch:

  • Aus- und Einschalten der Betriebsspannung des Kameramoduls
  • per Software durch Aktivierung des Bits VM-012_RESET

Der vollständige Reset kann durch Setzen des Bits VM-012_RESET ausgelöst werden. Danach führen der Bildsensor und der interne Microcontroller einen Reset durch.

Alle Register werden auf ihre Default-Werte zurückgesetzt. Das Bit VM-012_RESET wird automatisch zurückgesetzt.

Hinweis

Eine Änderung der I²C-Adresse wird erst nach Durchführung eines vollständigen Reset übernommen.

I2C-EEPROM (optional)

Das Kameramodul VM-012 kann optional mit einem EEPROM ausgestattet werden. In diesem können anwendungsspezifische Daten (z.B. Kalibrierungsdaten) gespeichert werden.

Das EEPROM ist vom Typ M24C02-RMC6TG und besitzt eine Speichergröße von 2 kBit. Die Default I2C-Adresse lautet 0xAE. Alternative Adressen können per Jumper eingestellt werden (siehe I2C Adressen).

Datenübertragungsrate: 100 kHz Standard Mode / 400 kHz Fast Mode.

Weitere Informationen finden Sie im Datenblatt des EEPROMs.

Onboard MCLK Erzeugung

Bei Bedarf besteht die Möglichkeit, einen Oszillator auf dem Kameramodul zu bestücken. Dieser kann den Masterclock MCLK für den Kamerasensor erzeugen. Damit ist es nicht mehr erforderlich, den MCLK-Takt über die Pins 3/6 des phyCAM-S – Steckers einzuspeisen. Zur Verwendung des internen Masterclocks muss OZ1 bestückt sein und Jumper J1auf 1+2 gesetzt werden.

Entwicklungskits

Zur Inbetriebnahme der Kamera und Unterstützung der Entwicklung sind Single-Board-Computer (SBC-Kits) für verschiedene Controller-Plattformen erhältlich. Das Sortiment an passenden Kits wird ständig erweitert. Bitte informieren Sie sich auf unserer Webseite über aktuell erhältliche Kits. Der PHYTEC-Vertrieb berät sie gerne bei der Zusammenstellung von Kits und Komponenten.

Revisionhistorie

Date

Version #

Changes in this manual

01.03.2021

Manual L-873d.A0

New Release