1 个不稳定版本

0.0.7-beta2023 年 5 月 21 日

#1488 in 嵌入式开发

GPL-2.0-only

145KB
2.5K SLoC

sennd - 终极传感器日志和控制系统

█▓▒░ 目的

sennd 旨在成为一个多用途的健壮框架,用于传感器日志和任务关键型环境中的控制系统。最初是为水产养殖系统设计的,sennd 通过实现通用架构设计模式而变得高度可适应。目标是创建一个适用于各种应用的库,从野生动物追踪和生物反应器到访问控制和更多,使用预先打包的通用 I/O 设备和触发器。着重于可靠性、安全性和易用性,sennd 旨在通过减少样板代码来赋能科学家、工程师和创造者构建监控和控制系统。

█▓▒░ 特性

  • 简单直接的初始化和配置。
  • 数据记录功能,用于存储和检索信息以供后续分析。
  • 通用的 I/O 设备,用于分类各种设备类型,如开关、电机、歧管阀等。
  • 健壮的错误处理,确保安全和可靠的操作。
  • 硬件无关。

█▓▒░ 硬件

该库是用 Rust 编程语言的 1.66.1 版本构建的,但应与较新版本兼容。需要基于 Unix 的主机(例如:树莓派)。虽然该库已设计用于减少开销,但尚未实现(尚无)用于编译裸金属 MCU(如 Atmel 芯片)的 no_std

█▓▒░ 入门

由于此库仍在早期开发阶段,尚未上传到 crates.io

位于 /examples 目录中的二进制文件旨在全面演示潜在用例,并且有高度文档记录。有关进一步文档,请参阅文档。

█▓▒░ 贡献

此项目的目标是成为科学和工业应用的标准。因此,对库的贡献是受欢迎的。

请记住,贡献可以是错误报告、功能请求,而不仅仅是代码贡献。错误报告和功能请求可以为整个库增添坚韧和可靠性,并为社区带来好处。要开始,只需fork仓库并进行更改。我只要求,在提交拉取请求之前,请确保运行测试套件并更新必要的文档。

记住,沟通对于任何协作项目都是至关重要的。让我们一起将最喜爱的编程语言带给科学界!

即将推出的功能

以下功能计划在下一个主要版本中推出(按优先级排序)

  • PID控制器
  • 日志分区(按大小和日期)
  • 集成no_std功能标志
  • 异步操作

依赖

~1.7–2.7MB
~52K SLoC