Systém pro řízení CCD kamery

Optika, montáže, autoguidery, elektronika...
Odpovědět
Uživatelský avatar
MP
Příspěvky: 2920
Registrován: 20. 05. 2003, 00:06

Systém pro řízení CCD kamery

#1

Příspěvek od MP »

Omlouvam se za off-topic, ale vidim, ze Honza ma siroky prehled, tak bych se rad na neco zeptal :

Nevite o nejakem relativne jednoduchem a rychlem ( RISC ) mikrokontroleru s rozhranim pro velkou a rychlou RAM ? Jde o konstrukci digitalnich CCD kamer, kde pri mem pozadavku na 12bitovy prevod s 16bitovym zpracovanim a cas pod 0.1s na vycitani snimku vychazi napr. u ICX285 celkovy datovy tok kolem 60MB/s ( 30 vstup z A/D, 30 vystup do pameti ) a pri okamzitem scitani expozic je to o polovinu vic ( rad bych scital expozice v kamere a vystup s 16bitovou hloubkou a snizenym sumem by pak byl pomalejsi ). V komercnich kamerach byvaji specializovane DSP, ktere clovek normalne nesezene a nemuze je programovat ( pevna ROM ) a mivaji pripojenych tak 16MB SDRAM. Vyvojovy model by sel postavit napr. na AT91RM9200 ( ARM9 s radicem SDRAM ), ale to je "integrovany superpocitac" v pouzdre s 208 vyvody a spoustou periferii, ktere nevyuziji. Neznate neco jednodussiho, co by splnovalo naroky na rychlost a velikost externi RAM ?
e-mail : mpec(at)cce(dot)cz&&
HonzaS
Příspěvky: 536
Registrován: 08. 11. 2004, 04:46
Bydliště: Druzcov

Systém pro řízení CCD kamery

#2

Příspěvek od HonzaS »

MP napsal: Omlouvam se za off-topic, ale vidim, ze Honza ma siroky prehled, tak bych se rad na neco zeptal :

Nevite o nejakem relativne jednoduchem a rychlem ( RISC ) mikrokontroleru s rozhranim pro velkou a rychlou RAM ? Jde o konstrukci digitalnich CCD kamer, kde pri mem pozadavku na 12bitovy prevod s 16bitovym zpracovanim a cas pod 0.1s na vycitani snimku vychazi napr. u ICX285 celkovy datovy tok kolem 60MB/s ( 30 vstup z A/D, 30 vystup do pameti ) a pri okamzitem scitani expozic je to o polovinu vic ( rad bych scital expozice v kamere a vystup s 16bitovou hloubkou a snizenym sumem by pak byl pomalejsi ). V komercnich kamerach byvaji specializovane DSP, ktere clovek normalne nesezene a nemuze je programovat ( pevna ROM ) a mivaji pripojenych tak 16MB SDRAM. Vyvojovy model by sel postavit napr. na AT91RM9200 ( ARM9 s radicem SDRAM ), ale to je "integrovany superpocitac" v pouzdre s 208 vyvody a spoustou periferii, ktere nevyuziji. Neznate neco jednodussiho, co by splnovalo naroky na rychlost a velikost externi RAM ?

Jedinne rozumne reseni bude asi nejaky ARM. Budto si postavis s Philipsem napr. LPC2106 (64kb RAM, 128kb FLASH). K nemu bych pripojil SRAMku a nejaky kvalitni, rychly (asi drahy) A/D prevodnik. 'Mezixicht' bych asi resil nejakym zakaznickym PLD. Rychlost pro vzorkovani kamery by asi stacila, ale chtelo by to propocitat. Asi lepsi varianta je konstrukce s Atmelem co jsi uvedl, ale bude tam maly problem s pouzdrem (pajenim) BGA, aby to bylo kvalitni. K nemu normalne pripojis SDRAM, kterou vykuchas z jakeholi PC (jeden cip). ARM architektura od philipse ma 32 bitovy I/O, takze 1 zapisem/ctenim dostanes do registru cely port, coz je dobre zejmena pro rychlost. Bohuzel mam nekde doma kit pouze s LPC2106, jedinne, co jsem udelal je zkompilovat crosscompiler pro ARM, rozchodit ho a naprogramovat do LPC zakladni blikani LEDkami, abych videl, ze to komunikuje s debuggerem.

