HomeMade

Pełna wersja: Enkoder/impulsator home made - inne podejście
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Tanie mechaniczne enkodery stwarzają problemy w budowie DDS-a czego doświadczyłem sam a próbą obejścia problemu była w moim przypadku korekta algorytmu obsługi impulsatora przez zaliczenie dopiero trzeciego kolejnego impulsu w daną stronę oraz możliwość zmiany kroku przestrajania od 1MHz do 10Hz na krok co powoduje, że pojawiające się niestabilności nie mają tak istotnego znaczenia.
Od pwnego czasu chodzi mi jednak po głowie rozwiązanie wymagające nieco innego podejścia do problemu przestrajania. Zamiast gałki z nieskończonym zakresem obrotów i prędkością przestrajania zależną od prędkości obrotowej chcę użyć potencjometru ograniczonego w ruchach mniej więcej w zakresie 0-270 stopni. Potencjometr byłby elementem generatora impulsów działającego w ten sposób, że w środkowym położeniu potencjometru nie pracowałby wcale a w zależności od wychylenia gałki w prawo lub w lewo generowałby impulsy dla jednego z kanałów z prędkością zależną od odchylenia od położenia środkowego. Realizacja tego pomysłu jest dość prosta kiedy zastosuje się mikroprocesor (ja użyłem ATiny13).
Zrobiłem już wstępny test działania takiego impulsatora - na razie bez dołączenia do DDS-a ale z diodami LED w każdym z kanałów. Układ działa zgodnie z założeniami a diody migają z prędkością zależną od wychylenia z położenia środkowego. Dzięki mikroprocesorowi możliwe jest praktycznie dowolne kształtowanie charakterystyki sterowania. Na załączonym wykresie zrobiłem symulację sterowania dla dwóch założonych przypadków: wykres niebieski odpowiada sterowaniu z silnym zwiększeniem prędkości dla dużych odchyleń a wykres czerwony to liniowe zwiększenie prędkości w zależności od kąta zmiany. W środkowej części kiedy generator nie impulsuje wykresy się pokrywają. W prostym programie można uzyskać nawet 2 rzędy zmiany prędkości przestrajania - w wariancie czerownym z łagodnymi zmianami w okolicach dostrajania zmiany następują z częstotliwościa 1-2Hz a możliwe jest jej podniesienie nawet do kilkuset Hz w skrajnym położeniu. W obu przypadkach założyłem strefę martwą aby łatwo ustawić pokrętło w położenie neutralne.
Algorytm działania opiera się na pomiarze napięcia na suwaku potencjometru i odpowiedniej reakcji przez impulsowanie na wybranym kanale.

Zalety rozwiązania:
- prostota konstrukcji
- łatwość kształtowania dowolnej chrakterystyki przestrajania
- pełna kwadratura impulsowania
Wady:
- koniecznośc zasilania impulsatora
- zmiana mentalna dotycząca strojenia (o ile można to uznać za wadę?)

Ciekawy jestem Waszej opinii na ten temat bo choć nie znalazłem szybko podobnego opisu to sądzę, że nie jest "epokowym odkryciem" i może ktoś spotkał się już z takim pomysłem. Sądzę, że do końca tygodnia wykonam wersję użytkową i przetestuję działanie w praktyce z DDS-em wtedy dopiszę swoje spostrzeżenia.
L.J.
czesc,

troche zaluje ze napisales ten watek - to byl moj pomysl na PUK Confused

Wpadl mi do glowy za czasow uzywania Digitala 931 - kto uzywal wie jak
niewygodne bylo dostrajanie (ta wersja nie miala enkodera i trzeba było dla niektórych kroków przestarjania wciskać 2 klawisze na raz).
Pomyslalem o czyms wygodniejszym i doszedlem do tego samego rozwiazania ktore opisujesz.

Myslalem jeszcze o opcji dodatkowej - diodach dookola potencjometru
ktore zapalalyby sie przy wejsciu w dany zakres - ale niekoniecznie, w sumie
to przy przestrajaniu patrzy się na skale cyfrową niż na pokrętło.

