Project Automa е проект създаден като курсова задача по предмета "Разпределени Вградени Системи". Основните цели и задачи на проекта са представени в следното задание:
"Системата да следи осветлението и температурата в помещение/помещения и да подава команди за управление на база на отчитанията. Управлението на осветлението е чрез цифрови изходи през релета. Управлението на температурата е чрез команди към климатик (Bluetooth или USB модул за дистанционно)."
Parse.com е онлайн базирана NoSQL база данни. Собственост на Facebook, тя се е доказала като практично решение при необходимост от просто структурирана БД за малки и средни проекти. Една от основните причини за използване при текущия проект е лесното интегриране с python, който използваме за проектиране на софтуера на платката, както и софтуера на клиента (JavaScript/Android). Използваме следния набор от таблици за нуждите на Smart House проекта:
- Users - необходимостта от потребители се налага почти винаги при проектиране на една софтуерна система. Достъпа до системата трябва да бъде чрез профили на съответните потребители, както и запис на всички техни действия. В таблицата освен дадените по подразбиране полета, добавяме и полета за: userid, name, password, email, accessData, verified
- LightReadings - Таблица за температурни отчитания, опростена до 3 добавени графи: date, time, value
- TempReadings - подобно на LightReadings, съответна таблица за температурни отчитания, опростена до същите 3 добавени графи: date, time, value . Отделянето на две таблици, спомага за по-бързо извличане на необходими стойности и за опростен запис при embedded software-a.
- Settings - таблица за настройки на границите на температурата и осветеността. Освен задаването на стойностите, ще запазваме и userid на потребителя, който е извършил съответната промяна. Под внимание за управлението на платката ще вземаме само последните зададени стойностти. Админа ще може на база на тези записи да отнема права на некоректни потребители. Таблицата ще има следния общ вид: userid, sleeptime, turnaircond, turnlight, lightlevel, temperature