SpaceVacuum

From NURDspace
SpaceVacuum
SpaceVacuum.jpg
Participants Giorg10
Skills Electronics, Robotics, ROS
Status Active
Niche Yes
Purpose Clean and tidy HAAHAHA space
Tool No
Location Around the space
Cost Not a lot
Tool category Electronics

SpaceVacuum Property "Tool Image" (as page type) with input value "File:{{{Picture}}}" contains invalid characters or is incomplete and therefore can cause unexpected results during a query or annotation process. {{{Picture}}} {{#if:No | [[Tool Owner::{{{ProjectParticipants}}} | }} {{#if:No | [[Tool Cost::Not a lot | }}

In the (false) hope that this will help keep the space cleaner, this project aims at performing a brain-transplant to one of the robot vacuum cleaners at the space to improve its ability to navigate and connect it to the space's IRC.

Plan

  • Reverse-engineer the robot's PCB
  • Replace the MCU with a custom controller
  • Set up a Pi with ROS + nav-stack
  • Write a ROS driver to link to said custom controller
  • Make an initial 2D map of the space
  • Write a ROS driver to act as a bot in the space's IRC

This should be enough to get some basic behaviour.

Extensions

Lost more could be done.

  • Add charging pads, make a charging station so it can charge itself
  • There are 3D cameras like the Kinect and D-Lite, these could be used to make/update a 3D map of the space.
  • There is a horn, could be linked to a camera to horn at people that don't get out of the way.
  • A camera on the front of SpaceVacuum that streams live on YouTube/Twitch
  • Add your silly idea to this list

Progress

Currently busy with step 1, RE'ing the PCB.

Reverse-engineering

The robot's PCB is a very dense, and a 4-layer one... a bit of a PITA to RE, but it will slowly get done.

  • MCU: STM32F030C8
  • H-bridges: PT5126
  • Comparators: LM393 (function not known to this day)
  • Step-down DC-DC: A5268
  • Battery: 3S Lithium (originally 3x 18650 @ 2.2 Ah)
  • MOSFETs: STP4435

The bumper sensors are IR phototransistors (for durability, perhaps?) The motor encoders are also optical, and very high-precision (Hz / m: TBD)

MCU pin-out

Pin Function Description
A14 USART2 TX Used to flash the chip
A15 USART2 RX Used to flash the chip
B7 Left motor IN-A To IN-A of H-bridge of left motor
A10 Left motor IN-B To IN-B of H-bridge of left motor
A9 Right motor IN-B To IN-B of H-bridge of right motor
B2 Right motor IN-A To IN-A of H-bridge of right motor
B10 Right encoder Optical encoder of right motor