Też chciałbym się zabrać za budowę wskaźnika air-core sterowanego mikrokontrolerm.
Konkretnie celem będzie budowa obrotomierza, a platformą ma być Arduino, a więc Atmega na pokładzie + programowanie w IDE.
Rozpoznałem temat teoretycznie, ogólnie mam zarys jak to ma wyglądać; może moje przmyślenia coś wniosą do tego tematu.
Na marginesie dyskusji - wykonałem kilka obrotomierzy analogowych z air-core i użyłem do nich sterownika CS8190. To układ łatwo dostępny w Polsce i dosyć prosto dający się obliczyć pod konkretne założenia (wyjątek - dobór kondensatora dla funkcji "return to zero", o czym napiszę dalej). Cena układu to około 15 zł, a więc stosunkowo przystępna.
Wada - gdy mamy wskaźnik air-core bez sprężyny powrotnej to aby wskazówka wracała do zera potrzebny będzie kondensator o dużej pojemności, który dobiera się doświadczalnie.
Inną niespodzianką może być osiągnięcie właściwego kompromisu pomiędzy falowaniem (drganiami) wskazówki, a jej dobrą odpowiedzią impulsową.
Tak wygląda jeden z takich moich projektów opartych na CS8190:
Dlatego też zabieram się za programowe sterowanie wskaźnikiem air-core, które przy poprawnym kodzie pozbawione będzie tych niedogodności i da nowe możliwości, np. po włączeniu zasilania wskazówka wychyli się szybko do maksymalnego wskazania i opadnie z powrotem do zera.
A oto moje dotychczasowe ustalenia: w air-core wychylenie wskazówki określa wzór:
Kąt = arctg (Usin/Ucos)
zatem potrzeba wysterować dwie cewki: jedną prądem, który jest funcją sinusa napięcia wejściowego (mierzonego), analogicznie cewkę drugą - funkcją cosinusa tegoż napięcia.
Trzeba mieć przy tym na uwadze aby w odpowiednich momentach odwracać polaryzację napięcia na cewkach sinusowej i cosinusowej.
Inaczej wskazówka będzie poruszać się tylko w zakresie 90 stopni, a chodzi o to by pokrywała zakres 360 stopni - czyli w czterech ćwiartkach układu współrzędnych.
Do tego celu można użyć mostka "H" sterowanego odpowiednim algorytmem
z mikrokontolera. Układ L293D wydaje się dobry do tego celu.
Gdy znajdę więcej czasu, napiszę pierwszy szkic pod Arduino i pokażę co udało się uzyskać.