- Kinakailangan ang Mga Bahagi:
- Paggawa ng Paliwanag at Paglikha ng WebPage:
- Paliwanag sa Circuit:
- Paliwanag sa Programming at Flask:
Pamilyar tayong lahat sa Wireless Notice Board dahil naitayo na namin ang Wireless Notice Board gamit ang GSM at Arduino. Ngunit ngayon ay pupunta kami ng isang hakbang pasulong at sa halip na gamitin ang GSM bilang wireless medium, sa oras na ito ay gumagamit kami ng Internet upang wireless na ipadala ang mensahe mula sa Web Browser sa LCD na konektado sa Raspberry Pi. Tulad ng ipinadala na mensahe sa pamamagitan ng web browser, kaya maaari itong maipadala gamit ang Computer, smart phone o tablet, kaya't magdaragdag ito ng isa pang proyekto sa aming koleksyon ng mga proyekto ng IoT.
Sa Board ng Paunawa ng Kontrol ng Web na ito, lumikha kami ng isang lokal na web server para sa pagpapakita, maaari itong maging isang pandaigdigang server sa internet. Sa Raspberry Pi, gumamit kami ng 16x2 LCD upang ipakita ang mensahe at Flask para sa pagtanggap ng mensahe sa network. Tuwing tumatanggap ang Raspberry ng anumang wireless message mula sa Web browser, ipinapakita ito sa LCD. Tatalakayin namin ang tungkol sa mga bagay na ito nang detalyado sa artikulong ito.
Kinakailangan ang Mga Bahagi:
- Raspberry Pi 3 (anumang modelo)
- Wi-Fi USB adapter (kung hindi gumagamit ng Raspberry Pi 3)
- 16x2 LCD
- Lupon ng Tinapay
- Power cable para sa Raspberry Pi
- Mga kumokonekta na mga wire
- 10K Palayok
Paggawa ng Paliwanag at Paglikha ng WebPage:
Sa proyektong ito, ang pangunahing sangkap ay ang Raspberry Pi, na siyang puso ng proyektong ito at ginagamit upang makontrol ang mga proseso na nauugnay sa proyektong ito. Tulad ng: Pagmamaneho ng LCD, pagtanggap ng "Mga mensahe ng paunawa" mula sa server atbp.
Dito, lumikha kami ng isang web server, na nagbibigay ng isang paraan upang maipadala ang "Mensahe ng Paunawa" sa Raspberry Pi gamit ang Flask sa isang web browser. Ang Flask ay isang microframework para sa Python. Ang tool na ito ay batay sa Unicode pagkakaroon ng built-in na server ng pag-unlad at debugger, suportadong suporta sa pagsubok ng yunit, suporta para sa mga ligtas na cookies at madaling gamitin, ginagawang kapaki-pakinabang para sa hobbyist ang mga bagay na ito .
Lumikha kami ng isang webpage na may isang TextBox at isang Isumite na pindutan, kung saan maaari naming ipasok ang aming "Mensahe ng Paunawa" sa TextBox at pagkatapos ay isumite ito sa server sa pamamagitan ng pag-click sa pindutang Isumite. Ang web application na ito ay binuo sa pamamagitan ng paggamit ng wikang HTML. Ang code ng web page na ito ay ibinibigay sa ibaba at napakadaling maintindihan.
Lupon ng Paunawa sa Pagkontrol sa Web (Circuit Digest)
Matagumpay na Naihatid ang Paunawa: {{halaga}}
{% tapusin kung %}Kailangang kopyahin ng user ang paste sa itaas na ibinigay na HTML code sa ilang text editor (notepad) at i-save ang file gamit ang.HTML extension. Pagkatapos ay ilagay ang HTML file na ito sa parehong folder kung saan inilagay mo ang iyong file ng Python Code (na ibinigay sa dulo) para sa Kontroladong Web Board na ito na Kinokontrol. Ngayon ay maaari mo lamang patakbuhin ang code ng Python sa Raspberry Pi, buksan ang IP_address_of_your_Pi: 8080 sa web Browser (tulad ng 192.168.1.14:8080) at i-input ang mensahe at i-click ang isumite, sa sandaling isumite mo ang mensahe, makukuha mo ang mensahe Nakakonekta ang LCD sa Raspberry Pi. Suriin ang buong proseso sa Demonstration Video sa dulo.
Ang webpage ay nilikha gamit ang wikang HTML, na naglalaman ng isang form na mayroong isang textbox at magsumite ng pindutan, na may Heading (h1 tag) Web Control Notice Board . Ang form ay may "pagbabago" ay ang aksyon na isasagawa sa code gamit ang paraan ng pag- post , kapag nag-click kami sa pindutang Isumite. Ang slider ay naka-block na may label na "Mensahe ng Paunawa".
Pagkatapos nito, maaari kaming magdagdag ng isang opsyonal na linya upang maipakita ang teksto na ipinadala namin sa Raspberry Pi sa pamamagitan ng server.
{% kung halagang%}
Matagumpay na Naihatid ang Paunawa: {{halaga}}
{% tapusin kung %}Sinusuri nito ang halaga sa kahon ng teksto at kung mayroong ilang halaga sa textbox pagkatapos ay nai-print nito ang teksto sa webpage mismo, upang makita din ng gumagamit ang naisumite na mensahe. Narito ang 'halaga' ay “input text o mensahe ng paunawa” na i-type namin sa slider box o text box.
Paliwanag sa Circuit:
Ang mga koneksyon para sa Wireless Message Board na ito ay napakadali; kailangan lamang naming ikonekta ang LCD sa board na Raspberry Pi sa pamamagitan ng paggamit ng ilang mga konektor sa ibabaw ng board ng tinapay. Maaaring gumamit ang gumagamit ng zero PCB para sa mga koneksyon. Ang mga pin ng RS, RW at EN ng LCD ay direktang konektado sa pin 18, GND at 23. At ang mga data pin ng LCD D4, D5, D6, D7 ay direktang konektado sa Raspberry Pi's GPIO 24, 16, 20, 21. Ang isang 10K pot ay ginamit upang makontrol ang liwanag ng LCD.
Tandaan din, kung wala kang Raspberry Pi 3, kailangan mong gamitin ang USB Wi-Fi adapter para sa mas mababang bersyon ng Raspberry Pi dahil wala silang inbuilt na Wi-Fi tulad ng Raspberry Pi 3.
Paliwanag sa Programming at Flask:
Kami ay gumagamit ng Python wika dito para sa Programa. Bago ang pag-coding, kailangang i-configure ng gumagamit ang Raspberry Pi. Maaari mong suriin ang aming nakaraang mga tutorial para sa Pagsisimula sa Raspberry Pi at Pag-install at Pag-configure ng Raspbian Jessie OS sa Pi.
Bago ang programa ng Raspberry Pi, kailangang mag-install ang gumagamit ng isang suportang flask package sa Raspberry Pi sa pamamagitan ng paggamit ng mga ibinigay na utos:
$ pip install Flask
Matapos ito maaari mong patakbuhin ang programa ng Python sa editor ng sawa ng Raspberry Pi ngunit bago ito kailangan mong palitan ang IP address sa Program sa IP address ng iyong Raspberry Pi. Maaari mong suriin ang IP address ng iyong RPi board sa pamamagitan ng paggamit ng ifconfig command:
Ifconfig
Ang bahagi ng programa ng proyektong ito ay may mahalagang papel upang maisagawa ang lahat ng mga operasyon. Una sa lahat, nagsasama kami ng mga kinakailangang aklatan para sa Flask, pinasimulan ang mga variable at tinukoy ang mga pin para sa LCD.
mula sa flask import Flask mula sa flask import render_template, humiling ng pag-import ng RPi.GPIO bilang gpio import os, time app = Flask (__ name__) RS = 18 EN = 23 D4 = 24 D5 = 16 D6 = 20 D7 = 21………………..
Para sa LCD, ang function na def lcd_init () ay ginagamit upang pasimulan ang LCD sa apat na mode na bit, ang function na def lcdcmd (ch) ay ginagamit para sa pagpapadala ng utos sa LCD, ang function na def lcddata (ch) ay ginagamit para sa pagpapadala ng data sa LCD at def lcdstring (Str) Ang pagpapaandar ay ginagamit upang magpadala ng data string sa LCD. Maaari mong suriin ang lahat ng mga pagpapaandar na ito sa Code na ibinigay pagkatapos.
Sa ibaba bahagi ng Program ay ginagamit upang maipadala ang mensahe mula sa web browser sa Raspberry Pi gamit ang Flask. Maaari kang matuto nang higit pa tungkol sa programa gamit ang Flask dito.
@ app.route ("/") def index (): return render_template ('web.html') @ app.route ("/ baguhin", mga pamamaraan =) def pagbabago (): kung request.method == 'POST': # Pagkuha ng halaga mula sa data ng webpage1 = request.form lcdcmd (0x01) lcdprint (data1) return render_template ('web.html', halaga = data1) kung __name__ == "__main__": app.debug = True app.run ('192.168.1.14', port = 8080, debug = True)
Kaya't kung paano namin maipapadala ang mensahe mula sa aming computer o smartphone sa Raspberry Pi LCD at maaaring gumawa ng isang IoT batay sa Wireless Notice Board na kontrolado sa Web. Suriin ang Buong Python Code at Video ng Pagpapakita sa ibaba.