Giter VIP home page Giter VIP logo

iot_gateway_modbus's Introduction

IoT_Gateway_Modbus: A MQTT Gateway connecting Modbus RTU with MQTT Bridge of Google IoT Core

Scope of this solution:

This software is a user-solution of an "IoT Gateway" for Modbus RTU.

The intitial reason for starting this solution was the need for a Gateway for Solar Microgrids. A monitoring system for microgrids can help NGOs and companies e.g. in Eastern Africa, to prove project success and also improves predictive and reliable maintainance. Using a small embedded Linux/Windows computer, e.g. a Raspberry PI, low-cost Modbus RTU sensors can be read and a cost-effective monitoring solution is possible.

As provided this solution offers:

  • Cloud: Google IoT Core

    • deploying and changing Modbus configuration from the GCP.
    • Reliable connection using Python Paho MQTT Client
    • low data footprint in GSM szenarios: compression of multiple sensor measurements using gzip
  • Modbus: Modbus RTU: RS232, RS485 via USB interface.

    • read sensor values from 5-10 Modbus RTU Slaves per second
    • schedule individual indivdual for each sensor and slave
  • Cloud: Google IoT Core

    • deploying and changing Modbus configuration from the GCP.
    • Connection using Paho MQTT Client
    • low data usage: compression using gzip and multiple sensor measurement at once
  • Modbus: Modbus RTU: RS232, RS485 over USB.

    • read 5-10 Modbus RTU Slaves per Second
    • schedule indivdual for every sensor
    • handling of all modbus

Documentation Software:

Related software:

  • other clouds platforms: this module is designed for the GCP and Google IoT Core, however would also work with other MQTT Bridges. For Azure, a Modbus Gateway module exists.

About:

Required Python 3.7.7 libaries that are not included and must be installed separatley with the requirements.txt:

  • "schema" is licensed under MIT Licence; available here
  • "PyJWT" MIT Licence, 2015 Jose Padilla; available here
  • "paho-mqtt" is licensed under Eclipse Public License v1.0 / Eclipse Distribution License 1.0 ; available here
  • "Modbus Test Kit" is licensed under LGPL Licence; available here
  • "pyserial" is licensed under BSD-3-Clause (BSD Licence); available here

This code example works with google IoT Core and other MQTT Briges. However, this code it not affiated with products of Google or Google Cloud.

iot_gateway_modbus's People

Contributors

michaelfeil avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.