Дипломна работа

Софтуерно приложение за автоматизация на домашни електронни системи | Защитена на: 01/01/1900

Анотация:

 

Съвременната домашна автоматизация представлява внедряване на електронни устройства в дома, чрез които уредите и системите в него могат да се управляват автоматично и/или дистанционно. Основната идея е възможността за настройка както на самостоятелен уред, така и на мрежа от няколко уреда. При регистрирани дадени входящи данни, тези уреди изпълняват зададени дейности.

 

В този вид дом, устройствата сами се грижат за това как и кога да работят. Например тостерът в кухнята може да започва да пече филийки всеки ден в 7 часа, отоплението да се включва при засечено движение, а овлажнителят за въздух да започва да работи веднага, след като се регистрира определено ниво на влажност в помещението.

 

На практика домашната автоматизация се използва като вид иконом, който прави ежедневието по-удобно, внася комфорт и едновременно с това пести енергия.

 

Системите могат да бъдат съвсем прости, например датчици, поставени на прозорците, които изпращат сигнал при отваряне, за да се вдигнат външните щори. От друга страна обаче те могат да се състоят и от много по-комплексна мрежа от инсталации. Тази мрежа може да бъде съставена от контролен център, който да позволява автоматизирано изключване на отоплението в определен час, пускане на осветление, включване на уреди и др.

       Заданието на дипломната работа произтича от актуалността на проблема и нуждата от пестене на енергия. 

Реализацията на дипломната работа би довела до следните очаквани ползи:

 

  • Програмата да работи на всички видове устройства - като компютър, таблет, мобилен телефон, стига те да имат достъп до интернет.
  • Програмата да е лесно преносима – независеща от типа на операционната система.
  • Програмата да има минимално време за контрол и безотказна работа – трябва да се вземат предвид закъснения причинени от операционната система, както и моментно състояние и латентност на мрежата.
  • Потребителят да не въвежда данни ръчно. При опит за подаване на грешна информация, следва да не се прекъсва нормалният ход на приложението, а да се показва съобщение за грешен вход/невалидни данни.
  • Програмата да предоставя възможност светлината да бъде контролирана по интензитет и осветлението да бива включвано и изключвано.
  • Програмата да предоставя възможност температурата да бъде визуализирана в реално време, да се задават определени градуси и режим, съответно на отопление или охлаждате. Системата сама да се грижи кога охлаждащото/отоплителното устройство да бъде включвано или изключвано.
  • Програмата да предоставя възможност за контрол над щори като се използва определена стъпка.
  • Програмата да мониторира всички величини чрез диаграми, показващи последните изменения във времето на съответната величина.
  • Програмата да не ползва външни софтуерни продукти, за симулационни цели.

 

Главна цел на дипломната е улеснение на крайния консуматор. Като продукт, предлагащ домашна автоматизация, се цели контрол и автоматизация на често използвани в дома системи. Предложеното решение ще предоставя управление над осветление, температура, ротация на щори, а също така и графично представяне чрез диаграми на изменението върху показалите на посочените величини. Програмата ще е изградена върху основата на jQuery mobile, с цел адаптирането към различни по размер устройства. Очаква се максимално бърза и безотказна работа, удовлетворяваща поставените цели. Тя ще отговаря на следните изисквания:

 

  • производителност - сървърното приложение трябва отговаря на заявките в допустими граници за клиенти през уеб браузър и мобилни приложения. Времето за реакция трябва да е под една секунда.

 

  • скалируемост - системата да позволява лесно разширение в случай на прогнози за увеличено натоварване.

 

  • наличност - също известен като гъвкавост. Наличност е описание на способността на системата да отговаря на заявки от клиентите на системата, независимо от обстоятелствата. Наличност изисква архитектурата да предостави известен излишък от ресурси, за да се поемат единични точки на повреда. Докато вертикална скалируемост може да осигури това чрез създаване на повече процеси, използването на една физическа машина си остава невъзстановяема точка на повреда. Това е една от причините поради, която гъвкавите системи включват хоризонтално разширение чрез множество сървъри.
  • приложението да позволява лесно модифициране чрез подбор на подходящи подходи за разработка.

 

За целта са използвани следните технологии:

  • jQuery mobile
  • HTML
  • CSS
  • JavaScript
  • Ajax
  • Java
  • Python
  • Jackson
  • Java Servlets
  • HTTP
  • Apache Tomcat
  • SQLite
  • Raspberry Pi

 

Приложението отговаря на всички изисквания на потребителя . То успешно се адаптира към различни по размер устройства, като няма специфични технически изисквания към операционната система, ограничавайки се само до необходимостта от мрежови интерфейс. Приложението осъществява контрол над поставените задачи, като валидира клиентския вход, улеснявайки клиентския избор. Благодарение на предимства на приложението над конкурентни такива, се осигурява ниша, която предразполага бъдещето му развитие в конкурента среда.  От проведените тестове се вижда,  че при опит за въвеждане на недопустим даннови поток, се извежда съобщение за некоректни данни. Дизайнът на приложението е недвусмислен, добавените контроли максимално улесняват подаване на информация, което осигурява използването му от максимален брой клиенти, независимо от техните технически познания и възрастова група. Използваните технологии и архитектурен план позволяват лесна поддръжка и бъдещо развитие.

 

 

 

Scroll to Top