All Projects → SRA-VJTI → MARIO

SRA-VJTI / MARIO

Licence: MIT license
Official Repository for ROS-based Manipulator, implemented with ESP32

Programming Languages

C++
36643 projects - #6 most used programming language
CMake
9771 projects
python
139335 projects - #7 most used programming language
c
50402 projects - #5 most used programming language
HTML
75241 projects
shell
77523 projects

Projects that are alternatives of or similar to MARIO

Somfy Remote
Somfy remote control emulator connected to MQTT
Stars: ✭ 19 (-73.97%)
Mutual labels:  wifi
direct-net-share
share internet via Wifi direct on Android
Stars: ✭ 36 (-50.68%)
Mutual labels:  wifi
rssd
Rohde & Schwarz SCPI Driver (in Python)
Stars: ✭ 25 (-65.75%)
Mutual labels:  wifi
bridgeap
Automagically bridge any live interface to any idle interface using NATS, DHCP, and HostAP where applicable
Stars: ✭ 52 (-28.77%)
Mutual labels:  wifi
WiFi-remote-for-Bestway-Lay-Z-SPA
Hack - ESP8266 as WiFi remote control for Bestway Lay-Z spa Helsinki
Stars: ✭ 138 (+89.04%)
Mutual labels:  wifi
CDDN-Change-DNS-Dynamically-with-your-Network
This script allows you to have the best configuration of your DNS when switching from one Wi-Fi to another.
Stars: ✭ 22 (-69.86%)
Mutual labels:  wifi
bl602-pac
Embedded Rust's Peripheral Access Crate for BL602 microcontrollers
Stars: ✭ 16 (-78.08%)
Mutual labels:  wifi
DSMRloggerWS
New firmware for the DSMRlogger heavily using WebSockets and Javascript
Stars: ✭ 29 (-60.27%)
Mutual labels:  wifi
ESP32 Thing Plus
ESP32 Thing-compatible board using the WROOM module and a QWIIC connector.
Stars: ✭ 18 (-75.34%)
Mutual labels:  wifi
ESPAsync WiFiManager
This is an ESP32 (including ESP32-S2 and ESP32-C3) / ESP8266 WiFi Connection Manager, using ESPAsyncWebServer, with fallback web configuration portal. Use this library for configuring ESP32, ESP8266 modules' WiFi, etc. Credentials at runtime. You can also specify static DNS servers, personalized HostName, fixed or random AP WiFi channel. With ex…
Stars: ✭ 244 (+234.25%)
Mutual labels:  wifi
AndroidWiFiManager
Android WiFi Manager
Stars: ✭ 115 (+57.53%)
Mutual labels:  wifi
wlan-extcap
Wireshark extcap interface for remote wireless captures.
Stars: ✭ 31 (-57.53%)
Mutual labels:  wifi
rpi3-wifi-conf
A simple Python script to configure wifi over bluetooth for a Raspberry Pi 3
Stars: ✭ 112 (+53.42%)
Mutual labels:  wifi
wifi-penetration-testing-cheat-sheet
Work in progress...
Stars: ✭ 149 (+104.11%)
Mutual labels:  wifi
WiFiPS
WiFi Based Indoor Positioning System, A MVP android Application
Stars: ✭ 105 (+43.84%)
Mutual labels:  wifi
wemosetup
A simple Python script to set up WeMo devices
Stars: ✭ 17 (-76.71%)
Mutual labels:  wifi
micrOS
micrOS - mini automation OS for DIY projects requires reliable direct communication
Stars: ✭ 55 (-24.66%)
Mutual labels:  wifi
tuyapower
Python module to read status and energy monitoring data from Tuya based WiFi smart devices. This includes state (on/off), current (mA), voltage (V), and power (wattage).
Stars: ✭ 101 (+38.36%)
Mutual labels:  wifi
pycameresp
Motion detection with image notification for Esp32CAM and Esp32 flasher with GUI based on esptool.py.
Stars: ✭ 40 (-45.21%)
Mutual labels:  wifi
Helicopter-Simulation
A complete 6DOF helicopter simulation (physics engine + visualization)
Stars: ✭ 45 (-38.36%)
Mutual labels:  kinematics

