Привет, друзья!
Ответ прост, конечно нужен, но не дисплей, а монитор или, в крайнем случае, телевизор. Можно, конечно, к "Малинке прикрутить" дисплей LCD 1602, но выглядеть это будет как минимум странно.
Понятное дело, с помощью Raspberry Pi хочется получать с датчиков показания и видеть их визуально в виде символов, цифр или графиков на мониторе, но не все так просто с этой малинкой и без танцев с бубном, знания языка Python в этой ситуации не обойтись.
Посмотрите, чего можно добиться, потратив несколько вечеров на изучения Python и написав полотно кода.
Другое дело, программа Scratch, она же S4A, созданная кстати на Python.
Не знакомы со Scrath?
Тогда вам сюда, узнаете немного о прорамме и как установить на Raspberry Pi : Среда программирования Arduino. Устанавливаем Scratch на Raspberry Pi
Ещё мои статьи о S4A можно прочитать здесь: Raspberry Pi & Scratch
Не нужно писать ни какие скрипты, все максимально просто и доступно. Программируется легко и визуально понятно - программа составляется как игра в тетрис.
Единственный минус в том, что в данной ситуации Raspberry Pi взаимодействует с программой S4A, только в связке платой Arduino через USB-порт, но это только к лучшему - вы точно не загубите Raspberry. Но есть плюс, может управляться удаленно, например со смартфона.
Разберем работу программы на примере датчика освещенности - фоторезистора.
Данная схема может быть использована как для включения и отключения уличного освещения, так и для досветки рассады.
В схеме предусмотрен переход на ручной режим управления для этого на нормально замкнутые контакты реле SRD-05VDC установлен бытовой выключатель, для управления в ручном режиме выполнение программа в S4A нужно отключить. Светодиод установлен в качестве индикации, можно исключить из схемы с последующей коррекцией программы. Фоторезистор не должен находиться в зоне включаемого освещения.
Создаем программный код
Запускаем программу S4A, для тех кто не знаком со Scratch, подсказка здесь.
Первым делом открываем вкладку "Переменные" и создаем переменную fotorezistor.
Переходим на вкладку Контроль и перетаскиваем из левой части окна в правую команды "когда нажата пробел клавиша" и "всегда".
Соединяем команды как пазлы.
Команду "когда ..." можно выбрать любую из трёх, но по своему опыту понял, что со смартфона удобней управлять именно клавишами.
Снова переходим на вкладку Переменные и в команду "всегда" вставляем команду "поставить fotorezistor в 0".
Опять переходим на вкладку Движение, устанавливаем два блока "если" после команда "поставить ... 0".
Переходим на вкладку Операторы, устанавливаем в команды "если" команды "...<..." и "...>...".
Не перепутайте местами, от этого зависит правильность выполнения программы.
Переходим на вкладку Движение, устанавливаем команды как на фото.
Установим блок "volue of sensor Analog0" в команду "поставить...", блок "digital...on" верхнюю команду "если", блок "digital...off" в нижний блок "если". В блоках "digital...on" и "digital...off" поменяйте с помощью выпадающего меню номера пинов 13 на пин 12 в одном из блоков(смотри фото).
В блоки-операторы "...<..." и "...>..." добавляем по блоку "volue of sensor Analog0", во вторую клетку впечатываем по число 400 (если будет не достаточно, после тестирования можно будет исправить).
В принципе, программа готова, если вы еще не сохранили, то можете "сохранить как..." в меню File и закрыть программу.
Подключите плату Arduino Uno с подсоединенной к ней схемой к плате Rasspberry Pi, запустите программу S4A и через меню File откройте сохраненную программу.
Для запуска выполнения программы нажмите клавишу пробел. Работает?
Прикройте фоторезистор рукой, светодиод должен загореться, а реле включиться.
Если всё работает, давайте позаботимся о будущей анимации, визуализации и информативности нашей программе.
В правой части окна программы находиться сцена, на которой можно разместить показания датчиков, и запустить анимацию. Освободим сцену от всего лишнего. Для начала уберем панель показаний аналоговых пинов.
Для этого во вкладке Движение установим 2 блока, "hide board" установим в тело программы, а "show board" просто установим на пустое поле. При запуске программы панель исчезнет и появиться только тогда, когда вы сами нажмете мышкой на блок "show board".
На вкладке Костюмы берем и устанавливаем аналогично блоки "показаться" и "спрятаться", только прятать и показывать они будут изображение платы Arduino.
Ну вот, сцену расчистили, теперь на ней находятся только данные переменной, их мы убирать не будем. Осталось запустить на ней анимацию.
Но об этом в следующей статье.
Продолжение следует...
На этом сегодня всё, надеюсь было интересно.
Если вы что-то не поняли, файл программы по ссылке на Яндекс Диск
https://yadi.sk/d/d-FwtR6dMtuiBg
Хотите больше статей о программировании, рекомендую перейти по ссылке в меню нашего навигатора по каналу:
Страница навигации XOD IDE или Raspberry Pi & Scratch
или Как выгодно покупать на AliExpress
Экспериментируйте!!!
Спасибо, что дочитали статью до конца. Надеюсь статья была вам полезна и интересна. Понравилась статья, ставьте палец вверх.
И не забывайте подписывайтесь на наш канал :)
Впереди ещё много интересного!
Вы можете помочь проекту в развитии: