Tomaž Avberšek NADZOROVANJE TELESKOPA S POMOČJO PLATFORME RASPBERRY PI. Diplomsko delo

Similar documents
Hydrostatic transmission design Tandem closed-loop circuit applied on a forestry cable carrier

Atim - izvlečni mehanizmi

Aljoša Skočir PROGRAMSKI VMESNIK ZA PRIKLOP NAPRAVE ZA ZAJEM PODATKOV NA VODILO USB

Študija varnosti OBD Bluetooth adapterjev

KONTROLNI SISTEM ZA KRMILJENJE MOTORJEV IN KOREKCIJSKIH TULJAV

VSD2 VARIABILNI VRTINČNI DIFUZOR VARIABLE SWIRL DIFFUSER. Kot lopatic ( ) / Angle of the blades ( ) 90 odpiranje / opening 85

Pošta Slovenije d.o.o. Slomškov trg MARIBOR e pošta: espremnica Navodilo za namestitev aplikacije»espremnica«

JACKETS, FLEECE, BASE LAYERS AND T SHIRTS / JAKNE, FLISI, JOPICE, PULIJI, AKTIVNE MAJICE IN KRATKE MAJICE USA / UK / EU XS S M L XL XXL XXXL

BREZŽIČNO KOMUNIKACIJSKO RAZVOJNO OKOLJE ZA ROBOTA ROBOSAPIEN

IZGRADNJA GRAFIČNEGA VMESNIKA ZA KRMILNIK LINEARNEGA MOTORJA

Nadzor in avtomatizacija funkcij v sobi

Diagnostika avtomobila z mikrokrmilnikom Arduino

Mobilna aplikacija za inventuro osnovnih sredstev

Implementacija programske kode za vodenje tehnoloških operacij frezanja z robotom Acma XR 701

INTEGRACIJA INTRANETOV PODJETJA S POUDARKOM NA UPRABNIŠKI IZKUŠNJI

Energy usage in mast system of electrohydraulic forklift

Prikaz podatkov o delovanju avtomobila na mobilni napravi z uporabo OBDII

LAHKE TOVORNE PRIKOLICE BREZ NALETNE NAPRAVE DO 750 KG

Mentor: doc. dr. Janez Demšar

Preprost prevajalnik besedil za platformo android

Sodoben razvoj prototipov uporabniških vmesnikov z orodjem Microsoft Expression Blend 4

Avtomatizacija stroja za vezenje

Avtomatizirani stroj za izdelavo cigaret

Razvoj poslovnih aplikacij po metodi Scrum

-

RFID implementacija sledenja v preskrbovalni verigi

SAMODEJNI SISTEM ZA KRMILJENJE ZALIVALNO-NAMAKALNIH SISTEMOV

11/14. test NOKIINIH ZEMLJEVIDOV na Androidu ANDROID 5 nasveti za MAC in LINUX sam svoj MOJSTER. TEST vrhunskih telefonov od Appla do»kitajcev«12

POROČILO PRAKTIČNEGA IZOBRAŽEVANJA

Prototipni razvoj (Prototyping)

KRMILJENJE TRAČNE ŽAGE S PROGRAMIRLJIVIM LOGIČNIM KRMILNIKOM

ProductDiscontinued. Sistem za merjenje z rezervoarjem Posebna varnostna navodila ATEX. Posebna varnostna navodila SL, 1.

IZVEDBA POTOVALNEGA RAČUNALNIKA ZA OSEBNO VOZILO S POMOČJO PLATFORME RASPBERRY PI

Ustreznost odprtokodnih sistemov za upravljanje vsebin za načrtovanje in izvedbo kompleksnih spletnih mest: primer TYPO3

NAČRTOVANJE TESTIRANJA PRI RAZVOJU IS V MANJŠIH RAZVOJNIH SKUPINAH

Pozicija zvarov na digitalnih slikovnih posnetkih

Gonilnik za sistem hišne avtomatizacije Adhoco

MX2 Ustvarjen za pogon strojev Model: 3G3MX2 200V trifazni vhod 0.1 do 15 kw. 400V trifazni vhod 0.1 do 15 kw UPORABNIŠKA NAVODILA

PRENOS PODATKOV V SISTEMU ZA POLNJENJE ELEKTRIČNIH VOZIL

BOGDAN DUGONIK FERI - MEDIJSKE KOMUNIKACIJE GRADIVO ZA VAJE. Navodilo za programsko orodje. Premiere 1.5 PRO

OPTIMIZACIJA ZUNANJEGA SKLADIŠČA V PODJETJU GORENJE KERAMIKA D.O.O. Z UVEDBO RFID TEHNOLOGIJE

EVROPSKO RIBIŠTVO V ŠTEVILKAH

Uporabniški program za generator identifikatorjev UFI Priročnik za uporabnike. Julij 2018

UNIVERZA V LJUBLJANI FAKULTETA ZA ELEKTROTEHNIKO MAGISTRSKO DELO KOMUNIKACIJSKI PROTOKOLI V ELEKTRONSKEM ŠTEVCU ELEKTRIČNE ENERGIJE

ZBIRANJE IN PROCESIRANJE PODATKOV PRIDOBLJENIH IZ OTLM NAPRAV, KI SO NAMEŠČENE NA PRENOSNIH VODNIKIH

NAVODILA ZA UPORABO: Namestitev aplikacije Renault Media Nav Toolbox

UNIVERZA V NOVI GORICI POSLOVNO-TEHNIŠKA FAKULTETA MAGISTRSKA NALOGA RAZVOJ IN IMPLEMENTACIJA SISTEMA ZA UPRAVLJANJE SPLETNE VSEBINE.

Razvrščanje proizvodnih opravil z orodji za vodenje projektov

UNIVERZA V NOVI GORICI POSLOVNO-TEHNIŠKA FAKULTETA IDENTIFIKACIJA APLIKACIJ IN OVREDNOTENJE TRŢNEGA POTENCIALA ZA TEHNOLOGIJO CELERIS DIPLOMSKO DELO

Naprava za pranje ulitkov

NAVIGACIJA IN LOKALIZACIJA MOBILNE PLATFORME DATA Z UPORABO DIGITALNEGA KOMPASA

Avtomatizacija premikanja masažne kopeli

RAVNATELJEVANJE PROJEKTOV

UVAJANJE AGILNE METODE SCRUM V RAZVOJ SPLETNEGA PORTALA ZA ZDRAVO PREHRANO

RAZPOREJANJE PROIZVODNJE Z METODO ISKANJA S TABUJI

CHARGING A CAR IN MOTION WIRELESSLY BREZŽIČNO POLNJENJE AVTOMOBILOV V VOŽNJI

Prednji menjalnik. Navodila za trgovce SLX FD-M7025 FD-M7020 FD-M7005 FD-M7000 DEORE FD-M6025 FD-M6020 FD-M6000. CESTNO MTB Treking

UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO ANALIZA VZROKOV IN NAČINOV ODPOVEDI PROGRAMSKE REŠITVE E-TRANS

MARTIN VERSTOVŠEK UPORABA ORODIJ ZA VODENJE PROJEKTOV IT V MAJHNI RAZVOJNI SKUPINI DIPLOMSKO DELO NA VISOKOŠOLSKEM STROKOVNEM ŠTUDIJU

PLANIRANJE KADROV V PODJETJU UNIOR d.d.

THE OPTIMIZATION OF A RACE CAR INTAKE SYSTEM OPTIMIZACIJA SESALNEGA SISTEMA DIRKALNIKA

OCENJEVANJE DELOVNE USPEŠNOSTI ZAPOSLENIH - primer Pekarne Pečjak d.o.o.

Termoelektrarna Šoštanj d. o. o.

RAZISKAVA SEVANJA MOBILNIH TELEFONOV

Patenti programske opreme priložnost ali nevarnost?

Evalvacijski model uvedbe nove storitve za mobilne operaterje

IZDELAVA DOKUMENTACIJE STROJA ZA GLOBOKO VRTANJE

hp officejet 4200 series all-in-one

NAVODILA ZA UPORABO H500 UVOD UREJANJE NALEPKE TISKANJE NALEPK UPORABA POMNILNIKA ZA DATOTEKE UPORABA PROGRAMSKE OPREME P-TOUCH

Uporaba odprte kode kot osnova za razvoj programske opreme

Opis in uporaba strežnika Microsoft Team Foundation Server v projektnem delu

MAKING MODERN LIVING POSSIBLE. Navodila za uporabo. VLT AutomationDrive FC 300

Optimizacija procesa izdelave nalepk

Implementacija igre Tetris v vezju FPGA

Ocenjevanje stroškov gradbenih del v zgodnjih fazah gradbenega projekta

Obvladovanje časa s pomočjo sodobne informacijske tehnologije

UNIVERZA V LJUBLJANI FAKULTETA ZA DRUŽBENE VEDE. Žiga Cmerešek. Agilne metodologije razvoja programske opreme s poudarkom na metodologiji Scrum

Eratostenovo rešeto. Aleksandar Jurišić in Matjaž Urlep. Doma (v točki ena) nam postane dolgčas in podamo se na sprehod po številski premici.

UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO ANALIZA PRENOSA PODATKOV PRI PREHAJANJU MED DOSTOPNIMI TOČKAMI V BREZŢIČNEM OMREŢJU

Fotoaparati. namesto.pfckkamer 10/13 VARNOSTNO KOPIRANJE ZA PC IN MAC POSLOVNI PROJEKTORJI ZABAVNA ELEKTRONIKA I RAČUNALNIŠTVO I NOVE TEHNOLOGIJE