Prohledni si datasheety vyrobcu. Mozna by take stalo za zvazeni poridit ten modul "FingerPrint", ktery je osazen 32 bitovym ARM9 mikroprocesorem na 233Mhz, je k nemu pripojeno 16MB RAM, 4MB Flash a ma vyvedeny veskere dulezite draty na konektoru. Asi si ho vypujcim, zeptam se, jestli to muzu znicit "smazat linux" a zkusim do nej neco napsat.

Vyhodou je, ze lze pouzit GCC kompilator, ktery je kvalitni a je zadarmo. Paralelni J-Tag interface je pomerne jednoduchy.

HonzaS
ED80, Dobson 16" a další bordel
Uživatelský avatar
MMys
Příspěvky: 17644
Registrován: 02. 01. 2001, 05:03
Bydliště: Běleč nad Orlicí
Věk: 50
Kontaktovat uživatele:

Systém pro řízení CCD kamery

#3

Příspěvek od MMys »

MP napsal: Omlouvam se za off-topic, ale vidim, ze Honza ma siroky prehled, tak bych se rad na neco zeptal :

Nevite o nejakem relativne jednoduchem a rychlem ( RISC ) mikrokontroleru s rozhranim pro velkou a rychlou RAM ? Jde o konstrukci digitalnich CCD kamer, kde pri mem pozadavku na 12bitovy prevod s 16bitovym zpracovanim a cas pod 0.1s na vycitani snimku vychazi napr. u ICX285 celkovy datovy tok kolem 60MB/s ( 30 vstup z A/D, 30 vystup do pameti ) a pri okamzitem scitani expozic je to o polovinu vic ( rad bych scital expozice v kamere a vystup s 16bitovou hloubkou a snizenym sumem by pak byl pomalejsi ). V komercnich kamerach byvaji specializovane DSP, ktere clovek normalne nesezene a nemuze je programovat ( pevna ROM ) a mivaji pripojenych tak 16MB SDRAM. Vyvojovy model by sel postavit napr. na AT91RM9200 ( ARM9 s radicem SDRAM ), ale to je "integrovany superpocitac" v pouzdre s 208 vyvody a spoustou periferii, ktere nevyuziji. Neznate neco jednodussiho, co by splnovalo naroky na rychlost a velikost externi RAM ?

Náhodou jsem narazil na tohle http://www.hw.cz/firemni_clanky/elatec/ ... etdcu.html, je tam ARM9 na 300MHz, paměti dost, jenom nevím, jak je to s I/O linkami, co vše je vyvedeno. Píšou ale 21 I/O. Zkus to prostudovat, na mezinárodních stránkách Elatecu jsou k tomu snad i Datasheety.
http://hvbo.cz/foto_astronomy_cz, http://hvbo.cz, e-mail: martin(*)myslivec(a)volny(*)cz, Dobson 400mm, N400/1600, Refraktor Borg 77ED, Montáž EQ6, Hvězdárna s montáží vlastní výroby, kamery MII C3-61000, ZWO ASI 1600MM
Uživatelský avatar
MP
Příspěvky: 2920
Registrován: 20. 05. 2003, 00:06

Systém pro řízení CCD kamery

#4

Příspěvek od MP »

Diky, panove. Ten deskovy pocitac, ktery zminuje MMys, je postaveny na novem ARMu od Samsungu : S3C2440. Vypada to na PDA v jednom chipu : zabudovane USB, radic LCD displeje, audio codec, 8kanalovy ADC, SD/MMC radic atd., atd. vcetne "Camera interface", coz nejak nevim, co si pod tim predstavit. Nemohu k tomu najit podrobny datasheet. Ale asi to bude take kanon na vrabce ...

K Philipsum : mam obavu, ze rada LPC210x nema interface pro externi pamet ( mozna se pletu ). A 16kB vnitrni je zoufale malo. Pokud ARM od Philipse, tak asi LPC2212. Ale to uz je take poradny kanon ...

Zkratka to vypada, ze vyhovi jen kontrolery, urcene ke stavbe celych pocitacu ( PDA apod. ). A tomu jsem se chtel prave vyhnout - ono pak uz je jednodussi koupit PDA a k nemu udelat "kamerove" rozhrani treba do CF slotu.

