Giter VIP home page Giter VIP logo

mesutrk95 / goddamn-robot Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 0.0 3.97 MB

A ReactJs-based web client ๐Ÿ•น๏ธ provides a user-friendly interface for controlling robots ๐Ÿค–, emphasizing smooth movements, turn control, and camera live streaming. ๐Ÿ“ท

Python 2.63% HTML 3.88% JavaScript 74.08% SCSS 19.41%
robot joystick nodejs raspberry-pi raspberry-pi-4 react reactjs robotics socket-io websocket

goddamn-robot's Introduction

๐Ÿšฉ RaspberreyPI Remote Tank Chassis Robot ๐Ÿšฉ

This project contains all neccessary source codes to control a remote Raspberry Pi based tank chassis robot, Dedicated to lovers of robotics & software developers!

You can have your own tank chassis design depending on the hardwares you may have. Click here to see demo images & videos ๐Ÿ’ก of what i have made.

If you are looking for the hardware implementation then please follow this link or If you are intereseted to know more about the project software implementation then please stay here! ๐ŸŠ

My Robot Design

๐Ÿ”Ž Overview

I have used Wifi communication protocol to connect the robot to its controller, Thus the robot and robot's controller should be connected to a same Wifi network, You can connect them to your home Wifi, Or you can setup the RPI to make an access point, That there is more details about this kind of setup.

The RPI4 considered to be a Server and the web client application is our Client. The project consists of two separated projects for controlling the robot :

๐Ÿฆพ Features

Many other interesting features can be added to the robot, And they can realy make the robot smarter! The robot is still under development. At the time of writing the documentation, These are the main features of robot:

  • Smooth movements in all directions
  • Smooth turn control
  • Camera live stream
  • Robot keyboard controller
  • Robot mouse controller
  • Robot joystick controller

๐Ÿค– Robot application (Server)

The robot Nodejs application simply makes a SocketIO server that is listening to port 5123 by default. The app has got access to the RPI GPIO and the RPI camera, then you must have setup your RPI config to enable camera.

Read more about the robot application script and installation guides.

๐Ÿ•น๏ธ Robot webapp controller (Client)

The robot controller web application is based on web, And the client application developed using ReactJs. The main responsibility of this project is providing a good user interface to control the remote Robot. You can run this project on another machine or you even can run it on the robot RPI computer.

Read more about the robot web app controller and installation guides.

๐Ÿ”Œ Hardwares & Modules

The list below, includes all necessary modules and hardwares to make the robot and the
design depended parts were ignored in this list.

  • 1 x Tank chassis with 2 DC motors
  • 1 x Raspberry PI 4
  • 1 x Raspberry PI camera (OV5647)
  • 1 x L298 motor driver controller module
  • 1 x SG90 Servo motor
  • 1 x HX-2S-10 Series Li-ion battery managment system (BMS) module
  • 1 x TP-5100 Series Li-ion battery charger module
  • 2 x 5V-2A DC/DC Step-down voltage converter module (MP1584EN, MINI-360 ...)
  • 1 x 2A DC/DC Boost voltage converter module (MT3608 Module)
  • 4 x Li-ion 18650 battery (~2600mah)
  • 1 x USB to Type-C cable
  • 1 x Two way electric switch

โš ๏ธ Security!

Make sure about your Wifi modem that there you haven't got any data leak! Transmitting the camera and control data happens over the insecure http & ws protocols, you can secure the connections by implementing the https & wss contexts.

goddamn-robot's People

Contributors

mesutrk95 avatar

Stargazers

 avatar

Watchers

 avatar

goddamn-robot's Issues

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.