Obrazowanie rozkładu temperatury - termografia - ma wiele zastosowań w różnych dziedzinach: przemyśle, nauce czy medycynie. Termografia polega na obrazowaniu w zakresie średniej podczerwieni, to jest od 9 do 14 mm. Każde ciało emituje promieniowanie elektromagnetyczne, najczęściej w zakresie podczerwieni, o długości fali odwrotnie proporcjonalnej do jego temperatury. Emisja z maksimum przypadającym na zakres średniej podczerwieni odpowiada temperaturom najczęściej spotykanym w naszym otoczeniu.
Urządzenia do obrazowania w podczerwieni są zazwyczaj bardzo drogie. Aby jednak skorzystać z tej technologii na uczelni, zespół dr. Pearce'a skonstruował własną kamerę termiczną na bazie modułu kamery podczerwonej Lepton firmy FLIR. Jest to ekonomiczny moduł do zastosowań w sprzęcie przenośnym i konsumenckim.
Elementy składowe układu
Autorzy użyli pierwszej generacji komputerka Raspberry Pi - wersji B+, do budowy opisanego urządzenia. Jednak każda inna wersja Raspberry będzie odpowiednia do tej kamery i napisanego oprogramowania, wymagając jedynie minimalnych poprawek. Wszystkie elementy składowe zebrano w tabeli 1.
Przygotowywanie karty SD
Na początek musimy przygotować odpowiednio kartę SD dla komputera Raspberry Pi, aby mógł poprawnie działać. Do tego potrzebny będzie nam zwykły komputer PC, wyposażony w czytnik kart SD. W pierwszej kolejności musimy sformatować kartę i umieścić na niej instalator systemu operacyjnego dla Raspberry Pi. Do formatowania karty możemy użyć jednego z dedykowanych do tego celu programów. Autor konstrukcji wskazuje program Formatter for Windows i opis w artykule dotyczy tego programu.
Po pobraniu i zainstalowaniu programu możemy w komputerze umieścić kartę SD i uruchomić zainstalowany program. Następnie wybieramy opcję FORMAT SIZE ADJUSTMENT, czyli formatowanie z dostosowaniem wielkości karty SD. Jeśli opcja jest zaznaczona, to możemy kliknąć OK i przejść dalej. W polu „Drive” wybieramy literę dysku skojarzoną z naszą kartą SD. Jeśli w komputerze zainstalowany mamy tylko jeden czytnik kart, z jedną kartą, to oprogramowanie automatycznie wykryje literę dysku, pod którą znajduje się karta. Po ustawieniu wszystkich parametrów możemy nacisnąć przycisk Format i potwierdzić to, naciskając OK w kolejnych okienkach, które będą się pojawiać. Po chwili oczekiwania karta microSD zostanie sformatowana.
Kolejnym krokiem jest instalacja systemu operacyjnego z wykorzystaniem pakietu NOOBS. Należy pobrać najnowszą wersję pakietu w postaci pliku ZIP (w chwili pisania artykułu jest to 3.0.1). NOOBS najprościej pobrać z oficjalnej witryny www.raspberrypi.org. Po pobraniu paczki zawartość musimy wypakować na czystą kartę microSD, którą sformatowaliśmy w poprzednim kroku. Możemy teraz włożyć kartę microSD do Raspberry Pi, podłączyć myszkę i klawiaturę oraz ekran (np. telewizor poprzez port HDMI). Po uruchomieniu systemu postępujemy zgodnie z poleceniami na ekranie, instalując system operacyjny Raspbian.
Podłączenie FLIR Lepton do Raspberry Pi
Kolejnym krokiem jest podłączenie do komputera modułu kamery FLIR Lepton. Warto kupić moduł Lepton w postaci modułu deweloperskiego - od razu przylutowanego do płytki drukowanej, z wyprowadzonymi wszystkimi potrzebnymi sygnałami na złączach szpilkowych. W ten sposób możemy połączyć moduł kamery z komputerem przy użyciu płytki stykowej lub zworek. Moduł z kamerą FLIR Lepton pokazano na rysunku 1. Moduł z kamerą potrzebuje do komunikacji dwóch interfejsów szeregowych - SPI do przesyłania danych oraz I2C do przesyłania informacji kontrolnych. Komputer Raspberry Pi wyposażony jest w oba te interfejsy oraz duże wsparcie programistyczne do tworzenia oprogramowania w postaci gotowych bibliotek do języków takich jak C i Python.
Raspberry Pi ma 40-pinowe złącze, na którym wyprowadzono m.in. linie interfejsów SPI oraz I2C, a także zasilanie i masę. Na rysunku 2 pokazano, gdzie znajdziemy poszczególne sygnały SPI (MOSI, MISO, CLK i CS) oraz I2C (SDA i SCL). Łączymy je w wybrany przez siebie sposób z odpowiadającymi sygnałami po stronie modułu z kamerą termowizyjną. Pamiętajmy, aby dołączać moduł do kamery po odłączeniu zasilacza od Raspberry Pi. Na rysunku 3 pokazano podłączony moduł z kamerą na płytce stykowej. Po podłączeniu wszystkiego do komputera Raspberry Pi możemy ponownie uruchomić komputer (podłączyć zasilanie do portu microUSB) i przejść do konfiguracji.
W pierwszej kolejności musimy podłączyć Internet - poprzez kabel (Ethernet) lub Wi-Fi. W zależności od tego, w jaki sposób podłączamy nasz moduł Raspberry Pi do Internetu, sposób konfiguracji będzie inny. Po podłączeniu do sieci musimy zaktualizować wszystkie komponenty systemu. W tym celu należy uruchomić terminal i po kolei wpisać komendy:
Instalacja potrzebnego oprogramowania
Po skonfigurowaniu komputera możemy przystąpić do instalacji potrzebnego oprogramowania. W pierwszej kolejności musimy zainstalować bibliotekę Qt wraz z zestawem narzędzi deweloperskich do tworzenia graficznego interfejsu użytkownika. Aby zainstalować pakiet narzędzi deweloperskich, w terminalu wpisujemy komendę:
W LeptonThread.cpp znajdziemy także odwołanie do funkcji lepton_perform_ffc(). Służy ona do uruchomienia funkcji FFC - rekalibracji sensora, mającej na celu poprawienie jednorodności jego pracy. FFC uruchamiać należy w momencie, gdy obraz, jaki widzimy, przypomina środkowy lub prawy obraz, pokazany na rysunku 6. Implementacja funkcji lepton_perform_ffc() znajduje się w pliku Lepton_I2C.cpp, który pokazany jest na listingu 3. Funkcja lepton_perform_ffc() uruchamia jedynie połączenie z kamerą Lepton (poprzez interfejs I2C) i wykorzystuje funkcję z SDK, które dostarcza FLIR, wraz z samą kamerą. W pliku Lepton_I2C.cpp oraz Lepton_I2C.h zaimplementować można oczywiście i inne funkcje, jakie dostępne są w SDK.
Podsumowanie
W powyższym artykule przedstawiliśmy ciekawy projekt amatorskiej kamery termowizyjnej, opartej na sensorze FLIR Lepton. Sensor ten nie jest tanim elementem - w zależności od wersji i tego, czy jest zainstalowany na gotowej płytce PCB, kosztuje od kilkuset, do nawet 1,5 tysiąca złotych - to i tak jest o wiele tańsze rozwiązanie, niż dedykowana kamera termowizyjna. Dodatkowo, dzięki standardowym interfejsom - SPI oraz I2C - moduł ten z łatwością może zostać podłączony do dowolnego mikrokontrolera, płytki rozwojowej czy komputera jednopłytkowego. Ogromna elastyczność modułu i łatwość jego oprogramowania, dzięki dedykowanemu SDK, jest jego ogromną zaletą.
Nikodem Czechowski
Źródła:
- http://bit.ly/2YIg7FN
- http://bit.ly/32gyrIg