- Požadované komponenty:
- Pracovné vysvetlenie a vytvorenie webovej stránky:
- Vysvetlenie obvodu:
- Vysvetlenie programovania a banka:
Všetci poznáme Bezdrôtovú nástenku, pretože sme už postavili Bezdrôtovú nástenku pomocou GSM a Arduina. Ale dnes ideme o krok vpred a namiesto bezdrôtového média GSM, tentoraz používame internet na bezdrôtové zasielanie správ z webového prehliadača na LCD, ktorý je pripojený k Raspberry Pi. Keďže sa správa odosiela cez webový prehliadač, je možné ju odoslať pomocou počítača, smartphonu alebo tabletu, takže do našej zbierky projektov IoT pridá ďalší projekt.
V tejto webovej riadenej nástenke sme vytvorili demonštračný lokálny webový server, ktorým môže byť globálny server cez internet. Na Raspberry Pi sme použili displej 16x2 LCD na zobrazenie správy a banku na príjem správy cez sieť. Kedykoľvek Raspberry prijme správu z webového prehľadávača, zobrazí sa na LCD displeji. O týchto veciach si podrobne povieme v tomto článku.
Požadované komponenty:
- Raspberry Pi 3 (akýkoľvek model)
- Wi-Fi USB adaptér (ak nepoužívate Raspberry Pi 3)
- 16x2 LCD
- Chlebová doska
- Napájací kábel pre Raspberry Pi
- Pripojovacie vodiče
- 10K hrniec
Pracovné vysvetlenie a vytvorenie webovej stránky:
V tomto projekte je hlavnou súčasťou Raspberry Pi, ktorý je srdcom tohto projektu a slúži na riadenie procesov súvisiacich s týmto projektom. Páči sa mi: Jazda na displeji LCD, prijímanie správ s upozornením zo servera atď.
Tu sme vytvorili webový server, ktorý poskytuje spôsob odosielania „správy s upozornením“ na Raspberry Pi pomocou banky vo webovom prehliadači. Flask je pre Python mikrorámcom. Tento nástroj je založený na kódovaní Unicode so zabudovaným vývojovým serverom a debuggerom, podporou integrovaného testovania jednotiek, podporou zabezpečených súborov cookie a jeho ľahkým používaním, vďaka čomu sú pre fandy užitočné .
Sme vytvorili webové stránky s textové polia a tlačidlo Odoslať, kde môžeme vstúpiť do nášho "Oznámenie Message" v textové pole a potom ju predloží na server kliknutím na tlačidlo Odoslať. Táto webová aplikácia je vyvinutá pomocou jazyka HTML. Kód tejto webovej stránky je uvedený nižšie a je veľmi ľahko pochopiteľný.
Nástenka ovládania webu (prehľad okruhu)
Oznámenie bolo úspešne odoslané: {{value}}
{% koniec Ak %}Užívateľ musí kopírovať a vložiť vyššie uvedený HTML kód do nejakého textového editora (poznámkového bloku) a uložiť súbor s príponou.HTML. Potom vložte tento súbor HTML do rovnakého priečinka, do ktorého ste vložili súbor kódu Python (uvedený na konci) pre túto webovú ovládanú nástenku. Teraz stačí spustiť kód Pythonu v Raspberry Pi, otvoriť IP_adresu_your_Pi: 8080 vo webovom prehliadači (napríklad 192.168.1.14:8080) a zadať správu a kliknúť na odoslať. Hneď ako správu odošleš, zobrazí sa ti správa LCD pripojený k Raspberry Pi. Celý proces skontrolujte v ukážkovom videu na konci.
Webová stránka je vytvorená v jazyku HTML, ktorý obsahuje formulár s textovým poľom a tlačidlom odoslať , s nadpisom Web Control Board (Značka h1). Forma je "zmena" je akcia , ktorá bude vykonaná v kóde pomocou príspevok metódu, keď klikneme na tlačidlo Odoslať. Jazdec je blok s štítkom "Upozornenie Message".
Potom môžeme pridať voliteľný riadok na zobrazenie textu, ktorý sme odoslali na server Raspberry Pi cez server.
{% if value%}
Oznámenie bolo úspešne odoslané: {{value}}
{% koniec Ak %}Skontroluje hodnotu v textovom poli a ak je v textovom poli nejaká hodnota, vytlačí text na samotnú webovú stránku, aby si používateľ mohol pozrieť aj odoslanú správu. Tu , hodnota ' je "vkladanie textu alebo oznámenia správa", že budeme písať v posuvnom rámčeku alebo textového poľa.
Vysvetlenie obvodu:
Pripojenie k tejto bezdrôtovej výveske je veľmi jednoduché; LCD iba musíme pripojiť k doske Raspberry Pi pomocou niektorých konektorov cez dosku na chlieb. Užívateľ môže na pripojenie používať nulový PCB. RS, RW a EN piny LCD sú priamo pripojené k pinom 18, GND a 23. A dátové piny LCD D4, D5, D6, D7 sú priamo pripojené k GPIO 24, 16, 20, 21. Raspberry Pi je pot. slúži na ovládanie jasu LCD.
Pamätajte tiež, že ak nemáte Raspberry Pi 3, musíte pre nižšiu verziu Raspberry Pi použiť USB Wi-Fi adaptér, pretože nemajú zabudovanú Wi-Fi ako Raspberry Pi 3.
Vysvetlenie programovania a banka:
Pre program používame jazyk Python. Pred programovaním musí používateľ nakonfigurovať Raspberry Pi. Môžete si pozrieť naše predchádzajúce výukové programy Začíname s Raspberry Pi a Inštalácia a konfigurácia Raspbian Jessie OS v Pi.
Pred programovaním Raspberry Pi musí užívateľ nainštalovať balík podpory banky do Raspberry Pi pomocou zadaných príkazov:
$ pip nainštalujte banku
Potom môžete spustiť program Python v editore Pythonu Raspberry Pi, ale predtým musíte nahradiť IP adresu v programe IP adresou vášho Raspberry Pi. IP adresu svojej RPi dosky môžete skontrolovať pomocou príkazu ifconfig:
Ifconfig
Programová časť tohto projektu hrá veľmi dôležitú úlohu pri vykonávaní všetkých operácií. Najskôr zahrnieme požadované knižnice pre Flask, inicializujeme premenné a definujeme piny pre LCD.
z flaskového importu Flask from flask import render_template, request import RPi.GPIO as gpio import os, time app = Flask (__ name__) RS = 18 EN = 23 D4 = 24 D5 = 16 D6 = 20 D7 = 21………………..
Pre LCD sa na inicializáciu LCD v štvorbitovom režime používa funkcia def lcd_init (), na odosielanie príkazov na LCD sa používa funkcia def lcdcmd (ch), na odosielanie údajov na LCD sa používa funkcia def lcddata (ch) a na str.) slúži na odoslanie dátového reťazca na LCD. Všetky tieto funkcie môžete skontrolovať v dodatočnom kóde.
Nižšia časť Programu sa používa na odoslanie správy z webového prehliadača na Raspberry Pi pomocou banky. Tu sa dozviete viac o programovaní pomocou banky.
@ app.route ("/") def index (): návrat render_template ('web.html') @ app.route ("/ zmena", metódy =) def change (): ak request.method == 'POST': # Získanie hodnoty z webovej stránky data1 = request.form lcdcmd (0x01) lcdprint (data1) vráti render_template ('web.html', value = data1) ak __name__ == "__main__": app.debug = skutočný app.run ('192.168.1.14', port = 8080, ladenie = True)
Takto môžeme poslať správu z nášho počítača alebo smartphonu na Raspberry Pi LCD a vytvoriť bezdrôtovú nástenku založenú na IoT ovládanú cez web. Skontrolujte celý kód Pythonu a ukážkové video nižšie.