project specification

GRITSBot

The GRITSBot is a wheeled differential-drive microrobot that resembles state-of-the-art platforms while closely replicating typical capabilities. The range of capabilities include wheeled locomotion, wireless communication to a host computer, infrared-based distance sensing, accelerometer and gyroscope, and onboard power for operation up to 5 hours. Additionally, the GRITSBot’s support system allows a single user to easily operate and maintain a large collective of robots. These features include automatic sensor calibration, autonomous recharging, wireless reprogramming of the robot, as well as collective control.

Specifications

power 1 single cell LiPo battery (150 mAh / 400 mAh)
voltage3.7 V
microchip 1 1 Nordic nRF24L01 + transceiver module operating at
microchip 2 1 Atmega328 chip
sensors 6 infrared distance sensors, arranged in 60° increme
Main board $12.60 Power management, RF, main processing
Motor board $12.34 Actuation and motor control
Sensor board $16.00 IR sensing, accelerometer, gyro
Various $5.78 Battery, chassis
Total $46.72

Overview

The range of capabilities include wheeled locomotion, wireless communication to a host computer, infrared-based distance sensing, accelerometer and gyroscope, and onboard power for operation up to 5 hours. Additionally, the GRITSBot’s support system allows a single user to easily operate and maintain a large collective of robots. These features include automatic sensor calibration, autonomous recharging, wireless reprogramming of the robot, as well as collective control.

Design

Design Goals

In the development of the GRITSBot, the main focus lied on low-cost, small size, scalability, and simplicity of design, assembly, and usage.

A common system setup based on differential drive ground robots and some form of motion capture system is used in a number of research labs. Therefore we think GRITSBots, as a new microrobot testbed should closely resemble this setup.

Additionally, the required capabilities of a testbed are determined by the algorithms the microrobots are tasked to execute. The decentralized nature of a variety of multi-agent algorithms (such as rendezvous, formation control, vehicle routing) at a minimum require local sensing and accurate locomotion. Furthermore, to broaden the scope of such a robotic testbed, it should offer the capability of remotely operating robots or closing the feedback loop remotely (for example for global position control). As such, some form of global communication and positioning system is also required.

Summarized:
• High resolution and accuracy locomotion
• Range and bearing measurements
• Global positioning system
• Wireless communication with a global host

Furthermore, as robots are scaled down in size and scaled up in numbers additional maintenance and usability features become indispensable. These features allow a single user to easily handle large numbers of robots without the need to individually operate, program, charge, or calibrate them. These convenience features significantly speed up the experimental process and simplify the maintenance of a large collection of robots.

• Automatic sensor calibration
• Automatic battery charging
• Wireless programming
• Local communication between robots

Design Setup

Simplicity
The total number of SMD (surface mount devices) components per board was kept to a minimum. The motor board contains 14 parts, the main board 22, and the sensor board 13 SMD parts in addition to 12 through-hole components. Therefore, not counting the header pins that connect the individual boards the total part count comes to just 61 components.
Manual assembly can be accomplished in one to two hours.

Modularity
GRITSBot has a layered design that allows for fine-grained adaptability of its functionality by removing or adding layers.

Scalability
Depending on the required capabilities, certain limitations are imposed on the number of concurrently operating GRITSBots:

  1. The overhead camera imposes limits on the total size of the environment (if absolute positioning is required).
  2. The bandwidth of the RF channel limits the number of robots (if global communication is required).

Low costs
The GRITSBot is fully open-source, available online, and a single robot can be built for under $50.

Small Form Factor
A footprint of 31 × 30 millimeters.

Support System - Usability
Convenience features include collective programming, powering and charging, as well as collective control.
An additional tool we developed was automatic sensor calibration.
All these tools aim at automating the menial tasks of maintaining a large collective of robots by minimizing physical interaction with the robots. For example, an EEP-ROM chip on the GRITSBot enables wireless programming of both the motor board and the main board. In addition to individually reprogramming a robot based on its unique wireless ID, it is also possible to broadcast reprogram all available robots or groups of robots.

Design Description