MARIO WORKSHOP 2.2

MARIO abbreviation for Manipulator on ROS Based Input Output is a bot with 3 Degree of Freedom. It consists of two SG90 micro servo and one MG995 metal gear servo motor. The servo motors are placed on base, elbow and shoulder enabling it with 3 Degrees of Freedom.

Sneek Peek

Working of the Mario Bot

Mario bot simulated using Gazebo

File Structure

├── 1_chatter_listener            # talker and listener script to understand the nodes and communications in ROS
├── 2_simulation_dh               # simulation of DH paramteres
├── 3_simulation_rviz             # simulation of MARIO bot on rviz
├── 4_simulation_gazebo           # simulation of MARIO bot on gazebo
├── assets                        # contains necessary gifs, images 
├── firmware                      # contains ESP-IDF examples for controlling servo motors and rosserial
│   ├── 1_servo_set_zero          # example in ESP-IDF to set angles of all servo motor zero
│   ├── 2_servo_sweep             # example in ESP-IDF to set variable angles in servo motor
│   ├── 3_rosserial_rviz          # example in ESP-IDF to interface with rviz environment as well as ESP32
│   ├── 4_rosserial_gazebo        # example in ESP-IDF to interface with gazebo environment as well as ESP32
│   ├── 5_servo_test_webserver    # example in ESP-IDF to set angles of servo over the webserver interface
│   └── components                # contains all the dependencies required for the above examples
│       ├── rosserial_esp32       # rosserial library to setup interface between ros environment and ESP32
│       └── sra-board-component   # library to interface with SRA board
├── LICENSE
└── README.md 

Kinematics

  • Mario workshop aims to provide the basic knowledge about the DH parameters, forward kinematics , inverse kinematics.
    • DH Parameters :- Denavit–Hartenberg parameters (also called DH parameters) are the four parameters associated with a particular convention for attaching reference frames to the links of a spatial kinematic chain, or robot manipulator
    • Forward Kinematics :- Forward kinematics refers to the use of the kinematic equations of a robot to compute the position of the end-effector from specified values for the joint parameters. The kinematics equations of the robot are used in robotics, computer games, and animation.
    • Inverse Kinematics :- inverse kinematics is the mathematical process of calculating the variable joint parameters needed to place the end of a kinematic chain, such as a robot manipulator or animation character's skeleton, in a given position and orientation relative to the start of the chain.

ROS

ROS is an open-source, meta-operating system for your robot. It provides the services you would expect from an operating system, including hardware abstraction, low-level device control, implementation of commonly-used functionality, message-passing between processes, and package management.

Publisher and Subscriber

Publish/Subscribe is a messaging pattern that aims to decouple the sending (Publisher) and receiving (Subscriber) party. A real world example could be a sport mobile app that shows you up-to-date information of a particular football game you're interested in. In this case you are the subscriber, as you express interest in this specific game. On the other side sits the publisher, which is an online reporter that feeds a system with the actual match data. This system, which is often referred as the message broker brings the two parties together by sending the new data to all interested subscribers.

While ROS works on the same system, this system is also used in various other libraries like MQTT.

ESPIDF

ESP-IDF is the development framework for Espressif SoCs.The SRA Board uses ESP32 as microcontroller, hence ESPIDF is required to code the ESP32. Examples included inside firmware directory has been written in ESPIDF version 4.2 .

ROSSERIAL

ROS Serial is a point-to-point version of ROS communications over serial, primarily for integrating low-cost microcontrollers (Arduino) into ROS. ROS serial consists of a general p2p protocol, libraries for use with Arduino, and nodes for the PC/Tablet side (currently in both Python and Java).

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].