Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Bracelet intelligent

Composants et fournitures

Arduino MKR GSM 1400
× 1
Antenne, Cellulaire / LTE
× 1
Carte SIM Hologram Global IoT
× 1
Capteur de fréquence cardiaque DFRobot
× 1
Capteur de température IR
× 1
Batterie LiPo 3.7v
× 1

Outils et machines nécessaires

Fer à souder (générique)

Applications et services en ligne

Arduino IDE
Éditeur Web Arduino
Microsoft Azure
Microsoft Power Bi
Routeur de données hologramme

À propos de ce projet

Présentation du projet

Je me suis retrouvé à trop lire ce sujet dans le passé, j'ai fini par passer quelques heures à penser à des solutions qui aideraient le monde en ce moment fragile, des solutions qui pourraient changer et nous aider à prospérer dans un monde qui bouge sous nos pieds .

J'ai envisagé de prendre soin des personnes atteintes de formes faibles du virus . Une catégorie de personnes qui sont souvent négligées. Ce sont les personnes qui ont eu la malchance de contracter le virus mais qui ont eu la chance de n'avoir que des symptômes faibles . Mais la santé de ces patients est extrêmement volatile et peut s'aggraver en quelques heures . Leur santé doit être surveillée en détail.

Il s'avère que les pays ont des approches différentes pour soigner ces patients :certains les les hospitaliseront (hôpitaux surpeuplés avec des patients qui pourraient être suivis hors campus), d'autres les envoient s'auto-isoler à la maison . Mais il y a un problème avec la deuxième option - la santé de ces patients pourrait dégénérer rapidement et doivent donc être surveillés.