Wydaje mi sie ze najbardziej ergonomiczne byloby uzycie malego lub co najwyzej sredniego potencjometru - z tym ze ja planowalem jakies 180 stopni
a nie 270 - wydaje mi sie ze to wystarczy a chyba latwiej bedzie operatorowi.
Ale może się mylę - w przeciwieństwie do Ciebie nie wyszedłem dalej niż przemyślenia.

pozdrowienia
Artur sp2qca
Wiedziałem, że ktoś myślał już podobnie ;-)
Ja chcę zastosować trzy diody - środkowa będzie pokazywać osiągnięcie strefy martwej a diody zewnętrzne będą się zapalać w zależności od kierunku przestrajania. Jak mi się uda dziś kupić odpowiedni potencjometr to jutro zrobię próby praktyczne. Najlepszym rozwiązaniem byłby potencjometr z wyraźnym punktem środkowego położenia - chyba są takie używane w regulacji wszelkich balansów ale musi mieć on jednocześnie liniową charakterystykę. Myślę również nad zakładaną na oś blaszką sprężynującą, która wpadałaby w otwór zapadkowy w płycie mocującej potencjometr. Zakres 270 stopni to z grubsza biorąc kąt obrotu przeciętnego potencjometru ale nie ma problemu aby programowo ograniczyć przestrajanie jeśli kąt wyjdzie poza zakres +-90 stopni.
Układ zmontuję na małej płytce wlutowanej na końcówki potencjometru więc jego wielkość będzie niewiele większa niż potencjometr. Wkrótce zamieszczę schemat a po próbach wsad do zaprogramowania mikrokontrolera. Koszt tego rozwiązania powinien się zamknąć w 20 PLN. Na płytce zmieszczę również jedną lub nawet dwie zwory pozwalające na zmianę charakterystyki sterowania i zakres regulacji. W najprostszym algorytmie częstotliwość impulsowania wyliczana jest jako odwrotność napięcia mierzonego na potencjometrze w zakresie od 512 do 1 jednostek co przekładając na częstotliwość oznacza od 2 do 1000Hz ale możliwe jest (w rozsądnych granicach oczywiście :-) ) dowolne ukształtowanie tej charakterystyki.
L.J.
Witam,
a gdyby tak na ośce potencjometru zamontować niewielką spiralnie zwiniętą sprężynkę przymocowaną z jednej strony do ośki z z drugiej do stałego punktu (obudowa), to układ miałby mechanicznie stabilny punkt zerowy a nawet mógłby samoczynnie powracać po puszczeniu gałki do neutrum. To zabezpiecza przed przypadkową, niekontrolawaną zmianą częstotliwości.
Pozdrawiam,
Artur,sp1qy
Leszku, pomysł zastąpienia enkodera potencjometrem jest oryginalny.
Podobne rozwiązanie z potencjometrem stosowałem w regulatorze obrotów silnika (w lewo, stop, w prawo), obroty proporcjonalne do wychylenia. W moim zastosowaniu miałem problem z bezwładnością układu przy szybkim powrocie do zera. Taki powrót trwa określony czas dlatego musimy reagować z pewnym wyprzedzeniem albo wracać powoli. Być może przy odpowiednio dużej strefie martwej lub systemowi automatycznego powrotu do zera uda się ten problem pokonać. Ja ostatecznie zrezygnowałem z tego rozwiązania i zastosowałem dwa klawisze (w lewo, w prawo).
W tym rozwiązaniu zwolnienie klawisza daje natychmiastowy powrót do zera, przyrost prędkości jest pochodną czasu trzymania klawisza.

