Table of Contents
brmScope
~~META: status = finished &relation firstimage = :project:icon_microscope.jpg ~~
brmscope is a webcam-microscope mounted on a 3-axis micromanipulator controlled with stepper motors.
Projekt brmScope si klade za cíl vytvořit digitální mikroskop s použitím co nejlépe dostupných komponent.
Status
V tuto chvíli máme sestavený funkční (doslova drátěný) model s funkčním softwarem na ovládání, jednoduché snímkování a drobné hw korekce v obrazu, ovládání joystickem. vyzkoušeli jsme si prohlédnout jednoduché polovodiče, integrované obvody, pár biologických vzorků (krvinky) a můžeme konstatovat že projekt je funkčním modelem.
Návod k použití
Brmscope najdete v biolabu, připojený k počítači Hind3. Na stěně je návod k použití. Je třeba zapojit do USB joystick, webcam i Arduino.
Ovládací software spustíte přes ikonku na ploše 'brmscope', je trochu komplikovaný. V zásadě klikněte v pořadí na tlačítka CONNECT, ODBRZDIT, START, JOY START. Pak by měl začít joystick fungovat. Občas fungovat přestane (nebo se velmi zmenší délka kroku), v tom případě zmáčkněte STOP a pak zase START.
Na obraz se dívejte třeba přes program cheese (fullscreen F11).
Posun po ose Y (zaostřování) ovládají tlačítka vlevo/vpravo na hlavě joysticku. Obstarává jej svislá tyčka omotaná izolepou, která má tendenci se zasekávat, pak je jejímu otáčení třeba pomoci rukou.
Nahrávání
Snímek obrazu:
$ mplayer -frames 1 -vo png tv:// -tv device=/dev/video1
Snímek má lehce pod 1 MB.
2015: pro nahrávání se doporučuje použít program cheese
Nahrávání s GStreamerem - vidíte, co nahráváte :)
vysílání a zobrazování
$ gst-launch v4l2src device=/dev/video0 ! video/x-raw-yuv,width=640,height=480 ! \ videorate ! video/x-raw-yuv,framerate=15/1 ! ffmpegcolorspace ! tee name=a a. ! \ ffenc_mpeg2video pass=quant quantizer=4 ! mpegtsmux ! \ tcpserversink host=localhost port=5000 a. ! queue ! xvimagesink
Kvantizér si nastavte tak, aby to váš počítač stíhal (vyšší kvantizace - horší kvalita). Notebook s Intel Atom stíhá 2-4.
zachytávání
$ gst-launch tcpclientsrc host=localhost port=5000 ! filesink location=out.mpg
Záznam má řádově 1 GB/hodina
Software
BrmScope
Aktuální software napsal TomSuch (a rainbof?) v Gambasu. Odlaďovalo se na něm veškeré ovládání, takže výsledné rozhraní je poněkud neintuitivní. Zdrojáky: http://github.com/brmlab/brmscope
GitHub, last commits
- old code cleanup by nephirus@kerestes.cz (2012/09/18 20:30)
- board corrections + atmega firmware by nephirus@kerestes.cz (2012/09/18 20:27)
- Added bootloader code - USBasploader by Objective Development (http:/… by nephirus@kerestes.cz (2012/09/17 13:43)
- INT0 connected to D+ line (USBasploader requirement) by nephirus@kerestes.cz (2012/09/17 13:38)
- Micropositioner to stepper shaft adapter by nephirus@kerestes.cz (2012/09/17 13:23)
MicroView
Stick pracuje na přepisu do C++/Qt: http://github.com/brmlab/microview
GitHub, last commits
- add more functionality by prusnak (2011/08/29 23:30)
- add icon by prusnak (2011/08/29 20:07)
- init by prusnak (2011/08/29 19:49)
Hardware
V této chvílí máme k dispozici běžně prodávaný usb mikroskop s přiblížením 400x a 2mpix vga kamerou kompatibilní s rozhraním Video4linux.
Kamera je pohyblivá ve třech osách XYZ pomocí mikroposuvu (precision slide). Trochu zvláštností je že se tedy hýbe se mikroskop nikoliv vzorek/preparát. Osa Y slouží k ostření obrazu.
Osy mikroskopu jsou napojeny na krokové motory a ty dál ovládány pomocí Arduina. Firmware na: http://github.com/brmlab/brmscope
Todo
- průběžná dokumentace, překlad do EN
Hardware
- opravit zadrhávající se posun po ose Y
- vylepšit stabilitu obrazu při posunu
- lepší optika, dosáhnout zvětšení 800
- kamera s větším rozlišením
- většina věci tisknutelných na RepRapu
- náhrada mikroposuvu za něco dostupnějšího
- lepší podsvícení zespodu
Software
- snadno použitelné rozhraní
- software integrující ovládání i zobrazování
- nahrávání záznamu obrazu (zatím máme jen snímkování)
- automatické ostření
- automatické vyhledání vzorku
- definovat licenci (gpl2?)
- automatické nasnímání velkého vzorku a sestavení do jednoho velkého panorama
- investigate http://wiki.panotools.org/Panorama_scripting_in_a_nutshell; http://hugin.sourceforge.net/docs/nona/nona.txt could be useful too
First panorama
autopano-sift-c --projection 0,10 project.pto *.ppm autooptimiser -a -l -s -o project.pto project.pto nona -m TIFF_m -o project project.pto enblend -o project.png project*.tif
Result:
TODO: area, not only one line
Pics or it didn't happen!
Thin gray line printed on 300dpi laser printer.
Onion with backlight and coloured with iodine.
“PR” from “Státní tiskárna cenin, PRaha” from back side of 100CZK banknote.
Links
- Using 500x optical magnification to reverse engineer hardware: http://www.cs.virginia.edu/~evans/pubs/usenix08/mifare.html