PySensor-Mqtt


NamePySensor-Mqtt JSON
Version 0.1.1 PyPI version JSON
download
home_pagehttps://github.com/raunick/sensor_library
SummaryBiblioteca para simulação de sensores e publicação via MQTT
upload_time2024-09-04 23:01:33
maintainerNone
docs_urlNone
authorRaunick Vileforte Vieira Generoso
requires_pythonNone
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 🌐 Sensor Library - Simulação de Sensores com MQTT

Bem-vindo à **Sensor Library**! 🎉 Essa biblioteca Python foi projetada para facilitar a simulação e publicação de dados de sensores usando o protocolo MQTT. Ideal para projetos de IoT, automação e monitoramento em tempo real, essa biblioteca oferece uma interface simples para a criação de diferentes tipos de sensores e a publicação de dados via um broker MQTT. 🚀

# 📦 Instalação

Você pode instalar a biblioteca diretamente do PyPi com o comando abaixo:

```bash
pip install PySensor-Mqtt
```
# 🛠️ Funcionalidades

- 🌡️ Simulação de Sensores de Temperatura, Umidade do Ar, Umidade do Solo, Luminosidade, Movimento e Módulo Relé
- 🔄 Publicação de dados em tempo real via MQTT
- 🧑‍💻 Fácil integração com sistemas de monitoramento e automação
- 📊 Suporte para diferentes tipos de sensores personalizáveis
- 🛡️ Validação de integridade dos dados e robustez na conexão com o broker MQTT

# 🚀 Como Usar

Aqui está um exemplo de como configurar e iniciar a biblioteca:

**1. Crie um Gerenciador de Sensores**

```python
from sensor_library.sensors.manager import SensorManager

manager = SensorManager()
```

**2. Configure os Parâmetros do Sensor**

Cada sensor precisa de um conjunto de parâmetros para funcionar corretamente. Exemplo de configuração de um sensor de temperatura:

``` python
params = {
    'sensor_name': 'sensor_1',
    'broker': 'localhost',  # Endereço do broker MQTT
    'port': 1883,           # Porta do broker MQTT
    'topic': 'sensor/temperature',  # Tópico MQTT para publicação
    'update_interval': 5,    # Intervalo de atualização em segundos
    'sensor_type': 'temperature'  # Tipo do sensor
}
```

**3. Adicione o Sensor ao Gerenciador**

Agora, basta adicionar o sensor ao gerenciador e começar a publicação:

```python
manager.add_sensor(params)
manager.start()
```
✨ E pronto! Seus dados de sensor estão sendo simulados e publicados automaticamente no tópico MQTT especificado. 🚀

# 📚 Exemplos de Tipos de Sensores

Aqui estão os tipos de sensores que você pode adicionar à biblioteca:

- 🌡️ Temperature Sensor ('temperature')
- 💧 Humidity Air Sensor ('humidity_air')
- 🌱 Humidity Soil Sensor ('humidity_soil')
- 💡 Light Sensor ('light')
- 🕵️ Motion Sensor ('motion')
- 🔌 Módulo Relé ('modulo_rele')

## Exemplo de Adição de Múltiplos Sensores
```python
# Adiciona um sensor de temperatura
manager.add_sensor({
    'sensor_name': 'temp_sensor',
    'broker': 'localhost',
    'port': 1883,
    'topic': 'sensor/temperature',
    'update_interval': 5,
    'sensor_type': 'temperature'
})

# Adiciona um sensor de umidade do ar
manager.add_sensor({
    'sensor_name': 'humidity_sensor',
    'broker': 'localhost',
    'port': 1883,
    'topic': 'sensor/humidity_air',
    'update_interval': 10,
    'sensor_type': 'humidity_air'
})

manager.start()
```
# 🛡️ Segurança e Confiabilidade

Todos os dados gerados são validados para garantir sua integridade.
Conexão com o broker MQTT é automaticamente gerenciada, com retentativas em caso de falha.

# 🧪 Testes
Para garantir que sua implementação funcione corretamente, utilize os testes pré-configurados na biblioteca:

```bash
pytest tests/
```

# 🤝 Contribuições
Contribuições são bem-vindas! Se você tiver sugestões de melhorias, novas funcionalidades ou encontrar algum bug, sinta-se à vontade para abrir uma issue ou enviar um pull request.

# 📄 Licença

Esta biblioteca é licenciada sob a Licença MIT. Veja o arquivo LICENSE para mais detalhes.