UNIVERZA V LJUBLJANI EKONOMSKA FAKULTETA DIPLOMSKO DELO OBVLADOVANJE VIROV V MULTIPROJEKTNEM OKOLJU S PROGRAMSKIM ORODJEM MS PROJECT SERVER

TRŽENJE NA PODLAGI BAZE PODATKOV NA PRIMERU CISEFA

Equipping reach truck with hydraulic energy recovery system

LASERJET PROFESSIONAL M1130/M1210

MODUL ZA POPISOVANJE TEMPERATUR HLADILNIH SISTEMOV

Nestabilno delovanje hidroagregatov in preprečevanje prekomernega nihanja delovne moči agregata

Vodnik za uporabo matrike Učinek+

Bayesove metode razvrščanja nezaželene elektronske pošte

10,92 cm / 4,3 navigacijski sistem

5 namigov za izbiro pravega prenosnega tiskalnika. Kako dosežemo največji izkoristek in hiter povratek investicije v prenosno informatiko

Jamova cesta Ljubljana, Slovenija Jamova cesta 2 SI 1000 Ljubljana, Slovenia

Posebne informacije o varnosti in urejanju izdelkov za elektronapajalne postaje GE Digital Energy Smart

INTELEKTUALNA LASTNINA IN PRAVNA ZAŠČITA MOBILNE APLIKACIJE

Astronomski spektrograf

1. RAZDELITEV IN PRIMERJAVA TIPOV ELEKTRIČNIH MOTORJEV...

RFID NADZORNI SISTEM

UPORABA PREPROSTEGA EEG V AFEKTIVNI POVRATNI ZANKI DIPLOMSKO DELO UNIVERZITETNEGA ŠTUDIJA

SLOVENŠ INA. Vodi za hiter za etek. Poslovni telefon VoIP. snom 320_v2.indd 1 11/09/14 11:08

djangoproject.com skillsapp.com for invite)

Kombinirano napajanje enosmernega serijskega motorja s prigrajenim navitjem močnostnega pretvornika

Transcription:

Tomaž Avberšek NADZOROVANJE TELESKOPA S POMOČJO PLATFORME RASPBERRY PI Diplomsko delo Maribor, avgust 2014

NADZOROVANJE TELESKOPA S POMOČJO PLATFORME RASPBERRY PI Diplomsko delo Študent: Študijski program: Mentor: Lektorica: Tomaž Avberšek Univerzitetni študijski program računalništvo in informacijske tehnologije doc. dr. Boris Cigale mag. Suzana Jakoša, prof. slov.

ZAHVALA Iskreno se zahvaljujem mentorju doc. dr. Borisu Cigaletu za nasvete pri izdelavi diplomskega dela. Posebna zahvala je namenjena tudi mojemu očetu Ivanu Avberšku za pomoč pri načrtovanju in izdelavi potrebne konstrukcije na teleskop za namene diplomskega dela. Prav tako se zahvaljujem podjetju Lxnav, d. o. o., za finančno pomoč pri izdelavi tiskanega vezja. Hvala tudi vsem bližnjim, ki so me spodbujali pri delu, in staršem, da so mi omogočili študij na FERI-ju. i

NADZOROVANJE TELESKOPA S POMOČJO PLATFORME RASPBERRY PI Ključne besede: Raspberry Pi, teleskop, nadzor, motor, TB6593FNG UDK: 004.451.25(043.2) Povzetek V diplomskem delu je obravnavan Raspberry Pi kot krmilnik teleskopa. Zdajšnje rešitve v svetovnem spletu predstavljajo Raspberry Pi zgolj kot komunikacijski posrednik med motoriziranim teleskopom in končnim uporabnikom, v diplomskem delu pa je Raspberry Pi v vlogi krmilnika, ki na podlagi namenskega vezja krmili dva motorčka, ta pa usmerjata cev teleskopa. Prav tako na podlagi zajema slike krmilnik sam izračuna premik nebesnih objektov in po želji prilagaja položaj teleskopa. Namen je dokazati, da lahko tudi taka poceni napravica na podlagi namenskega vezja uspešno krmili nekoliko večje predmete in v zadostnem času izvede tudi zahtevnejše naloge. ii

TELESCOPE CONTROL WITH RASPBERRY PI Key words: Raspberry Pi, telescope, control, motor, TB6593FNG UDK: 004.451.25(043.2) Abstract This graduation thesis discusses Raspberry Pi computer as a telescope controller. The existing solutions that can be found on the Internet present Raspberry Pi only as a communications agent between the motorized telescope and the final user. The graduation thesis researches the use of the Raspberry Pi computer in the role of a controller that - based on the dedicated circuit - controls two motors that steer the telescope tube. Based on the captured picture, the controller independently calculates the movement of celestial objects and adapts the position of the telescope if so desired. The purpose is to demonstrate that even a cheap gadget like this, if combined with a dedicated circuit, can be used to successfully control somewhat larger objects and in sufficient time perform even more complex tasks. iii

KAZALO VSEBINE 1 UVOD... 1 2 PREDSTAVITEV KOMPONENT... 2 2.1 Raspberry Pi... 2 2.1.1 Specifikacije platforme Raspberry Pi... 3 2.1.2 Specifikacije kamere... 3 2.2 Toshiba TB6493 FNG... 4 2.3 Motorja... 6 2.4 Schottkyjeve diode... 7 2.5 Sky-Watcher Explorer-130... 9 3 DOZDAJŠNJE REŠITVE... 10 3.1 PiAstroHub... 10 4 SISTEM... 12 4.1 OpenCV... 13 4.2 WiringPi... 13 4.3 UV4L in V4L2... 15 4.4 JPEG... 16 4.5 Fazna korelacija... 16 5 IZVEDBA... 18 5.1 Montaža platforme Raspberry PI s prototipno ploščico... 18 5.2 Montaža motorčkov... 19 5.3 Montaža CSI-kamere... 22 6 APLIKACIJA... 24 6.1 Inicializacija rutin... 24 6.2 Delovanje... 25 6.3 Zagon aplikacije... 28 iv

6.4 Težave v aplikaciji... 29 7 REZULTATI... 31 7.1 Nastavitev kamere... 31 7.2 Sledenje objektom... 35 7.3 Ocena porabe električne energije... 36 8 SKLEP... 37 VIRI... 38 KAZALO SLIK Slika 2.1: Platforma Raspbery Pi... 3 Slika 2.2: Kamera Raspberry Pi NoIR... 4 Slika 2.3: Bločni diagram TB6593FNG... 5 Slika 2.4: M36N-2 brez vrtilne glave in senzorja hitrosti... 6 Slika 2.5: Motor Bosch AHC, že nameščen na teleskop... 7 Slika 2.6: Schottkyjeva dioda 1N5819... 8 Slika 2.7: Teleskop Skywatcher... 9 Slika 4.1: Fazna korelacija dveh slik... 17 Slika 5.1: Montaža Raspberry Pi in prototipne ploščice na teleskop... 19 Slika 5.2: Montaža motorčka na os DEC... 21 Slika 5.3: Prikaz montaže obeh motorčkov na teleskop... 22 Slika 5.4: Na sliki je vidna montaža CSI-kamere na okular teleskopa... 23 Slika 7.1: Slika polne lune (superlune), posnete pri 2 FPS in ISO 800... 32 Slika 7.2: Posnetek Neptuna pri ISO 700 (zelo slabo viden obroč okoli planeta) in 2 FPS 33 Slika 7.3: Povečana slika Neptuna, videnega na prejšnji sliki... 34 v

Slika 7.4: Slika Vege pri ISO 800 in 2 FPS... 35 KAZALO TABEL Tabela 7.1: Vidna magnituda pri nastavitvah ISO... 32 Tabela 7.2: Vidna magnituda pri nastavitvah FPS... 33 Tabela 7.3: Ocena porabljene energije... 36 vi

SEZNAM KRATIC IN SIMBOLOV ALSA Advanced Linux Sound Architecture ARM Advanced RISC Machine BSD Berkeley Software Distribution CCD Charge-Coupled Device CE Certified Europe CPU Central Processing Unit CSI Camera Serial Input DEC Declination DHCP Dynamic Host Configuration Protocol DSI Display Serial Interface DVB Digital Video Broadcasting FCC Federal Communications Commission FPS okvirji na sekundo FTDI Future Technology Devices International G++ GNU C++ Compiler GCC GNU Compiler Collection GNU GNU's not Unix GPIO General Purpose Input Output GPU Graphic Processing Unit GPUSB Guide Port Universal Serial Bus HDMI High-Definition Multimedia Interface I 2 C Inter-Intergrated Circuit IDE Integrated Development Environment INDI Instrument Neutral Distributed Interface vii

IP internetni protokol IR infrardeča svetloba JPEG Joint Photographic Experts Group LD MOS Laterally Diffused Metal Oxide Semiconductor LGPL Lesser General Public License Mac Macintosh OpenCV Open source Computer Vision OpenPHD Open Source Ph.D. PC Personal Computer PWM Pulse-Width Modulation RA Right Ascension RCA Radio Corporation of America RPi Raspberry Pi SD Secure Digital SPI Serial Peripheral Interface bus UART Universal Asynchronous Reciever/Transmitter USB Universal Serial Bus UV4L User space Video4Linux framework V4L2 Video4Linux XDRP An open source remote desktop protocol(rdp) server viii

