nooLite: проект завершён

Mar 19, 2016 15:29

Пару недель назад я задавал вопрос по поводу оборудования nooLite, на базе которого я собирался с детьми написать небольшую программку. Оборудование приехало, программку мы написали, сейчас о ней расскажу.



Но сперва - ответы на вопросы, которые задавали в комментах к предыдущему посту.

1. Почему nooLite, а не например Arduino или XXXX?

Во-первых, Arduino и прочие - это уже next level. Моя задача была в том, чтобы научить детей программированию на реальном примере. Глубокая возня с железом в этот проект не входила, а например для включения/выключения 220В через Arduino надо городить силовую обвязку. А для связи с ПК (там находится редактор расписания) надо добавлять к нему радиосвязь, передачу данных, и так далее - решение будет не таким уж простым и не таким уж дешёвым.

Во-вторых, у меня нет контактов директора Arduino, а контакты директора nooLite есть на их сайте, да и сами они находятся в братской Беларуси, и говорят по-русски. То есть договориться "пришлите мне бесплатно вот эти пару девайсов, а я сделаю на них небольшой проект" с nooLite гораздо проще :)

2. Почему Delhi, а не например C#, Java или XXXX?

Потому что моя задача была в том, чтобы научить детей программированию. А я знаете ли последний раз программы писал в далёком 2009 году (и с тех пор ни строчки кода, ужс). И писал именно на Delphi, лет 10 подряд - то есть я его знаю лучше, чем другие языки. А чтобы учить кого-то, надо знать предмет очень глубоко. Так что выбора особого не было.

Это был обучающий, тренировочный проект. Нужно было по шагам пройти постановку задачи, проектирование, интерфейс, код, отладку - чтобы дети уловили суть этой профессии. Ессно масса задач, платформ и языков у них впереди.

3. А что собственно за проект?

Программа, которая включает и выключает школьные звонки по расписанию :) Сейчас в школе у сына всё по старинке - назначается дежурный ученик, который по часам жмёт кнопку. А за стенкой есть кабинет секретаря, у неё есть компьютер с WinXP, который включен с утра до вечера. Отсюда решение: на компьютере программа, которая висит в трее и звонит согласно заданному расписанию. В ней есть редактор расписания, настройка звонков - и собственно всё.

4. И как решали?

Delphi 7 (я знаю, что есть версии свежее, но я с ними не знаком, а значит см.выше), библиотека JEDI (впрочем из неё был использован только компонент для вывода иконки в трей) и пара моих модулей из прошлой жизни для работы с XML. Настройки и расписание программы мы храним в XML-фале, вот таком:



В принципе из него уже понятно, как работает программа :) В ней всего три окна.



Исходный код и собственно готовую программу можно скачать здесь. Код местами писал я, а местами дети, над которыми я нависал и давал ценные указания. Напомню, что это первый их проект, мне нужно было показать им "как правильно", чтобы не тяп-ляп и по всем правилам. В следующих задачах им будет отдаваться всё больше инициативы.

Например железо они собирали самостоятельно, вплоть до паяния проводов (Артём раньше ходил на радиокружок и очень гордится полученными там ожогами).



На фото - процесс сборки розетки. Школьного звонка у нас дома нет, вместо него была взята старая настольная лампа, которую включали в розетку, а розетка привинчена к силовому блоку nooLite SL111-300, который управляется по радиоканалу - т.е. фактически это радиовыключатель. Сигналы ему посылает адаптер для компьютера PC118.

Поставляются они вот в такой упаковке (кубики для масштаба):



Внутри, кроме самих девайсов, компакт-диск с драйверами и инструкция.



У радиовыключателя два белых провода (вход 220В), два чёрных (выход 220В) и серая антенна. У напоминающего флешку адаптера с одного конца USB-разъём, с другого такая же антенна. Дальность связи - до 50 метров, у нас по задаче всего 5 метров, но через стену.

Главный плюс оборудования от nooLite - простота использования. Радиоканал на 433Мгц позволяет разворачивать сеть в любом помещении без укладки километров кабелей, штробления стен, уничтожения дорогостоящего ремонта. Связывание устройств производится нажатием на корпус радиовыключателя - он работает как кнопка. После этого у вас есть 15 секунд, чтобы на компьютере указать "да, я хочу привязать этот свисток к этому выключателю". Кстати, к одному выключателю можно привязать до 37 управляющих устройств: например управление с ПК, вкл/выкл напрямую, дистанционное с другого конца склада, ну и т.д. В более сложных версиях выключателей (например SN111-300) есть градация напряжения на выходе (регулировка яркости), память состояния, сценарии и т.п. Но для нашей задачи был нужен простой радиовыключатель on/off.

Но это я отвлёкся. На сайте nooLite есть примеры, готовые решения и наборы для "умного дома", так что всем интересующимся темой - туда. Я могу только подтвердить, что оборудование качественное и очень простое в использовании.

5. А дальше что?

А дальше этап внедрения :) Принципиальное согласие директора школы мы получили, остаётся только разобрать кнопку звонка, внедрить туда радиовыключатель, установить программу на компьютер секретаря (инсталлятор мы не делали, в другой раз), настроить и забыть.

Потому что дальше детям хочется сделать мобильное приложение под Андроид - тоже для школы, но не для звонков.

Пока всё :)

Лытдыбр, Интересное

Previous post Next post
Up