Modified from https://github.com/linorobot/linorobot.git
Mobi_robot is a suite of Open Source ROS compatible robots that aims to provide students, developers, and researchers a low-cost platform in creating new exciting applications on top of ROS.
You can read the full tutorial how to build your robot here.
Supports multiple types of robot base:
- 2WD
- 4WD
- Ackermann Steering
- Mecanum drive
Works on:
- ROS Indigo (Ubuntu 14.04)
- ROS Kinetic (Ubuntu 16.04)
Fabricate your own Teensy 3.1/3.2 shield,
or wire it on your own. Wiring diagrams are also provided.
- GY-85
- MPU6050 (to be released)
- L298
- BTS7960
**This should easily work with other motor drivers as long as the pins are compatible.
- XV11 Lidar
- RPLidar
- Intel RealSense R200
- Kinect
- Raspberry Pi 3
- Jetson TK1
- Jetson TX1
- Odroid XU4
- Radxa Rock Pro
**Technically this should also work with any ARM dev board at least (1GB RAM) that runs Ubuntu Trusty or Xenial.
git clone https://github.com/linorobot/lino_install && cd lino_install
./install <base> <sensor>
Flexible and configurable components. linorobot_ws/teensy/firmware/lib/config/mobi_base_config.h
//uncomment the base you're building
#define LINO_BASE DIFF_2WD
// #define LINO_BASE DIFF_4WD
// #define LINO_BASE ACKERMANN
// #define LINO_BASE HOLO_4W
//uncomment the IMU you're using
#define USE_GY85_IMU
// #define USE_MP6050_IMU (not supported yet)
//uncomment the motor driver you're using
#define USE_L298_DRIVER
// #define USE_BTS7960_DRIVER
//define your robot' specs here
#define MAX_RPM 330 // motor's maximum RPM
#define COUNTS_PER_REV 1550 // wheel encoder's no of ticks per rev
#define WHEEL_DIAMETER 0.10 // wheel's diameter in meters
#define PWM_BITS 8 // PWM Resolution of the microcontroller
#define BASE_WIDTH 0.235 // width of the plate you are using
cd ~/mobi_robot_ws/src/mobi_robot/teensy/firmware
platformio run --target upload
roslaunch mobi_robot bringup.launch
roslaunch mobi_robot slam.launch
roslaunch mobi_robot bringup.launch
roslaunch mobi_robot navigate.launch