Code Monkey home page Code Monkey logo

minipupper-iot's Introduction

Mini Pupper IoT: Connected Worker Safety with Robots and Terraform! 🐢🐾

Core Contributors:

Kevon Mayers - Project Lead, Terraform deployment & Full Stack Web App

Adam (Spidey) Purdie - Mini Pupper Development, MQTT to ROS bridge development

Terraform + AWS + Mini Pupper Logo

This workshop is a guided example of how you can leverage AWS IoT Core, AWS Amplify, Terraform, and robotics to improve worker safety. The robots used in this workshop are called Mini Pupper 2. If you're not familiar with Mini Pupper 2, it is an open-source robotic operating system. While Mini Pupper 2 comes with support for control with a game controller, we extended upon it's core functionality and have created a web and mobile app that you can use to issue commands through AWS for added functionality. We have also added support for a companion Air Quality Sensor (M5StickCPlus) where the robots will perform actions in response to detection of simulated toxins.

Dashboard Dashboard

We have connected Mini Pupper 2 to AWS IoT Core and have created a serverless full stack AWS Amplify App where you can issue commands to Mini Pupper, and can also visualize the data such as messages sent/received, and charts. For the UI we are leveraging Cloudscape, an open-source UI Design Library created by Amazon Web Services (AWS).

Architecture

As shown in this architecture, the Mini Pupper is able to receive MQTT messages through a MQTT to ROS bridge, that translates MQTT messages to ROS commands, and vice versa.

To provide a streamlined and repeatable deployment, we are leveraging Terraform for Infrastructure as Code (IaC). If you are not too familiar with Terraform, don't worry - we have created a custom Terraform module to abstract away most of the infrastructure creation down to a few lines of code. For those more experienced with Terraform, feel free to fork this repo and customize/add on to this solution, we are making it completely open-source. Contributions are also welcome!

To see Mini Pupper 2 in action, check out this video.

For getting started quickly, check out some of our provided code examples.

For detailed information and step-by-step guidance, check out the full workshop on AWS Workshop Studio.

minipupper-iot's People

Contributors

novekm 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.