Sądzę, że takie rozwiązanie możemy również zastosować do przestrajania syntezy, klawisze (Up, Down), pierwsze 3 sek krok 100Hz, kolejne 2 sek 1kHz, potem 10kHz, po zwolnieniu klawisza wracamy na 100Hz. Zaletą tego rozwiązania jest możliwość wykorzystania klawiszy oraz mechanizmu przyśpieszania do ustawiania innych parametrów syntezy. W bardzo małych urządzeniach QRP ilość miejsca na panelu frontowym jest niewielka dlatego każdy pomysł zastąpienia typowej "gały strojeniowe" jest ciekawy.
Pomysł ze sprężyną zwrotną bardzo mi się podoba. Jeśli ktoś zna takie rozwiązanie już istniejące, które łatwo dałoby się użyć z potencjometrem to byłby spory postęp. Na razie zastosowałem nieco większą strefę martwą a punkt neutralny zrobię chyba drążąc w gałce otwór na sprężynę dociskającą małą stalową kulkę blokującą się w otworze dla położenia neutralnego ośki.
Enkoder już działa z odbiornikiem. Załączam zdjęcia urządzenia a także linki do opisów i próbek przestrajania. Nagranie zrobiłem dziś około południa w paśmie 7MHz. Ostatnie nagranie jest późniejsze, z pasma 3.5 około 20:45. Ponieważ mam ustawiany w DDS-ie krok przestrajania to zrobiłem nagrania dla zmian z krokiem 5Hz oraz 50Hz co łatwo poznać po nazwie pliku.
Zmieniłem również charakterystykę przestrajania poszerzając strefę neutralną do ok. 1/5 zakresu przestrajania i ograniczając maksymalną prędkość impulsowania do ok. 100Hz co widać na załączonej charakterystyce.
Strojenie nie sprawia problemów i jestem przekonany, że po niewielkim ćwiczeniu każdy może zaakceptować taki system. Niezbędna jest jednak informacja zwrotna o położeniu neutralnym pokrętła własnie w formie świetlenej, mechanicznej lub obu jednocześnie, choć i na słuch można wyczuć czy częstotliwość się zmienia.
Adamie, Twoje doświadczenia ze sterowaniem silnikiem mogą nie być miarodajne w tym wypadku. Wprawdzie silnik to nie element cieplny ale bezwładność ma na pewno większą niż ludzkie ucho i ręka podczas strojenia co w pełni potwierdziły testy praktyczne.

Pliki z opisami:
rysunek druku
rysunek montażowy

Wsad do mikrokontrolera (programując należy wyłączyć podział zegara przez 8)
wsad hex

Próbki nagrań:
krok 10 Hz - próbka 1 - pasmo 7
krok 10 Hz - próbka 2 - pasmo 7
krok 50Hz - próbka 1 - pasmo 7
krok 50Hz - próbka 2 - pasmo 7
krok 50Hz - próbka 3 - pasmo 3.5

L.J.
Jako, iż pomysł bardzo mi się podoba to i ja postaram się dorzucić swoje trzy grosze. Kopiąc po szufladach w poszukiwaniu pomysłu na mechaniczną część układu, trafiłem na ciekawy przełącznik obrotowy ALPSA. O ile dobrze pamiętam odzyskałem go z uszkodzonego DVD, ale wiem iż podobne były w starych magnetowidach i służyły m.in. do wolnego lub szybkiego przewijania kasety w zależności od wychylenia gałki. Przełącznik wychyla się w lewo lub w prawo o ok. +/- 45* a po podpiłowaniu blokad wewnątrz, wychylenie można zwiększyć do ok. +/- 120* Dzięki wbudowanej sprężynie wraca w pozycję środkową automatycznie. Dodatkowo posiada w środku gałki dip switcha, który zwiera odpowiednie piny po przyciśnięciu gałki.
Akurat ten co posiadam ma trzy strefy działania w zależności od wychylenia.
I tu wpadły mi do głowy dwa pomysły jak to ustrojstwo by można było wykorzystać:

Pierwszy bez przerabiania samego przełącznika to taki, iż można wykorzystać te trzy strefy do przestrajania z trzema różnymi prędkościami np. delikatne wychylenie 10Hz, mocniejsze 100Hz, i max 1kHz, a sam switch po przyciśnięciu gałki do zmiany prędkości przestrajania na np. delikatne 100Hz, mocniejsze 1kHz, max 10kHz itd.

Drugi pomysł to wykorzystanie mechanizmu tego przełącznika do kręcenia potencjometrem. Wystarczy usunąć ze środka micro switcha. Od tyłu wywiercić otwór na mocowanie i przepuszczenie ośki potencjometru. Teraz wystarczy tylko zblokować ośkę potencjometru z mechanizmem obrotu gałki i mamy automatycznie wracający w położenie środkowe potencjometr.