1 UVOD Ljudje so že v prazgodovini opazovali nočno nebo. Hitro so ugotovili, da objekti na nebu potujejo po ustaljenih poteh, ki se spreminjajo glede na letni čas. Le redko se je zgodilo, da se je na nebu pojavil objekt, ki je zmotil to idilo. Tak dogodek so večinoma povezovali s prihodom nesreč, bolezni in vojn. Ravno zaradi tega se je razmeroma kmalu rodila astronomija, veda o opazovanju nebesnih teles. Revolucionaren je bil izum teleskopa, ki je astronomijo približal širšim množicam. Danes je amaterska astronomija kljub visokim cenam astronomskih pripomočkov zelo razširjena. Ravno zaradi omenjene visoke cene nas je zanimala ideja o cenovni in tehnološki smiselnosti izdelave celostnega sistema za krmiljenje teleskopa, ki bi moral omogočiti ukazno krmiljenje in sledenje objektom na nočnem nebu. Za ta namen smo uporabili mikrokrmilnik Raspberry Pi. V drugem poglavju je predstavljen mikrokrmilnik Raspberry Pi in na kratko tudi uporabljeni teleskop. Prav tako so predstavljene vse komponente, uporabljene za nadzor in krmiljenje teleskopa. V tretjem poglavju je opisanih nekaj dozdajšnjih rešitev za nadzor teleskopa na podlagi platforme Raspberry Pi. V naslednjem poglavju je predstavljeno vse potrebno za vzpostavitev sistema na Raspberry Pi, s katerim bomo nadzorovali teleskop. Opisani so tudi delovanje OpenCV (Open source Computer Vision), knjižnice wiringpi, ki omogoča lažje upravljanje z GPIO-izhodi (General Purpose Input Output), ter vse spremembe v operacijskem sistemu mikrokrmilnika. V petem poglavju je predstavljena izdelava celostnega sistema, od sledenja objektom do nadzora motorčkov. Prav tako je predstavljena tudi predelava teleskopa. Šesto poglavje vsebuje predstavitev aplikacije, vključno z vsemi težavami, na katere smo naleteli. Predzadnje poglavje je namenjeno predstavitvi zbranih rezultatov, do katerih smo prišli med izdelovanjem diplomskega dela, v zadnjem poglavju pa so sklepne ugotovitve. 1

2 PREDSTAVITEV KOMPONENT V tem poglavju predstavljamo komponente, uporabljene za izdelavo diplomskega dela, in sicer mikrokrmilnik Raspberry Pi s kamero, namensko vezje za nadzor motorčka, oba motorčka, namenjena krmiljenju teleskopa, ter teleskop, uporabljen za namene diplomskega dela. 2.1 Raspberry Pi Raspberry Pi [1] je računalnik v velikosti kreditne kartice. Razvili so ga v Veliki Britaniji za promocijo učenja osnov računalniške znanosti v šolah. Licenco za izdelavo te napravice ima več podjetij: Newark element14, RS Components ter Egoman. Vsa podjetja napravo prodajajo v spletu. Egoman izdeluje različico za kitajski in tajski trg, ki se od drugih razlikuje po rdeči barvi in odsotnosti oznak FCC/CE (Federal Communications Commission / Certified Europe). Sicer pa vsi proizvajalci uporabljajo enako strojno opremo. Raspberry Pi poganja odprtokodni operacijski sistem Linux, ki je prirejen zanj. Na voljo je več različic, ki se med sabo razlikujejo tako po grafičnem videzu kot tudi po funkcijah, ki jih omogoča. Med uspešnejšimi je različica Raspbian, ki je prirejena in rahlo okrnjena različica Debiana. Ta popularna napravica je na voljo na več spletnih mestih, cene pa se gibljejo od 35 dolarjev naprej, odvisno od dodatne opreme. Za namene diplomskega dela smo za 40 evrov kupili napravo britanskega proizvajalca. Prav tako smo uporabili namensko kamero za Raspberry Pi, ki se priključi s posebnim CSI-priklopom Camera Serial Input) poleg priključka za eternet (angl. ethernet). Kamera je bila brez IR-filtra (infrared), kar je omogočilo boljše zajemanje slik ponoči. 2

Slika 2.1: Platforma Raspberry Pi [1] 2.1.1 Specifikacije platforme Raspberry Pi Raspberry Pi vsebuje sistem Broadcom BCM2835 na vezju (SoC), ki vključuje procesor ARM1176JZF-S 700 MHz, grafični procesor (GPU) VideoCore IV in je prvotno imel 256 MB RAM-a, kar so pozneje nadgradili na 512 MB. V napravi ni trdega diska, temveč je SDkartica (Secure Digital) za operacijski sistem in trajno shranjevanje podatkov. Raspberry Pi ima več priključkov za periferne naprave. Tako omogoča tri načine za priklop zunanjega grafičnega prikazovalnika (zaslona): na podlagi HDMI-priklopa (High-Definition Multimedia Interface) ter z DSI- (Display Serial Interface) in RCA-priključkom (Radio Corporation of America). Za zvok je na voljo standardni 3,5-milimetrski izhodni priključek, vgrajeni pa so tudi priključek za eternet 10/100 in dva USB-priključka (Universal Serial Bus). Napaja se po MicroUSB-priključku, na voljo pa je tudi 26 GPIO-priključkov v predelu P1 in osem priključkov v predelu P5. 2.1.2 Specifikacije kamere V nalogi smo uporabili kamero za Raspberry Pi, ki se z mikrokrmilnikom poveže po vodilu CSI. To je zmožno visokih hitrosti prenosa podatkov in je namenjeno prenosu slikovnih 3

podatkov. Plošča, na kateri je kamera, je velikosti 25 x 20 x 9 mm in tehta malo več kot tri grame. Senzor ima resolucijo pet milijonov točk ter lečo s fiksnim fokusom. Kamera je zmožna zajeti sliko velikosti 2592 x 1944 slikovnih pik ter podpira video formate 1080p30, 720p60 in 640 x 480p60/90. Je brez filtra za infrardečo svetlobo (noir), kar omogoča boljšo uporabnost v pogojih z manj svetlobe. Tako nam je ponoči uspelo posneti boljšo sliko, kot bi jo s kamero s filtrom za infrardečo svetlobo. Kamera prav tako omogoča fotografijo narave na podlagi modrega filtra za hiperspektralno slikanje. Gonilniki za kamero so že dodani k novejšim različicam operacijskega sistema Raspbian. Slika 2.2: Kamera Raspberry Pi NoIR [18] 2.2 Toshiba TB6493 FNG Za diplomsko delo smo uporabili namensko vezje za nadzor motorja. TB6593 FNG je vezje za motor, ki deluje na enosmerni tok z izhodnim tranzistorjem v strukturi LD MOS (Laterally Diffused Metal Oxide Semiconductor). Dva vhodna signala IN1 ter IN2 lahko izbirata enega izmed štirih različnih načinov obnašanja vezja: vrtenje v smeri urnega kazalca, vrtenje v smeri, nasprotni od smeri urnega kazalca, kratko zavoro in zaustavitev. 4

Vezje je lahko izpostavljeno napetosti do 15 V in pri 1,2 A povprečnega izhodnega toka ter z maksimumom 3,2 A. Izhodni nizki upor ON premore 0,35 ohma upora. Vezje je bilo na voljo brez podnožja, zato smo ga izdelali dodatno. Vezje vsebuje več kontrolnih funkcij, ki jih nadzorujemo z napetostjo na štirih kontrolnih priključkih. Za delovanje morata biti priključka PWM (Pulse-Width Modulation) in STDBY (Standby) vedno pod napetostjo, s spreminjanjem napetosti na IN1 ter IN2 pa lahko nadzorujemo delovanje vezja. Če je napetost na obeh enaka logični ničli, je vezje v načinu STOP. Če je napetost na IN1 enaka logični enici, IN2 pa logični ničli, se motor vrti v smeri urnega kazalca. Ob obrnjenih vrednostih se tudi smer vrtenja spremeni. Če sta vrednosti na IN1 ter IN2 enaki logični enici, pa je motor v stanju kratke zaustavitve (angl. short brake). Slika 2.3: Bločni diagram TB6593FNG [5] 5

2.3 Motorja Motor, ki je namenjen za pogon osi RA (Right Ascension) teleskopa, je z oznako M36N-2. Vgrajen je bil v tiskalnik Lexmark T640. Brezkrtačni motorček lahko deluje na napetostnem območju med 12 in 27 V. Ob primerni napetosti doseže hitrost 3740 obratov na minuto. V prostem teku potrebuje motor za svoje delovanje 730 ma, zmore pa vrtenje v smeri urnega kazalca ter vrtenje v smeri, nasprotni od smeri urnega kazalca. Motor je z jermenom povezan z zobnikom, pritrjenim na polžasti reduktor osi RA teleskopa. Slika 2.4: M36N-2 brez vrtilne glave in senzorja hitrosti Za pogon osi DEC (Declination) smo uporabili močnejši motor, saj je os DEC brez polžastega reduktorja. Za ta namen smo uporabili motor z že vgrajenim reduktorjem. V tem primeru je bil najustreznejši motorček Bosch AHC 0 390 203 003 malo starejše izvedbe. Žal so zbrane informacije o motorju dokaj skope, saj so podatki na voljo le v svetovnem spletu, v katerem pa naše iskanje tega modela ni bilo uspešno. Prvotno je bil motorček namenjen premikanju avtomobilskih sedežev v avtomobilih znamke Mercedes Benz. Naše meritve so pokazale, da motorček pri delovanju brez obremenitve porabi približno 1,25 A električnega toka. Zaradi uporabe reduktorja je končna hitrost motorja približno štiri obrate na minuto v smeri urnega kazalca ali v nasprotni smeri. 6

