
Elixir编程语言已经成为创建可靠、容错和健壮的服务器端应用程序的常用工具。多亏了神经,这些确切的好处可以在嵌入式应用程序中实现。这本书将教你如何在支持网络的设备上构建、构建和部署生产级应用程序。您将开始的气象站传感器中心项目将向您展示如何在创纪录的时间内创建完整的物联网解决方案。您将构建从嵌入式神经设备到Phoenix后端甚至Grafana时间序列数据可视化的一切。
Elixir作为一种编程语言已经进入了许多不同的软件领域,主要是在Erlang虚拟机坚如磐石的基础上。多亏了Neurs框架,Elixir在嵌入式系统和物联网领域也取得了成功。能够访问所有的Elixir和OTP结构,比如并发性、监督性和不变性,这是一个强大的物联网配方。了解如何使用Neurs框架创建容错、可靠和健壮的嵌入式应用程序。
使用Elixir和Neurs构建和部署生产级气象站传感器中心,同时利用Neurs社区建立的用于构建和组织Neurs应用程序的最佳实践。在一个轻量级服务器端应用程序中,使用Phoenix和Ecto捕获所有气象站传感器数据。使用TimescaleDB(时间序列数据的Postgres扩展)高效地存储和检索设备收集的时间序列天气数据。最后,使用Grafana可视化所有时间序列气象站数据,完成完整的物联网解决方案。了解如何创建底层技术和技术适用于项目所有层的软件解决方案。
用灵丹妙药和勇气,在创纪录的时间内把你的项目从构思到生产做好准备。
你需要什么
为了完成本书中的气象站项目,你需要以下几点
用于构建和部署固件映像的Linux、MacOS或Windows计算机
树莓皮零W或任何其他神经支持的目标(https://hexdocs.pm/nerves/targets.html#supported-目标和系统)
VEML6030光传感器
BME680环境传感器
SGP30空气质量传感器
用于天气传感器的Qwiic连接电缆
Build a Weather Station with Elixir and Nerves: Visualize Your Sensor Data with Phoenix and Grafana
The Elixir programming language has become a go-to tool for creating reliable, fault-tolerant, and robust server-side applications. Thanks to Nerves, those same exact benefits can be realized in embedded applications. This book will teach you how to structure, build, and deploy production grade Nerves applications to network-enabled devices. The weather station sensor hub project that you will be embarking upon will show you how to create a full stack IoT solution in record time. You will build everything from the embedded Nerves device to the Phoenix backend and even the Grafana time-series data visualizations.
Elixir as a programming language has found its way into many different software domains, largely in part to the rock-solid foundation of the Erlang virtual machine. Thanks to the Nerves framework, Elixir has also found success in the world of embedded systems and IoT. Having access to all of the Elixir and OTP constructs such as concurrency, supervision, and immutability makes for a powerful IoT recipe. Find out how to create fault-tolerant, reliable, and robust embedded applications using the Nerves framework.
Build and deploy a production-grade weather station sensor hub using Elixir and Nerves, all while leveraging the best practices established by the Nerves community for structuring and organizing Nerves applications. Capture all of your weather station sensor data using Phoenix and Ecto in a lightweight server-side application. Efficiently store and retrieve the time-series weather data collected by your device using TimescaleDB (the Postgres extension for time-series data). Finally, complete the full stack IoT solution by using Grafana to visualize all of your time-series weather station data. Discover how to create software solutions where the underlying technologies and techniques are applicable to all layers of the project.
Take your project from idea to production ready in record time with Elixir and Nerves.
What You Need
To complete the Nerves weather station project in this book, you will need the following
A Linux, MacOS, or Windows computer to build and deploy Nerves firmware images
A Raspberry Pi Zero W or any other Nerves supported target (https://hexdocs.pm/nerves/targets.html#supported-targets-and-systems)
A VEML6030 light sensor
An BME680 environmental sensor
An SGP30 air quality sensor
Qwiic connect cables for weather sensors
OR