Skocz do zawartości

Luksometr - realizacja układu


Armor

Pomocna odpowiedź

Podstawowe ogniwo filtra RC składa się z opornika i kondensatora. Jeżeli (przykładowo) do wyjścia wzmacniacza dołączysz opornik a drugi jego koniec przez kondensator do masy i sygnał weźmiesz z kondensatora to właśnie zrobiłeś filtr dolnoprzepustowy o -3dB częstotliwości odcięcia = 1/(2*Pi*R*C). Taki filtr musisz zrobić na wyjściu powyższego układu oraz na zasilaniu. Przychodzące z Arduino +5V przepuszczasz przez opornik szeregowy a za nim, do masy wstawiasz kondensator. W tym przypadku dwa równolegle by lepiej spełniały swoją rolę.

Kondensatory tak jak narysowałeś - szeregowo z zasilaniem - nie przepuszczą prądu stałego i wzmacniacz umrze z głodu.

To jeden z podstawowych układów elektronicznych, hasło "Filtr RC" daje setki odpowiedzi.

EDIT:

Płytka stykowa to bardzo zły pomysł. Po pierwsze nie ma sensu kupować specjalnie do niej wzmacniacza w obudowie DIP (większość nowych w ogóle nie ma takiej opcji), po drugie pojemności i niekontakty mogą zabić działanie każdego układu a tutaj, gdzie operujesz na 500k i 10pF to w ogóle nie ma sensu. Przecież tyle to mają dwie blaszki płytki stykowej, tylko że one są wszędzie i te 10pF będziesz miał między wszystkim a wszystkim. Wrzuć to na kawałek płytki uniwersalnej z sensownie rozmieszczonymi elementami, polutuj kabelkami lub wprost pin do pinu (oporniki SMD 805 pasują wprost do rastra 100mils) i zadziała w pół godziny. Nawet nie wiem czy warto robić do tego projekt druku.

Link do komentarza
Share on other sites

Tak, układ może tak wyglądać 🙂

Jako wzmacniacz proponuję ten:

http://www.tme.eu/pl/details/mcp6v01-e_sn/wzmacniacze-operacyjne-smd/microchip-technology/

Jest dostępny w SO8 więc jeszcze w miarę dużej obudowie, pracuje z asymetrycznym zasilaniem, RRIO, napięcia i prądy niezrównoważenia na tyle małe że wiele tu nie popsuje, ogromne wzmocnienie w otwartej pętli i niezłe PSRR i CMRR. No i zero szumów 1/f - jak pierwszy raz zobaczyłem wykres szumów wzmacniacza z autozerowaniem to myślałem, że z krzesła spadnę 🙂

Warto tylko zwrócić uwagę, że pasmo 1.3MHz spowoduje, że przy wzmocnieniu x100 będziesz miał tylko 13kHz a to już jest poważnym ograniczeniem. Trzeba będzie dobrze się zastanowić nad szybkością przejazdu ramienia tak, by układ zdążył "dociągnąć" do wartości ustalonej podczas przejścia przez otwór. Z tego choćby powodu warto przemyśleć metodę osobnej detekcji punktów pomiarowych. Wtedy zmiany sygnału optycznego nie są tak drastyczne i wzmacniacz nadąża podczas przejazdu ramienia za charakterystyką kątową promieniowania źródła. Jeśli ma nagle zmienić swój sygnał z prawie 0% do np. 50% podczas przejścia fotodiody przez mały otwór w czasie np. 1ms, może mieć kłopoty.

Link do komentarza
Share on other sites

Części dotarły no i wzmacniacz jest trochę za mały gabarytowo żebym był w stanie to polutować na zwykłej płytce uniwersalnej, znalazłem co prawda płytki pod obudowy SO8 ale i tak nie uzyskam takiej precyzji żeby nic tam na 100% nie zepsuć. Jestem trochę w kropce z tego powodu i chyba będę zmuszony poszukać kogoś z bardziej profesjonalnym sprzętem do lutowania niż sam posiadam.