Slika 2.5: Motor Bosch AHC, že nameščen na teleskop 2.4 Schottkyjeve diode Za zaščito platforme Raspberry Pi smo uporabili posebne vrste diod, imenovane Schottkyjeve diode, ki preprečujejo, da bi se smer električnega toka obrnila. Tako v primeru kratkega stika preprečimo, da bi se Raspberry Pi poškodoval, in lokaliziramo morebitne poškodbe na čim manjšo razsežnost. 7

Diode [23] so polprevodniški element, ki se uporablja v elektroniki. Namenjene so torej omejevanju električnega toka v danem sistemu. Z njimi je mogoče tako omejiti napetost v sistemu (npr. Zenerjeve diode) ali pa preprosto preprečiti, da bi se smer električnega toka zaradi nepredvidenih okoliščin obrnila (npr. Schottkyjeve diode). Schottkyjeva dioda [22] je polprevodniška dioda z nizkim padcem napetosti in zelo hitrim delovanjem. Sestavljena je iz kovinskega in polprevodniškega dela, ki tvorita Schottkyjevo zaporo (v kontrastnem stiku polprevodnik polprevodnik). Tipično se za kovinski del uporabljajo molibden, platina, krom ali razne silicijeve spojine, na primer platinov silicid. Polprevodnik je večinoma silikon n-tipa. Schottkyjeva zapora omogoča nizek padec napetosti in izjemno hitro delovanje. Dioda, uporabljena za namen diplomskega dela, je z oznako 1N5819, omogoča pa napetosti do 40 V in 1 A toka z vrhom pri 25 A. Slika 2.6: Schottkyjeva dioda 1N5819 [21] 8

2.5 Sky-Watcher Explorer-130 Uporabili smo teleskop nižjega cenovnega razreda znamke Sky-Watcher. Sky-Watcher Explorer 130 je newtonski reflektorski teleskop. V primerjavi z navadnimi teleskopi newtonski reflektor uporablja zrcala za zrcaljenje slike in se od njih že na prvi pogled razlikuje po položaju okularja. Teleskop je namenjen amaterskim opazovalcem neba in je z 900 mm goriščne razdalje primeren za opazovanje bližjih objektov na nebu, predvsem planetov našega osončja. V teleskop je že vgrajen polžasti reduktor s kovinskim zobnikom za os RA, za os DEC pa uporablja preprosti princip vijaka in vzmeti za premikanje teleskopa v levo ali desno. Zaradi tega je premik pri osi DEC pičlih 10. Slika 2.7: Teleskop Skywatcher [19] 9

3 DOZDAJŠNJE REŠITVE Skupnost Raspberry Pi spada med hitro rastoče skupnosti navdušencev in profesionalnih razvijalcev programske opreme. Zato ne preseneča tudi dejstvo, da je že nekaj podobnih rešitev za nadzor teleskopa na podlagi platforme Raspberry Pi. Za vsako izvedbo je značilnih nekaj prednosti in tudi slabosti, ki jih v nadaljevanju na kratko predstavljamo. Opisan je le najodmevnejši primerek, ki pa seveda ni edini. Izbrali smo ga, ker je med uporabniki in navdušenci platforme najbolj priljubljen in najbolje dokumentiran. Vsem bolj ali manj dokumentiranim različicam je skupno, da je platforma Raspberry Pi uporabljena zgolj kot vmesni člen med opremo GoTo, ki večinoma vključuje motorček osi RA, ki se vrti dovolj počasi, da posnema vrtenje Zemlje, ter prenosnikom oz. napravo, ki uporabniku omogoča prijaznejšo komunikacijo. Raspberry Pi v nobeni izvedbi ni uporabljen samostojno za nadzor, sledenje ter komunikacijo in ravno zato je ta projekt nekaj posebnega tudi med že izvedenimi. 3.1 PiAstroHub Rešitev PiAstroHub [12] uporablja platformo Raspberry Pi zgolj kot vmesno povezavo med motoriziranim teleskopom in mobilno napravo (Android/iOS). Rešitev torej ne predvideva uporabe platforme Raspberry Pi za nadzor motorjev za premik teleskopa, temveč za komunikacijo med nadzornimi napravami in uporabniku prijaznejšimi mobilnimi napravami. Za nadzor (angl. autoguider) se uporabljajo programi, kot so OpenPHD (Open Source Ph.D.), INDI (Instrument Neutral Distributed Interface) in Lin-guider. OpenPHD [13] je programska oprema podjetja Stark Labs za nadzor teleskopa v PC-ju (Personal Computer) ali napravi Mac (Macintosh). Koncept omogoča preprosto uporabo, saj sam poišče izbrano nebesno telo. 10

INDI [14] je platformno neodvisna programska oprema, zasnovana za avtomatizacijo in nadzor astronomskih instrumentov. Podpira široko paleto teleskopov, CCD-jev (Charge- Coupled Device), fokuserjev in filtrnih koles ter podpira praktično vse naprave. INDI je kompakten, fleksibilen in skaliren. Na voljo je v več platformah. Lin-guider je v predstavljenem projektu uporabljena programska oprema za nadzor teleskopa. Izmed vseh predstavljenih se je odrezal še najbolje, prav tako pa ob nizki zasedenosti procesorja daje odlične rezultate. Je program samodejnega sledenja (angl. autoguiding) za platformo Linux, podpira pa Philipsove in Logitechove kamere, spletne kamere uvc, astrokamere QHY5, QHY6, DSI2PRO, QHY5L-II-M, QHY5L-II-C, QHY5-II za zajem videa ter FTDI (Future Technology Devices International) na osnovi vezja, na osnovi paralelnega priključka (LPT), na osnovi GPIO, naprave GPUSB (Guide Port USB), na osnovi protokola Nexstar ter astrokamere za pulzni nadzor QHY5, QHY6, QHY5L-II-M, QHY5L-II-C in QHY5-II. Za nadzor teleskopa GoTo [16] je treba Raspberry Pi prepričati, da deluje kot SkyFi [17], ki preusmerja komunikacije TCP na serijska vrata. Ob ustrezni konfiguraciji lahko uporabimo SkySafari [20], v katerem nastavimo ustrezna vrata in se tako povežemo s platformo Raspberry Pi. Raspberry Pi še s pretvornikom PL2303, ki pretvori USB-priključek v serijskega, povežemo z napravo za nadzor teleskopa. Ob vseh uspešno izvedenih korakih lahko tako na podlagi platforme Raspberry Pi in mobilne naprave dokaj preprosto nadzorujemo premikanje teleskopa. 11

4 SISTEM Za namene diplomskega dela smo uporabili mikrokrmilnik Raspberry Pi z odprtokodnim operacijskim sistemom Raspbian»wheezy«. Raspbian je različica operacijskega sistema Linux, distribucije Debian, le da je prirejena za uporabo v platformi Raspberry Pi. Ta distribucija vsebuje že večino potrebnih knjižnic ter vse gonilnike za mikrokrmilnik in zunanje naprave. V Raspberry Pi je za povezovanje s svetovnim spletom na voljo le priključek za eternet, modula za brezžični internet pa ni. To pomanjkljivost smo kaj hitro odpravili z USBključkom za dostop do brezžičnega interneta. Pozneje se je ta rešitev izkazala za nepotrebno, saj se je način dostopa do Raspberry Pi spremenil. Prav tako smo priklopili še namensko kamero brez filtra za IR-svetlobo in razdelilnik za GPIO-izhode (T-Cobbler). Pri odkrivanju sistema smo ugotovili, da ta vsebuje preprost, a lep grafični vmesnik in nekaj uporabnih programov. V operacijski sistem so bila že prednaložena integrirana razvojna okolja (IDE), vendar le za jezik Python. V operacijski sistem je bil prav tako že prednaložen program za urejanje datotek, podoben programu Beležnica v okolju Windows, imenovan Leafpad. A ravno tako kot Beležnica tudi Leafpad ni omogočal naprednega urejanja besedila, programska koda pa je kmalu postala slabo berljiva. Zato smo dodatno namestili program Gedit, ki nam je znan že od prej. Za dostop do sistema smo sprva uporabljali program TightVNC, saj je bil preprost in intuitiven za uporabo. Pozneje smo uporabili kar vgrajeni program sistema Windows za dostop do oddaljenega namizja, v platformi Raspberry Pi pa smo namestili strežniški program xdrp, saj je ta omogočal tudi zadovoljivo delovanje pri prenosu slike. Za opazovanje ni bilo na voljo internetne povezave za oddaljeni dostop, zato smo Raspberry Pi in računalnik povezali kar po kablu za eternet. V računalnik smo namestili še strežniško aplikacijo DHCP (Dynamic Host Configuration Protocol), ki mikrokrmilniku Raspberry Pi dodeli IP-naslov (Internet Protocol), na podlagi katerega je omogočen dostop do naprave. 12

