Week 16: Applications and implications

What will it do?

AlfredBot project consists of an autonomous mobile robot based on ROS (Robot Operating System) with the objective of transporting objects from one point to another inside the FabLab or any other indoor environment.

AlfredBot will have the following features:

  • Navigate autonomously from one point to another.
  • Avoid obstacles
  • Capacity to carry up to 15kg of load
  • Mecanum wheels for greater freedom of movement
  • Modularity to add more sensors in the future
  • Web interface to call it or send it to a location

To understand more easily what I am going to do to achieve the above features I am going to break it down into two areas which are: Hardware and Software, both contain sub-components which I describe below.

Hardware:

  • Mecanum wheels
  • Robot housing
  • Robot chassis
  • Close loop motor controller
  • 9dof IMU

Software:

  • Setup Ubuntu Mate on a Raspberry Pi 4 Model B 4GB
  • Setup ROS
  • Setup Navigation Stack
  • Firmware for the close loop motor controller
  • ROS Driver for the motor controller
  • ROS Driver for the IMU
  • Web Interface
Who has done what beforehand?

I have been working for a little less than a year now on ROS based autonomous navigation systems for wheeled robots and drones, both using commercial hardware or even a commercial robot like the Summit XL HL with which I am working on a GNSS navigation system (RTK), obstacle avoidance and a web interface to track the current position of the robot in real time, you can find a sample video of the web interface and the tracking system here (the project is still under development), and regarding the drone is a DJI F550 kit with the objective to perform SLAM and 3D mapping of the environment, you can see a video desmostración here.

Within the FabLab ecosystem I found some interesting projects and I ordered them in descending order of similarity.

  • Fab2D2 by Carlos Andrés Moreno Molina "is a differential robot designed to help for move small objects into the laboratory. The robot has implemented the line follower sensing system to move autonomously. The robot can carry maximum 10 lbs. Each moment that the robot moves, it emits a warning sound."
  • Pipe Tracking Bot by Wael Khalil "which surveys a pipe from the inside and draws a digital map to the existing pipes underground, thus saving a lot of Time, Effort and Money used to survey the existing pipes the old way."
  • FAB-E by Vinod Kumar B G "a robot which can be usefull for Fablab cleaning ... can be operated manually using an RF-based remote control and also can move automatically by sensing the obstacles."

Other cool mobile robots projects

What will you design?

I will design the following components:

  • Mecanum wheels
  • Close loop motor controller
  • IMU
  • Robot chassis
  • Robot housing
What materials and components will be used? how much will they cost?

For the components that I will make myself, I will classify the materials according to the component they correspond to.

More links will be added soon

Mecanum wheels

Quantity Item From where it comes Cost (EUR)
1kg PLA filament 1.75mm Amazon 18.99
500g TPU filament 1.75mm Amazon 17.99
x80 683ZZ bearing Amazon 7.99
4m Threaded rod M3 Conrad 1 m = 1,29
x80 Nuts DIN 985 M3 Amazon 8.99
x12 Screws M4 x 60mm FabLab inventory x
x12 Nuts DIN 934 M4 FabLab inventory x

Robot housing

Quantity Item From where it comes Cost (EUR)
1.5kg PLA filament 2.8mm FabLab inventory x
1kg Wood filler Amazon 7.64
400ml Plastic Primer Amazon 10.99
400ml Black paint Amazon 8.99
400ml Primer paint Amazon 10.49

Robot chassis

Quantity Item From where it comes Cost (EUR)
3.28m Bosch aluminum profil 20x20 Item x
x24 Aluminum bracket Amazon 9.99
x24 Screw M5x20mm FabLab inventory x
x10 Screw M5x30mm FabLab inventory x

IMU

Quantity Item From where it comes Cost (EUR)
x1 ICM20948 Digikey 8.77
x1 MIC5225-1.8YM5-TR Digikey 0.34
x1 BSS138DWQ Digikey 0.37
x2 0.1uF Capacitor SMD 0603 Digikey 0.21
x2 10uF Capacitor SMD 0805 FabLab Inventory x
x1 SMD 1206 LED FabLab Inventory x
x4 10k Resistor SMD 1206 FabLab Inventory x
x1 1k Resistor SMD 0603 Digikey 0.13
x1 01x04 Connector Male FabLab Inventory x

Close loop motor controller

Quantity Item From where it comes Cost (EUR)
x1 ATSAMD21E17A 32-pin TQSP FabLab Inventory Item
x2 TB6612FNG_C_8_EL Amazon 9.9
x1 ZLDO1117-3.3V-1A FabLab Inventory x
x2 1uF Capacitor SMD 0805 FabLab Inventory Item
x2 47uF/16V Capacitor SMD Elec. 6.3x5.4 Item x
x2 SMD 106 LED FabLab Inventory x
x4 01x04 female connector FabLab Inventory x
x1 Pin header pitch 2.54mm 2x05 vertical SMD FabLab Inventory x
x4 Screw Terminal bornier pitch 5.08mm FabLab Inventory x
x1 USB Mini B FabLab Inventory x
x1 1.2k Resistor SMD 1206 FabLab Inventory x
x1 330 Resistor SMD 1206 FabLab Inventory x

Commercial components

  • Raspberry Pi 4 Model B
  • Intel RealSense D435i
  • LiPo Battery
Where will they come from?

Some of the materials come from the FabLab inventory, the IMU components from Daniele (Thank you very much) and the rest I bought online.

What parts and systems will be made?
  • Mecanum wheels
  • Close loop motor controller
  • IMU
  • Robot chassis
  • Robot housing
What processes will be used?

I will classify the manufacturing processes based on the parts that I will manufacture myself.

Mecanum wheels

  • Computer-aided design
  • 3D printing

Robot housing

  • Computer-aided design
  • 3D printing
  • Computer-controlled cutting

Robot chassis

  • Computer-aided design
  • Computer-controlled cutting
  • Mechanical design

IMU

  • Electronics design
  • Electronics production
  • Embedded programming

Close loop motor controller

  • Electronics design
  • Electronics production
  • Embedded programming
  • Networking and communications

Web interface

  • Interface and application programming

AlfredBot logo

  • Computer-aided design
  • Computer-controlled cutting
What questions need to be answered?

The main question running through my mind is: Will I be able to complete the final project on time with the features I would like?

Will the motors have enough torque to move 15kg of load?

Will the closed loop motor controller work well?

Will I be able to get the final finish on the Robot Housing?

How will it be evaluated?

I will evaluate my final project in four levels which are "Level 1", "Level 2", "Level 3" and "Final Boss" which consist of the following.

  • Level 1: The robot is able to move in manual operation mode without ROS.
  • Level 2: The robot is able to move in manual or assisted operation mode with ROS.
  • Level 3: The robot is able to construct a map of the environment and navigate autonomously.
  • Final Boss: The robot is able to navigate autonomously by interacting with it through a web interface.
  • Easter eggs: Cool Video production and music to show the final result (It is necessary to eliminate the final boss to unlock it).