Co do programu w arduino to na początku właśnie chciałbym sprawdzić jak ten czujnik się będzie sprawdzał przy normalnych pomiarach, a jak już wszystko będzie w porządku to przyjdzie czas na metodę detekcji punktów pomiarowych i modyfikację programu. Na razie mam tylko tyle (z czego 3/4 to obsługa wyświetlacza):

#include

LiquidCrystal lcd(2, 3, 4, 5, 6, 7);

void setup() {

lcd.begin(16, 2);

lcd.setCursor(0, 0);

lcd.print("Natezenie");

lcd.setCursor(0, 1);

lcd.print("swiatla");

lcd.setCursor(15,1);

lcd.print("%");

}

void loop() {

int sensorValue = analogRead(A0);

float natezenie = sensorValue * (100.0 / 1023.0);

lcd.setCursor (8,1);

lcd.print(natezenie);

delay (500);

To taki kod testowy, który w teorii ma działać tak: zasłaniam fotodiodę całkowicie to mam 0% wyświetlone, a jak z bliska czymś poświęcę to ponad 90% powiedzmy. Jeśli tak by to naprawdę działało to wiem, że mogę zaczynać kalibrację z luksometrem analogowym.

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Ok, jeśli nie czujesz się na siłach, znajdź kogoś z doświadczeniem w montażu. Niech to zrobi, daj zdjęcie i podłączaj.

Na pusto możesz przetestować program podłączając potencjometr do wejścia analogowego rozpięty między zasilaniem Vcc a masą. W ten sposób możesz zacząć rozwijać kod zanim dostaniesz wzmacniacz. Możesz próbować napisać funkcje dwupunktowego skalowania pomiaru, zapamiętywania nowych współczynników kalibracyjnych, inteligentnie znajdujące maksima, zapamiętujące je w tablicy, wypisujące przez UART wyniki w postaci tabeli itd. Zrób jak najwięcej teraz a docelowy układ będzie się czuł doceniony od razu po podłączeniu 🙂 Możesz też napisać testy oceniające szumy np. wypisujące podstawowe parametry statystyczne sygnału stałego mierzonego z maksymalną prędkością w ciągu np. minuty, szybkość narastania sygnału od 10 do 90% itp. Będzie jak znalazł do oceny działania wzmacniacza i diody.

Link do komentarza
Share on other sites

Zasilanie takiego układu pomiarowego bezpośrednio z USB jest dość ryzykownym posunięciem ze względu na to że napięcie USB może być różne, zależnie od urządzenia / ładowarki. Jeśli takie napięcie będzie jednocześnie napięciem odniesienia dla przetwornika ADC to wraz ze zmianą napięcia zasilania będą zmieniać się wyniki pomiaru. Ostatnio sam naciąłem się na ten problem kalibrując prosty układ pomiarowy podczas zasilania go napięciem programatora. Po podłączeniu docelowego zasilania wszystkie wyniki uległy zmianie i kalibracje musiałem powtórzyć. Aby poprawić stabilność wyników proponuję nadpróbkowanie które powinno dodatkowo odfiltrować ewentualny szum, tętnienia zasilania.

Link do komentarza
Share on other sites

Masz rację, co prawda wspomniałem o USB, ale tak naprawdę nie wiemy z czego Autor będzie to zasilał i do czego to podłączy. Nie wiem, czy w ogóle będzie tam jakiś komputer. Być może urządzenie będzie samodzielnym stanowiskiem z własnym zasilaczem i LCD. Sam wzmacniacz nie jest czuły na wartość napięcia zasilania a referencję ADC można wziąć z wewnętrznego źródła lub z 5V z lokalnego stabilizatora Arduino przy zasilaniu z zasilacza np. 9V. Nie wiemy jak to będzie zrobione, ale dobrze, że wspomniałeś.

Link do komentarza
Share on other sites

Z USB to tylko zasilałem żeby w ogóle sprawdzić czy wszystko działa i jak się okazuje jest ok. Teraz chcę zrobić do tego zasilacz, bo kompa na miejscu nie będzie. Robię go wg schematu z załącznika. Ogólnie arduino można zasilić 7-12V żeby było bezpiecznie więc chciałbym na tym zasilaczu uzyskać właśnie 9V, wtedy ani się nie będzie grzał za bardzo ani też napięcie nie powinno być zbyt niskie. Co do tego zasilacza to mam tylko 1 pytanie: Jeśli chcę mieć 9V na wyjściu to dobieram LM7809 i jakiś transformator 230/9 (na powiedzmy około 1 A myślę że spokojnie wystarczy) czy też trafo 230/12 i LM7809? Moje pytanie się bierze stąd, że tu: http://www.elportal.pl/pdf/k04/26_04b.pdf napisano, że:

"W przypadku niskich napięć wyjściowych (3...6V) należy zastosować transformator o nieco większym napięciu, natomiast dla napięć wyjściowych 12V i większych wystarczy, by transformator miał katalogowe napięcie wyjściowe (zmienne) równe potrzebnemu stabilizowanemu (stałemu) napięciu wyjściowemu."

zasilacz.thumb.jpg.6a5352e50e522822de4fc9956692a096.jpg

Link do komentarza
Share on other sites

Arduino ma na płytce stabilizator po to, żeby można było je zasilać z transformatorowych zasilaczy niestabilizowanych. Zasilacz taki składa się z transformatora, mostka prostowniczego i kondensatora filtrującego. W uproszczeniu napięcie na wyjsciu takiego zasilacza jest napięciem stałym niestabilizowanym i jest większe 1,41 razy od napięcia przemiennego transforatora pomniejszonego o spadek napięcia na dwóch diodach prostowniczych. Dzisiaj coraz trudniej kupić takie zasilacze. Wszyszcy przechodzą na zasilacze przetwornicowe, które z natury swojej pracy mają na wyjściu napięcie stałe, stabilizowane. Może się okazać, że kupno gotowego zasilacza przetwornicowego będzie tańsze niż skonstruowanie własnego transformatorowego.

Druga sprawa jeśli w całym układzie będziesz używał tylko 5V, to może warto kupić 5V zasilacz przetwornicowy i zasilać Arduino przez USB. Napięcie odniesienia możesz wziąć z drugiego stabilzatora 3,3V, napięcie to powinno mieć mniejsze szumy od napięcia 5V podłaczonego do wejścia USB.

Link do komentarza
Share on other sites

Dziękuję za informację ale niestety nie dała mi ona odpowiedzi na moje pytanie... Zasilacze opisane jako "zasilacze do arduino' to praktycznie same zasilacze stabilizowane więc chyba nie ma problemu w tym, żeby ten który chce zrobić też był stabilizowany. Oczywiście jakbym mógł go kupić to bym się nie pytał z jakich części go zrobić. Ponawiam więc pytanie o to jak prawidłowo dobrać trafo i układ LM78xx.

Link do komentarza
Share on other sites

Oczywiście, możesz zrobić zasilacz jaki chcesz. Może nie napisałem tego wyraźnie, ale moim zdaniem, i o ile nie potrzebujesz napięcia stabilizowanego 9V do innych celów niż zasilanie Arduino, nie ma najmniejszego sensu robienie zasilacza stabilizowanego.

Teraz dopiero zajrzałem do PDF-a, masz tam podane obliczenia. Zakładając 2V spadku na diodach, 4V potrzebne dla stabilzatora, bez uwzględnienia napięcia tętnień celowałbym w transformator min. 11V.

Edit:

Do zrobienia zasilacza niestabilizowanego do Arduino wystarczyłby transformator 7V lub 8V.

Link do komentarza
Share on other sites

To jeszcze jedno pytanie kontrolne: czy stanowisko pomiarowe, które chcesz napędzać tym zasilaczem będzie zawierało coś oprócz samej płytki Arduino i wzmacniacza? Jeżeli tak, to pamiętaj o ograniczeniach stabilizatora na płytce. Jeżeli wpuścisz 9V, to aby zrobić 5V stabilizator będzie się grzał. Jeżeli do 5V podłączysz np. duży wyświetlacz LCD z podświetlaniem, jakieś LEDy itd to możesz mieć kłopoty z ciepłem. Może opisz dokładniej jak całość będzie wyglądała. Może się okazać, że zrobienie (lub kupienie) porządnego zasilacza 5V i zasilenie tym wprost Arduino i wszystkiego innego okaże się bardziej uzasadnione.

A zasilacza nie możesz kupić z powodów ideowych (wszystko zrobię sam, bo wszystko to chiński chłam) czy zaopatrzeniowych (Święta, paczki nie dochodzą a z resztą i tak wszystko to chiński chłam)? Kostka z wyjściem +5V/1A starczy na wszystko a kosztuje pewnie z 10zł - mniej niż transformator z całą resztą, więc względy finansowe raczej nie wchodzą w grę.

Link do komentarza
Share on other sites

Założenia projektu są takie, że do modernizacji stanowiska nie mam używać gotowych rozwiązań (zasilacz, luksometr) tylko od podstaw je zbudować.

Oprócz Arduino i wzmacniacza będzie jeszcze LCD 16x2 (taki standardowy jaki jest dołączany do zestawów z arduino). Raczej nic dodatkowego dojść nie powinno.

Wracając jeszcze do tematu detekcji punktów pomiarowych rezygnuję z podanej wcześniej metody z płaskownikiem z otworami ze względu na raczej ciężką realizację zamontowania tego płaskownika tam na stałe. Jako, że są tam zaznaczone punkty w których należy dokonać pomiarów zdecydowałem się to rozwiązać w 2 trybach:

Pierwszy Tryb: Ustawiamy ramię w danym punkcie, naciskamy przycisk 'pomiar' (który jeszcze muszę tam zamontować) i dostajemy wartość na LCD. Kolejne przesunięcie, przycisk 'pomiar' i mamy następną wartość itd. Oczywiście to wymaga spisywania wyników na bieżąco ale pozwala powtórzyć pomiar pod dowolnym kątem w każdej chwili.

Drugi Tryb: Tryb w zasadzie polega na tym samym tylko wyświetlanie wartości następuje dopiero po przeprowadzeniu wszystkich (bodajże 19) pomiarów. Wyniki te będą wyświetlane z 3 sekundowymi (bądź dłuższymi) przerwami po ostatnim 19 pomiarze (żeby było przejrzyście w pierwszej linii wyświetlacza będzie kąt pod którym mierzymy a w drugiej wartość zmierzona). Ewentualnie dodałbym przycisk 'koniec pomiaru' który inicjowałby wyświetlanie pomierzonych wcześniej wartości.

Chciałbym, żeby Arduino, zasilacz i wyświetlacz były w 1 obudowie (prawdopodobnie najwygodniej byłoby też tam umieścić przyciski) umieszczonej na stoliku, a do czujnika kabelek bo jak wiadomo będzie się znajdował na ramieniu wychylnym.

Co więc proponujecie z tym zasilaczem? Myślę, że wyświetlacz nie powinien powodować grzania się zasilacza, bo jest naprawdę niewielki.

Link do komentarza
Share on other sites

Skoro własny zasilacz to dlaczego nie własny LCD? I własne Arduino (bo ono jest sporo bardziej skomplikowane od zasilacza).

Bo takie są założenia projektu. Zresztą nie pytałem jak zrobić LCD, ani też Arduino więc nie rozumiem co wnosi twój post do dyskusji.

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.