4.1 OpenCV OpenCV [3] je zbirka knjižnic programskih funkcij za realnočasovni računalniški vid. Glavni razvijalec je bil ruski razvojni center korporacije Intel v Nižnem Novgorodu. Uporaba knjižnic OpenCV je brezplačna pod odprtokodno licenco BSD (Berkeley Software Distribution). Knjižnice so neodvisne glede na platformo in so predvsem namenjene realnočasovni obdelavi slik. Če knjižnica v sistemu najde Intelove metode za optimizacijo hitrosti (angl. Intel Integrated Performance Primitives), jih uporabi za lastno optimizacijo in doseganje hitrejšega delovanja. OpenCV je zaradi naprednih implementiranih algoritmov, ki večinoma omogočajo hitrejšo obdelavo kot primerljiva konkurenčna orodja, postal temelj za večino programov oziroma sistemov, ki delujejo na podlagi obdelave slik. Prav tako je bila za uporabo OpenCV osnovana priljubljena ovojnica (angl. wrapper) EmguCV, ki omogoča implementacijo enakih procedur v programskih jezikih.net, kot je na primer C#. 4.2 WiringPi WiringPi [4] je knjižnica za priključke GPIO, napisana v jeziku C. Namenjena je za procesorje BCM2835, uporabljene v platformi Raspberry Pi. Izdana je pod licenco GNU (GNU's Not Unix) LGPLv3 (Lesser General Public Licencse) ter je združljiva s programskima jezikoma C in C++. Na podlagi tako imenovanih ovojnic lahko knjižnico uporabljamo tudi z drugimi jeziki. Zasnovana je podobno kot Arduinov sistem za dostop do GPIO-priključkov. V mikrokrmilniku Raspberry Pi je 26 priključkov, namenjenih splošnim vhodno-izhodnim operacijam. Med temi jih je osem tudi digitalnih, kar omogoča, da jih programsko nastavimo kot vhod ali izhod. Izmed teh osmih lahko enega celo uporabimo za izhod pulzne modulacije (PWM). Dodatno sta na voljo še dvožični vmesnik I2C ter štirižični vmesnik SPI z dvema 13

linijama za izbiro ter serijski UART (Universal Asynchronous Receiver/Transmitter) s še dodatnima dvema priključkoma. Vmesnike za I 2 C (Inter-Integrated Circuit), SPI (Serial Peripheral Interface) in UART lahko imamo za navadne priključke, kadar ti niso v uporabi. Takrat se število dostopnih priključkov poveča na 17. V novejši različici platforme Raspberry Pi se tem 17 dodajo še štirje v predelu P5. WiringPi vključuje konzolni program GPIO, ki ga lahko uporabimo za nastavljanje GPIO- priključkov. V konzolnem programu lahko preberemo stanje priključkov, ga spreminjamo ali pa jih celo nadziramo na podlagi skripte ukazne lupine. V knjižnici je precej možnosti razširitve, s številnimi dodanimi moduli, ki knjižnici omogočajo tudi uporabo analognih naprav v platformi Gertboard in uporabo priljubljenega razširitvenega vezja MCP23x17/MCP23x08 GPIO. Ena izmed razširitev omogoča tudi uporabo vezja ATmega kot razširitev GPIO na podlagi serijskega vmesnika platforme Raspberry Pi. WiringPi prav tako omogoča preprosto dodajanje lastnih razširitvenih modulov za integracijo perifernih naprav s knjižnico. Knjižnica prav tako že omogoča preprosto upravljanje z nekaterimi priljubljenimi periferijami, med katerimi so LCD-prikazovalniki (Liquid Cristal Display), grafični prikazovalniki, časovno vezje DS1302 RTC in številne druge naprave. WiringPi za krmiljenje motorjev omogoča dva ukaza, ki smo ju uporabili. Prvi je pulzna modulacija, pri kateri nastavljamo hitrost motorja na podlagi pulzov. Žal je uporabnost omejena, saj teža teleskopa motorjem preprečuje delovanje pod 70 odstotki največje moči. Drugi izmed uporabljenih ukazov je delay(ms). Ta sprejme število milisekund, za kako dolgo naj se izvajanje programa ustavi. Pri tem je lahko zaradi večopravilnosti dejanska 14

ustavitev daljša od podane. Ukaz je pomemben zaradi premika motor je treba vklopiti, ga premakniti za določeno vrednost in znova izklopiti. Pri tem je pomembna funkcija delay, saj določa, kako dolgo mora motor delovati. 4.3 UV4L in V4L2 UV4L [8] je ogrodje za uporabo priljubljenega gonilnika in aplikacijskega programskega vmesnika (API) V4L2. Omogoča, da je lahko gonilnik naprave v uporabniškem prostoru, čeprav je drugače del jedra. Jedrni demon UV4L naloži gonilnik, podan kot vhodni argument, in izdela mapo naprave znotraj direktorija /dev. Z vidika aplikacije ni vidne razlike med gonilnikom jedra in gonilnikom ogrodja UV4L. Omenjeno ogrodje prav tako podpira upravljanje z več napravami hkrati, vendar za vsako napravo ustvari svoj proces. V4L2 [7] oz. Video4Linux2 je aplikacijski programski vmesnik za zajem slike in gonilnik za Linuxovo jedro, ki podpira številne USB-videokamere, TV-kartice in druge naprave. Ime je dobil po Video for Windows, kar je včasih okrajšano v V4W, vendar mu tehnično ni soroden. V4L2 je napisan v jeziku C in je bil izdan po licenci GNU, torej je njegova uporaba brezplačna. Gonilniki V4L2 [9] so dokaj kompleksni zaradi strojne opreme: v večini naprav je več ICjev, treba je izvoziti več perifernih vozlišč v direktorij /dev ter izdelati naprave, ki niso združljive z V4L2, kot so DVB (Digital Video Broadcasting), ALSA (Advanced Linux Sound Architecture) in vhodne (IR) naprave. UV4L je bilo treba uporabiti zaradi zahtev aplikacije OpenCV predvideva uporabo USBkamere, ki pa je mi nismo uporabili. Namesto tega UV4L CSI-kamero predstavi kot USBkamero, kar omogoča nemoteno uporabo OpenCV. 15

4.4 JPEG Standard JPEG [10] je v računalništvu pogosto uporabljena metoda za izgubno stiskanje slik, predvsem za slike, izdelane z digitalno fotografijo. Najpogosteje se za slike, stisnjene po tej metodi, uporablja končnica.jpg. Stopnja stiskanja je nastavljiva, kar omogoča poljubni izbor manjše velikosti ali boljše kakovosti. JPEG tipično dosega razmerja stiskanja okoli 10 : 1 z minimalno izgubo kakovosti slike. Stiskanje JPEG je uporabljeno v marsikaterem formatu slikovnih datotek. JPEG/Exif je najpogosteje uporabljen format digitalnih kamer in drugih fotografskih naprav za zajem slik. Poleg JPEG/JFIF je to najpogostejši format za shranjevanje in pošiljanje slik po svetovnem spletu. Za oba formata večinoma uporabljamo kar kratico JPEG in ju medsebojno ne ločujemo. JPEG/JFIF podpira maksimalno velikost slike 65.535 x 65.535 slikovnih pik. V diplomskem delu je metoda JPEG uporabljena pri stiskanju slik, zajetih s kamero. Slike so s končnico.jpg. 4.5 Fazna korelacija V slikovnem procesiranju je fazna korelacija [11] metoda registracije slike, ki uporablja hitri pristop v frekvenčnem prostoru za ocenitev relativne translacije med dvema podobnima slikama. Rezultat fazne korelacije je translacija v horizontalni in vertikalni smeri. Za algoritem fazne korelacije je treba nad sliko izvesti okensko operacijo (npr. Hammingovo okno), ki zmanjša učinek robov na sliki. Nato se izračuna dvodimenzionalna diskretna Fourierjeva transformacija obeh slik, s katero preslikamo sliko v frekvenčni prostor. Tam izračunamo križni spekter moči obeh transformiranih slik. Enačba izračuna se glasi: 16

(4.1) Pri tem je Ga frekvenčno transformirana matrika prve slike, Gb' pa je konjugirana frekvenčno transformirana matrika druge slike. Rezultat še normaliziramo. Pomembno pri izračunu je, da se vedno uporabijo istoležni elementi v matrikah Ga in Gb. Za končni produkt uporabimo inverzno Fourierjevo transformacijo nad matriko R. Naslednja slika grafično prikazuje rezultat fazne korelacije. Skrajna leva in sredinska slika sta enaki, razlikujeta se le v translaciji v horizontalni in vertikalni smeri. Skrajno desna slika grafično prikazuje, kolikšna je translacija. Ob podrobnem pogledu ugotovimo, da slika ni popolnoma črna z belo piko, temveč je na njej več manj vidnih svetlejših pik. Fazno korelacijo predstavlja pika z najvišjo amplitudo. Odmik najsvetlejše pike od zgornjega levega kota (izhodišče) je direktna vrednost translacije po oseh x in y. Slika 4.1: Fazna korelacija dveh slik [11] 17

5 IZVEDBA Pri izvedbi projekta smo se oprli na vse predstavljene koncepte in materiale. Za motorčka smo uporabili že izvedeno konstrukcijo oziroma smo jo, kolikor je bilo treba, spremenili ali kaj dodali. Zaradi prenosnosti konstrukcije smo tudi poskrbeli, da je platforma Raspberry Pi skupaj s prototipno ploščico varno pritrjena na teleskop. Morda še največja ovira pri konstrukciji je vir napajanja, saj ni bilo na voljo prenosnega oziroma bi bil nakup takega vira finančno kar precejšen zalogaj. V primeru nakupa pa bi bilo treba za uporabo prenosnega vira napajanja izvesti minimalne spremembe, ki se odražajo le v prestavitvi napajalnih žic iz obstoječega vira napajanja v mobilni vir napajanja. 5.1 Montaža platforme Raspberry PI s prototipno ploščico Za doseganje čim večje mobilnosti smo tudi platformo Raspberry PI namestili neposredno na teleskop. Za ta namen smo uporabili že nameščeni vijak na vrhu sprednjega cevnega zaklepa teleskopa. Na zadnjem cevnem zaklepu je že bila izdelana luknja, zato smo lahko držalo, ki podpira platformo Raspberry PI in prototipno ploščico z namenskim vezjem za nadzor motorčkov, pritrdili z vijakom tudi tam. Za premostitev kratkega CSI-kabla kamere smo platformo Raspberry PI podložili s 3,5 cm debelim smrekovim lesom. Nanj smo z lepilnim trakom pritrdili Raspberry PI. Pri načrtovanju izvedbe povezav med Raspberry PI in vezjem Toshiba TB6593FNG smo kot najbolj smiselen vmesni člen uporabili prototipno ploščico. Za povezavo GPIOpriključkov z Raspberry PI ter s prototipno ploščico obstajajo namenski povezovalniki, imenovani elementi cobbler. Zaradi cenovne ugodnosti smo uporabili standardni razdelilnik za GPIO-izhode, pri katerem so na elementu, pritrjenem na prototipno ploščico, tudi oznake posameznih priključkov platforme. 18

