Интернет вещей. Информационная панель в фойе лицея KosachenkoSV's blog / 18.10.2015 Интернет вещей (англ. Internet of Things, IoT) — концепция вычислительной сети физических объектов («вещей»), оснащённых встроенными технологиями для взаимодействия друг с другом или с внешней средой, рассматривающая организацию таких сетей как явление, способное перестроить экономические и общественные процессы, исключающее из части действий и операций необходимость участия человека. http://ru.wikipedia.org/wiki/Интернет_вещей Появилась интересная задача: превратить в информационную панель с отображением динамической информации широкоформатный ЖК-телевизор, который был подвешен в фойе лицея. Задача была решена с применением новой технологии, которая называется "Интернет вещей". До этого телевизор использовался для демонстрации слайд-шоу изображений из графических файлов, записанных на флешку. Флешка вставлялась в USB-порт телевизора, такая опция теперь не редкость. Чтобы сменить показываемую информацию, требовалось карабкаться на высоту к телевизору, вынимать флешку, перезаписывать файлы и снова вставлять флешку. Сама процедура смены флешки была не очень сложной, но как известно: «лень - двигатель прогресса», - поэтому хотелось: а) автоматизации смены информационного контента; б) не только слайд-шоу картинок и фотографий, а и динамической информации вроде бегущей строки с объявлениями, часов с отсчетом времени с начала урока или перемены, подсчетом дней до каникул, прогнозом погоды; в) легкой масштабируемости, чтобы можно было запросто устанавливать такие табло в другие места лицея без дополнительных настроек.Для начала задались вопросом: есть ли готовые решения на рынке под наши «хотелки»? Действительно, решения подобные есть, например, «умные телевизоры», активно использующиеся в гостиничном бизнесе. Телевизоры в гостиничных номерах образуют информационную сеть, распространяющую информационный контент (объявления, фильмы, слайд-шоу и пр.) от информационного сервера. Но стоимость таких телевизоров оказалась высокой (за цену одного с встроенным компьютеризированным блоком, мы могли бы приобрести три «обычных» смарт-ТВ с такой же диагональю), к тому же требовалось бы приобретать лицензию на серверное ПО, формирующее и транслирующее контент на телевизоры, да и требования к серверу нас не устроили, т.к. все ПО ориентировалось на Windows Server, а у нас сервера отлично работают под FreeBSD и Linux. Конечно, при таком раскладе соображения экономии оказались на первом месте, к тому же решение нашей задачи - отличный проект для школы, с точки зрения изучения ИТ-технологий. Для автоматизации получения информационного контента и вывода его на ЖК-телевизор можно применить персональный компьютер, но «зачем стрелять из пушки по воробьям»?! Нам всего лишь потребуется программируемый миникомпьютер с HDMI выходом для подключения телевизора, с сетевым интерфейсом или возможностью подключения WiFi-адаптера, с маломощным питанием. На эту роль отлично подошел Raspberry Pi B. Он компактный, загружает ОС с SD-карты, имеет вывод HDMI, два порта USB, сетевой порт RJ45, к тому же он маломощный и может питаться от USB-порта (ПК или ТВ). Записали на SD-карту Linux дистрибутив Raspberian, подключили к HDMI монитор, вставили в первый USB-порт беспроводной WiFi-адаптер (совместимый с Linux), а во второй USB-порт через USB-хаб на время настройки подключили клавиатуру и мышь. Затем запустили Raspberry Pi и настроили ОС, разрешение экрана и доступ в защищенную WiFi-сеть лицея. Именно посредством WiFi наш миникомпьютер будет получать информацию. Для получения и показа информационного контента проще всего воспользоваться web-технологиями. На web-сервере под управлением Linux Ubuntu 12.04 LTS будем размещать web-страницу, созданную на HTML и JavaScript. А на Raspberry Pi мы настроили автоматический запуск браузера Midori, который сразу после запуска открывает в полноэкранном режиме наш информационный сайт. На сайте разместили бегущую строку, поле для слайд-шоу, поле для календаря/часов и подсчета текущего времени с начала урока/перемены и сколько дней осталось до каникул. В качестве прогноза погоды выводим графический информер с одного из погодных интернет-серверов. Миникомпьютер Raspberry Pi разместили в корпусе из подходящей картонной коробочки, в которой прорезали отверстия для проводов, вентиляционные отверстия и вмонтировали вентилятор 12 Вольт (из старого БП) для охлаждения миникомпьютера. Вентилятор подключили к +5 Вольтам и GND на выводах GPIO Raspberry Pi. От этого он медленнее вращается, но зато работает тихо. Чуть позже на греющиеся чипы миникомпьютера для дополнительного теплоотведения прикрепили радиаторы, смазав места соединения термопастой. Радиаторы подходящего размера напилили из подходящего радиатора, снятого с чипсета материнской платы, сгоревшего когда-то компьютера. Тестирование показало, что наш проект оказался удачным. Информационная панель в настоящее время работает в фойе нашего Томского физико-технического лицея. Если будет необходимо разместить дополнительные информационные панели в здании лицея, то достаточно будет склонировать SD-карту с настроенного Raspberry Pi, вставить ее в другой миникомпьютер, который также подключить к ЖК-телевизору и разместить в зоне приема WiFi. При включении он автоматически получит web-страничку и отобразит ее на экране. Где здесь Интернет вещей (IoT)? Обычно технология IoT подразумевает опрос датчиков умными устройствами, которые загружают измеренные показания в интернет-облако (web-сервер). Однако, из облака информацию необходимо отображать, и в нашем случае именно такой подход был применен, причем наше автоматическое устройство отображения может быть размещено в любом месте, где есть устойчивая WiFi-связь. Экономический эффект Мы создали весьма бюджетный вариант информационной панели. Для проекта было приобретено: Самый недорогой ЖК-телевизор 48'' с HDMI входом и USB-портом (используется для питания Raspberry Pi), Raspberry Pi B, SD-карта на 8Gb, WiFi-адаптер USB (с поддержкой Linux), HDMI-кабель 0,5 м, Mini-USB-кабель 0,5 м (используется для питания Raspberry Pi). Коробку для корпуса, вентилятор для охлаждения и радиатор нам приобретать не пришлось.+ наше НОУХАУ и желание довести проект до конечного результата Писать про стоимость перечисленного не имеет смысла, т.к. многое было приобретено до печально известного «скачка цен при падении рубля». Что мы узнали нового при работе над проектом Научились настраивать ОС Linux Raspberian для Raspberry Pi, работать удаленно в консоле. Во время проекта выяснилось, что часы миникомпьютера не могли настраиваться через интернет по протоколу NTP, т.к. школьный интернет-фильтр контентной фильтрации блокирует этот протокол в целях информационной безопасности, поэтому для автоматического подведения часов на Raspberry Pi пришлось разработать собственную систему команд ("костыль"), по запросу (используется CRON) передаваемую по http с веб-сервера, где хранится информационный контент, на миникомпьютер. Нашли в интернете и доработали скрипты на JavaScript для отображения даты, времени и подсчета времени урока или перемены и количества дней до каникул. Разобрались с параметрами HTML-тега "бегущая строка", с ifame, с jquery и Super Simple Slider для создания слайд-шоу на веб-странице. Разобрались с GPIO на Raspberry Pi при подключении охлаждающего вентилятора. Убедились, что чипы миникомпьютера нужно лучше охлаждать, для чего напилили радиаторы ножовкой по металлу и закрепили их на чипах, используя недорогую термопасту и канцелярские скрепки (купить термоклей для радиаторов не позволила высокая его цена и решение тратить при покупке поменьше карманных денег).Узнали, почему в целом наш проект подходит под понятие технологии Интернет вещей. Internet of Things IoT Linux Raspberry Pi СПО ТФТЛ интернет вещей