Обновлен README.md
This commit is contained in:
140
README.md
140
README.md
@@ -1,55 +1,115 @@
|
|||||||
# python-owen
|
# python-owen
|
||||||
|
|
||||||
Библиотека для работы с приборами фирмы [Овен] по протоколам Modbus и ОВЕН
|
Библиотека для работы с измерительными приборами фирмы [Овен](https://owen.ru) по протоколам Modbus RTU и ОВЕН.
|
||||||
|
|
||||||
## 📋 Поддерживаемые модели
|
## 🚀 Быстрый старт
|
||||||
|
|
||||||
| Модель | Модель | Модель |
|
### Установка
|
||||||
| :--------: | :--------: | :--------: |
|
|
||||||
| [ТРМ101] | [ТРМ151] | [ТРМ210] |
|
|
||||||
| [ТРМ136] | [ТРМ200] | [ТРМ212] |
|
|
||||||
| [ТРМ138] | [ТРМ201] | [ТРМ251] |
|
|
||||||
| [ТРМ148] | [ТРМ202] | [2ТРМ1] |
|
|
||||||
| [ПР100] | | |
|
|
||||||
|
|
||||||
> Возможна поддержка других моделей путем добавления настроек в файл `owen/device.py`
|
|
||||||
> Не со всеми моделями проверена работа библиотеки
|
|
||||||
|
|
||||||
## ⚠️ Важная информация
|
|
||||||
|
|
||||||
### Требования к версии pymodbus
|
|
||||||
|
|
||||||
**Для корректной работы python-owen необходимо установить старую версию библиотеки pymodbus:**
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
pip3 install pymodbus==2.5.3
|
pip install pymodbus==2.5.3
|
||||||
|
pip install pyserial
|
||||||
```
|
```
|
||||||
|
|
||||||
⚠️ **При использовании более новых версий pymodbus библиотека работать не будет!**
|
⚠️ **Важно:** Библиотека работает только с `pymodbus==2.5.3`. Новые версии не поддерживаются!
|
||||||
|
|
||||||
### Особенности Овен ПР100
|
### Пример использования
|
||||||
|
|
||||||
**Овен ПР100 не поддерживает протокол ОВЕН — только Modbus!**
|
```python
|
||||||
|
from owen import OwenClient
|
||||||
|
|
||||||
## 📦 О проекте
|
# Подключение к прибору
|
||||||
|
client = OwenClient(port='/dev/ttyUSB0', baudrate=9600, address=16)
|
||||||
|
|
||||||
Это форк репозитория: https://github.com/RAA80/python-owen
|
# Чтение температуры
|
||||||
|
temperature = client.read_temperature()
|
||||||
|
print(f"Температура: {temperature}°C")
|
||||||
|
|
||||||
---
|
# Установка уставки
|
||||||
|
client.write_setpoint(75.0)
|
||||||
|
```
|
||||||
|
|
||||||
## 📚 Ссылки на документацию приборов
|
## 📋 Поддерживаемые приборы
|
||||||
|
|
||||||
[Овен]: https://owen.ru
|
### Терморегуляторы
|
||||||
[ТРМ101]: https://owen.ru/product/trm101
|
|
||||||
[ТРМ136]: https://owen.ru/product/trm136
|
| Модель | Страница продукта | Протокол |
|
||||||
[ТРМ138]: https://owen.ru/product/trm138
|
|--------|-------------------|----------|
|
||||||
[ТРМ148]: https://owen.ru/product/trm148
|
| [ТРМ101](https://owen.ru/product/trm101) | [Документация](https://owen.ru/product/trm101) | Modbus, ОВЕН |
|
||||||
[ТРМ151]: https://owen.ru/product/trm151
|
| [ТРМ136](https://owen.ru/product/trm136) | [Документация](https://owen.ru/product/trm136) | Modbus, ОВЕН |
|
||||||
[ТРМ200]: https://owen.ru/product/trm200
|
| [ТРМ138](https://owen.ru/product/trm138) | [Документация](https://owen.ru/product/trm138) | Modbus, ОВЕН |
|
||||||
[ТРМ201]: https://owen.ru/product/trm201
|
| [ТРМ148](https://owen.ru/product/trm148) | [Документация](https://owen.ru/product/trm148) | Modbus, ОВЕН |
|
||||||
[ТРМ202]: https://owen.ru/product/trm202
|
| [ТРМ151](https://owen.ru/product/trm151) | [Документация](https://owen.ru/product/trm151) | Modbus, ОВЕН |
|
||||||
[ТРМ210]: https://owen.ru/product/trm210
|
| [ТРМ200](https://owen.ru/product/trm200) | [Документация](https://owen.ru/product/trm200) | Modbus, ОВЕН |
|
||||||
[ТРМ212]: https://owen.ru/product/trm212
|
| [ТРМ201](https://owen.ru/product/trm201) | [Документация](https://owen.ru/product/trm201) | Modbus, ОВЕН |
|
||||||
[ТРМ251]: https://owen.ru/product/trm251
|
| [ТРМ202](https://owen.ru/product/trm202) | [Документация](https://owen.ru/product/trm202) | Modbus, ОВЕН |
|
||||||
[2ТРМ1]: https://owen.ru/product/2trm1
|
| [ТРМ210](https://owen.ru/product/trm210) | [Документация](https://owen.ru/product/trm210) | Modbus, ОВЕН |
|
||||||
[ПР100]: https://owen.ru/product/pr100
|
| [ТРМ212](https://owen.ru/product/trm212) | [Документация](https://owen.ru/product/trm212) | Modbus, ОВЕН |
|
||||||
|
| [ТРМ251](https://owen.ru/product/trm251) | [Документация](https://owen.ru/product/trm251) | Modbus, ОВЕН |
|
||||||
|
| [2ТРМ1](https://owen.ru/product/2trm1) | [Документация](https://owen.ru/product/2trm1) | Modbus, ОВЕН |
|
||||||
|
|
||||||
|
### Преобразователи
|
||||||
|
|
||||||
|
| Модель | Страница продукта | Протокол |
|
||||||
|
|--------|-------------------|----------|
|
||||||
|
| [ПР100](https://owen.ru/product/pr100) | [Документация](https://owen.ru/product/pr100) | **Только Modbus** |
|
||||||
|
|
||||||
|
> **Примечание:** ПР100 не поддерживает протокол ОВЕН!
|
||||||
|
|
||||||
|
## ⚙️ Настройка приборов
|
||||||
|
|
||||||
|
### Параметры связи
|
||||||
|
|
||||||
|
Для работы с прибором необходимо настроить:
|
||||||
|
- **Скорость**: 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600, 115200 бод
|
||||||
|
- **Адрес устройства**: 0-255 (по умолчанию 16)
|
||||||
|
- **Формат данных**: 8N1, 8E1, 8O1
|
||||||
|
|
||||||
|
### Пример настройки ТРМ
|
||||||
|
|
||||||
|
```python
|
||||||
|
# Для RS-485
|
||||||
|
client = OwenClient(
|
||||||
|
port='/dev/ttyUSB0', # COM-порт (Windows: 'COM3')
|
||||||
|
baudrate=9600, # Скорость обмена
|
||||||
|
address=16, # Адрес прибора
|
||||||
|
timeout=1.0 # Таймаут ответа
|
||||||
|
)
|
||||||
|
```
|
||||||
|
|
||||||
|
## 🔧 Расширение функционала
|
||||||
|
|
||||||
|
Библиотека поддерживает добавление новых моделей приборов. Для этого необходимо:
|
||||||
|
|
||||||
|
1. Открыть файл `owen/device.py`
|
||||||
|
2. Добавить конфигурацию для вашей модели по аналогии с существующими
|
||||||
|
3. Указать карту регистров согласно документации прибора
|
||||||
|
|
||||||
|
Пример добавления нового прибора:
|
||||||
|
|
||||||
|
```python
|
||||||
|
DEVICES = {
|
||||||
|
"ТРМ999": {
|
||||||
|
"registers": {
|
||||||
|
"temperature": {"address": 0x0001, "type": "float"},
|
||||||
|
"setpoint": {"address": 0x0005, "type": "float"},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## 📖 Дополнительная информация
|
||||||
|
|
||||||
|
- [Официальный сайт Овен](https://owen.ru)
|
||||||
|
- [Протокол ОВЕН](https://owen.ru/uploads/121/oficialnoe_opisanie_protokola_obmena_po_rs485_priborov_firmi_oven_15.01.07.pdf)
|
||||||
|
- [Протокол Modbus RTU](https://wiki.wirenboard.com/wiki/Modbus)
|
||||||
|
|
||||||
|
## 📄 Лицензия
|
||||||
|
|
||||||
|
Проект является форком: https://github.com/RAA80/python-owen
|
||||||
|
|
||||||
|
## ⚠️ Известные проблемы
|
||||||
|
|
||||||
|
1. **pymodbus > 2.5.3** - не совместимы с текущей версией библиотеки
|
||||||
|
2. **ПР100** - поддерживает только Modbus, протокол ОВЕН не работает
|
||||||
|
3. Не все модели были протестированы в реальных условиях
|
||||||
Reference in New Issue
Block a user