Slika 5.1: Montaža Raspberry Pi in prototipne ploščice na teleskop 5.2 Montaža motorčkov Pri montaži motorčkov smo naleteli na nekatere ovire. Teleskop se lahko orientira na podlagi dveh osi (RA in DEC), ob pravilni postavitvi pa samo ena omogoča premikanje teleskopa po tirnici, po kateri se premika objekt na nebu. Za sledenje objektom potrebujemo le os RA, os DEC pa je namenjena spreminjanju opazovanega objekta. 19

Za montažo glavnega motorčka smo uporabili polžji reduktor na osi RA, kjer smo le dodali plastičen zobnik in prenos z zobato jermenico, za pogon pa smo uporabili motorček, prej uporabljen v tiskalniku za podajanje papirja. Zaradi polžjega reduktorja je premikanje po osi RA razmeroma preprosto opravilo, utež na teleskopu pa omogoča, da je potrebna minimalna moč motorja, če je teleskop pravilno uravnotežen. Prav tako omenjeni reduktor zagotavlja stabilnost teleskopske cevi v vseh položajih in preprečuje, da bi se slednja prosto premikala. Zaradi tega je tudi potreba po mehanski ali električni zavori učinkovito odpravljena. Več težav nam je povzročila os DEC. Ta je praviloma namenjena nastavljanju deklinacije in se ne uporablja za sledenje objektom na nočnem nebu. Naš namen je bil sprva izdelava teleskopa, ki bi deloval neodvisno od postavitve, vendar smo to zamisel kmalu opustili. Namesto tega smo se oprli na to, kar je montaža omogočala, in smo raje motorizirali os DEC za avtomatizacijo postopka, ki bi sicer moral potekati ročno. Vendar os DEC ne dovoljuje pretiranega obračanja levo in desno. Zaradi njene namembnosti je na voljo manj kot 10 premika, kar je bilo za naše potrebe premalo. Zato smo se odločili za drugačen pristop. Za premikanje po osi DEC smo za motorček izbrali popolnoma novo mesto. Na palico, ki drži utež, smo pritrdili zobnik, tega pa smo povezali z motorčkom z improviziranim držalom. To v teoriji omogoča 360-stopinjski zasuk teleskopa z motorčkom, v praksi pa tak zasuk preprečujejo žice. Zaradi edinstvenega položaja motorčka smo morali razmišljati drugače in uporabiti pristop, ki bo omogočal teleskop obdržati na mestu, da se ne bo prosto vrtel v skrajnih legah. Poleg tega je na tem položaju motorček potreboval precej več moči, kot je je potreboval na osi RA. Smiselna posledica je bila uporaba močnejšega motorja z zavoro ali s polžjim reduktorjem. Za ta namen smo uporabili motorček Bosch AHC. Motorček v prostem teku porabi 1,25 A, kar je nekoliko nad specifikacijami namenskega vezja, vendar motorček kontroliramo s pulzno modulacijo, zato se vsak pulz lahko obravnava kot lokalni maksimum. S tem pa ne presežemo 3,2 A, kolikor vezje lahko prenese. Edinstveni pristop nam je otežil izvedbo dela, predvsem pri montaži na teleskop, vendar pa je omogočil lažje upravljanje teleskopa in lažje sledenje objektom na nočnem nebu. 20

Slika 5.2: Montaža motorčka na os DEC 21

Slika 5.3: Prikaz montaže obeh motorčkov na teleskop 5.3 Montaža CSI-kamere Za zajem slike iz teleskopa smo uporabili namensko kamero Raspberry PI, ki se s platformo poveže na podlagi CSI-priklopa. Kamera je brez IR-filtra, kar olajša nočno opazovanje. Zaradi velikega števila navdušencev in razvijalcev je tudi za kamero na voljo več različnih 3D-modelov, ki omogočajo lažjo in hitrejšo namestitev na različne predmete. Tudi za teleskop so na voljo nastavki, vendar so testiranja pokazala, da je njihova namembnost drugačna oziroma je teleskop neskladen. Nastavki so namenjeni refraktorskim teleskopom, mi pa smo imeli opravka z reflektorskim. Zaradi tega smo se odločili nastavek prirediti tako, da smo skrajšali razdaljo med kamero in lečo, posledica pa je bila boljša oziroma večja slika. Da bi dosegli kar najboljši učinek, smo na kamero namestili še dodatno lečo, ki smo jo odstranili iz vratnega kukala. V nekaterih spletnih forumih sicer priporočajo odstranitev leče v kameri, vendar smo z dodatno lečo, ki ustvari tako imenovani učinek ribjega očesa, iz teleskopa lahko dobili zadovoljivo sliko. Zaradi uporabe dodatne leče ob robu vidnega polja sicer prihaja do popačenja, ki pa ga lahko zaradi druge uporabljene opreme zanemarimo. Tudi brez uporabe opreme za zajem slike smo se namreč lahko prepričali, da je skozi teleskop naenkrat viden zgolj en nebesni objekt hkrati, ki pa mora biti blizu sredine okularja, 22

drugače je še ta slabo viden. Izjema so predvsem planeti s svojimi sateliti, pri čemer pa spet ni bilo večjih težav, saj je rotacija Zemlje hitrejša od premikanja teh satelitov. Slika 5.4: Na sliki je vidna montaža CSI-kamere na okular teleskopa 23

6 APLIKACIJA Cilj končne aplikacije, uporabljene v platformi Raspberry PI, je bila hitrostno optimizirana aplikacija za spremljanje nočnega neba. Pri tem smo bili pozorni, da smo uporabili zunanje knjižnice, ki so nam poenostavile delo, hkrati pa niso bistveno upočasnile delovanja programa. Knjižnice, uporabljene v programu, smo že predstavili, v nadaljevanju pa predstavljamo še njihovo uporabo in sintakso pri uporabi. 6.1 Inicializacija rutin Inicializacija knjižnic in spremenljivk je vedno na začetku programa. Pri tem smo opazili bistveno razliko med knjižnico WiringPi in knjižnicami OpenCV. Inicializacija knjižnice WiringPi je eksplicitna. Zanjo moramo na začetek programa postaviti klic metode wiringpisetup(). Ta klic omogoča uporabo knjižnice in metode, definirane v tej knjižnici. Za nas sta bili najpomembnejši metodi pinmode(številka pina, stanje) in pwmwrite(1, hitrost). Pri ukazu pinmode smo poljubnemu GPIO-priključku, ki je namenjen splošni uporabi, nastavili stanje HIGH oz. LOW. Za nastavljanje stanja smo sledili navodilom vezja TB6593FNG. Ta namreč določajo, kateri vhodi morajo imeti logično enico in kateri logično ničlo za delovanje, premor ali ustavitev. Ukaz pwmwrite pa je namenjen samo priključku s številko 1, saj ta podpira pulzno modulacijo. Vsi ukazi zapišejo stanje v registre, tako da se to ohrani še po prenehanju programa, če ga ne ponastavimo. Inicializacija knjižnic OpenCV pa poteka implicitno. Brez predhodnega klica metode, ki bi knjižnico oz. knjižnice inicializirala, lahko uporabljamo metode, ki so definirane tam. Knjižnice OpenCV omogočajo več kot le metode, ki obdelujejo slike oz. slikovni material. Na voljo so namreč tudi primerne strukture. Za različne pretvorbe so priročne strukture Mat, ki so pravzaprav matrične strukture poljubnih velikosti. Zaradi potrebe po teh pretvorbah smo tudi mi uporabili strukturo Mat. Za zajem videa pa smo uporabili strukturo 24

VideoCapture, pri kateri smo podali argument 0. Argument 0 pove, da program samodejno izbere kamero, ki je nastavljena kot primarna kamera sistema. Tukaj pride do težav zaradi kamere, ki ne uporablja standarda USB, OpenCV pa pričakuje USB-kamero. To težavo smo preprosto odpravili, kar je predstavljeno v nadaljevanju. Za pravilno delovanje programa smo potrebovali še nekaj spremenljivk, ki so poenostavile delo oziroma so shranile predhodno stanje, kar je onemogočalo nepravilno delovanje programa. 6.2 Delovanje Delovanje programa je predstavljeno v obliki psevdokode. Do zajemiokvir(); if(okvir = prazen) do preskoči iteracijo; else if(število okvirjev > 1) pretvori v sivo(izvor, cilj); else cilj := izvor; endif if(prejšnji okvir = prazen) do prejšnji okvir := trenutni okvir; pretvori natančnost(prejšnji okvir, float); ustvari Hanningovo okno; endif 25

if(vključeno sledenje) do pretvori natančnost v float; premik: = fazna korelacija(prejšnji okvir, trenutni okvir, hanningovo okno); premik motorjev := sqrt(premik.x 2 + premik.y 2 ); if(x < 0) do premik motorjev := premik motorjev * (-1); endif vklopi motor(-total, številke pinov); spremljaj premik := spremljaj premik total; endif prikazi sliko(»zajem slike«, okvir); dobi tipko(); if(tipka = 27) do delovanje := false; printf(»poravnam teleskop?«); dobi tipko(); if(poravnaj telesko = true); vklopi motor(spremljaj premik, številke pinov); endif else if(tipka = 110) do ponastavi vrednosti premikov(); else if(tipka = 112) do zajemi sliko(); else if(tipke = 102) do vključeno sledenje := (not)vključeno sledenje; 26

