Программирование Вашего Дома В .Net

Я недавно писал здесь статья О проект системы управления умным домом , в разработке которого я участвую.

Это служба .

NET Windows, которая может управлять домом с помощью сценариев и веб-интерфейса.

Это было как раз в октябре релиз версии 2.0 .

Весь функционал системы содержится в плагинах.

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

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

Этот демонстрационный плагин собирает информацию с датчиков температуры/влажности nooLite и отображает полученную информацию в веб-интерфейсе.

Результат выглядит примерно так: график изменения температуры за последние два дня

Программирование вашего дома в .
</p><p>
NET

текущая температура в помещениях (точнее, последние значения, полученные с датчиков)

Программирование вашего дома в .
</p><p>
NET

Предлагаю вашему вниманию немного хардкорную статью о том, как писался этот плагин.

Там шаг за шагом объясняется процесс разработки собственного плагина для умного дома и приводятся ссылки на GitHub, где можно скачать готовый код и запустить его.

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

И, наконец, вы узнаете, как получать информацию о температуре и влажности с датчиков (если это единственное, что вас интересует, то листайте прямиком до самого конца статьи).



Настройка среды и создание шаблона проекта

Итак, то, что мы пишем, это плагин для приложения — службы Windows. Соответственно, вам сначала необходимо развернуть на своем компьютере сервис, к которому будет подключаться наш плагин.

Это очень легко сделать: просто скачайте установщик , запустите его и несколько раз нажмите «Далее».

Во время установки никаких параметров не запрашивается.

Сервис устанавливается в папку C:\Program Files (x86)\ThinkingHome\service .

Большой! Теперь давайте создадим пустой проект C# в Visual Studio. Библиотека классов , при создании выберите .

NET Framework 4.5 .

В принципе подойдет не только VS, но и любая другая IDE, например бесплатная Хамарин Студия (и, конечно же, вы можете воспользоваться бесплатным Визуальная Студия Экспресс ).



Программирование вашего дома в .
</p><p>
NET

Теперь вам нужно добавить ссылку на библиотеку в проект. ThinkingHome.Core.Plugins , который содержит базовые классы для плагинов.

Самый простой способ сделать это — включить его через менеджер пакетов NuGet. Просто введите в консоли менеджера пакетов:

  
   

Install-Package ThinkingHome.Core.Plugins

Дальше все просто: создаем класс МикроклиматПлагин , мы наследуем его от базового класса ThinkingHome.Core.Plugins.PluginBase и отметьте его атрибутом [ThinkingHome.Core.Plugins.PluginAttribute].

Класс PluginBase реализует базовый функционал плагина (подробнее об этом чуть позже), а атрибут нужен для подключения плагина к сервису через МЭФ .

Пытаемся скомпилировать проект и получаем ошибку.

Ага, забыли добавить в проект ссылку на библиотеку System.ComponentModel.Composition (эта библиотека входит в состав .

NET Framework и именно эта библиотека содержит реализацию MEF).

Добавили его, проект стал компилироваться без ошибок.

Теперь мы переопределяем методы базового класса, чтобы добавить в плагин собственную логику.



[Plugin] public class MicroclimatePlugin : PluginBase {

Теги: #Умный дом #.

NET #датчики #noolite #домашняя автоматизация #домашняя автоматизация

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.