Coder Social home page Coder Social logo

garethnisbet / t-bots Goto Github PK

View Code? Open in Web Editor NEW
29.0 9.0 9.0 339.7 MB

Software for controlling and analysing T-Bots (Balancing robots)

Home Page: http://www.klikrobotics.com

License: Apache License 2.0

Python 93.07% C++ 6.93%
t-bot firmware python inverted-pendulum self-balancing-robot arduino arduino-library

t-bots's Introduction

File Structure:

TBot - Main code to run T-Bot.

Development - Check this folder regularly. This is where experimental software will show up first.

DCMotorTest - Simple example to drive motors using the TB6612FNG driver board (used to calibrate motors).

BluetoothChangeName - Used to set BAUD rate, set name for T-Bot and get MAC address.

BTListen - Read in data coming from Bluetooth controllers (useful if you want to make your own controller).

Python - Python code to retrieve and analyse data from the T-Bot.

TBotLibraries.zip - Libraries required to run the T-Bot. These can be extracted directly into the Arduino libraries folder.

Ultrasound - Simple example to interrogate the HC-SR04 ultrasound module.

ReadGyro - Simple example to interrogate MPU-6050 sensor.

SchedulerExample - A simple example to show you how to use a schedular instead of nested loops.

Joystick - Wireless USB controller to Bluetooth bridge written in python - You can use a USB Joystick or PS3 / PS4 controller - python-bluez / socket - works on Linux.

TBot_Joystick_Python_PYBLUEZ - Bluetooth joystick written in python - Requires python-bluez and Bluez - works on Linux.

TBot_Joystick_Python_SOCKET - Bluetooth joystick written in python - Python3 - works on Linux.

TBot_Joystick_Python_Pyserial - Bluetooth joystick written in python - Works on Windows and Mac.

Usage:

  1. Install the arduino IDE from https://www.arduino.cc.
  2. Import the libraries by extracting TBotLibraries.zip directly in the Arduino library folder.
  3. You will need to select Tools -> Board -> Arduino Nano.
  4. Open TBot.ino and click on the upload button to send the code to your T-Bot.

๐Ÿ’ก Note: Windows users need to use the old boot loader. In the Arduino IDE select TOOLS > PROCESSOR > in the pull down menu change ATmega328P to ATmega328P (Old Bootloader).

๐Ÿ’ก Note: Raspberry Pi users will need to download the ARM 32 bit version.

t-bots's People

Contributors

garethnisbet avatar gilesknap avatar kylelobo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

t-bots's Issues

Bluetooth Controller

Please, can you provide brief instructions on how to set up the Bluetooth Controller.

I believe the correct app (for Android) is Joystick Bluetooth Commander.

However I cant see how to set up the trim buttons, the buttons seem to be toggle buttons, but I'm expecting to be able to increment and decrement some trim values.

A brief list of the labels for the buttons and data readbacks, plus info on how to configure would be very helpful.

Thanks, giles.

New software - some issues

Hi Gareth,

I'm trying to update the firmware on the TBot.

The .ino file in folder TBot0.4 was called TBot0.3.ino and Arduino IDE complained. I renamed the file to TBot0.4.ino and it then did upload (however I am left uncertain as to whether you have put the correct file in source control.

I tuned the deadbands and it seemed to work as expected but the bot cannot balance at all now!

Version Control

I will have a go at taking a fork and tidy it into branches for you.

Documentation

Gareth,

Please, could you update the Readme.Md to include brief instructions on:-

  1. Which Bluetooth app to use and how configure the trim buttons (with meaningful labels)

  2. How to tune the motor deadbands

Thanks

(P.S. My TBot now has its new parts and looks very nice - it was fun to build, your mechanical design is very neat)

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.