prejšnji okvir := trenutni okvir; else if(tipke = 97) do premakni RA v levo(); else if(tipke = 100) do premakni RA v desno(); else if(tipke = 119) do premakni DEC v levo(); else if(tipke = 115) do premakni DEC v desno(); endif while(delovanje = true); Pri upravljanju motorčkov je treba omeniti še, da imamo opravka z dvema različnima motorjema. Hitrost premikanja motorja na osi DEC je pogojena s tem, ali se uporablja za sledenje objektom (počasneje) ali pa uporabnik premika teleskop (hitreje). Za premik motorjev uporabljamo funkcijo, ki spremeni stanje na podanih GPIO-priključkih na Raspberry Pi. Psevdokoda funkcije je naslednja: void premakni motorje(trajanje, pin1, pin2) if(trajanje > 0) then digitalwrite(pin2, LOW); else digitalwrite(pin1, LOW); trajanje := trajanje * (-1); endif 27

delay(trajanje) digitalwrite(pin1, HIGH); digitalwrite(pin2, HIGH); end Funkcija priročno uporablja načine delovanja vezja TB6593FNG, pri čemer s spreminjanjem vrednosti dveh priključkov nadzorujemo delovanje motorja. 6.3 Zagon aplikacije Zaradi uporabe knjižnic OpenCV in zaradi knjižnice WiringPi je zagon programa nekoliko poseben. Prva opazna posebnost je potreba po alternativnem gonilniku za zajem slike pri tem pride v poštev UV4L. Na začetku moramo ustaviti obstoječo instanco gonilnika in naložiti novo. To dosežemo z ukazom sudo pkill uv4l. Za uporabo nove instance gonilnika moramo podati ustrezne argumente. Ukaz za novo instanco je uv4l driver raspicam auto_video_nr encoding jpeg nopreview framerate 2 width 102 height 768 iso 800 exposure night quality 100. Argumenti, ki so našteti, so naslednji: - driver pove, da je gonilnik namenjen namenski kameri za Raspberry Pi; - auto_video_nr pove gonilniku, naj samodejno poskrbi za zamenjavo okvirjev; - encoding pove format zapisa slike; - nopreview odstrani predogled slike; - framerate pove število okvirjev na sekundo; - width pove širino zajete slike v slikovnih pikah; - height pa pove višino zajete slike v slikovnih pikah; - iso nastavi ISO-nastavitve kamere; 28

- exposure lahko ustrezno nastavi kamero za različne načine delovanja, kot so noč, zahod, hitri premiki in podobno; - quality se uporablja za nastavitev kakovosti zajete slike. Za lažjo uporabo gonilnika lahko sistemu sporočimo, da je privzeti gonilnik uv4l. To dosežemo z ukazom export LD_PRELOAD=/usr/lib/uv4l/uv4lext/armv6l/libuv4lext.so. Tako se izognemo klicu gonilnika pri vsakem zagonu programa. To pa povzroči dodatne težave, saj UV4L nima zadostne prioritete za realnočasovno izvajanje. To popravimo z ukazom sudo chrt a r p 99 `pgrep uv4l`, s katerim spremenimo prioriteto gonilnika na najvišjo. Tako smo izvedli vse korake, nujne za nemoten zagon aplikacije. Naslednja posebnost aplikacije je zagon. Zaradi uporabe knjižnice WiringPi, ki spreminja vrednosti registrov, je treba aplikacijo zagnati z administratorskimi (t. i. superuporabnik) pravicami. Zagon je torej videti kot klic programa z ukazom za administratorski dostop oz. sudo./program. Posebnost pri uporabi je tudi postavitev teleskopa zaradi ekvatorialne montaže je treba teleskop usmeriti proti zvezdi Severnici, ki skoraj sovpada z Zemljino osjo, kar omogoča preprosto sledenje na podlagi rotacije motorčka na deklinacijski osi. Iskanje zvezde Severnice je lahko nekoliko zahtevnejše opravilo, zato smo uporabili aplikacijo Google Sky [25]. Po tem koraku smo morali teleskop na podlagi motorjev primerno obrniti in nato začeli opazovanje. 6.4 Težave v aplikaciji Aplikacija se je soočala z nekaterimi težavami, ki smo jih rešili, nekatere pa ostajajo nerešene. Problem združljivosti knjižnic OpenCV in kamere smo rešili z dodatnim, nestandardnim gonilnikom za kamero. Toda težave se tukaj niso končale. 29

Glavni problem aplikacije je hitrost izvajanja. V sodobnih računalnikih se tudi zahtevnejši algoritmi izvedejo razmeroma hitro, struktura procesorjev in višjih programskih jezikov pa omogoča tudi sočasno izvajanje na podlagi nitenja. Toda preprosta naprava z razmeroma slabim procesorjem česa takega ne zmore. Tudi ob vsej optimizaciji so še vedno težave pri premikanju motorčkov dokler se motorček ne premakne v končni položaj, aplikacija čaka na mestu. To se zgodi zaradi prej omenjene funkcije delay(ms), ki onemogoča delovanje programa, dokler motorji ne pridejo v končni položaj. Ravno zaradi tega delovanje aplikacije ni tako nemoteno, kot bi si želeli. Težavo smo poskušali rešiti z nitenjem, vendar Raspberry Pi ne zmore tolikšnega procesorskega napora oziroma še vedno prihaja do napak zaradi vplivov operacijskega sistema. Alternativa bi bila uporaba dodatnega mikrokrmilnika za časovni nadzor motorčkov. Pri vnosu uporabniškega ukaza je treba počakati tudi sekundo ali dve na izvršitev ukaza. Težava nastane predvsem zaradi počasnosti delovanja programa pri izrisu prikazovalnega okna. Omilili smo jo z zmerno spremembo frekvence centralne procesorske enote to smo s tovarniško določenih 700 MHz spremenili na 800 MHz. Za popolno odpravo te pomanjkljivosti pa bi najverjetneje potrebovali močnejšo napravo, ki bi podpirala nemoteno vzporedno izvajanje dveh niti ali programov. Težave so se pojavljale tudi pri uporabi motorjev. Motor je zasnovan tako, da ima določen minimalni premik če to ni doseženo, se glava motorja niti obrne ne. To je povzročalo manj težav pri sledenju, kajti manjši motorček omogoča tudi manjše vrtenje, poleg tega pa so bili premiki teles po nočnem nebu dokaj hitri, so pa nastale težave pri iskanju objektov, saj motorček včasih ni dopuščal ustavitve v optimalnem položaju, zaradi česar smo nemalokrat morali počakati minuto ali dve, da je objekt prišel v vidni kot kamere. 30

7 REZULTATI Rezultati, pridobljeni pri projektu, so večinoma v skladu s pričakovanimi. Tako smo ugotovili primeren prag ISO za opazovanje nebesnih objektov, hitrost okvirjev na sekundo (angl. framerate) ter na splošno ocenili primernost in smotrnost izvedbe sledenja objektom, kakršno smo izvedli mi. Prav tako smo poskušali najti primerno najmanjšo magnitudo za opazovanje zvezd. 7.1 Nastavitev kamere Pri nastavitvi kamere sta ključno vlogo odigrala nastavitev ISO in število okvirjev na sekundo. Prvotno testiranje s privzeto nastavitvijo ISO, ki je znašala 200, ter s 25 okvirji na sekundo je bilo neuspešno za vse objekte razen za Luno. Luna ima navidezno magnitudo [24] 12,6 ob polni luni, zato je neprimerna za dobro oceno. Nadaljnje testiranje je pokazalo, da k vidnosti objektov precej prispeva število okvirjev na sekundo. Tudi ob najboljših nastavitvah ISO se na nebu Mars ni videl, čeprav je peti najsvetlejši objekt, vključno z Luno in s Soncem. Zato smo preizkušali število okvirjev na sekundo in ugotovili, da je najprimernejše število dva okvirja na sekundo tako so bili vidni vsi objekti v Osončju, vključno z Neptunom. Z manjšim številom okvirjev na sekundo smo torej podaljšali čas osvetlitve. Urana in Plutona nismo našli, zato je bilo testiranje teh objektov neuspešno. Z naslednje slike je razvidna manjša zamegljenost objektov zaradi neprimerne konfiguracije kamere kameri bi morali zaradi ostrenja odstraniti lečo, ker pa je bila tuja last, se v strahu pred poškodbami tega koraka nismo lotili. 31

Slika 7.1: Slika polne lune (superlune), posnete pri 2 FPS in ISO 800 Objekti z magnitudo več kot 3 že pri osmih okvirjih na sekundo skoraj niso bili dobro vidni. Nastavitve ISO so dopuščale več svobode. Z nastavitvami 800 smo lahko še dobro zaznali zvezdo Severnico, ki je pravzaprav sistem treh zvezd in predstavlja 44. najsvetlejšo točko na nočnem nebu pri magnitudi 9,2. Tudi nastavitev 700 je omogočala zaznavanje Severnice, vendar je bilo to motno, vsaka magnituda nad 10 pa je bila zunaj dosega te nastavitve ISO. Tabela 7.1: Vidna magnituda pri nastavitvah ISO ISO VIDNA NAVIDEZNA MAGNITUDA 400 4,7 (Venera) 500 0 (Vega) 600 4,38 (Ganimed) 700 vsaj 8,4 (Titan) 800 vsaj 13,65 (Pluton, opazovani) 32

