System Architecture

We have used Raspberry Pies as our sensors hubs due to a simple set up and a large number of GPIO pins which are used to connect sensors. Each raspberry pi is communicating with the backend to upload the data and receiving instructions. As for the backend, we have used Django. It was used to create the API and to set up the database. For the frontend, we used ReactJS and both ReactJS and Django were hosted in an Azure Virtual Machine. The learning algorithms were integrated into the Django application.



System Architecture Diagram

Hardware

For the sensor hubs we are using a number of Raspberry Pi's with each one of them having a temperature, humidity and light sensor. Such devices support Internet connectivity and by using a wireless network card, the communication between the sensor hubs and the dashboard is done wirelessly. Below you can see the actual Raspberry Pi setup and the circuit diagram that is used in the project.



Raspberry Pi circuit Actual Raspberry Pi setup

Usability of Hardware (Design and Concept)

This section includes research on the Usability of Hardware (Design and Concept) which is one of our MoScoW requirements.



The network of sensor hubs is of a large importance in the project. As our requirement for the project was to produce a proof of concept, after extensive research we decided to use a number of Raspberry Pi's as our sensor hubs. Although the capabilities of Raspberry Pi's suited us well for the demand of this project there are better and more hospital-friendly devices to use as sensor hubs. Below two solutions to this problem are documented, the first one considers using Wireless Sensor Hubs and the second one using considers using a case for the Raspberry Pi.



Using Wireless Sensor Hubs

Wireless Sensor Hubs wirelessly transmit sensor data, have a large number of digital ports allowing the monitoring of a variety of environmental conditions. Advantages of using Wireless Sensor Hubs over Raspberry Pi's are outlined below:

Entity Relationship Diagram



Actual Raspberry Pi setup

Design Patterns

Front-end:



Back-end:

Implementation of Key Functionalities

Below you can see a number of screenshots and a short video demonstrating the key functionalities of our software system.



Login

 
Login menu used to get access to the dashboard. A sure that doesn't have the required credentials can also sign up to use the system.
 

Graph Design

 
Number of graphs displaying sensor data. The user has the option to select the colour of each graph.
 

Overview of a surgery

 
Overview of a specific surgery including all the requiment information (Doctor, Patient, Room, Rating etc) where the user can get an insight of how the procedure went in general.
 

Starting an event for a specific patient

 
Dialog box used for starting an event for a patient in a specific room.
 

List of archived data

 
Displaying data about past surgeries. The user has the option to search for a given operation, view its overview using the dashboard and download it in an xml form.
 

Voice Recognition

 
Using text-to-speech and speech-to-text to get informed about sensor data in every room as well as be warned from the system if something in a surgery doesn't go as expected.