- Componenti richiesti:
- Spiegazione di lavoro e creazione della pagina Web:
- Spiegazione del circuito:
- Spiegazione della programmazione e boccetta:
Conosciamo tutti la bacheca wireless poiché abbiamo già costruito bacheca wireless utilizzando GSM e Arduino. Ma oggi stiamo facendo un passo avanti e invece di utilizzare il GSM come mezzo wireless, questa volta utilizziamo Internet per inviare in modalità wireless il messaggio dal browser Web all'LCD che è connesso a Raspberry Pi. Poiché il messaggio viene inviato tramite il browser Web, può essere inviato utilizzando computer, smartphone o tablet, quindi aggiungerà un altro progetto nella nostra raccolta di progetti IoT.
In questa bacheca controllata dal web, abbiamo creato un server web locale per la dimostrazione, questo può essere un server globale su Internet. Sul Raspberry Pi, abbiamo utilizzato LCD 16x2 per visualizzare il messaggio e Flask per ricevere il messaggio sulla rete. Ogni volta che Raspberry riceve un messaggio wireless dal browser Web, viene visualizzato sul display LCD. Discuteremo di queste cose in dettaglio in questo articolo.
Componenti richiesti:
- Raspberry Pi 3 (qualsiasi modello)
- Adattatore USB Wi-Fi (se non si utilizza Raspberry Pi 3)
- LCD 16x2
- Tagliere per il pane
- Cavo di alimentazione per Raspberry Pi
- Cavi di collegamento
- Pot 10K
Spiegazione di lavoro e creazione della pagina Web:
In questo progetto, il componente principale è Raspberry Pi, che è il cuore di questo progetto e utilizzato per controllare i processi relativi a questo progetto. Come: guida LCD, ricezione di "messaggi di avviso" dal server, ecc.
Qui, abbiamo creato un server web, che fornisce un modo per inviare "messaggio di avviso" a Raspberry Pi utilizzando Flask in un browser web. The Flask è un microframework per Python. Questo strumento è basato su Unicode con server di sviluppo e debugger integrati, supporto per unit test integrato, supporto per cookie sicuri ed è facile da usare, queste cose lo rendono utile per l'hobbista .
Abbiamo creato una pagina web con una casella di testo e un pulsante Invia, dove possiamo inserire il nostro "Messaggio di avviso" in TextBox e quindi inviarlo al server facendo clic sul pulsante Invia. Questa applicazione web è sviluppata utilizzando il linguaggio HTML. Il codice di questa pagina web è fornito di seguito ed è molto facile da capire.
Bacheca per il controllo web (Circuit Digest)
Avviso inviato correttamente: {{value}}
{% finisci se %}L'utente deve copiare e incollare il codice HTML sopra indicato in un editor di testo (blocco note) e salvare il file con estensione.HTML. Quindi metti questo file HTML nella stessa cartella in cui hai messo il tuo file di codice Python (dato alla fine) per questa bacheca web controllata. Ora puoi semplicemente eseguire il codice Python in Raspberry Pi, aprire IP_address_of_your_Pi: 8080 nel browser web (come 192.168.1.14:8080) e inserire il messaggio e fare clic su Invia, non appena invii il messaggio, riceverai il messaggio su LCD collegato a Raspberry Pi. Alla fine, controlla l'intero processo nel video dimostrativo.
La pagina Web viene creata utilizzando il linguaggio HTML, che contiene un modulo con una casella di testo e un pulsante di invio , con Intestazione (tag h1) Bacheca del controllo web . Il modulo ha "modifica" è l' azione che verrà eseguita nel codice utilizzando il metodo post , quando faremo clic sul pulsante Invia. Lo slider è un blocco con l' etichetta "Avviso Messaggio".
Dopo di ciò, possiamo aggiungere una riga opzionale per mostrare il testo che abbiamo inviato al Raspberry Pi tramite il server.
{% if value%}
Avviso inviato correttamente: {{value}}
{% finisci se %}Controlla il valore nella casella di testo e se c'è un valore nella casella di testo, stampa il testo sulla pagina web stessa, in modo che l'utente possa anche vedere il messaggio inviato. Qui 'valore' è "testo di input o messaggio di avviso" che digiteremo nella casella di scorrimento o nella casella di testo.
Spiegazione del circuito:
Le connessioni per questa Bacheca wireless sono molto semplici; abbiamo solo bisogno di collegare LCD con la scheda Raspberry Pi utilizzando alcuni connettori sulla breadboard. L'utente può utilizzare zero PCB per i collegamenti. I pin RS, RW ed EN dell'LCD sono collegati direttamente ai pin 18, GND e 23. E i pin dati dell'LCD D4, D5, D6, D7 sono direttamente collegati al GPIO 24, 16, 20, 21 di Raspberry Pi. Un pot 10K è utilizzato per controllare la luminosità del display LCD.
Ricorda inoltre, se non hai Raspberry Pi 3, devi utilizzare l'adattatore Wi-Fi USB per la versione inferiore di Raspberry Pi poiché non hanno Wi-Fi integrato come Raspberry Pi 3.
Spiegazione della programmazione e boccetta:
Stiamo usando il linguaggio Python qui per il programma. Prima della codifica, l'utente deve configurare Raspberry Pi. Puoi controllare i nostri tutorial precedenti per Introduzione a Raspberry Pi e Installazione e configurazione del sistema operativo Raspbian Jessie in Pi.
Prima di programmare Raspberry Pi, l'utente deve installare un pacchetto di supporto flask nel Raspberry Pi utilizzando i comandi dati:
$ pip install Flask
Dopo di ciò puoi eseguire il programma Python nell'editor python di Raspberry Pi ma prima di questo devi sostituire l'indirizzo IP in Programma con l'indirizzo IP del tuo Raspberry Pi. Puoi controllare l'indirizzo IP della tua scheda RPi usando il comando ifconfig:
Ifconfig
La parte di programmazione di questo progetto gioca un ruolo molto importante per eseguire tutte le operazioni. Prima di tutto, includiamo le librerie richieste per Flask, inizializziamo le variabili e definiamo i pin per LCD.
from flask import Flask from flask import render_template, richiesta import RPi.GPIO as gpio import os, time app = Flask (__ name__) RS = 18 EN = 23 D4 = 24 D5 = 16 D6 = 20 D7 = 21………………..
Per LCD, la funzione def lcd_init () viene utilizzata per inizializzare LCD in modalità a quattro bit, la funzione def lcdcmd (ch) viene utilizzata per inviare comandi a LCD, la funzione def lcddata (ch) viene utilizzata per inviare dati a LCD e def lcdstring (Str) viene utilizzata per inviare una stringa di dati all'LCD. Puoi controllare tutte queste funzioni nel codice fornito in seguito.
La parte sottostante del programma viene utilizzata per inviare il messaggio dal browser Web a Raspberry Pi utilizzando Flask. Puoi saperne di più sulla programmazione usando Flask qui.
@ app.route ("/") def index (): return render_template ('web.html') @ app.route ("/ change", methods =) def change (): if request.method == 'POST': # Recupero del valore dalla pagina web data1 = request.form lcdcmd (0x01) lcdprint (data1) return render_template ('web.html', value = data1) if __name__ == "__main__": app.debug = True app.run ('192.168.1.14', porta = 8080, debug = True)
Quindi è così che possiamo inviare il messaggio dal nostro computer o smartphone al display LCD Raspberry Pi e possiamo creare una bacheca wireless basata su IoT controllata tramite Web. Controlla il codice Python completo e il video dimostrativo di seguito.