Tabela 7.2: Vidna magnituda pri nastavitvah FPS OKVIRJI NA SEKUNDO (pri ISO = 800) VIDNA NAVIDEZNA MAGNITUDA 25 12,74 (polna luna) 10 0 (Vega) 2 vsaj 13,65 (Pluton, opazovani) Prejšnji tabeli prikazujeta povezavo med nastavitvami ISO in številom okvirjev na sekundo ter vidnimi objekti na nebu. Tako pri nastavitvah ISO kot pri nastavitvah okvirjev na sekundo je razvidna neenakomerna porazdelitev med zmožnostmi zajema slike in svetlostjo objekta. Tako je, denimo, preskok med nastavitvama ISO 700 in 800 precej velik, vendar nismo opazovali objekta, ki bi bil temnejši kakor Pluton. Ocenjujemo, da se zmožnosti opazovanja zaključijo približno pri magnitudi 16, vendar nam tega podatka ni uspelo potrditi. Slika 7.2: Posnetek Neptuna pri ISO 700 (zelo slabo viden obroč okoli planeta) in 2 FPS 33

Slika 7.3: Povečana slika Neptuna, videnega na prejšnji sliki Hitrost okvirjev je tudi pomembna komponenta pri opazovanju, saj manj okvirjev na sekundo pomeni več časa za formiranje slike iz vpadle svetlobe. Do senzorjev pride več svetlobe, zato je tudi vidnost pri manjši svetilnosti boljša. Sicer nismo preizkušali spreminjanja števila okvirjev pri drugih nastavitvah ISO, vendar so meritve tudi pri vrednosti 800 dovolj zgovorne. Žal se je izkazalo, da en okvir na sekundo ni primeren, saj v tem primeru program ni deloval zadovoljivo. 34

Slika 7.4: Slika Vege pri ISO 800 in 2 FPS 7.2 Sledenje objektom Objektom smo na podlagi fazne korelacije lahko zadovoljivo sledili. Večinoma smo za sledenje uporabljali Luno, sej je poleg Sonca najsvetlejši objekt na nebu in omogoča lahko sledenje. Tudi manj svetle objekte, kot je na primer Saturn, smo lahko opazovali in jim sledili. Za sledenje bi bilo primerneje ugotoviti hitrost vrtenja Zemlje in izdelati sistem, ki bi se vedno vrtel s primerno hitrostjo kakor je v sistemih za sledenje, ki so na voljo v trgovinah z astronomsko opremo. Pri sledenju se je pojavljala največja težava zaradi premika motorjev proces je vključeval premik motorjev, nato je program dobil zajeto sliko iz predhodnega vira, nato pa je premaknil teleskop. Med procesiranjem podatkov se je položaj objekta dodatno spremenil, zato je bilo sledenje večinoma le pogojno uspešno, teleskop pa je 35

opazovani objekt slej ko prej izgubil iz vidnega območja. Z naprednejšimi postopki pa je bilo mogoče sledenje vendarle nadaljevati. Vsekakor bi sistem brez procesiranja slik lahko dosegel boljšo učinkovitost pri sledenju in precej lepšo opazovano sliko na napravi. Pri opazovanju smo opazili tudi konstantnost premika teles na nebu. V povprečju se je objekt premaknil za tri slikovne pike v smeri x in šest v smeri y. Ob premiku teleskopa smo dosegli premik za primerno vrednost tako v smeri osi y, kot tudi v smeri osi x koordinatnega sistema slike. 7.3 Ocena porabe električne energije Celoten sistem za sledenje nebesnim telesom vsebuje Raspberry Pi s kamero, namensko vezje za krmiljenje motorjev in motorčka za premik teleskopa. Pri sledenju sicer sodeluje le en motorček, vendar kljub temu napajamo vezje drugega motorja. Tabela 7.3: Ocena porabljene energije KOMPONENTA Raspberry Pi TB6593FNG M36N-2 BOSCH AHC PORABA (izmerjena) 3,5 W 1,2 W 9,6 W 15 W Iz tabele je razvidno, da lahko sistem doseže najvišjo porabo 20,6 W (RPi + TB6593FNG + TB6593FNG + BOSCH AHC) ob delovanju največjega motorja, in 15,2 W (RPi + TB6593FNG + TB6593FNG + M36N-2) ob sledenju. Motorja ne moreta delovati hkrati, zato porabe 30,2 W (RPi + TB6593FNG + TB6593FNG + BOSCH AHC + M36N-2) ne moremo doseči, kljub temu da je to seštevek vseh porab komponent. 36

8 SKLEP V diplomskem delu je prikazan potek izdelave motoriziranega teleskopa, ki ga nadzira platforma Raspberry Pi. Ta se je izkazala za ravno dovolj zmogljivo za tako delo, hitrejši procesor pa bi prispeval le k boljšemu delovanju aplikacije in možnosti nadgradnje aplikacije (povezava z dozdajšnjimi progami za virtualno spremljanje nebesnih teles). Prav tako je lahko občutljivost priključkov GPIO težava pri Raspberry Pi, saj lahko že manjša napaka povzroči izklop ali uničenje platforme. Izvedba diplomskega dela je bila uspešna, končni produkt pa se je obnesel celo bolje, kot je bilo sprva načrtovano. Ugotovitve bi lahko bile koristne predvsem za ljubiteljske astronome s programersko žilico. Dovolj podrobno je opisan tudi potek izdelave, psevdokoda pa tudi dovolj nazorno prikazuje delovanje programa. Pokazali smo tudi, da Raspberry Pi omogoča uspešno kontroliranje teleskopa in kljub odsotnosti varoval na priključkih GPIO s pazljivim načrtovanjem in primerno dodatno opremo brez težav krmili tudi nekoliko večje motorčke. Pokazali smo tudi, da lahko staro opremo, ki je na primer v tiskalnikih, s kančkom iznajdljivosti in primerno programsko opremo ter z vezjem uspešno uporabimo pri projektih, pri katerih bi sicer zapravljali precej denarja za drago in novo opremo. Včasih ni treba zapravljati veliko denarja za nekaj, kar lahko zelo poceni izdelamo sami. 37

VIRI [1] Raspberry Pi, Wikipedia. Dostopno na http://en.wikipedia.org/wiki/raspberry_pi [5. 6. 2014]. [2] OpenCV. Dostopno na http://docs.opencv.org/ [5. 6. 2014]. [3] OpenCV, Wikipedia. Dostopno na http://en.wikipedia.org/wiki/opencv [5. 6. 2014]. [4] WiringPi. Dostopno na http://wiringpi.com/ [5. 6. 2014]. [5] Toshiba TB6594FNG. Dostopno na https://www.toshiba.com/taec/components2/datash eet_sync/201006/dst_tb6593fng-tde_en_27195.pdf [5. 6. 2014]. [6] M36N-2, elcoids. Dostopno na http://elcodis.com/parts/6456335/m36n-2.html [5. 6. 2014]. [7] V4L, Wikipedia. Dostopno na http://en.wikipedia.org/wiki/video4linux [12. 6. 2014]. [8] UV4L, linux-projects. Dostopno na http://www.linuxprojects.org/modules/sections/index.php?op=viewarticle&artid=9 [12. 6. 2014]. [9] V4L, kernel.org. Dostopno na https://www.kernel.org/doc/documentation/video4linux/ v4l2-framework.txt [12. 6. 2014]. [10] JPEG, Wikipedia. Dostopno na http://en.wikipedia.org/wiki/jpeg [12. 6. 2014]. [11] Fazna korelacija, Wikipedia. Dostopno na http://en.wikipedia.org/wiki/phase_correlati on [13.6.2014]. [12] PiAstroHub, raspberrypi.org. Dostopno na http://www.raspberrypi.org/forums/viewto pic.php?t=15723&p=443964 [20. 6. 2014]. [13] Open PHD, Stark Labs. Dostopno na http://stark-labs.com/phdguiding.html [20. 6. 2014]. [14] INDI, INDI Library. Dostopno na http://www.indilib.org/ [20. 6. 2014]. [15] Lin_guider, sourceforge. Dostopno na http://sourceforge.net/projects/linguider/ [20. 6. 2014]. [16] GoTo, Wikipedia. Dostopno na http://en.wikipedia.org/wiki/goto_(telescopes) [20. 6. 2014]. [17] SkyFi, suthernstars. Dostopno na http://www.southernstars.com/products/skyfi/ [21. 6. 2014]. [18] NoIR camera, Adafruit. Dostopno na http://www.adafruit.com/products/1567 [21. 6. 2014]. 38

[19] Skywatcher teleskop, astroshop. Dostopno na http://www.astroshop.eu/skywatchertelescope-n-130-900-explorer-eq-2/p,5013 [21. 6. 2014]. [20] SkySafari, southernstars. Dostopno na http://www.southernstars.com/products/skysafa ri/ [28. 6. 2014]. [21] Schottky dioda, mouser. Dostopno na http://eu.mouser.com/productdetail/stmicroele ctronics/1n5819/?qs=g5aqjgfrjckkuy9s%252bathrq== [11. 8. 2014]. [22] Schottky diode, Wikipedia. Dostopno na http://en.wikipedia.org/wiki/schottky_diode [11. 8. 2014]. [23] Diode, Wikipedia. Dostopno na http://sl.wikipedia.org/wiki/dioda [11. 8. 2014]. [24] Navidezni sij, Wikipedia. Dostopno na http://sl.wikipedia.org/wiki/navidezni_sij [11. 8. 2014]. [25] Google Sky, Google. Dostopno na http://www.google.com/sky/about.html [11. 8. 201 39