Il existe certainement des équipements lourds et encombrants qui font cela. Mais les problèmes sont évidents; comme la majorité de la population malade exercera des formes faibles du virus, ces dispositifs coûteux et inconfortables n'ont pas la capacité d'évoluer et d'être déployés dans l'ensemble population (en raison du prix et de l'encombrement). Inutile de dire que certains patients sont tentés de « s'évader » de chez eux et ne se soucient pas vraiment du virus, ces personnes sont un danger pour la société et pour elles-mêmes et doivent être surveillées pour s'assurer qu'elles ne sortent pas de chez elles.

SmartWristband est un appareil à bracelet qui surveille les signes vitaux et la géolocalisation du patient veiller à leur sécurité pendant qu'ils combattent le virus dans les limites de leur foyer. L'appareil est alimenté par un Arduino MKR GSM 1400 et est équipé à la fois d'un capteur infrarouge de température et de fréquence cardiaque recueillir des informations cruciales sur la santé du patient. Une température élevée et une fréquence cardiaque irrégulière sont des signes de la progression du virus. Le patient ne remarquera pas ces changements immédiatement, SmartWristband vise à le faire et diffuser les données en direct et en toute sécurité à l'hôpital qui suit le patient.

L'appareil suivra également la position de l'utilisateur s'assurer qu'ils sont à la maison à tout moment . Toutes ces données sont centralisées dans une base de données évolutive permettant à des milliers de ces appareils d'être déployés à l'échelle internationale.

L'hôpital aura accès à un tableau de bord où ils pourront voir la santé de tous les patients surveillés en un coup d'œil ainsi qu'un rapport spécifique retraçant l'état détaillé de chaque patient.

Algorithmes d'apprentissage automatique sont également implémentés dans l'application pour prédire la température et la fréquence cardiaque du patient dans un proche avenir afin que l'hôpital sache à quoi s'attendre et quand hospitaliser le patient.

Le patient a également accès à un tableau de bord mobile leur montrant leur fréquence cardiaque et leur température ainsi que le moment où ils devront recharger leur bracelet.

L'appareil est suffisamment confortable pour que le patient porte jour et nuit sans le remarquer. SmartWristband sera également notifier si l'utilisateur a retiré l'appareil , alertant l'hôpital dans ce cas.

SmartWristband est une solution à faible coût, évolutive et open source pour la prise en charge des patients envoyés en auto-isolement avec des formes faibles du virus surveillance le évolution de leur condition et alerte personnel médical grâce à l'apprentissage automatique et à une expérience de tableau de bord simple à utiliser si un patient a besoin d'attention.

Résumé du projet

Cette section examinera les fonctionnalités de l'application et donnera une compréhension de haut niveau de ce qu'elle fait.

Données collectées

Les données sont collectées par l'appareil à des intervalles de 5 minutes. Ceci est fait pour fournir une vue relativement en direct de l'état du patient tout en utilisant la consommation de batterie la plus faible possible. L'appareil collecte deux types de données :vitales et de localisation.

Les données vitales se réfèrent à la fréquence cardiaque et à la température des patients tandis que les données de localisation se réfèrent à la géolocalisation du patient . L'appareil ne traite pas ces données localement mais le relaie simplement vers Azure où le traitement a lieu.

Pourquoi ces données sont-elles collectées ?

Les données de température et de fréquence cardiaque peuvent indiquer si l'état actuel du patient dégénère en analysant sa tendance. Des études montrent qu'une fréquence cardiaque irrégulière et une température élevée sont un signe de la présence du virus. Si ces signes vitaux dégénèrent avec le temps (c'est-à-dire que la température augmente progressivement), c'est un signe que l'état du patient peut s'aggraver. Le patient peut ne s'en rendre compte que plus tard, mais l'appareil détectera ces signes au fur et à mesure qu'ils apparaissent.

Les données de géolocalisation sont également collectées par l'appareil, ceci est fait pour s'assurer que le patient reste à la maison en quarantaine et respecte les règles de l'isolement. Azure vérifie si l'utilisateur est à la maison et le signalera sur le tableau de bord du médecin.

Un aperçu de l'appareil

J'ai créé le prototype avec le confort à l'esprit. L'appareil se place facilement sur le poignet du patient, que ce soit de la main gauche ou droite. Il est équipé d'un capteur de fréquence cardiaque et d'un capteur de température IR qui dépassent au bas de l'appareil pour toucher la peau du patient.

Ces capteurs fournissent des mesures précises sans causer d'inconfort. Notez que pour plus de précision de température, le capteur doit être placé dans un endroit tel que sous le bras dans un coussin.

L'appareil utilisera les données brutes émises par le capteur de fréquence cardiaque pour vérifier si l'appareil est porté par le patient. Le capteur produira un modèle de données très spécifique lorsqu'il est en contact avec la peau et, par conséquent, l'absence de ce modèle représente l'appareil non porté.

Autonomie de la batterie

Des tests rigoureux ont été menés pour mesurer avec précision la durée de vie de la batterie de l'appareil. L'appareil a une autonomie totale de 8 jours avec une seule charge. Cela signifie que si le patient doit être examiné pendant deux semaines, la batterie devra être rechargée une fois. La batterie peut être chargée pendant que l'appareil est porté.

Alternativement, les données peuvent être collectées à des intervalles de 10 minutes , essentiellement doubler la durée de vie de la batterie de l'appareil car il dormirait entre les lectures, consommant très peu de batterie. L'autonomie restante de la batterie ainsi que le nombre d'heures d'autonomie restantes sont affichés sur les tableaux de bord du patient et du médecin.

Coût de développement

Le coût de développement dans le cas du projet se compose de coûts ponctuels et récurrents. Le coût de développement d'un appareil serait de 70 € boîtier compris. Les coûts récurrents se produisent dans le backend. J'utilise Hologram comme fournisseur de services, ce qui me coûte 5 € pour envoyer des données pendant 2 semaines par appareil. Les coûts backend, y compris le streaming de données et la base de données, sont de 30 € pour 2 semaines.

Le coût total pour 100 appareils est d'environ 7 035 €. Notez que ces appareils sont réutilisables.

Notez que les coûts backend sont évolutifs et seront les mêmes quel que soit le nombre d'appareils déployés. Les coûts peuvent être considérablement réduits lors de l'achat de composants en gros et de l'utilisation de circuits personnalisés.

Le tableau de bord du docteur

Il est très important que l'hôpital puisse surveiller à tout moment la santé de ces patients renvoyés à domicile et recevoir des alertes s'ils ne vont pas bien. L'hôpital a accès à un tableau de bord montrant les signes vitaux de tous les patients suivis ainsi qu'un rapport spécifique pour chacun d'eux. Cela permet aux médecins d'être avertis si un patient a besoin d'aide, puis d'examiner le patient plus en détail pour voir exactement quel est le problème.

Le médecin va recevoir une notification sous forme d'email et alerte dans le tableau de bord si un patient n'est pas à la maison, ne porte pas l'appareil ou a une température et/ou un rythme cardiaque irréguliers .

Les médecins recevront également des alertes de données sous forme d'e-mails lorsque les signes vitaux d'un patient sont anormaux, ce qui permet de prendre des mesures immédiatement.

Le rapport est divisé en 3 sections :le patient (donner des détails sur les signes vitaux), l'emplacement (localisation du patient et s'il est à domicile) et l'appareil (niveau de batterie, ID). Apprentissage automatique est également utilisé pour prédire la santé du patient dans un proche avenir en indiquant au médecin si la santé du patient se détériore avec le temps.

Tableau de bord patient

Je pense que les patients devraient aussi pouvoir accéder à ces données pour savoir comment ils vont et prendre conscience d'eux-mêmes. Une expérience de bureau et mobile est disponible pour le patient afin qu'il puisse obtenir ses données à la volée.

Notez que les données de prévision et de géolocalisation ne sont pas affichées sur le tableau de bord du patient car ils n'auraient pas besoin de cette information.

Production de masse et évolutivité

L'appareil est adapté à la production de masse et évolutif en raison de son petit prix et de sa facilité de construction. L'appareil peut être opérationnel n'importe où dans le monde avec une couverture cellulaire protégeant les personnes dans le monde entier.

100% Open Source

Lors du développement de ce projet, je me suis assuré que tous les actifs utilisés, bibliothèques et autres, étaient open source pour garantir que l'application puisse être développée et publiée le plus rapidement possible sans bureaucratie. Ce projet est entièrement open source et disponible sur GitHub.

Collecte de données

L'appareil collecte les données de géolocalisation de l'utilisateur qui sont considérées comme confidentielles. L'appareil ne traite pas ces données localement, mais s'appuie sur le cloud pour le faire en toute sécurité, garantissant que les données de l'utilisateur ne peuvent pas être piratées. La connexion avec la base de données Azure est cryptée et sécurisée, garantissant que les données ne peuvent pas tomber entre de mauvaises mains.

Aller plus loin

Lors du développement de ce projet, de nombreuses idées pour développer et améliorer le produit me sont venues à l'esprit, cette section les détaille.

  • La collecte du niveau d'oxygène dans le sang peut être mise en œuvre sans qu'il soit nécessaire de changer de matériel, car cette valeur peut être extraite du capteur de fréquence cardiaque existant. Les niveaux de SpO2 dans le sang sont une indication des dommages causés par le virus.
  • La fréquence cardiaque du patient peut être collectée à l'aide de coussinets placés sur sa poitrine et d'autres zones du corps qui fournissent une représentation plus précise de la température, augmentant ainsi la précision des mesures.
  • Le développement d'un boîtier imprimé en 3D serait préférable dans une future itération. La taille de l'appareil peut également être considérablement réduite, ce qui le rend encore plus confortable à porter.

Le Frontend de l'Application

Le schéma ci-dessus montre l'architecture de l'application s'exécutant sur l'appareil. Ce sont les étapes effectuées par l'appareil toutes les 5 minutes. L'appareil collecte toutes les données , vérifie s'il est usé par l'utilisateur, puis les emballe et les envoie au backend via GSM .

L'appareil permet également de garder une trace de l'heure , il obtient l'heure d'un serveur désigné et synchronise son RTC embarqué avec cet horodatage lorsqu'il se réveille pour la première fois ou après avoir été éteint.

Le backend de l'application

Les données envoyées par l'appareil sont reçues dans Azure IoT Hub où il a été livré en toute sécurité . Un travail d'analyse de flux puis extrait ces données du hub et les pousse dans une base de données Cosmos base de données. Le patient et le médecin Rapports Power Bi puis interrogez ces données à intervalles de temps à partir de la base de données, exécutez des algorithmes d'apprentissage automatique, puis affichez les données. Le tableau de bord du médecin recueille ensuite tous les patients suivis et fournit un résumé de leur état de santé.

Pourquoi Azure ?

J'adore utiliser Azure par rapport à d'autres alternatives en raison de la facilité d'utilisation et de navigation ainsi que de la disponibilité d'excellents plans gratuits pour le développement. J'aime aussi leur interface utilisateur et leur intégration avec les autres produits Microsoft que j'utilise.

Étude de marché

De nombreux pays ont mis en œuvre des alternatives à la surveillance des patients atteints de coronavirus pendant qu'ils s'auto-isolent à la maison. Taïwan a mis en place un système de suivi révolutionnaire où les patients sont suivis via leur téléphone mobile pour s'assurer qu'ils restent à la maison.

D'autres pays ont également mis en œuvre des idées pour surveiller la santé des personnes isolées et certains systèmes fonctionnent mieux que d'autres. Mais aucun produit ne collecte à la fois les informations vitales sur l'état du patient et sa localisation dans un petit emballage confortable.

Public cible

Ce dispositif s'adresse aux personnes envoyées par l'hôpital à domicile pour s'auto-isoler car elles ont été testées positives pour une forme faible du virus ou sont asymptomatiques.

Avantages de l'utilisation de SmartWristband

  • S'assurer que les patients envoyés à s'auto-isolent sont restent à la maison
  • Surveillance des vitesses vitales des patients sans qu'ils aient besoin d'être hospitalisés
  • Libérer l'espace dans les hôpitaux pour les personnes présentant des manifestations sévères du virus
  • Alerter les médecins à l'état de tous les patients en auto-isolement 25/7
  • Fournir une solution de surveillance confortable pour le patient
  • Fournir à l'hôpital une prévision de la santé du patient
  • Informer le patient sur son état de santé via un tableau de bord mobile et de bureau
  • Economique et évolutive

Conduite du projet

Cette section vous guidera tout au long de la construction du projet et couvrira les étapes nécessaires au développement de cette application.

Étape 1 :Tout rassembler

La première chose que nous devons faire est de rassembler tous les composants nécessaires. Les composants et services nécessaires sont répertoriés ci-dessous :

  • Arduino MKR GSM 1400
  • Antenne GSM (fournie avec le GSM MKR)
  • Capteur de fréquence cardiaque DFRobot
  • Capteur de température infrarouge
  • Batterie LiPo 3,7 v (j'ai utilisé 1 800 mAh)
  • Carte sim hologramme

En plus du matériel requis, avant de démarrer le projet, plusieurs services doivent également être mis en place. Utilisez les didacticiels liés ci-dessous pour commencer.

  • Obtenez l'IDE Arduino ou utilisez l'éditeur Web
  • Créez votre compte Hologram et connectez votre carte SIM
  • Créer un compte Azure
  • Créer un compte Power Bi

Étape 2 :Travailler avec le GSM MKR

Avant de commencer à faire le projet lui-même, nous devons configurer le GSM MKR pour se connecter à Azure IoT . Pour cela, nous devons générer et stocker un certificat sur l'appareil pour pouvoir vérifier la connexion avec le backend.

Il existe un tutoriel sur Hackster qui couvre cela pour le MKR NB. Veuillez suivre ce tutoriel dès le début et notez que vous devez arrêter après avoir généré le certificat . Veuillez vous assurer de enregistrer la chaîne SHA1 car nous en aurons besoin plus tard. Le tutoriel est ici.

Étape 3 :Tout connecter ensemble

La prochaine chose que nous devons faire est de tout brancher. Ci-dessous, une image illustrant les schémas pour la création de ce projet. Notez que vos composants ne ressemblent probablement pas à ceux des schémas. Assurez-vous que vous avez connecté le capteur de température à A4 sur l'appareil et le capteur de fréquence cardiaque vers A5 . N'oubliez pas de mettre la carte SIM !

Étape 4 :sur l'IoT Hub

Ok, maintenant que tout cela est fait, nous pouvons passer au hub IoT . Nous travaillerons dans le backend pour les prochaines étapes pour éliminer cela en premier. Assurez-vous d'avoir un compte Azure avant de continuer.

La première chose que vous devez faire est de naviguer vers votre console (portal.azure.com) et cliquez sur créer une ressource bouton en haut à gauche de l'écran. Maintenant, tapez IoT Hub et sélectionnez l'option dans la liste déroulante.

Cliquez sur créer une fois la configuration terminée. Notez que dans cet exemple, nous utiliserons un hub IoT de niveau gratuit afin que nous ne soyons pas facturés pour son utilisation. Si vous déployez cette solution, envisagez de changer le niveau en S1 (ou S2/S3 selon l'échelle).

Créez un nouveau groupe de ressources et nommez votre hub IoT. Cliquez maintenant sur Taille et échelle option parmi les étapes ci-dessus. Assurez-vous que vous êtes configuré comme ci-dessous.

Cliquez maintenant sur Examiner et créer et déployer la ressource . Attendez que l'IoT Hub se crée, puis ouvrez en cliquant sur Toutes les ressources dans le menu à droite de l'écran.

Nous devons maintenant créer un appareil et attachez-le au hub IoT. Accédez aux Appareils IoT dans le menu à droite de l'écran et cliquez sur l'option. Cliquez sur le Nouveau bouton pour ajouter un nouvel appareil au hub IoT. Saisissez les informations d'identification suivantes :

Assurez-vous de remplacer l'empreinte principale et l'empreinte secondaire par votre valeur SHA1 extrait dans la deuxième étape.

Cliquez sur Enregistrer et nous sommes prêts à partir !

Étape 5 :Création de la base de données Cosmos DB

Nous devons maintenant créer la base de données dans laquelle seront stockées les données envoyées par notre appareil. J'utilise Cosmos DB d'Azure car il est habitué à stocker des fichiers JSON c'est ce que nous envoyons depuis l'appareil.

Tout d'abord, revenez au bouton Créer une ressource dans le menu de droite et cliquez dessus. Rechercher Cosmos DB puis sélectionnez l'option.

Sélectionnez le groupe de ressources créé avec l'IoT Hub et donnez-lui un nom, gardez le reste des paramètres identiques. Assurez-vous que la région est la même sur le hub IoT et la base de données pour éviter les coûts de transfert de région.

Et c'est tout! Attendez que la ressource se déploie et nous sommes prêts à passer à autre chose !

Étape 6 : création de la tâche d'analyse de flux

Alors maintenant que nous avons configuré notre hub IoT et notre base de données, nous devons connecter les deux ensemble afin que les données saisies dans notre IoT Hub soient diffusées dans la base de données au fur et à mesure de leur réception.

Start off by creating a new resource by typing Stream Analytics Job . Now select the resource group used up until now and ensure that the number of streaming units is set to 1. If delivering a high quantity of devices, you may want to consider creating more streaming units to handle the greater number of devices.

Wait for the resource to deploy and then select it from the All Resources button on the menu on the left.

Now that we are in the resource, select the Inputsbutton from the menu on the left to select our input. Click on Add Stream Input and then select IoT Hub from the list of options.

Enter the name of your IoT hub and then select it from the menu shown. Do not change any other settings. Click Save. Now click on the Outputs option from the menu on the left of the screen and select the Cosmos DB option from the list provided.

Name the output and then select the database from the options provided. Select Create New under Database and set the database name to SmartWristband and the container name to data . Leave the document ID empty. Now click Save .

The final thing we need to do is click on Query from the options. We need to supply the service with code to route all the data from the IoT hub into the database. Copy and paste the code below into the space provided. The code will map all inputted values to outputs which will then be stored in a JSON format in the Cosmos DB.

SELECT
time as time,
id as name,
geoLat as latitude,
geoLng as longitude,
isWorn as isWorn,
heartrate as heartrate,
temperature as temperature,
battery as battery
INTO
[universum-smartwristband-db]
FROM
[universum-smartwristband-hub]

After that is done, click on the Save Query button from the menu at the top of the screen and we are ready to go. Now all we need to do is click back on Overview from the menu on the left and then start the streaming by pressing the Start button.

Step 7:Libraries Required

All libraries used in this project are open source. Below is the list of all libraries used and the links to their GitHub repositories. Please make sure you download and install them before moving on.

  • MKRGSM Library - https://github.com/arduino-libraries/MKRGSM
  • RTCZero Library - https://github.com/arduino-libraries/RTCZero
  • Arduino Bear SSL Library - https://github.com/arduino-libraries/ArduinoBearSSL
  • ArduinoECCX08 Library - https://github.com/arduino-libraries/ArduinoECCX08
  • Arduino MQTT Client Library - https://github.com/arduino-libraries/ArduinoMqttClient
  • Arduino Low Power Library - https://github.com/arduino-libraries/ArduinoLowPower
  • DFRobot Heartrate Library - https://github.com/DFRobot/DFRobot_Heartrate

Step 8:Preparing the Variables

Now we can focus on the frontend of the application . Open the code from the GitHub repo in the Arduino IDE or web IDE and follow along with the steps below to edit the variables in the document so that the MKR GSM will be able to connect to Azure IoT.

The first thing we will need to do is navigate to the IoT hub created and copy the hostname shown. Now open the secrets.h file from the project and input this string into the SECRET_BROKER field.

The next thing is getting the device name. This is simply the name given to the device in the IoT Hub. Copy the name displayed and then paste it in the SECRET_DEVICEID field in the secrets.h file. At the end, your file should look something like this.

The last thing you need to do is change the DEVICE_ID . I included this feature so that all devices would have a specific ID when deployed . You can set the ID to the name of the patient or a string to be able to identify the devices and distinguish them.

Finally, I want to talk about the MODE option . When I created this project, I needed to have a way to easily test and troubleshoot the application before deploying it. The mode of the application solves this. There are two modes in which the application can be set:

  • DEVELOP_TIME is the developing mode. Here, the device prints verbose to the serial (the device only works connected to the computer with the serial monitor on). The device also wakes up and collects data every 10 seconds.
  • RELEASE_TIME is the release mode. Here, the application works as expected, it can work on the field without the need of a connection to a computer, it will also take samples every 5 minutes as opposed to 10 seconds.

We will toggle between these modes later, for now, leave it in DEVELOP_MODE .

Step 9:Flashing the Developer Version

Now that all the setup is done, we need to test the code out to ensure it is running in the DEVELOP_MODE. To do this, ensure that you followed all the steps above and then connect your device to your PC or mac via USB and then upload the sketch.

Open the serial monitor (ctrl/cmd-shift-m) and view the verbose. It will take a while to configure the first time, ensure that the data is being sent to the IoT Hub correctly. Then visit the IoT Hub and check the graphs to see if data was received. You are now ready to deploy the application! If you need help troubleshooting, you can contact me through Hackster.

Step 10:Shipping the release version

To change to the release version, all you need to do is change the MODE definition in the secrets.h file to RELEASE_TIME . Now upload this code to the device, ensure the LiPo battery is connected and then unplug it from the computer.

You should see the onboard LED of the device flashing every 10 minuets indicating that a cycle is running. Check the IoT Hub and Cosmos DB database to ensure that the data is going through. Now you are ready to deploy the device!

Ensure you send some data to the backend before continuing as we will need this when creating the dashboard.

Step 11:Onto the Dashboard

Creating the dashboard is meticulous work and takes a long amount of time. In this section I will explain working with the data in the Power Bi dashboards and reports , I will not go over how to design the dashboard because this is up to personal preference but will link tutorials that show you how to do this in detail.

Doctor Dashboard

I will start with the doctor dashboard. Make sure you have Power Bi desktop installed on your PC. Mac users can use the Power Bi online version to create this report, everything is basically the same.

Launch the application and click on the Get Databutton . Now navigate to the Azure option and select Cosmos DB from the options.

Now go to your Cosmos DB resource and copy the URI link and paste it in the field in Power Bi. Sign in if this is required.

Now we need to go to the keys window in the Cosmos DB dashboard and copy the PRIMARY KEY and paste it into the Account Key field . Now navigate through the database and ensure that the datafile is checked. Click load and then we are ready to go!

Now that you are in the report, find the Transform databutton from the menu at the top of the screen. Click it to get a table with data.

Click on the button next to the title of the table and select the fields shown above. You should see your table expand.

Now we need to change the data types of the rows. Identify the Data Type button from the menu at the top of the screen and change the values accordingly.

Now click on Close and Apply and you will be brought back to the dashboard. Your dashboard should look something like this.

The next thing we will need to do is create measures to process data and convert it into different forms in the report. Open the Stream Analytics Script folder from the GitHub repo in Visual Studio code . I installed an extension called DAX for Power Bi to get context highlighting:

There are a number of files which have to be edited specifically for the patient as they hold the patient’s information. The list of files that must be edited is below:

  • Address.dax
  • Age.dax
  • Gender.dax

Open these files in VS code and edit them there.

Now we will create new measures in Power Bi using these files. To do so, open the Power Bi report and click on the New Measurebutton from the menu at the top of the screen.

Copy and paste the first file’s content into the text bar. Ensure that the Format and Data Category are set accordingly (i.e. set the category of latitude data to latitude). Now repeat this step for all other files , creating a new measure for each . Your dashboard should look like below:

Now we are moving on to the fun part – designing the dashboard. Please look at the tutorials below to get an idea of how to create infographics and style the dashboard:

  • Basic Power Bi
  • Complete Guide to Power Bi
  • Free Udemy Course on Power Bi
  • Forecasting data (ML) in Power Bi (used on temperature, heart rate and battery level)

This is how my dashboard looked at the end:

Now after the dashboard is designed, we need to publish it on the web so that we can access it from anywhere, on any device. Note that the data in the report is automatically refreshed when the user opens it (there is also a refresh button).

Click on the Publish button from the menu at the top of the screen and select My Workspace as the destination. Wait for the dashboard to upload.

To continue working on this, open the Power Bi report in the browser . We will now be working on the dashboard that summarises all patients. To do this, click on the tile depicting the status of the patient to see a menu.

From the menu, select the pin visual button and create a new dashboard . This visual will pin to the dashboard. Repeat this for the following cards:

  • Nom
  • Status
  • Température
  • Heart rate

The doctor will be able to see a glimpse of all the patients being monitored on this dashboard.

Finally, click on the temperature card in the dashboard and the on the menu button, select the Manage Alerts button to open a menu where you can set alerts for the visual. Configure this as below and repeat the step with heart rate (set the threshold to 100).

And that’s it, we now need to work on the patient dashboard.

Patient Dashboard

We will start this dashboard by copying the doctor dashboard as we will be using all the measures and data collected there but display it in a different way.

I kept all the data there but removed the forecasting for the temperature and heartrate sections (to prevent patients from worrying to much about it) and removed the location section (because the patient knows where they are).

I also developed a mobile version of this dashboard . To do so, navigate to the View menu and then select Mobile Layout . From there, we only need to drag and drop the existing tiles onto the mobile phone to create this layout.

After this is done, we will upload the dashboard online again as done before. This dashboard can be shared with the patient through the Power Bi app where they can get a mobile version of the application showing them all the information they need as well as an online view.

Step 12:Finally, the enclosure

So now that everything is done, we need to create an enclosure for the project, now ideally it would be 3D printed, but because I don’t have a 3D printer (I really need to get one), I cut pieces of plastic out and assembled them that way. I do though have a 3D design made for the enclosure of the prototype.

The device is quite big in this instance and a future and industrial version will obviously be reduced in size (I just didn’t want to solder all the components onto a PCB so I could reuse them in future projects).

And that’s it! The project is done!

Reflection

I really enjoyed making this project. I spent a couple of hours in March brainstorming ideas to tackle the coronavirus and when this contest was announced, I started working on one of the best ideas that I believed would truly have an impact on the community – SmartWristband.

I am very proud to take part in this international effort to provide the world with low-cost scalable solutions that would help combat the virus. I was inspired by the Taiwanese government because of their smart tracking devices that ensure that people confirmed with the virus stay at home and abide by the rules of the quarantine. I felt like this system could be improved to further enhance the safety of the patient by also monitoring their heart rate and temperature while at home.

Coronavirus is a tricky problem to tackle and truly needs a lot of cooperation and devotion to overcome. I believe that this application is implementable at global level to help monitor the health of patients confirmed with weak forms of the virus allowing them to stay at home and liberate space in hospitals that can be assigned to more urgent cases.

The thing I enjoyed the most out of the making of this project was the dashboard, I really enjoyed designing it (I am a visual person). I encountered some problems connecting the Arduino MKR GSM to Azure IoT. This was because I set the expiry date of the device’s certificate to something like 2 minutes (took me a while to realise).

I really hope you enjoyed the read and thanks for taking the time and interest. Have a great day and take care.

Code

Code
The GitHub Repohttps://github.com/Andrei-Florian/SmartWristband

Pièces et boîtiers personnalisés

Schémas

schematics_HcrW1SiwfW.fzz

Processus de fabrication

  1. Circuit intégré
  2. Qu'est-ce qu'un capteur d'O2 ?
  3. Capteur de température Raspberry Pi
  4. Capteur d'émotion/EEG
  5. Capteur de température multiple
  6. UnifiedWater v1
  7. MotionSense
  8. MyRiver
  9. MOSMusique