Pro Honzu : s prevodniky nebude problem, tech uz se pro CCD dela spousta. Napr. Philips TDA9962 nebo TDA9965 : 12 bitu, correlated double sampling pro CCD vcetne nastaveni urovne cerne, programovatelny predzesilovac v rozsahu 36dB, vzorkovaci frekvence do 30MHz. To by uplne stacilo ( resp. prekonalo vetsinu prodavanych kamer a fotaku ). Problem je, co s tim 12bitovym 30MHz vystupem udelat dal.


e-mail : mpec(at)cce(dot)cz&&
HonzaS
Příspěvky: 536
Registrován: 08. 11. 2004, 04:46
Bydliště: Druzcov

Systém pro řízení CCD kamery

#5

Příspěvek od HonzaS »

MP napsal:
K Philipsum : mam obavu, ze rada LPC210x nema interface pro externi pamet ( mozna se pletu ). A 16kB vnitrni je zoufale malo.

Mas pravdu, LPC210x se lisi pouze pameti - od 16kb RAM do 64kb RAM, coz je na video stale zoufale malo, radic SDRAM nemaji. Dalsi modely maji navic nejake periferie. Delaji se i vyssi modely s radicem SDRAM.

Mozna by nebylo marne se zamyslet nad diskretnim resenim, kde by napr. ten prevodnik byl schopen "nahrnout" data pomoci citacu do SRAM (asi 2 kusy paralelne, kvuli 16-bit. sbernici z prevodniku) - zejmena kvuli presnemu casovani vzorkovani. Pak nejakou dalsi externi logikou prepnout sbernici do procesoru, kde se snimek zpracuje, atd.... Tuto logiku muzes resit diskretne pomoci 74HCxx obvodu, pripadne pouzit GALy, ci jinou vyssi logiku (ASIC). Obavam se, ze 30 MSamles v 12 bitech (jestli jsem tu rychlost spravne pochopil) urcite nebude mozne prenaset ani rychlym ARMem (nevim, jak je rychly zapis do externi SDRAM). Nicmene kit s ARM7 (LPC2106 tusim na 60Mhz) ma ted pujceny jeden kamos, tak si jej vypujcim, zkompiluji si crosscompiler a zkusim alespon zapis z 32bit portu do vnitrni RAM, a uvidime, zatim mohu jen spekulovat.

Muj osobni nazor je ten, ze pouziti diskretni metody povede k cili jisteji, nez pocitat s tim, ze to nejaky ARM za rozumnou cenu stihne, dalsi veci je tzv. jitter pri vzorkovani dat (pristupy mikroprocesoru ke sbernici, preruseni, refresh, aj.). Vice nez 256kb interni RAM jsem zatim nevidel, takze externi SRAM/SDRAM je nutna.

Bohuzel neznam pozadavky na rychlost/pomalost a zpusob vzorkovani dat z CCD (jestli je to primo CCD, nebo Video), takze nemohu o tom moc premyslet.

HonzaS
ED80, Dobson 16" a další bordel
Uživatelský avatar
MP
Příspěvky: 2920
Registrován: 20. 05. 2003, 00:06

Systém pro řízení CCD kamery

#6

Příspěvek od MP »

O diskretnim reseni spravy pameti jsem take uvazoval. Ale ten Atmelovsky AT91RM9200 by to mel stihat ( SDRAM latency 2 pri 180MHz, 32bitova sbernice, interni cache ), navic ma USB radic apod. Jen je zbytecne moc komplikovany.

Uvazoval jsem take o vyuziti 2portoych pameti, ktere jsem kdysi na podobne experimenty koupil ( 8bitove, 370kB, 20ns ). Ty maji veskerou potrebnou logiku v sobe, ale kdyz dam 2 paralelne, vejde se do nich jen 0.37MPx v 16bitove hloubce. Takze by slouzily jen jako vyrovnavaci pamet, aby program v MCU nebyl tak haklivy na presne casovani. Ulozeni celeho obrazku by stejne procesor musel zvladnout.

Jinak by to samozrejme slo udelat i podstatne pomalejsi, i kdyz s jistou malou ztratou kvality ( pri pomalem vycitani CCD se casto trochu zmeni naboj v analogovych registrech, objevi se gradient, ruzne pruhy apod. ). Tech 10fps z ICX285 ( = cca 20 MHz ) jsem si zadal sam, protoze by to porad jeste mela byt kamera a ne "jen" fotak :)
e-mail : mpec(at)cce(dot)cz&&
Odpovědět