This article is a solution idea. If you'd like us to expand the content with more information, such as potential use cases, alternative services, implementation considerations, or pricing guidance, let us know by providing GitHub feedback.
The mission of Project 15 from Microsoft is to empower scientists and conservationists around the world. The project pairs conservation teams with a community of developers, students, and Microsoft partners. The project helps these teams capture and analyze the data they need to preserve critical species and ecosystems which are backed by the power of Azure and an Internet of Things (IoT) open platform.
The following sections provide insight into Project 15 Open Platform functionality and architecture.
Diagram showing components and functionality of the Project 15 Open Platform. Bars show areas of functionality, such as user management and security. Boxes represent actions that the platform handles like connect devices and ingest data. Between the boxes are arrows that indicate the flow of data in the system. The components are color coded. Light green elements are fully included in the platform. Dark green elements are included but need customization. Blue elements aren't included by default and require full customization. Images of animals and plants connected to sensors and trackers are also visible. Arrows indicate that their data flows into the system, and the system can manage these devices.
Download a Visio file of this architecture.
Open Platform components fall into these categories:
Fully included: Azure Services that you deploy once. You expand these components when you add devices to the solution.
Included but needing customization: Services that the solution deploys. You modify these services to suit your use case. See Project 15 Open Platform Developer Guide for detailed information on these services. For a high-level view of the services, see Solution details later in this article.
Not included and requiring full customization: The place where intellectual property resides. Once you deploy the solution to your own Azure account, it's yours to build out. Think of how you use a word processor. The word processor is a tool, and the book you write is yours. The story you publish is yours, and the revenue you generate is yours. With Project 15 Open Platform, the same idea applies. This solution is a tool you use to create your own solutions.
Diagram showing the Azure components that make up the Project 15 Open Platform. Boxes represent layers of the solution, such as the gateway, the data process layer, the presentation layer, and the storage layer. Arrows show how data flows between these layers. Arrows show how users and devices interact with the system.
Download a Visio file of this architecture.
Various Azure services and configurations make up the Project 15 Open Platform:
The Azure IoT Hub device provisioning service provisions IoT devices and connects them to IoT Hub.
Streaming platforms and services build the data pipeline that's necessary for basic telemetry and event processing:
- Azure Event Hubs ingests telemetry and events from IoT devices.
- Azure Event Grid provides a publish-subscribe model that routes events.
Azure Stream Analytics analyzes data (3a). Azure Functions processes data (3b). And Azure Time Series Insights monitors, analyzes, and stores data (3c). These three services also feed data into a presentation layer.
Users connect to the presentation layer through browsers. In that layer:
- Azure SignalR Service messaging provides real-time visualization.
- Azure App Service and its Web Apps feature provide platforms for building, deploying, and scaling web apps.
- Tools like Time Series Insights and Power BI visualize IoT devices, telemetry, and events in websites.
Databases, Azure Blob Storage, and tables store telemetry and file data from offices in the field.
Other Azure components provide more functionality:
- Azure Functions and the API Apps feature of Azure App Service work to make device management events available in websites.
- Azure Active Directory (Azure AD) manages users.
- API Apps and Event Grid manage external data.
- Azure Digital Twins offers modeling capabilities for optimizing operations.
- Microsoft Defender for Cloud secures the solution by establishing security policies and access controls.
- Azure Notification Hubs and Azure Logic Apps handle notifications.
- Azure Machine Learning provides AI capabilities for forecasting device behavior.
- Azure Maps tracks geofencing data to provide location-based services.
IoT Hub connects devices to Azure cloud resources. With this managed service, you can use queries to filter data that you send to the cloud.
The device provisioning service of IoT Hub makes zero-touch, just-in-time provisioning possible. With this IoT Hub helper service, you can provision devices in a secure and scalable manner.
Event Hubs is a fully managed big data streaming platform.
Event Grid simplifies event-based apps. This service routes events from sources to destinations while decoupling event publishers from event subscribers.
Stream Analytics provides real-time serverless stream processing that can run queries in the cloud and on devices on the edge of the network. Stream Analytics on IoT Edge can filter or aggregate data that you send to the cloud for further processing or storage.
Functions are an event-driven serverless compute platform that you can use to build and debug locally without extra setup. With Functions, you can deploy and operate at scale in the cloud and use triggers and bindings to integrate services.
Time Series Insights is an analytics platform that you can use to monitor, analyze, and visualize IoT time series data.
Azure SignalR Service is an open-source software library that provides a way to send notifications to web apps in real time.
App Service and its Web Apps feature are fully managed platforms for building, deploying, and scaling web apps.
Power BI is a collection of software services and apps that you use to connect and visualize unrelated sources of data.
Blob Storage provides optimized cloud object storage that manages massive amounts of unstructured data.
API Apps is a feature of App Service that you can use to build and consume APIs in the cloud while using the language of your choice.
Azure AD is a multi-tenant, cloud-based identity service that controls access to Azure and other cloud apps.
Azure Digital Twins creates models of IoT devices and environments. You can use these digital representations to develop better products, optimize operations, minimize costs, and improve customer experiences.
Microsoft Defender for Cloud offers extended detection and response (XDR) capabilities that protect hybrid cloud workloads against threats.
Notification Hubs provides a push engine that you can use to send notifications to any platform from any back end.
Logic Apps automates workflows. With this service, you can connect apps and data across clouds without writing code.
Machine Learning is a cloud-based environment you can use to train, deploy, automate, manage, and track machine learning models. With these models, you can forecast future behavior, outcomes, and trends.
Azure Maps offers geospatial APIs for adding maps, spatial analytics, and mobility solutions to apps.
A key part of these solutions is the Project 15 Open Platform, which Microsoft designed and built. This open-source software connects to the cloud and securely manages devices that conservation projects use. Its architecture serves as a reference for building end-to-end IoT solutions.
By getting teams roughly 80 percent of the way to finished solutions, the Project 15 Open Platform helps meet these goals:
- Close the skill gap. The ready-made platform boosts innovation. Scientific developers can expand into specific use cases.
- Increase speed to deployment. By helping teams overcome technical challenges, the platform reduces the time needed to build crucial insights.
- Lower the development cost. The platform reduces complexity, resulting in lower overall development costs. It also opens up opportunities for partnering with open-source developer communities and universities.
Potential use cases
With its Open Platform, Project 15 contributes the latest Azure and IoT technologies to conservation and ecosystem sustainability efforts. In so doing, Project 15 accelerates scientific innovation in these and other areas:
- Species tracking and observation
- Poaching prevention
- Ecosystem monitoring
- Pollution detection
Deploy this scenario
Deployment to Azure happens with the push of a button. The main components of the infrastructure for a standard IoT solution are then up and running.
This article is maintained by Microsoft. It was originally written by the following contributors.
- Pamela Cortez | Azure IoT Principal PM
- Visit Project 15 on GitHub to deploy to Azure and learn more about customizing conservation and ecological sustainability solutions.
- Microsoft & Sustainability
- AI for Earth
- The Project 15 team periodically adds content to the Project 15 YouTube Channel and other Microsoft channels.
- See Introduction to Azure IoT.