The GRITSBot features a layered design, where each layer fulfills a specific purpose and can be swapped in case of up-/downgrades or replacements. Each layer was designed with a specific function in mind. This section describes each of the five functional blocks of the robot that are distributed across three circuit boards or layers.

The layers of the GRITSBot from left to right - sensor board, main board, motor board. The robots features include: (A) IR distance sensors, (B) accelerometer and gyro (currently not equipped), (C) main microcontroller, (D) battery charger, (E) voltage regulator, (F) motor board microcontroller, (G) stepper motor (on the bottom of the board), (H) battery voltage measurement, (I) motor controller.

Locomotion
GRITSBot does not use conventional DC motors and therefore does not require encoders to estimate their velocities. Instead, locomotion is based on miniature stepper motors. By their very nature, stepper motors completely obviate the need for velocity estimation since the target velocity of each motor can just be set through regulating the delay between individual steps. Odometry therefore is reduced to merely counting steps, which can be used to compute the velocities of the robot and estimate its position.

This approach offers high-accuracy locomotion at a top linear velocity of up to 25 cm/sec and rotational velocity of up to 820 degrees/sec.

Sensing
For reasons of both sensor size and cost, the GRITSBot relies on infrared-based distance sensing. Six IR transmitters and receivers are arranged in 60◦ increments around the circumference.

The sensor board also houses an accelerometer and gyroscope whose data can be fused into the velocity and position estimation to account for example for slip.
A battery voltage sensor informs the control of the robot’s recharge behavior.

Communication
The GRITSBot is equipped with an RF transceiver operating at 2.4 GHz. These low-power transceivers were chosen over WiFi for the main reason of reduced power consumption. Whereas a typical WiFi chip consumes approximately 250 mA, the integrated RF transceiver can operate at currents as low as 16 mA, thus drastically increasing battery life.
The drawback of these low-power transceivers, however, is their lower data rate, which is limited to 2 Mbit/s

Local Communication:
In principle the GRITSBot is capable of local IR-based communication, no such communication protocol is currently implemented. Note however, that no local communication is required for most multi-robot experiments where distance and bearing measurements are available. If the need for local communication arises, it can be simulated through global communication to a host system.

Processing
The GRITSBot is equipped with two microcontrollers running at 8 MHz, an Atmega 168 chip on the motor board and an Atmega 328 chip on the main board. Whereas the Atmega 168 chip is solely responsible for motor velocity control of the stepper motors, the Atmega 328 is tasked with wireless communication, sensor data processing and user-defined high-level tasks such as obstacle avoidance or other behaviors.

Power System
A 150 mAh single-cell lithium polymer (LiPo) battery that supplies a nominal voltage of 3.7V to the robot, which is then regulated down to 3.3V - the system operating voltage. Both the power regulation and the battery charging circuitry are embedded into the main board, which supplies power to the motor and sensor board through header pins. The charging circuitry of the robot operates at 5V input voltage. When connected to a power supply, it charges the battery through a single-cell LiPo charging chip. Currently, depending on the activity level of the robot, it can operate between 30 minutes to five hours.

If longer battery life is required, the GRITSBot can be equipped with a battery up to 400 mAh therebyalmost tripling its battery life. Note that with an autonomous charging behavior in place, the robot can recharge its battery within approximately 30 minutes thus extending its battery life indefinitely.

References

Details the development, design, and operation of a remotely accessible, multi-robot research facility – the Robotarium. Introduces the hardware and software components required to enable remote access of robot swarms. Discusses the considerations one must take when making complex hardware remotely

D. Pickem, P. Glotfelter, L. Wang - IEEE International Conference on Robotics and Automation (ICRA) 2017

Introduces the Gritsbot concept, its design rationale and requirements, and continues to describe the individual functional blocks of the GRITSBot. It also demonstrates the capabilities of the GRITSBot by describing experiments.

D. Pickem, M. Lee, and M. Egerstedt - IEEE International Conference on Robotics and Automation (ICRA) 2015

Provides detailed description of the GRITSBot project; its goal, requirements, and design approach. Furthermore, detailed description of design & features, and specifications. Electronics files are provided. Lastly it describes a testbed that acts as a support system.

gritslab.gatech.edu