Skip to content

What Is UKMARSBOT

Peter Harrison edited this page Oct 26, 2019 · 3 revisions

ukmarsbot

A simple beginner's multi purpose robot platform

Using inexpensive, readily available materials, components and techniques, UKMARS has created a basic robot design that can be used in a variety of common contests such as line following, wall following, drag race and mini-sumo.

Processor power is provided by the Arduino Nano board because it is very cheap and widely available. There is a huge range of sample code available for almost any purpose and support is easily found online. The Arduino software can be installed on any computer and is free.

Coding

The easiest language for starting coding with the Arduino, and the method most people use, is to create a "Sketch" using the Arduino Integrated Development Environment (IDE). The Arduino IDE takes care of turning the sketch into a complete program and uploading it to the Arduino board. It can run on any of the major platforms: Windows, Mac and Linux enabling Sketch programs for the Arduino to be readily developed on any PC. The Arduino project has lots of examples and help available for creating code, as well as libraries of functions to carry out specific tasks. The Arduino IDE for Sketch requires software to be downloaded and installed on the development PC as well as drivers to enable the developed code to be downloaded using the USB cable onto the Arduino board. All of this software and drivers are free and easy to install as long as you have software install permissions on the PC.

Hardware

The robot hardware is constrained by the various contest events to be within certain dimensional limits. That means that the basic chassis will be smaller than 100mm x 100mm although add-on sensors for individual events will increase the size. The robot is designed to be multipurpose so there is a core hardware setup that provides for a basic wheelchair drive of two motors, encoder feedback for individual motor speed and a minimal interface for user interaction. Component substitutions are easy and provide great flexibility. Builders are free to make whatever modifications suit their purpose. For example, larger or smaller motors or wheels may be used or tracked drive may be substituted for wheeled drive.

Power Supply

For most purposes, the power supply for the robot will need to be compact, readily available and easy to recharge. Non rechargeable batteries are not economically viable for robot experiment and are, in any case, less environmentally friendly. Safety is a concern and so Lithium Polymer cells are only recommended when part of a regulated and protected pack. Perhaps the most common small battery is the rechargeable PP3 sized pack running at 8.4 Volts or 9 Volts. Rechargeable cells and their chargers can be purchased at supermarkets, DIY shops and online suppliers.

Motors

While there is endless variety in small DC electric motors, the N20-based gearmotors are excellent value for money and can be purchased in a huge range of performance characteristics. An example can be found here: Pimoroni 20:1 gearmotor. The common dimensions make it easy to swap motors without changing the mechanical design of the robot. Versions are available which can have encoders added to a rear shaft allowing for more accurate control of speed and greater precision in movement of the robot. The drivers for these motors are available on small circuit board modules that can easily be connected with the Arduino Nano. The preferred one for the UKMARS PCB is the Sparkfun TB6612FNG Dual H bridge motor driver board

Materials

It will be possible to build the robot using parts that are commercially readily available and specialist materials will not be required, access to basic hand tools and soldering equipment will be necessary. It is likely that some builders will have some access to a 3D printer or a laser cutter or both and the open design of the robot with upgrade paths will allow advanced builders to utilize these tools to create higher performing robots. Software Pre-written software examples for the Arduino IDE will be available together with any special libraries that might be necessary. The intention is to provide all the basic building blocks that will allow someone to construct a working robot that can be modified to run in a particular contest. There may be complete, working contest code examples but they will be intended to illustrate how things work and are very unlikely to be a direct short-cut to making a contest-winning robot. Instead, they will be designed as a starting point for higher performance entries.