- Необходимые компоненты:
- Рабочее объяснение и создание веб-страницы:
- Описание схемы:
- Объяснение программирования и колба:
Все мы знакомы с Wireless Notice Board, поскольку мы уже создали Wireless Notice Board с использованием GSM и Arduino. Но сегодня мы идем на шаг впереди и вместо использования GSM в качестве беспроводной среды, на этот раз мы используем Интернет для беспроводной отправки сообщения из веб-браузера на ЖК-дисплей, подключенный к Raspberry Pi. Поскольку сообщение отправляется через веб-браузер, его можно отправить с помощью компьютера, смартфона или планшета, поэтому он добавит еще один проект в нашу коллекцию проектов IoT.
На этой доске объявлений, управляемой через Интернет, мы создали локальный веб-сервер для демонстрации, это может быть глобальный сервер через Интернет. В Raspberry Pi мы использовали ЖК-экран 16x2 для отображения сообщений и Flask для получения сообщения по сети. Каждый раз, когда Raspberry получает какое-либо беспроводное сообщение от веб-браузера, оно отображается на ЖК-дисплее. Об этом мы подробно поговорим в этой статье.
Необходимые компоненты:
- Raspberry Pi 3 (любая модель)
- USB-адаптер Wi-Fi (если не используется Raspberry Pi 3)
- ЖК-дисплей 16x2
- Хлебная доска
- Кабель питания для Raspberry Pi
- Соединительные провода
- 10K горшок
Рабочее объяснение и создание веб-страницы:
В этом проекте основным компонентом является Raspberry Pi, который является сердцем этого проекта и используется для управления процессами, связанными с этим проектом. Например: управление ЖК-дисплеем, получение «уведомлений» от сервера и т. Д.
Здесь мы создали веб-сервер, который позволяет отправлять «Уведомление» в Raspberry Pi с помощью Flask в веб-браузере. Flask - это микрофреймворк для Python. Этот инструмент основан на Unicode, имеет встроенный сервер разработки и отладчик, интегрированную поддержку модульного тестирования, поддержку безопасных файлов cookie и простоту использования, что делает его полезным для любителей .
Мы создали веб-страницу с текстовым полем и кнопкой «Отправить», где мы можем ввести наше «сообщение с уведомлением» в текстовое поле, а затем отправить его на сервер, нажав кнопку «Отправить». Это веб-приложение разработано с использованием языка HTML. Код этой веб-страницы приведен ниже и очень прост для понимания.
Доска объявлений веб-контроля (Circuit Digest)
Уведомление успешно отправлено: {{value}}
{% endif%}Пользователь должен скопировать и вставить приведенный выше HTML-код в какой-нибудь текстовый редактор (блокнот) и сохранить файл с расширением.HTML. Затем поместите этот HTML-файл в ту же папку, в которую вы поместили свой файл кода Python (указанный в конце) для этой веб-доски объявлений. Теперь вы можете просто запустить код Python в Raspberry Pi, открыть IP_address_of_your_Pi: 8080 в веб-браузере (например, 192.168.1.14:8080), ввести сообщение и нажать кнопку «Отправить», как только вы отправите сообщение, вы получите сообщение на ЖК-дисплей подключен к Raspberry Pi. Проверьте весь процесс в демонстрационном видео в конце.
Веб-страница создается с использованием языка HTML, который содержит форму с текстовым полем и кнопкой отправки с заголовком (тег h1) Доска объявлений веб-контроля . В форме указано «изменение» - это действие, которое будет выполнено в коде с использованием метода публикации , когда мы нажмем кнопку «Отправить». Слайдер представляет собой блок с этикеткой «оповещает».
После этого мы можем добавить необязательную строку для отображения текста, который мы отправили на Raspberry Pi через сервер.
{% если значение%}
Уведомление успешно отправлено: {{value}}
{% endif%}Он проверяет значение в текстовом поле, и если в текстовом поле есть какое-то значение, он печатает текст на самой веб-странице, чтобы пользователь также мог видеть отправленное сообщение. Здесь «значение» - это «текст ввода или сообщение уведомления», которое мы будем вводить в поле слайдера или текстовое поле.
Описание схемы:
Подключить эту беспроводную доску сообщений очень просто; нам нужно только подключить ЖК-дисплей к плате Raspberry Pi, используя несколько разъемов над макетной платой. Пользователь может использовать нулевую плату для соединений. Контакты RS, RW и EN ЖК-дисплея напрямую подключены к контактам 18, GND и 23. А контакты данных ЖК-дисплея D4, D5, D6, D7 напрямую подключены к GPIO 24, 16, 20, 21 Raspberry Pi. используется для управления яркостью ЖК-дисплея.
Также помните, что если у вас нет Raspberry Pi 3, вам необходимо использовать USB-адаптер Wi-Fi для более низкой версии Raspberry Pi, поскольку у них нет встроенного Wi-Fi, такого как Raspberry Pi 3.
Объяснение программирования и колба:
Здесь для Программы мы используем язык Python. Перед кодированием пользователю необходимо настроить Raspberry Pi. Вы можете проверить наши предыдущие руководства по началу работы с Raspberry Pi и установке и настройке Raspbian Jessie OS в Pi.
Перед программированием Raspberry Pi пользователю необходимо установить пакет поддержки flask в Raspberry Pi, используя следующие команды:
$ pip install Flask
После этого вы можете запустить программу Python в редакторе Python Raspberry Pi, но перед этим вам необходимо заменить IP-адрес в Program на IP-адрес вашего Raspberry Pi. Вы можете проверить IP-адрес своей платы RPi с помощью команды ifconfig:
Ifconfig
Программная часть этого проекта играет очень важную роль для выполнения всех операций. Прежде всего, мы включаем необходимые библиотеки для Flask, инициализируем переменные и определяем контакты для ЖК-дисплея.
from flask import Flask from flask import render_template, запросить импорт RPi.GPIO как gpio import os, time app = Flask (__ name__) RS = 18 EN = 23 D4 = 24 D5 = 16 D6 = 20 D7 = 21………………..
Для ЖК-дисплея функция def lcd_init () используется для инициализации ЖК-дисплея в четырехбитном режиме, функция def lcdcmd (ch) используется для отправки команды на ЖК-дисплей, функция def lcddata (ch) используется для отправки данных на ЖК-дисплей, а функция def lcdstring (Str) используется для отправки строки данных на ЖК-дисплей. Вы можете проверить все эти функции в приведенном ниже коде.
Ниже часть программы используется для отправки сообщения из веб-браузера в Raspberry Pi с помощью Flask. Вы можете узнать больше о программировании с помощью Flask здесь.
@ app.route ("/") def index (): return render_template ('web.html') @ app.route ("/ change", methods =) def change (): if request.method == 'POST': # Получение значения с веб-страницы 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', порт = 8080, отладка = True)
Вот как мы можем отправлять сообщение с нашего компьютера или смартфона на ЖК-дисплей Raspberry Pi и управлять беспроводной доской уведомлений на основе Интернета вещей через Интернет. Посмотрите полный код Python и демонстрационное видео ниже.