Sie napisałem....ha ha ha Postaram się powalczyć z potencjometrem i powiem czy sprężyna daje rade.
Pomysł jest świetny, czekam na wrażenia z realizacji. Ale może to być chyba recepta wyłącznie na jednostkową realizację chyba, że ktoś zna stabilne miejsce gdzie można dostać takie lub podobne elementy?
L.J.
Przeróbka okazała się dziecinnie prosta. Wystarczyło usunąć micro switcha i wywiercić otwór przez środek do zamontowania potencjometra.
Okrągła nakrętka pasuję idealnie i mieści się w obudowie. Teraz tylko wystarczyło połączyć oś z częścią ruchomą przełącznika. Plastikowa nóżka od obudowy typu KM pasuje idealnie Smile Wchodzi ciasno w ruchomą część przełącznika i po delikatnym rozwierceniu wchodzi na oś potencjometra. Kropelka kleju, by oś się nie ślizgała w blokadzie.
Sprężyna bez najmniejszego problemu kręci potencjometrem wracając w środkowe położenie.
Oblukałem ten przełącznik, ale nie znalazłem na nim żadnych oznaczeń.
O ile dobrze pamiętam mam jeszcze gdzieś płytę, z której go wylutowałem, więc jak ją znajdę to może tam coś doczytam. Próbowałem znależć coś podobnego w internecie, ale ciężko jest jak w sumie nie wiadomo nawet jako czego tego szukać. Ni to przełącznik, ni potencjometr :/ Może któryś z kolegów wie jak to ustrojstwo się zwie??
Przy okazji rocznego remanentu, a w zasadzie po korespondencji z jednym z kolegów, zmodyfikowałem nieco oprogramowanie impulsatora. Konstrukcja zrobiona była do współpracy z generatorem Tiny DDS gdzie zarówno wejście (+) jak i (-) impulsów obsługiwane jest przez przerwanie. Impulsator w wersji podstawowej działa w taki sposób, że dla środkowego ustawienia potencjometu nie ma żadnej impulsacji, dla odchylenia w prawo impulsacja pojawia się w pierwszym kanale a dla odchylenia w lewo impulsacja pojawia się w drugim kanale. Oczywiście takie impulsowanie nie ma nic wspólnego z sygnalizacją kwadraturową ale jeśli we współpracującym generatorze oba wejścia są czułe na impulsy (jak w Tiny DDS) to układ działa bez problemu.
Tą wersję oprogramowania można pobrać tu:
wersja z przerwaniami w obu kanałach
Jeśli jednak obsługa impulsatora bazuje na przerwaniu tylko z jednego kanału (jak jest chyba w przypadku DDS DL4JAL/SP3SWJ), układ nie będzie pracował poprawnie bo dla jednego z kierunków nie uruchomi się przerwanie obsługujące impulsy na tym wejściu. Dal tego przypadku opracowałem wersję zapewniającą pełny sygnał kwadraturowy a więc dwa przebiegi prostokątne przesunięte o 90 stopni z pierwszeństwem innego z sygnałów w zależności od kierunku odchylenia potencjometru od położenia neutralnego:
wersja z przerwaniem w jednym kanale
I na koniec jeszcze dwie wersje dla zastosowań nietypowych. W tej wersji impulsowanie odbywa się wyłącznie na jednym wyjściu a drugie wyjście zawiera informację o kierunku zmian w formie sygnału 0 lub 1. Obie wersje są identyczne za wyjątkiem polaryzacji sygnału kierunku, który raz ma dla odchylenia w prawo wartość 0 a w drugim przypadku wartość 1 i odwrotnie dla odchylenia potencjometru w lewo.
wersja impuls/kierunek(+)
wersja impuls/kierunek(-)
Reszta zostaje bez zmian. W położeniu środkowym potencjometru nie ma impulsowania o czym sygnalizuje dioda strefy neutralnej a odchylenie w każdą ze stron powoduje generację impulsów z częstotliwością tym większą (zależność hiperboliczna) im większe jest odchylenie od środka.
L.J.
Przekierowanie