Related Technologies
Ther are two potential devices we considered for this project are the Arduino and Raspberry pi which are both microprocessors with similar functionality. We choose to use the raspberry pi because networking with a raspberry pi is more convenient to set up than an Arduino and it is also not required to be connected to a computer. The raspberry pi also has the ability to run multiple programs if required and hence is more suited for doing intense calculations when compared to an Arduino [2].
 
As for the programming languages the two choices were python and C. Both these languages offer similar utility and therefore we picked python based on our expertise and also because it was much easier to combine the different components of the product [1].
 
The decision on which algorithm to use was between a predictive analytics algorithm or statistical analytics algorithm [5]. By comparing both algorithms and considering what our requirements wanted from the final product we chose to use a statistical analytics algorithm. A statistical analytics algorithm uses simpler techniques and aids in data comparison rather than trying to predict future outcomes. Our product works best when it processes live data rather than making decisions based on predicting unknown future data. Predicting future data also has no direct benefit as our final product should be non-invasive and should not interfere with the users unless it is required to send an alert.
 
As for the dashboard it was split into front end and back end frameworks and libraries. For the backend our choices were using NodeJS, a JavaScript run-time environment, and Django a python framework. We chose to use Django because we were more familiar with python with python than JavaScript. The default security is very good. It is very easily scalable. Has really big community and it is very well documented.for the frontend our choices were reactJS, a JavaScript library and Angular, a JavaScript framework. We chose to use reactJS as it was not too complicated to learn and create single page applications.
 
Below is listed a list of libraries used:
 
• ChartsJS:- For Graphs
• Celery:- For concurrent tasks (learning)
• React-notifications
• Django Rest framework:- for API
• Django rest auth
• Django all auth
• Text2digits:- Change written numbers to digits
• Numpy :- for statistical analysis
• Pandas :- to create dataframes
Summary of final decision
We have concluded through our research that we should use a microprocessor that needs to have multiple digital and analog inputs, so that a number of different sensors can be used and that the design of hardware and sensors used, should be as functional as possible so that new sensors can be added by technicians and the cleaning of the components can be done easily. The dashboard needs to provide live data feed graphically and allow both nurses and technicians to view archive data and that the design should include statistical values and display correlation between different sensor values.
References
[1] EDUCBA. (2019). C vs Python - 10 Most Valuable Differences You Should Know. [online] Available at: https://www.educba.com/c-vs-python/ [Accessed 21 Apr. 2019].
[2] Maker Faire. (2019). Raspberry Pi or Arduino? One Simple Rule to Choose the Right Board | Make:. [online] Make: DIY Projects and Ideas for Makers. Available at: https://makezine.com/2015/12/04/admittedly-simplistic-guide-raspberry-pi-vs-arduino/ [Accessed 21 Apr. 2019].
[3] Scargill's Tech Blog. (2019). Putting it all together in Imperihome - Scargill's Tech Blog. [online] Available at: https://tech.scargill.net/putting-it-all-together-in-imperihome/ [Accessed 21 Apr. 2019].
[4] Semicron.com. (2019). Sensaphone Environmental Monitoring Systems Explained. [online] Available at: http://www.semicron.com/what-is-sensaphone.html [Accessed 21 Apr. 2019].
[5] Srivastava, T. (2019). What Is The Difference Between Machine Learning & Statistical Modeling. [online] Analytics Vidhya. Available at: https://www.analyticsvidhya.com/blog/2015/07/difference-machine-learning-statistical-modeling/ [Accessed 21 Apr. 2019].