**Feita com 💙 por Raunick Vileforte - Raunickbhdesign@gmail.com ✨**

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/raunick/sensor_library",
    "name": "PySensor-Mqtt",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": null,
    "author": "Raunick Vileforte Vieira Generoso",
    "author_email": "raunickbhdesign@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/67/d8/ca136d5f441fda264044f158e9cb27996a0305923d41b3b505635447f603/pysensor_mqtt-0.1.1.tar.gz",
    "platform": null,
    "description": "# \ud83c\udf10 Sensor Library - Simula\u00e7\u00e3o de Sensores com MQTT\r\n\r\nBem-vindo \u00e0 **Sensor Library**! \ud83c\udf89 Essa biblioteca Python foi projetada para facilitar a simula\u00e7\u00e3o e publica\u00e7\u00e3o de dados de sensores usando o protocolo MQTT. Ideal para projetos de IoT, automa\u00e7\u00e3o e monitoramento em tempo real, essa biblioteca oferece uma interface simples para a cria\u00e7\u00e3o de diferentes tipos de sensores e a publica\u00e7\u00e3o de dados via um broker MQTT. \ud83d\ude80\r\n\r\n# \ud83d\udce6 Instala\u00e7\u00e3o\r\n\r\nVoc\u00ea pode instalar a biblioteca diretamente do PyPi com o comando abaixo:\r\n\r\n```bash\r\npip install PySensor-Mqtt\r\n```\r\n# \ud83d\udee0\ufe0f Funcionalidades\r\n\r\n- \ud83c\udf21\ufe0f Simula\u00e7\u00e3o de Sensores de Temperatura, Umidade do Ar, Umidade do Solo, Luminosidade, Movimento e M\u00f3dulo Rel\u00e9\r\n- \ud83d\udd04 Publica\u00e7\u00e3o de dados em tempo real via MQTT\r\n- \ud83e\uddd1\u200d\ud83d\udcbb F\u00e1cil integra\u00e7\u00e3o com sistemas de monitoramento e automa\u00e7\u00e3o\r\n- \ud83d\udcca Suporte para diferentes tipos de sensores personaliz\u00e1veis\r\n- \ud83d\udee1\ufe0f Valida\u00e7\u00e3o de integridade dos dados e robustez na conex\u00e3o com o broker MQTT\r\n\r\n# \ud83d\ude80 Como Usar\r\n\r\nAqui est\u00e1 um exemplo de como configurar e iniciar a biblioteca:\r\n\r\n**1. Crie um Gerenciador de Sensores**\r\n\r\n```python\r\nfrom sensor_library.sensors.manager import SensorManager\r\n\r\nmanager = SensorManager()\r\n```\r\n\r\n**2. Configure os Par\u00e2metros do Sensor**\r\n\r\nCada sensor precisa de um conjunto de par\u00e2metros para funcionar corretamente. Exemplo de configura\u00e7\u00e3o de um sensor de temperatura:\r\n\r\n``` python\r\nparams = {\r\n    'sensor_name': 'sensor_1',\r\n    'broker': 'localhost',  # Endere\u00e7o do broker MQTT\r\n    'port': 1883,           # Porta do broker MQTT\r\n    'topic': 'sensor/temperature',  # T\u00f3pico MQTT para publica\u00e7\u00e3o\r\n    'update_interval': 5,    # Intervalo de atualiza\u00e7\u00e3o em segundos\r\n    'sensor_type': 'temperature'  # Tipo do sensor\r\n}\r\n```\r\n\r\n**3. Adicione o Sensor ao Gerenciador**\r\n\r\nAgora, basta adicionar o sensor ao gerenciador e come\u00e7ar a publica\u00e7\u00e3o:\r\n\r\n```python\r\nmanager.add_sensor(params)\r\nmanager.start()\r\n```\r\n\u2728 E pronto! Seus dados de sensor est\u00e3o sendo simulados e publicados automaticamente no t\u00f3pico MQTT especificado. \ud83d\ude80\r\n\r\n# \ud83d\udcda Exemplos de Tipos de Sensores\r\n\r\nAqui est\u00e3o os tipos de sensores que voc\u00ea pode adicionar \u00e0 biblioteca:\r\n\r\n- \ud83c\udf21\ufe0f Temperature Sensor ('temperature')\r\n- \ud83d\udca7 Humidity Air Sensor ('humidity_air')\r\n- \ud83c\udf31 Humidity Soil Sensor ('humidity_soil')\r\n- \ud83d\udca1 Light Sensor ('light')\r\n- \ud83d\udd75\ufe0f Motion Sensor ('motion')\r\n- \ud83d\udd0c M\u00f3dulo Rel\u00e9 ('modulo_rele')\r\n\r\n## Exemplo de Adi\u00e7\u00e3o de M\u00faltiplos Sensores\r\n```python\r\n# Adiciona um sensor de temperatura\r\nmanager.add_sensor({\r\n    'sensor_name': 'temp_sensor',\r\n    'broker': 'localhost',\r\n    'port': 1883,\r\n    'topic': 'sensor/temperature',\r\n    'update_interval': 5,\r\n    'sensor_type': 'temperature'\r\n})\r\n\r\n# Adiciona um sensor de umidade do ar\r\nmanager.add_sensor({\r\n    'sensor_name': 'humidity_sensor',\r\n    'broker': 'localhost',\r\n    'port': 1883,\r\n    'topic': 'sensor/humidity_air',\r\n    'update_interval': 10,\r\n    'sensor_type': 'humidity_air'\r\n})\r\n\r\nmanager.start()\r\n```\r\n# \ud83d\udee1\ufe0f Seguran\u00e7a e Confiabilidade\r\n\r\nTodos os dados gerados s\u00e3o validados para garantir sua integridade.\r\nConex\u00e3o com o broker MQTT \u00e9 automaticamente gerenciada, com retentativas em caso de falha.\r\n\r\n# \ud83e\uddea Testes\r\nPara garantir que sua implementa\u00e7\u00e3o funcione corretamente, utilize os testes pr\u00e9-configurados na biblioteca:\r\n\r\n```bash\r\npytest tests/\r\n```\r\n\r\n# \ud83e\udd1d Contribui\u00e7\u00f5es\r\nContribui\u00e7\u00f5es s\u00e3o bem-vindas! Se voc\u00ea tiver sugest\u00f5es de melhorias, novas funcionalidades ou encontrar algum bug, sinta-se \u00e0 vontade para abrir uma issue ou enviar um pull request.\r\n\r\n# \ud83d\udcc4 Licen\u00e7a\r\n\r\nEsta biblioteca \u00e9 licenciada sob a Licen\u00e7a MIT. Veja o arquivo LICENSE para mais detalhes.\r\n\r\n**Feita com \ud83d\udc99 por Raunick Vileforte - Raunickbhdesign@gmail.com \u2728**\r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Biblioteca para simula\u00e7\u00e3o de sensores e publica\u00e7\u00e3o via MQTT",
    "version": "0.1.1",
    "project_urls": {
        "Homepage": "https://github.com/raunick/sensor_library"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d7b0dc53f783546d4dc11f13e7b83faccdb27365c28e63e7b3d281520a42bedd",
                "md5": "b9b9f7ffeafa6523469ff51a193a9958",
                "sha256": "7dfa0ccc9e17cbc578cf0b048a4af617952055f10ab561c652d59aebea17f952"
            },
            "downloads": -1,
            "filename": "PySensor_Mqtt-0.1.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b9b9f7ffeafa6523469ff51a193a9958",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 3620,
            "upload_time": "2024-09-04T23:01:32",
            "upload_time_iso_8601": "2024-09-04T23:01:32.182747Z",
            "url": "https://files.pythonhosted.org/packages/d7/b0/dc53f783546d4dc11f13e7b83faccdb27365c28e63e7b3d281520a42bedd/PySensor_Mqtt-0.1.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "67d8ca136d5f441fda264044f158e9cb27996a0305923d41b3b505635447f603",
                "md5": "856411fdb2e66b5df630983247c51d0a",
                "sha256": "5786507bf10ca6d0f35f34d2f05c82b92811026e529bb80d01b1d68b78fc69a4"
            },
            "downloads": -1,
            "filename": "pysensor_mqtt-0.1.1.tar.gz",
            "has_sig": false,
            "md5_digest": "856411fdb2e66b5df630983247c51d0a",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 3891,
            "upload_time": "2024-09-04T23:01:33",
            "upload_time_iso_8601": "2024-09-04T23:01:33.583082Z",
            "url": "https://files.pythonhosted.org/packages/67/d8/ca136d5f441fda264044f158e9cb27996a0305923d41b3b505635447f603/pysensor_mqtt-0.1.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-09-04 23:01:33",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "raunick",
    "github_project": "sensor_library",
    "github_not_found": true,
    "lcname": "pysensor-mqtt"
}
        
Elapsed time: 2.42747s