V našom
rádioklube OM3RRC sme sa začali zapodievať prevádzkou EME a otáčanie
anténneho systému 4x10DK7ZB sme vyriešili zakúpením Az/El rotátora s ovládačom. Keď
o prevádzku prejavili záujem aj ďalší členovia, jedna zo základných otázok
znela ako vyriešiť dobre a lacno otáčanie malého anténneho systému
v dvoch osiach – v azimute aj elevácii.
Najskôr
prišiel na rad tiahlový motor. V klubovom sklade už niekoľko rokov ležal starší 12“
model. Jeho otvorením sme zistili, že obsahuje jednoduchú prevodovku. Na oske
motorčeka je pripevnený magnet v tvare a veľkosti malej mince. Pod
ním je umiestnený jazýčkový kontakt. Otáčaním magnetu sa spína kontakt.
Frekvencia je asi 2 impulzy na 1mm vysunutia tiahla. Celkový počet impulzov na
vysunutie celého tiahla bol asi 600. Analýzou trojuholníka, ktorý vznikne medzi
dvoma rovnako dlhými ramenami a meniacim sa
tretím ramenom, ktoré predstavuje tiahlový motor so svojou meniacou sa dĺžkou
zistíme, že funkcia uhla v závislosti od dĺžky oproti ležiacej strany nie je
lineárna. Jedná sa o pomerne zložitú trigonometrickú funkciu. Spravili sme si tabuľku s grafom do
Excelu a podrobili skúmaniu, ako túto funkciu naprogramovať , prípadne čo
najviac zlinearizovať. Nakoniec sme sa rozhodli pre druhú možnosť
s nasledujúcimi podmienkami. Minimálny elevačný uhol bude -10°, maximálny
+90° (Mesiac môže dosahovať v našich zemepisných šírkach elevačný uhol od
0 do 62°). Priamka bude prechádzať bodmi 0 a 45°. To budú jediné dva body,
kde bude anténa nasmerovaná presne. Po pridaní ďalšieho stĺpca s touto
lineárnou funkciou do excelovskej tabuľky a porovnaní so stĺpcom funkcie
uhla od dĺžky tiahla sme dospeli k záveru, že najväčšia chyba bude pri
elevácii asi 30° a požadovanej maximálnej elevácii 62° a to do 5%, čiže
maximálne 2°. Uhly -10 a +90° nás až tak nezaujímali, nakoľko mali slúžiť len na
zaparkovanie systému, resp. lepšej možnosti inštalácie. Uvedená nepresnosť je
pre najpoužívanejšie smerové antény nepodstatná. Odber zo zdroja v záťaži
bol 350mA.
Niekoľko kusov starších satelitných motorov
DiSEqC/USALS sme zadarmo získali od miestneho predajcu čiernej techniky
a súčiastok HDL elektronik Považská
Bystrica, čím sa mu chceme aj touto cestou poďakovať. Všetky sme ich otvorili
a začala kovbojka. Čo kus, to iné mechanické prevedenie. Princíp snímania
otáčok motora bol zhodný s tiahlovým motorom, len namiesto jazýčkového
kontaktu bola použitá Hallova sonda. Analýzou prevodovky bol zistený počet
impulzov na 1° otočenia hriadeľa medzi 38 až 40. Horšie bolo to, že
v niektorých prevodovkách bolo plastové, v niektorých kovové hlavné
ozubené koleso. Najhoršie, že vo všetkých prevodovkách malo koleso zuby iba na
polovici obvodu. Mesiac ale dosahuje pri najvyššej deklinácii azimut od 45 až
do 315° pri elevácii 0° a eleváciu spomínaných 62° pri azimute 180°.
Málokto má k dispozícii celý obzor a väčšinou sa dá pracovať pri
elevácii až nad 5°. Kto sa zmieri s týmto obmedzením, ktoré môže nastať
pár dní v roku, získa pomerne solídny rotátor. Urobili sme ešte jeden
záťažový test. Nainštalovali sme tiahlový motor a jeden satelitný motor s kovovým hlavným
kolesom na 3,5m parabolu, ktorú mal Peter OM6PM už dlhšiu dobu na statíve. Parabolu má dokonale vyváženú a použil kvalitné dvojradové ložisko z nejakého
vozidla, takže stačilo urobiť prispôsobenie medzi osku motora a osku
ložiska. Myslel som, že ozubené koleso nemôže túto záťaž vydržať, ale čuduj sa
svete, fungovalo to bez problémov. Motor zvládal rozbehy a dojazdy hravo.
Odber z 12V zdroja bol aj v najväčšej záťaži okolo 150mA, čo umožní
použiť malý hotový zdroj. Našťastie Peter má vyriešené parkovanie
s aretáciou. Zaparkovaná a zaaretovaná anténa nekladie na rotátor
žiadnu námahu. Pre malý anténny systém s jednou anténou na 2m, alebo
štvorčaťom na 70cm by však nemal byť problém ani bez parkovania a aretácie.
Okrem toho cena je taká, že prípadné zničenie motora nebude bolestivé.
Obr.1:
Statív s parabolou na ktorej bol skúšaný satelitný motor.
Obr.2: Detail upevnenia satelitného a tiahlového motora na statíve s ložiskom. |
Na
rôznych internetových bazároch sa pravidelne objavujú satelitné motory za dobrú
cenu. Objavili sme motor DM3800S, ktorý sa predáva pod značkou Opticum,
Optibox, alebo Amiko, ktorý má kovové koleso so zubami po celom obvode.
Študenti zo žilinskej univerzity na ovládanie malej antény pre amatérske
satelity použili 2 kusy SG9120B s kovovým kolesom a ozubením po celom
obvode, viď obrázok č.3 a [1]. Podobný motor ako pre azimut je samozrejme možné
použiť namiesto tiahlového motora aj pre eleváciu. Riadenie bude presnejšie a
navyše lineárne.
Obr.3:
Antény s dvoma DiSEqC satelitnými motormi SG9120B na streche žilinskej univerzity
Tieto
zistenia nás povzbudili a bolo treba urobiť návrh zapojenia riadiaceho obvodu. Bohužiaľ
všetci naši programátori v súčasnosti riešia neporovnateľne zložitejšie
projekty pre svojich chlebodárcov a tak padla voľba hlavného programového
menežéra na mňa. Je to už dobrých 30 rokov čo som sa zoznámil s ASM51
a tak to dlho vyzeralo na použitie nejakého kompatibilného klonu. Mladší
z klubu ma vysmiali, že dnes všetko fičí na AVR, ARM a podobných mne
nič nehovoriacich skratkách. Po večeroch som vyhľadával informácie, zostrojil
skúšobnú doštičku a ISP programátor. Keď po nejakej dobe na skúšobnej doštičke
blikala LEDka, nebolo šťastnejšieho človeka. Svetlo sveta uzrel jeden iný menší
projekt s ATtiny13. Program som písal v AVR Studio v asembleri. Bolo
to veľmi zdĺhavé, ale na jazyk C som si netrúfal. Neskôr som natrafil na Basic pre AVR
[2], ktorého demo verzia umožňuje vygenerovať 4kB kódu. Zo študentských čias
a môjho ponocovania nad Sinclair Spectrum zostala ešte hmlistá spomienka na
Basic a tak nainštalovanie Bascom AVR bolo dielom okamihu.
Výrobu riadiacich obvodov, ktoré by nahradili pôvodné prijímače DiSEqC príkazov sme zamietli hneď
na začiatku. Musel by sa vyrobiť ešte vysielací modul, ktorý by prijímal
príkazy z trakovacieho programu. Jednoduchosť by spočívala iba
v použití tenkého koaxiálneho kábla, ktorým by sa k motorom dostávalo
napájacie napätie a DiSEqC príkazy. Vzhľadom na predpokladanú vzdialenosť
do 10m sme to nepovažovali za prínos. Pri tvorbe zapojenia riadiaceho obvodu
padla voľba na mikroprocesor ATmega8 [3], zobrazenie pomocou jednoriadkového
LCD displeja, ovládanie štyrmi tlačítkami a spojenie s trackovacím
programom cez RS232 oddelenou optočlenom. Rozhrania pre snímače polohy budú
rovnaké pre oba, pretože Hallova sonda má výstup s otvoreným kolektorom,
čím pripomína kontakt. Trochu nepraktické je, že potrebuje napájanie 5V, kvôli
čomu motor potrebuje až 5 vodičový ovládací kábel. Čisto teoreticky sa dalo
odobrať napätie z motora, ale túto alternatívu sme neskúšali. Nejaké
impulzy by sa mohli stratiť pri rozbehu a dobehu. Tiahlový motor vystačí so 4-vodičovým
káblom, avšak jeden vodič môže byť spoločný pre oba snímače, čím sa počet
vodičov v ovládacom kábli zredukoval na 8. Po doplnení stabilizátora
napájania a odporového deliča na snímanie poklesu napájacieho napätia bola
schéma úplna. Delič má tú funkciu, že pri výpadku napájacieho napätia dochádza
k jeho poklesu určitú dobu (veľká kapacita na napájacej zbernici).
Mikroprocesor cez svoj A/D prevodník zistí pokles napájacieho napätia pod 10V a uloží všetky potrebné
dáta do vnútornej EEPROM. Pri opätovnom pripojení napájacieho napätia sa pokračuje tam, kde sa
skončilo. Ako výkonové prvky pre spínanie motorov boli použité miniatúrne relé
s kontaktom dimenzovaným na 1A.
Schéma zapojenia:
Konštrukčné
usporiadanie bude riešené vo vhodnej plastovej krabičke. Na jej prednom paneli bude
vypínač, displej a ovládacie tlačítka. Na zadnom paneli napájací
konektor pre 12V, konektor pre pripojenie ovládacieho kábla k motorom a konektor pre
RS232. Napájanie je možné riešiť buď zo samostatného jednosmerného zdroja
12-19V/1A, alebo zo zdroja ktorý napája TCVR. My sme použili kalkulačkový zdroj asi 14V/500mA. Zapojenie je pomerne jednoduché
a preto som plošný spoj nenavrhoval, ale použil univerzálny plošný spoj
o rozmeroch 80x70mm. Displej je pripojený za pomoci 10 pinového konektora
do plošného spoja. Takým istým konektorom sú pripojené tlačítka, snímače polohy
a sériová linka. Na pripojenie napájania a motorov sú použité malé
svorkovnice do plošného spoja. Po rozložení pätíc a ostatných súčiastok a ich
zaletovaní sú jednotlivé nožičky prepojené tenkým vodičom s teflónovou
izoláciou. Spínacie tranzistory sú zo strany spojov. V rohoch plošného
spoja sú 3mm otvory pre pripevnenie cez dištančné podložky do krabičky. Pri vývoji
sa hodili ako nožičky. Peter namiesto tlačítok zabudoval do krabičky štvorkanálový prijímač diaľkového ovládania na 433MHz. Anténu ovláda miniatúrnym DO s dosahom niekoľko desiatok metrov.
Obr.4
Vývojová vzorka
Samotný
riadiaci program, ako už bolo spomínané, bol napísaný v prostredí Bascom-AVR.
Program má na začiatku deklarácie parametrov a premenných a vbehne
do nekonečnej slučky Do – Loop, kde rozoznať sekciu pre príjem z RS232.
Parametre sériového prenosu sú 600, 8, N, 1. Implementovaný je príkaz Waaa_eee<CR>
(CR=0Dh) z protokolu GS232 [4]. Ďalej sekciu pre zabezpečenie automatického
otáčania po prijatí príkazu, sekciu snímania impulzov a sekciu snímania
ovládacích tlačidiel. Protokol bol doplnený o príkaz Xaaaaa_eeeee<CR>.
Po prijatí tohto príkazu sa do vnútornej EEPROM uloží počet impulzov aaaaa
v azimute pre uhol 360° a počet impulzov eeeee v elevácii pre
uhol 45°. Toto umožňuje pripojiť motory v podstate s ľubovoľným počtom
impulzov do 99999. V praxi si vystačíme do 15000. Ďalší príkaz
v tvare Kaaa_eee<CR> vykoná kalibráciu na hodnotu aaa/eee. Je to
obdoba ručnej kalibrácie ktorá bude popísaná v ďalšom texte. V praxi
sa nám osvedčilo pripevniť k otočnému mechanizmu antény malé laserové ukazovátko.
Pri kalibračnej procedúre sa laserový bod natočí na označené miesto
v priestore, napr. na značku na stene domu o ktorej presne vieme, na akom
azimute a elevácii sa nachádza. Najlepšie sa tieto údaje zisťujú pri
meraní šumu slnka. Označené miesto môže
byť totožné s parkovacou polohou antény. Potom už len stačí poslať
kalibračný príkaz. Na displeji sa zobrazí zaslaná hodnota. Riadiaci program
vnútorne pracuje s presnosťou akú umožňuje snímanie impulzov z motorov,
t.j. na približne 0,025° a 0,167°. Skutočný uhol natočenia je len
zobrazovaná hodnota, ktorú si program vypočíta z maximálneho počtu
impulzov na 360 a 45° (zaslaných príkazom X) a aktuálnych čítačov
impulzov.
Ručné
ovládanie umožňuje nastavovať rotátory v rozsahu -45° až +405°
v azimute a -10° až +90° v elevácii. Pre možnosť ručnej kalibrácie bol
zvolený smer 180 azimut/0 elevácia. Stlačením dvoch tlačítok pre ovládanie
azimutu a zapnutím prístroja sa nastaví azimut 180°. Stlačením dvoch tlačítok
pre ovládanie elevácie a zapnutím prístroja sa nastaví elevácia 0°.
Pre
zasielanie príkazov cez sériovú linku som používal terminálový program Terminal
ver.1.9 stiahnutý z Internetu (www.hw-server.com). S výhodou som využíval jeho možnosť vyslať
preddefinované makrá. Je možné však použiť akýkoľvek terminálový program. Pre
automatické otáčanie antény využívame trackovací program od F1EHN.
Stavba
je vhodná aj pre začínajúcich konštruktérov. S jej oživením nie sú žiadne
problémy. Po zostavení obvodu sa bez osadeného mikroprocesora, odpojených motorov a oboch 10 pinových konektorov pripne obvod na zdroj a zmeria sa
odoberaný prúd a napätie za stabilizátorom, prípadne napätia na napájacích
pinoch mikroprocesora, displeja a snímačov. Krátkym vodičom prepájame +5V s bázami tranzistorov a odskúšame funkčnosť spínania relátok. Keď je všetko v poriadku
a nič nehorí odpojíme zdroj, zasunieme do pätice mikroprocesor, pripojíme konektor
displeja a snímačov, pripojíme motory a opäť pripojíme na napätie. Na displeji sa zobrazí
údaj AZ=-1 EL=-1. Je to preto, lebo vnútorná EEPROM má všetky bajty nastavené
na FFh (čiže -1). Ak máme presne zistené
počty impulzov na 360°/45°, tak ich vyšleme cez príkaz „X" a následne
ručne, alebo príkazom „K“ skalibrujeme. Ak nepoznáme počty impulzov na 360°/45°, vyšleme príkaz
X00360_00045<CR> a následne K180_000<CR>. Po prijatí každého príkazu
blikne testovacia LED. Hodnoty sa uložia do EEPROM. Skúsime pomocou tlačitiel točiť motory. Vidíme ako rýchlo
sa menia na displeji údaje a akú zmenu to znamená pre motory. Metódou
pokusu a omylu sa dopracujeme ku skutočným počtom impulzov. U
vývojovej vzorky to bolo X13680_00270<CR>. Tieto uložené údaje vieme
skontrolovať, lebo po zapnutí prístroja sa na krátku dobu objavia na displeji. U satelitného
DiSEqC motora sa hodnota už meniť nebude, ale u tiahlového motora je skutočný
uhol elevácie závislý od mechanického usporiadania. Pri inštalácii treba
dodržať zásadu, že na maximálne vysunutie tiahla sa elevačný uhol dá zmeniť od
-10 do 90° s malou rezervou. Tak treba nastaviť aj elektrické dorazy.
V súčasnosti
prebiehajú dlhodobejšie funkčné skúšky. Bolo zistené, že po niekoľkých
desiatkách otočení dochádza k malej chybe. Táto bude spôsobená
pravdepodobne zaokrúhľovaním pri neustálom prepočte uhlov na impulzy
a naopak. Preto odporúčam použiť kalibračnú procedúru pred každým
použitím. Použitie satelitných motorov vzhľadom na rýchlosť otáčania
a menšiu záťaž nie je vhodné v závodoch. Okrem malých
anténnych systémov kozmickej komunikácie je vhodné aj pre iné aplikácie, napr.
natáčanie malých solárnych a fotovoltaických panelov.
Táto
konštrukcia má za cieľ ponúknuť lacné a dostupné riešenie otáčania malého
anténneho systému pre kozmickú komunikáciu. Autor sa vyvaroval používaniu drahých
a nedostupných prostriedkov. Opísal postup ako dospel k riešeniu bez
predchádzajúcej praxe v problematike a znalosti dokonalých
programovacích prostredí. Program v tvare HEX je k dispozícii u autora. Autor poskytne
záujemcovi aj zdrojový text pre jeho prípadné vylepšenie, ale upozorňuje, že
ide o veľmi amatérsky napísaný program, navyše v prostredí ktorým
skutočný programátori opovrhujú. Autor sa snažil o ďalšie vylepšenia, ale
každá ďalšia pridaná inštrukcia prekročila kapacitu 4kB.
Použitá
literatúra:
[1] Ľubomír
Pasternák: Pozemná pozorovacia a meteorologická stanica, bakalárska práca
2013, Žilinská univerzita v Žiline
[2]
Bascom-AVR, MCS Elektronics, www.mcselec.com
[2] ATMega8, datasheet www.atmel.com
[3] Yaesu_GS-232B_Manual.pdf
Ahojte mozete mi dat kontakt kto menezoval tento projekt u Vas. Dik Lubo om5zw
OdpovedaťOdstrániť