web$basedon$boardreal$time(rendering(data(system((worrds) ·...

1
Webbased Onboard Realtime Rendering Data System (WORRDS) Sponsor: CASAS Mentor: Aaron S. Crandall Joanne Magtibay, Daniel Pepka, Pat McKee, Bryan Barrows, Benjamin Cheung, Trey Ottaway System Overview Design Philosophy Separation of concern: Each component of WORRDS is designed to be loosely coupled and replaceable. Mobilefirst development: Enable travelling CASAS personnel to seamlessly transition from the desktop to the mobile device. Upgradability: Utilized opensource technologies familiar to CASAS for easier maintenance and better performance. ThreeTier Architecture Security: Rely on server to interface between UI and database components. Layers only have information based on needtoknow. Maintainability: Facilitate division of labor for current and future developers. Motivation CASAS lacked a system to securely visualize the vast amount of sensor data collected from its smart homes around the globe, as well as an efficient method of creating and editing sensor maps of the homes. What is WORRDS? WORRDS is an original, webbased smart home data rendering system that streamlines research and site maintenance tasks currently done by humans at CASAS. Realtime and Historical Sensor Data Visualization Server logs realtime data in WORRDSdb and services web requests RabbitMQ and SocketIO enable fast, reliable transport of thousands of events from SHiBs to the web browser daily D3/HTML widgets display data in charts and tables for easy analysis 2D Map Creation Using Google Tango App With app activated, walk around a home to create a 3D mesh and plot known sensor locations App converts 3D mesh to a 2D floor layout and uploads it to the WORRDS website Customized Security and User Management Secure user accounts, permission tiers, and SSL connection guard sensitive data from unauthorized access Administrative GUI for managing users and permissions View and Edit SHiB Layouts with Builtin Map Editor Diagram the layout of SHiBs using a custom EaselJS map editor Make, save, and undo changes Place sensors on the map and associate them with realtime data Reliable Database Migrations and Daemon SQLAlchemy and FlaskMigrate provides consistent and safe migrations and rollbacks of database schemas Java daemon performs daily sync between CASASdb and WORRDSdb Team Wildlings WORRDS In Action How Is WORRDS Being Used? To save time and money for system maintainers who must travel to sites, setup sensors, and locate problematic sensors To facilitate research into elder care, automation, and green homes To provide peace of mind for adult children and caregivers monitoring the occupants, allowing more people to live independently who otherwise could not Future Work Predict failing batteries with machine learning Groupbased permission inheritance Realtime resident activity visualization for live monitoring Anomaly detection in system and behavioral events Special thanks to Dr. Aaron S. Crandall and Dr. Sakire Arslan Ay for their guidance and support, and Biswaranjan Das, Brian Thomas, and Tyler Walker for their assistance. Glossary CASAS Center for Advanced Studies in Adaptive Systems CASASdb The main database used by CASAS FlaskMigrate SQLAlchemy database migration handler Google Tango 3D mapping device RabbitMQ Message broker software SHiB Smart Home in a Box SQLAlchemy Python database interface WORRDSdb The local database used by WORRDS The dashboard. Battery statistics at a glance. Realtime events for all sites. Administrative GUI.

Upload: others

Post on 11-Jun-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Web$basedOn$boardReal$time(Rendering(Data(System((WORRDS) · Web$basedOn$boardReal$time(Rendering(Data(System((WORRDS) Sponsor:(CASAS(((((Mentor:Aaron(S.(Crandall Joanne(Magtibay,(Daniel(Pepka,(Pat(McKee,(Bryan(Barrows

Web-­‐based  On-­‐board  Real-­‐time  Rendering  Data  System  (WORRDS)Sponsor:  CASAS                      Mentor: Aaron  S.  Crandall

Joanne  Magtibay,  Daniel  Pepka,  Pat  McKee,  Bryan  Barrows,  Benjamin  Cheung,  Trey  Ottaway

System  Overview

Design  Philosophy• Separation  of  concern:  Each  component  of  WORRDS  is  designed  to  be  

loosely  coupled  and  replaceable.• Mobile-­‐first  development:  Enable  travelling  CASAS  personnel  to  

seamlessly  transition  from  the  desktop  to  the  mobile  device.• Upgradability: Utilized  open-­‐source  technologies  familiar  to  CASAS  for  

easier  maintenance  and  better  performance.  

Three-­‐Tier  Architecture

• Security:  Rely  on  server  to  interface  between  UI  and  database  components.  Layers  only  have  information  based  on  need-­‐to-­‐know.

• Maintainability:  Facilitate  division  of  labor  for  current  and  future  developers.

MotivationCASAS  lacked  a  system  to  securely  visualize  the  vast  amount  of  sensor  data  collected  from  its  smart  homes  around  the  globe,  as  well  as  an  efficient  method  of  creating  and  editing  sensor  maps  of  the  homes.  

What  is  WORRDS?WORRDS  is  an  original,  web-­‐based  smart  home  data  rendering  system  that  streamlines  research  and  site  maintenance  tasks  currently  done  by  humans  at  CASAS.

Real-­‐time  and  Historical  Sensor Data  Visualization• Server  logs  real-­‐time  data  in  WORRDSdb  and  services  web  requests• RabbitMQ  and  SocketIO  enable  fast,  reliable  transport  of  thousands  of  

events  from  SHiBs  to  the  web  browser  daily• D3/HTML  widgets  display  data  in  charts  and  tables  for  easy  analysis

2D  Map  Creation  Using  Google  Tango  App• With  app  activated,  walk  around  a  home  to  create  a  3D  mesh  and  plot  known  sensor  locations

• App  converts  3D  mesh  to  a  2D  floor  layout  and  uploads  it  to  the  WORRDS  website

Customized  Security  and  User  Management• Secure  user  accounts,  permission  tiers,  and  SSL  connection  guard  

sensitive  data  from  unauthorized  access• Administrative  GUI  for  managing  users  and  permissions

View  and  Edit  SHiB  Layouts  with  Built-­‐in  Map  Editor• Diagram  the  layout  of    SHiBs  using  a  custom  EaselJS  map  editor

• Make,  save,  and  undo  changes• Place  sensors  on  the  map  and  associate  them  with  real-­‐time  data

Reliable  Database  Migrations  and  Daemon• SQL-­‐Alchemy  and  Flask-­‐Migrate  provides  consistent  and  safe  migrations  

and  rollbacks  of  database  schemas    • Java  daemon  performs  daily  sync  between  CASASdb  and  WORRDSdb

Team  Wildlings

WORRDS  In  Action

How  Is  WORRDS  Being  Used?• To  save  time  and  money  for  system  maintainers  who  must  travel  to  

sites,  set-­‐up  sensors,  and  locate  problematic  sensors• To  facilitate  research into  elder  care,  automation,  and  green  homes• To  provide  peace  of  mind  for  adult  children  and  caregivers  monitoring  

the  occupants,  allowing  more  people  to  live  independently  who  otherwise  could  not

Future  Work• Predict  failing  batteries  with  machine  learning• Group-­‐based  permission  inheritance• Real-­‐time  resident  activity  visualization  for  live  monitoring• Anomaly  detection  in  system  and  behavioral  events

Special  thanks  to  Dr.  Aaron  S.  Crandall  and  Dr.  Sakire  Arslan  Ay  for  their  guidance  and  support,  and  Biswaranjan  Das,  Brian  Thomas,  and  Tyler  Walker  for  their  assistance.

GlossaryCASAS Center  for  Advanced  Studies  in  Adaptive  SystemsCASASdb  The  main  database  used  by  CASASFlask-­‐Migrate SQLAlchemy  database  migration  handlerGoogle  Tango  3D  mapping  deviceRabbitMQ  Message  broker  softwareSHiB Smart  Home  in  a  BoxSQLAlchemy  Python  database  interfaceWORRDSdb  The  local  database  used  by  WORRDS

The  dashboard.Battery  statistics  at  a  glance.

Real-­‐time  events  for  all  sites.Administrative  GUI.