Sprzętowy przycisk do wyłączania Raspberry Pi

Sprzętowy przycisk do wyłączania Raspberry Pi

Na początkującego w świecie Raspberry Pi czeka wiele ciekawych projektów, które mimo że wydają się niewielkie, są bardzo ważne dla np. komfortu użytkowania tego komputera jednopłytkowego. W tym artykule omawiamy właśnie taki prosty projekt. Polega on na dodaniu fizycznego przycisku, który może zostać użyty do wyłączenia komputera. Tego rodzaju element ma wiele wartościowych zastosowań, więc przyda się nie tylko amatorom jako wprawka.

Komputery jednopłytkowe, takie jak Raspberry Pi, nie są na ogół wyposażone w przycisk zasilania, szczególnie taki, który pozwalałby na bezpieczne dla systemu operacyjnego wyłączanie systemu. Wiele osób, które dopiero co zaczęły korzystać z komputera jednopłytkowego wciąż szukać mogą przycisku zasilania. Rozwiązaniem jest odłączanie wtyczki microUSB lub zamontowanie na tej linii przełącznika. O ile pozwoli to wyłączyć minikomputer, to może doprowadzić do uszkodzenia karty SD czy systemu operacyjnego.

Poprawne wyłączanie Raspberry Pi

Komputer jednopłytkowy Raspberry Pi, jak każdy inny komputer, wymaga poprawnego zamknięcia systemu operacyjnego, przed odłączeniem od niego zasilania. Podczas tego procesu system operacyjny zamyka otwarte na karcie pamięci pliki, wyłącza uruchomione programy i procesy, aby na końcu zamknąć bezpiecznie samego siebie. Jeśli system nie przejdzie tej procedury, to pliki zapisane na karcie pamięci mogą ulec uszkodzeniu, co może doprowadzić do uszkodzenia samego systemu operacyjnego – przy kolejnym uruchomieniu powitać może nas Kernel Panic – krytyczny błąd jądra systemu spowodowany m.in. niemożnością wczytaniem jednego z plików systemowych.

Podczas poprawnej procedury wyłączania komputera Raspberry Pi musimy wydać systemowi odpowiednie polecenie, zanim odłączymy kabel zasilający. Jeśli korzystamy z interfejsu graficznego, naciskamy czerwony przycisk zasilania w prawej dolnej części menu. Z kolei w przypadku korzystania z linii komend (w systemie bez zainstalowanego systemu okien lub w przypadku zdalnego dostępu z pomocą SSH) wpisać musimy następujące polecenie:

W naszym projekcie wykorzystamy linię GPIO18, która wyprowadzona jest na pinie 12 złącza rozszerzeń. Linia ta jest wygodna do wykorzystania, ponieważ zaraz obok niej znajduje się pin podłączony do masy (na 14 pinie złącza). Przycisk podłączmy tak, jak pokazano na diagramie na rysunku 2. Pin GPIO18 musi mieć skonfigurowane wewnętrzne podciągnięcie go do poziomu wysokiego. W ten sposób pin domyślnie znajdować będzie się w stanie wysokim, a po zwarciu z masą, w stanie niskim.

Skrypt obsługujący przycisk

Teraz musimy stworzyć skrypt, który obsługiwać będzie nasz przycisk i będzie wydawał systemowi, w momencie naciśnięcia przycisku, komendę wyłączającą komputer. Skrypt napisany zostanie w języku Python. Aby stworzyć skrypt i rozpocząć jego edycję w terminalu wpisujemy kolejno:

Nikodem Czechowski

http://bit.ly/31jL9o0

Artykuł ukazał się w
Elektronika Praktyczna
wrzesień 2019

Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik kwiecień 2024

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio marzec - kwiecień 2024

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje kwiecień 2024

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna kwiecień 2024

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich maj 2024

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów