- Podłączenie LCD 16x2 do Raspberry Pi:
- Instalowanie pakietów wymaganych do komunikacji Bluetooth:
- Parowanie urządzeń z Raspberry Pi przez Bluetooth:
- Schemat obwodu:
- Pisanie głosowe na ekranie LCD za pomocą aplikacji na Androida BlueTerm:
Musisz znać pisanie głosowe, które jest bardzo często używane w komputerach i telefonach komórkowych, gdzie możesz wpisać dowolne słowo, wypowiadając je. Pisanie głosowe jest bardzo przydatne dla osób niepełnosprawnych lub dla każdego, kto chce pisać szybko. Tak więc dzisiaj wdrażamy to samo na wyświetlaczu LCD 16x2, gdzie tekst głosowy będzie wyświetlany na wyświetlaczu LCD. Tutaj użyliśmy 16x2 LCD, ale ta konfiguracja może być zainstalowana w wielu miejscach z większym wyświetlaczem do nadawania dowolnej wiadomości, np. Na lotniskach, w centrach handlowych, biurach itp.
W tym projekcie zapewnimy głos wejściowy za pomocą klawiatury głosowej Google za pośrednictwem aplikacji na Androida (BlueTerm) i wydrukujemy tekst na 16x2 LCD za pomocą Raspberry Pi. Tutaj wpiszemy tekst na 16x2 LCD za pomocą bezprzewodowego nośnika Bluetooth i użyjemy klucza USB Bluetooth z Raspberry Pi. Więc w zasadzie potrzebujemy połączyć 16x2 LCD z Raspberry Pi i skonfigurować Bluetooth w Raspberry Pi, aby odbierać dane wysyłane przez telefon komórkowy. Połączyliśmy już LCD z Raspberry Pi i napisaliśmy tutorial na temat Bluetooth z Raspberry Pi, możesz je sprawdzić.
Podłączenie LCD 16x2 do Raspberry Pi:
Zanim przejdziemy do konfiguracji Bluetooth, najpierw połączymy 16x2 LCD z Raspberry Pi. Tutaj w tym projekcie wykorzystaliśmy zewnętrzną bibliotekę Adafruit do połączenia wyświetlacza LCD 16x2 z Raspberry Pi, przy użyciu której nie trzeba pisać wielu linii kodu do sterowania LCD i można bezpośrednio drukować na wyświetlaczu LCD, używając tylko jednej linii kod. Jednak ta biblioteka jest tworzona przez Adafruit, ale może być używana dla dowolnego modułu LCD, który ma kontroler HD44780. Jeśli chcesz podłączyć wyświetlacz LCD bez korzystania z żadnej zewnętrznej biblioteki, możesz zapoznać się z naszymi poprzednimi samouczkami dotyczącymi interfejsu LCD w trybie 8-bitowym i interfejsu LCD w trybie 4-bitowym.
Aby korzystać z biblioteki Adafruit, musimy ją najpierw zainstalować za pomocą poniższych poleceń. Pierwsze polecenie sklonuje repozytorium CharLCD (autorstwa Adafruit) na twoim Raspberry Pi, drugie polecenie przeniesie Cię do tego pobranego katalogu i na koniec musimy wykonać skrypt setup.py, przedstawiony w katalogu Adafruit_Python_CharLCD, aby zainstalować bibliotekę.
git clone https://github.com/adafruit/Adafruit_Python_CharLCD.git cd./Adafruit_Python_CharLCD sudo python setup.py install
Teraz biblioteka dla 16x2 LCD została zainstalowana i możesz korzystać z jej funkcji, po prostu importując tę bibliotekę do programu w Pythonie za pomocą poniższej linii:
importuj Adafruit_CharLCD jako LCD
W folderze „przykłady” znajdującym się w folderze biblioteki (Adafruit_Python_CharLCD) znajduje się kilka przykładowych skryptów. Możesz przetestować konfigurację, uruchamiając przykładowy skrypt char_lcd.py. Ale wcześniej musisz połączyć piny LCD z Raspberry Pi, jak podano poniżej na schemacie obwodu w następnej sekcji.
Możesz także połączyć LCD z innymi pinami GPIO Raspberry Pi, wszystko, czego potrzebujesz, aby wspomnieć o prawidłowych pinach interfejsu w programie Python, jak poniżej. Dowiedz się więcej o pinach GPIO Raspberry Pi tutaj.
# Konfiguracja pinów Raspberry Pi lcd_rs = 18 lcd_en = 23 lcd_d4 = 24 lcd_d5 = 16 lcd_d6 = 20 lcd_d7 = 21 lcd_backlight = 2
Teraz możesz bezpośrednio korzystać z funkcji udostępnianych przez Adafruit Library do sterowania wyświetlaczem LCD. Niektóre funkcje podano poniżej; więcej w przykładowym skrypcie:
- lcd.message (message) = Aby wydrukować tekst na wyświetlaczu LCD.
- lcd.clear () = Aby wyczyścić wyświetlacz LCD.
- lcd.set_cursor (col, row) = Przesuń kursor w dowolne miejsce w kolumnie i wierszu.
- lcd.blink (True) = Aby mrugnąć kursorem (prawda lub fałsz)
- lcd.move_left () = Aby przesunąć kursor w lewo o jedną pozycję.
- lcd.move_right () = Aby przesunąć kursor w prawo o jedną pozycję.
Teraz połączymy nasze Raspberry Pi z telefonem Android Smart za pomocą Bluetooth.
Instalowanie pakietów wymaganych do komunikacji Bluetooth:
Tutaj używamy Raspberry 2 Pi Model B, które nie ma wbudowanego Bluetooth, więc używamy prostego klucza USB Bluetooth do konfiguracji komunikacji Bluetooth w Raspberry Pi. Powinieneś mieć zainstalowaną kartę pamięci Raspbian Jessie z Raspberry Pi. Przeczytaj ten artykuł, aby zainstalować Raspbian OS i rozpocząć pracę z Raspberry Pi. Więc teraz musimy najpierw zaktualizować Raspbian za pomocą poniższych poleceń:
sudo apt-get update sudo apt-get upgrade
Następnie musimy zainstalować kilka pakietów związanych z Bluetooth:
sudo apt-get install bluetooth blueman bluez
Następnie uruchom ponownie Raspberry Pi:
sudo reboot
BlueZ to projekt open source i oficjalny stos protokołów Bluetooth w systemie Linux. Obsługuje wszystkie podstawowe protokoły Bluetooth i teraz staje się częścią oficjalnego jądra Linuksa.
Blueman zapewnia interfejs Desktop do zarządzania i sterowania urządzeniami Bluetooth.
Wreszcie potrzebujemy biblioteki Python do komunikacji Bluetooth, abyśmy mogli wysyłać i odbierać dane przez RFCOMM przy użyciu języka Python:
sudo apt-get install python-bluetooth
Zainstaluj także biblioteki obsługujące GPIO dla Raspberry Pi:
sudo apt-get install python-rpi.gpio
Skończyliśmy z instalacją wymaganych pakietów do komunikacji Bluetooth w Raspberry Pi.
Parowanie urządzeń z Raspberry Pi przez Bluetooth:
Parowanie urządzeń Bluetooth, takich jak telefon komórkowy, z Raspberry Pi jest bardzo łatwe. Tutaj sparowaliśmy nasz smartfon z Androidem z Raspberry Pi. Wcześniej zainstalowaliśmy BlueZ w Pi, które udostępnia narzędzie wiersza poleceń o nazwie „ bluetoothctl ” do zarządzania naszymi urządzeniami Bluetooth. Ale wcześniej podłącz swój klucz USB Bluetooth do Raspberry Pi i sprawdź, czy został wykryty, czy nie, używając poniższego polecenia:
lsusb
Teraz otwórz narzędzie bluetoothctl za pomocą poniższego polecenia:
sudo bluetoothctl
Możesz sprawdzić wszystkie polecenia narzędzia bluetoothctl , wpisując „ help” . Na razie musimy wprowadzić poniższe komendy w podanej kolejności:
# włączenie # włączenie agenta # wykrywanie podczas # sparowanie podczas # skanowanie włączone
Po ostatnim poleceniu „ skanuj ” na liście zobaczysz swoje urządzenie Bluetooth (telefon komórkowy). Upewnij się, że Twój telefon komórkowy ma włączony Bluetooth i jest widoczny dla pobliskich urządzeń. Następnie skopiuj adres MAC swojego urządzenia i sparuj go za pomocą polecenia:
para
Następnie zostaniesz poproszony o podanie kodu dostępu lub kodu PIN w konsoli terminala, a następnie wpisz tam hasło i naciśnij klawisz Enter. Następnie po wyświetleniu monitu wpisz to samo hasło w telefonie komórkowym, a teraz pomyślnie sparujesz z Raspberry Pi. Wyjaśniliśmy również cały ten proces w naszym poprzednim samouczku dotyczącym kontrolowania GPIO za pomocą Bluetooth.
Schemat obwodu:
Pisanie głosowe na ekranie LCD za pomocą aplikacji na Androida BlueTerm:
Teraz po sparowaniu telefonu komórkowego musimy zainstalować aplikację na Androida do komunikacji z Raspberry Pi za pomocą adaptera szeregowego Bluetooth. Protokół RFCOMM / SPP emuluje komunikację szeregową przez Bluetooth, dlatego zainstalowaliśmy tutaj aplikację BlueTerm, która obsługuje ten protokół.
Możesz także użyć dowolnej innej aplikacji terminala Bluetooth, która obsługuje komunikację przez gniazdo RFCOMM.
Teraz po pobraniu i zainstalowaniu aplikacji BlueTerm uruchom poniższy program w języku Python z terminala i jednocześnie podłącz sparowane urządzenie raspberrypi z aplikacji BlueTerm. Po udanym połączeniu zobaczysz połączony: raspberrypi w prawym górnym rogu aplikacji, jak pokazano poniżej. Teraz wybierz klawiaturę do pisania głosowego Google i zacznij mówić, pojawi się wyświetlacz LCD.
Program w Pythonie dla tego projektu jest podany poniżej i można go łatwo zrozumieć. Główna typowa część jest związana z Programowaniem Bluetooth, które wyjaśniliśmy wcześniej; sprawdź sekcję programowania w tym artykule.
Możemy dodatkowo rozszerzyć ten projekt poprzez użycie Voice do sterowania pinami Raspberry GPIO lub możemy zastosować większy wyświetlacz LCD / TFT do wyświetlania większych komunikatów. Sprawdź również nasze poprzednie projekty i samouczki dotyczące Raspberry Pi.