- Zainstaluj Raspbiana na raspberry PI. Uaktywnij SSH dodając plik
/boot/ssh
. - Przy użyciu raspi-config wyłącz manager okien, aktywuj I2C i 1-Wire.
- Zainstaluj Domoticz:
curl -sSL install.domoticz.com | sudo bash
- Zainstaluj serwer MQTT – mosquitto
- Skonfiguruj urządzenia na ESP8266/ESP32 z zainstalowanym oprogramowaniem Tasmota.
- Skonfiiguruj domoticz.
Przetwornica Step-up MCP16251/2 – pomiar poboru prądu w stanie jałowym
Przetwornica MCP16251/2 pozwala na realizację zasilania z jednego ogniwa AA/AAA, ponieważ zaczyna pracować już przy napięciu 0.9 V. Zrealizowałem układ dający na wyjściu 3,3 V:
Karta katalogowa deklaruje pobór prądu bez obciążenia nie większy niż 25 uA (typowo 14 uA).
Uzyskane przeze mnie wyniki:
Vin = 1,328 V | I = 17,8 uA |
Vin = 1,610 V | I = 14,0 uA |
Wyniki zgadzają się z dokumentacją, co oznacza że nie kłamie ona oraz że nie popełniłem znaczących błędów w wykonaniu prototypu.
Pobór prądu na poziomie 25 uA oznacza, iż jedno ogniwo alkaliczne R6/AA o pojemności 2500 mAh (przyjęte na podstawie karty katalogowej Duracell MN1500) wystarczy do podtrzymania życia przetwornicy przez teoretycznie 11 lat (4 lata dla ogniwa AAA o pojemności 1000 mAh). Ponieważ inne procesy, takie jak samorozładowanie ogniwa i korozja skrócą ten czas znaczniej, takim poborem prądu nie trzeba się przejmować.
STM32CubeIDE – aktywacja debugowania w IDE
Membrana piezo PCA-4B – pomiar impedancji
Wykonałem pomiar impedancji przetwornika piezoakustycznego PCA-4B wykorzystując następujący układ:
Pomiar był wykonywany dla częstotliwości ok. 3,5 KHz, ponieważ taką deklaruje producent jako rezonansową. Ustawiałem potencjometr tak, aby amplituda sygnału na kanale CH2 była równa połowie amplitudy na kanale CH1 (wejściowej). Następnie rozłączyłem układ i odczytałem wartość potencjometru. Wyszło 750 Ω. Przesunięcie fazowe wyniosło 53 stopnie (napięcie na CH2 „opóźnione”). Pomiar multimetrem pojemności membrany dał wynik 90 nF – tak jak w dokumentacji.
Reaktancja kondensatora 90 nF dla częstotliwości 3,5 kHz to 500 Ω. To oznaczałoby, że układ można modelować jako szeregowo połączony kondensator 90 nF oraz rezystor 560 Ω. Dlaczego 560? Bo moduł impedancji to 750 Ω, a reaktancja to 500 Ω. Więc rezystancję należy policzyć z równania pitagorasa sqrt(750^2 – 500^2) = 560? Chyba, już nie pamiętam z teorii obwodów.
Logika wykluczeń
Układ logiczny zabezpiecza przed aktywacją obydwu wyjść. Jedynie jedno wyjście jest możliwe do pobudzenia w danym momencie. Stan wysoki na obydwu wejściach zeruje obydwa wyjścia.
Układ można rozbudować dla n wejść i m wyjść stosując m bramek AND n-wejściowych.
Nie trzeba używać bramek AND gdy dane wyjścia nie są potrzebne.
Przykład zastosowania: sterowanie stycznikami silnika przyciskami przód/tył – zabezpieczenie przed jednoczesnym naciśnięciem dwóch przycisków naraz.
Proste układy: Czujnik światła na fotodiodzie
Oświetlenie fotodiody powoduje przepływ większego prądu, a w konsekwencji wzrost napięcia na rezystorze R2 (10k). Gdy napięcie wzrośnie powyżej ok. 0,7 V, tranzystor otworzy się i załączy zasilanie buzzera. Można zamienić miejscami fotodiodę i rezystor R2, aby uzyskać barierę świetlną (przerwa oświetlenia aktywuje buzzer). Czułość można regulować rezystancją R2 – należy jednak pamiętać, iż zbyt duża rezystancja nie ma sensu, gdyż przeważy obciążenie prądu bazy tranzystora – wtedy warto dodać drugi tranzystor w konfiguracji darlingtona lub podobnej. W testowanym przypadku prąd wsteczny fotodiody nieoświetlonej wynosił ok. 4uA, a oświetlonej – powyżej 100uA, co dawało 1V na obciążeniu R2=10k. Pozwalało to na otwarcie tranzystora i zadziałanie buzzera. Układ jest najprostszej z możliwych konstrukcji. Całkowite usunięcie rezystora R2 spowoduje wzocnienie prądu fotodiody beta-krotnie (w praktyce kilkaset razy) na kolektorze tranzystora. Czyli dla 100uA można spodziewać się 10mA prądu kolektora. Rezystor R1 można zmniejszyć do rozsądnych granic (czyli do 1k). Można użyć 2 takie same rezystory. Układ jest „rozwleczony” na płytce stykowej, ponieważ nie da się zmienić rozstawu rezystorów w obecnej wersji programu Fritzing.
Proste układy: Licznik 4017
Podstawowa aplikacja układu CMOS 4017 – Licznik 1 z 10. W przykładzie ograniczono liczbę wyjść do 4 – Q0-Q3. Wyjście Q4 połączone z wejściem RST. Sygnał zegarowy pochodzi z przycisku. Można dodać zewnętrzne wyzwalanie np. poprzez tranzystor PNP. Można również zmieniać długość łańcucha. Pewną niewygodą jest rozkład wyjść układu – nie są po kolei.
Uwaga na zasilanie oraz ładunki statyczne – łatwo uszkodzić układ podczas testów na płytce stykowej. Dla bezpieczeństwa warto dodać diodę schottky’ego zaporowo na linii zasilania. Gdyby układ łapał „śmieci”, dodać kondensatory 100nF oraz 10uF na linii zasilania w pobliżu układu scalonego.
Zasilanie 5-15V, testowano z baterii 9V.
Proste układy: Łańcuch LED
LED Chaser
Układ sekwencyjnie miga diodami. Mignięcie kolejnej jest wyzwalane przez poprzednią. Łańcuch można wydłużać. Zastosowano kondensatory 10uF. Układ ładnie się wpasowuje w małą płytkę stykową. Wyprowadzenia kondensatora należy rozchylić na raster 0.2″ (jeden rząd przerwy pomiędzy). Ujemne wyprowadzenia do kolektorów, dodatnie do baz. Układ w zasadzie „transportuje” wygaszenie, pozostawiając resztę LED’ów zapalonych. Testowałem łańcuch 5 ledów. Należy pamiętać o sygnale zwrotnym z końca łańcucha na początek (białe połączenie).
89831-02020 Czujnik uderzeniowy Citroen C1
Kupiony używany na Allegro za 5zł.
Na płytce o wymiarach 21 x 24 mm znajdują się 2 układy scalone: SX1258EG oraz MC33793D, dwa kondensatory tantalowe, dwa koraliki ferrytowe / cewki, rezystor 1 kΩ, kondensator ceramiczny oraz element w obudowie SOT23 o oznaczeniu 33A – prawdopodobnie 2 diody ze wspólną anodą podłączoną do masy.
Układ SX1258EG prawdopodobnie jest podobny do układu MMA1254, z delikatnie zmienionym rozkładem wyprowadzeń.
Zasilanie 5V jest doprowadzone do pinu 8 zamiast 6. Pin 6 jest wyprowadzony tylko do padu testowego, co może sugerować, że jest to pin STATUS, ale nie wiadomo. Piny Vss oraz NC się zgadzają. Pin 4 doprowadzony do pinu LOGOUT układu MC33793D, czyli musi być wejściem, np wejściem ST (Selftest).
Pin 5 prawdopodobnie to wyjście napięciowe – przechodzi przez filtr RC do pinu nr 2 (I/O 0) MC33793D.
Do układu MC33793D jest dostępna dokumentacja.
Piny na płytce w kolejności ze zdjęcia od góry to prawdopodobnie:
1. DSI BUS IN
2. GND
3. GND
4. DSI BUS OUT
Test przy zasilaniu stałym napięciem 12V na potencjał DSI BUS IN, z pomiarem napięcia na pinie 2 układu MC33793D. Akcelerometr nie ma zbyt dużej czułości – obracanie płytki w przestrzeni (zakres 0-1G) nie powodowało zauważalnych zmian napięcia wyjściowego.
Szum – notatki
Szum rezystora 1kΩ to 4 nV/√Hz. Dla rezystorów o innej wartości wyliczamy pierwiastek rezystancji i odnosimy do tego. Np. dla 100kΩ to będzie √100 = 10 ⋅ 4 nV/√Hz = 40 nV/√Hz. To oczywiście przybliżenie dla normalnej temperatury itp.
Szumy dodaje się nie bezpośrednio, a dodając ich kwadraty i pierwiastkując całość (jak moduł wektora).
Wzmacniacz operacyjny w konfiguracji nieodwracającej / odwracającej.
Szum rezystora w pętli sprzężenia (podłączonego do wyjścia wzm. op.) wchodzi bezpośrednio w skład szumu wyjściowego. Szum drugiego rezystora (podłączonego do masy i wejścia wzm. op.) musimy pomnożyć przez wzmocnienie układu.
Szum napięciowy wzmacniacza z karty katalogowej mnoży się przez wzmocnienie układu.
Szum prądowy wzmacniacza przeliczamy na napięcie odłożone na równoległych obu rezystorach, następnie mnożymy przez wzmocnienie układu.
Przykład:
(https://www.researchgate.net/figure/Example-non-inverting-Op-Amp-circuit_fig3_283082955)
Dane:
- MCP6002, R2 = 100kΩ, R1 = 1kΩ
- Wzmocnienie = 101.
- Noise figure: eni = 28 nV/√Hz; ini = 0.6 fA/√Hz (https://ww1.microchip.com/downloads/en/DeviceDoc/MCP6001-1R-1U-2-4-1-MHz-Low-Power-Op-Amp-DS20001733L.pdf)
Składowe szumu wyjściowego:
- Od rezystora R2: √100 = 10; 10 ⋅ 4 nV/√Hz = 40 nV/√Hz
- Od rezystora R1: 4 nV/√Hz razy wzmocnienie czyli 404 nV/√Hz
- Od szumu napięciowego wzmacniacza: 28 nV/√Hz ⋅ 101 = 2828 nV/√Hz
- Od szumu prądowego wzmacniacza: R1||R2 ≅R1 = 1kΩ. 1kΩ ⋅ 0.6 fA/√Hz = 0.6 pV/√Hz i jeszcze razy wzmocnienie ≅ 60 pV/√Hz = 0.06 nV/√Hz.
Suma: √(40²+404²+2828²+0.06²) = 2857 nV/√Hz. Wyznaczyliśmy szum wyjściowy. Szum wejściowy wyznaczymy dzieląc przez wzmocnienie, czyli 2857 nV/√Hz / 101 = 28.3 nV/√Hz.
Jak widać, na poziom szumu w tym układzie główny wpływ ma szum napięciowy wzmacniacza. MCP6002 nie jest wzmacniaczem niskoszumnym, a low-power. Możnaby jeszcze dwukrotnie zwiększyć rezystory R1 i R2, co niewiele pogorszy charakterystykę szumową, a zmniejszy pobór prądu. Przy projektowaniu wzmacniaczy niskoszumnych należy wybrać odpowiednie układy, oraz stosować mniejsze rezystancje w układzie, aby nie pogarszać parametrów wzmacniacza.