https://github.com/zmops/zeus-modbus
基于python的FastApi+pymodbus+APScheduler开发的采集平台,包括支持http接口修改寄存器数据,定时发送采集数据给zabbix服务端.
https://github.com/zmops/zeus-modbus
fastapi modbus pymodbus python zabbix zeus-iot
Last synced: 10 months ago
JSON representation
基于python的FastApi+pymodbus+APScheduler开发的采集平台,包括支持http接口修改寄存器数据,定时发送采集数据给zabbix服务端.
- Host: GitHub
- URL: https://github.com/zmops/zeus-modbus
- Owner: zmops
- License: apache-2.0
- Created: 2022-01-26T03:51:13.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2022-07-14T02:55:25.000Z (almost 4 years ago)
- Last Synced: 2025-04-13T05:45:39.331Z (about 1 year ago)
- Topics: fastapi, modbus, pymodbus, python, zabbix, zeus-iot
- Language: Python
- Homepage:
- Size: 218 KB
- Stars: 9
- Watchers: 3
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# modbus采集服务
## 框架介绍
**FastApi+pymodbus多进程采集服务**
* Python3.8+
## 功能介绍
**模块**
* api: 定义业务接口
> 定位对外暴露的接口 默认接口文档: http://127.0.0.1:8029/docs/
* core: 核心功能
> 定义核心组件
###### 组件
1. device: 设备读取和采集方法
2. enums: 枚举类
3. errors: 异常
4. events: 事件(定时任务开启)
5. modbus: modbus核心方法
6. task: 任务 定时采集发送
* files: 文件
> 管理普通文件
* logs: 日志
> 保存日志
* utils
> 工具库
**文件**
* config.py
> 配置项目参数
###### zabbix参数
1. ip: zabbix服务端IP
2. port: zabbix采集接受端口
3. interval: 定时采集频率 单位秒
* device.py
> 采集的设备信息
###### 设备参数
1. id: 设备ID zabbix中资源名称 host字段
2. model: 设备型号 采集服务中已内置的型号方法名称 不匹配则不支持采集
3. ipaddress: 采集设备上报的modbus服务对应IP
4. port: 采集设备上报的modbus服务对应端口
5. slave: 采集设备从地址
6. sub: 切割子设备
* main.py
> 主函数 可用来debug
* run_app.py
> 运行文件 可修改服务端口