LinkedIn YouTube Facebook
Szukaj

Newsletter

Proszę czekać.

Dziękujemy za zgłoszenie!

Wstecz
SoM / SBC

Serwer wydruku na Raspberry Pi z funkcją automatycznego włącznika

A więc, jeżeli chcemy, aby wartość wyjściowa wyprowadzenia GPIO o numerze 20, była zmieniana na czas 120 sekund w momencie przyjęcia przez serwer Raspberry Pi informacji o zleceniu drukowania, wówczas w pliku:

vi /etc/init.d/cups_gpio_notifier_sysv

zmieniamy linię:

/usr/local/bin/cups_gpio_notifier & > /dev/null 2>&1

na

/usr/local/bin/cups_gpio_notifier -g 20 -t 120  & > /dev/null 2>&1

po czym restartujemy daemona:

sudo /etc/init.d/cups_gpio_notifier_sysv stop
sudo /etc/init.d/cups_gpio_notifier_sysv start

Tym samym cały proces instalacji oprogramowania na platformie Raspberry Pi został zakończony. Do zakończenia projektu pozostało jedynie wykonanie prostych połączeń sprzętowych, które umożliwią nam sterowanie napięciem sieciowym za pomocą wyprowadzeń GPIO.

W przypadku napotkania problemów z funkcjonowaniem aplikacji „CUPS GPIO Notifier” warto przeanalizować dzienników logów systemowych:

cat /var/log/messages

Sprzęt

Istnieje kilka sposobów na realizację sterowania napięciem sieciowym poprzez wyprowadzenia GPIO. Do najpopularniejszych należą układy zbudowane na przekaźnikach oraz triakach. Autor zdecydował się na rozwiązanie składające się z połączenia optotriaka oraz triaka, według schematu przedstawionego na rysunku 5.

 

Rys. 5. Schemat budowy i podłączenia prostego przełącznika triakowego

Rys. 5. Schemat budowy i podłączenia prostego przełącznika triakowego

 

Zastosowanie optotriaka pozwala na odizolowanie części wysokonapięciowej (triak) od części niskonapięciowej (Raspberry Pi), co jest niezwykle istotne ze względów bezpieczeństwa (zastosowanej elektroniki jak i nas samych). Sam układ składa się z minimalnej liczby komponentów o niewielkich wymiarach, stąd reazliując projekt PCB, możemy zdecydować się na umieszczenie prostego modułu wykonawczego w obudowach do montażu na szynie DIN, jak przedstawiono to na fotografiach 6 i 7.

 

 Fot. 6. Wnętrze modułu wykonawczego wraz z obudową do montażu na szynie DIN

Fot. 6. Wnętrze modułu wykonawczego wraz z obudową do montażu na szynie DIN

 Fot. 7. Moduł wykonawczy w obudowie DIN

Fot. 7. Moduł wykonawczy w obudowie DIN

W postaci większego układu sterowania (wykonanego na potrzeby testów), całość może zostać zrealizowana jak pokazano na fotografii 8.

 

Fot. 8. Przykładowy układ sterowania

Fot. 8. Przykładowy układ sterowania

Urządzenia klientów

Całość konfiguracji programowych i sprzętowych mamy już za sobą. Przyszedł czas na testy projektu, czyli wydrukowanie dowolnej strony z urządzeń podłączonych do naszej sieci lokalnej. Dla użytkowników systemu Linux, instalacja drukarki sieciowej nie będzie stanowiła większego problemu, dlatego też w rozdziale tym zostaną przedstawione wyłącznie opisy dla komputerów z systemem Windows oraz urządzeń z systemem Android.

 

Instalacja drukarki sieciowej w systemie Windows

Instalacja drukarki sieciowej w systemie Windows odbywa się poprzez wybór menu Urządzenia i drukarki w opcjach Panelu Sterowania. Z górnego menu wybieramy opcję Dodaj nową drukarkę , po czym zaznaczamy opcję Dodaj drukarkę sieciową, bezprzewodową lub Bluetooth. System przełączy się w automatyczny tryb wyszukiwania drukarek. Jeżeli nasza drukarka nie została odnaleziona, zaznaczamy opcję Drukarki, której szukam, nie ma na liście , po czym manualnie wskazujemy ścieżkę do naszego urządzenia:

http://adres_ip_raspbberypi:631/printers/nazwa_drukarki

 Rys. 9. Konfiguracja drukarki sieciowej w systemie Windows

Rys. 9. Konfiguracja drukarki sieciowej w systemie Windows

Po zainstalowaniu sterowników nasze urządzenie jest widoczne jak pozostałe drukarki w systemie Windows.

 

Łukasz Skalski - absolwent Politechniki Gdańskiej, miłośnik FLOSS, autor książki "Linux. Podstawy i aplikacje dla systemów embedded" oraz szeregu artykułów dotyczących programowania systemów wbudowanych. Zawodowo związany z firmą Samsung. Wszystkie wolne chwile poświęca projektowaniu i programowaniu urządzeń wyposażonych w mikroprocesory 8-/16- i 32-bitowe. Szczególnym zainteresowaniem obejmuje tematykę systemu Linux w aplikacjach na urządzenia embedded.