This example shows how to use ADX to monitor a patient's vitals and knee brace readings. It leverages (Azure Bicep)[https://docs.microsoft.com/EN-US/azure/azure-resource-manager/bicep/] and the Azure CLI to automate the entire deployment.
The solution uses Azure IoT Central Continuous Patient Monitoring application to generate telemetry readings for two IoT Consumer devices: automated knee brace and a vitals monitor patch. The generated data is automatically send to an Azure Event Hub and then send to an Azure Data Explorer for analysis.
An Azure Digital Twins service is used to store additional simulated devices metadata.
The Azure Data Explorer cluster is configured with a database, a set of tables to store telemetry data from both devices, and a set of functions to parse incoming data and to query data directly from the Azure Digital Twins service.
The solution includes a Power BI report to visualize the data. Just download the file and open it in Power BI.
On the Azure Cloud Shell run the following commands to deploy the solution:
-
Login to Azure
az login
-
If you have more than one subscription, select the appropriate one:
az account set --subscription "<your-subscription>"
-
Get the latest version of the repository
git clone https://github.com/bwatts64/PatientMonitoringDemo
Optionally, You can update the patientmonitoring.parameters.json file to personalize your deployment.
-
Deploy solution
cd PatientMonitoringDemo . ./deploy.sh
-
Finally, download the Power BI report, update the data source to point to yoir newly deployed Azure Data Explorer database, and refresh the data in the report.
- If you wish to take a deeper look at the data feel free to explore using KQL. Here is some sample queries to get you started! KQL Sample
-
asssets folder: contains the following files:
- AutomationPresentation.gif: quick explanation of the solution
- Connected_Devices.pbix : sample report to visualize the data
-
config folder: contains the configDB.kql that includes the code required to create the Azure Data Explorer tables and functions
-
dtconfig folder: contains the files necessary to configure the Azure Digital Twins service:
- Departments.json
- Facility.json
- KneeBrace.json
- VirtualPatch.json
-
modules folder: contains the Azure Bicep necessary to deploy and configure the resource resources used in the solution:
- adx.bicep: ADX Bicep deployment file
- digitaltwin.bicep: Digital Twin Bicep deployment file
- eventhub.bicep: Event Hub Bicep deployment file
- iotcentral.bicep: IoT Central Bicep deployment file
- storage.bicep: Storage Bicep deployment file. This account is used as temporary storage to download ADX database configuration scripts)
-
deploy.sh: script to deploy the solution. THe only one you need to run
-
main.bicep: main Bicep deployment file. It includes all the other Bicep deployment files (modules)
-
patientmonitoring.parameters.json: parameters file used to customize the deployment
-
README.md: This README file