Project

# Title Team Members TA Documents Sponsor
20 Whiteboard Assistant Robot
Avneet Kaur
Morris Yu
Saj Patel
Junyan Bai design_document1.pdf
proposal1.pdf
Team Members:
- Saj Patel (spate709)
- Avneet Kaur (avneetk2)
- Morris Yu (morrisy3)

# Problem
Whiteboards are still commonly used in classrooms, labs, and meeting rooms, but adding information to them usually requires someone to stand at the board and write everything by hand. This can interrupt a presentation or discussion because the presenter has to turn away from the group to copy information onto the board. It also creates extra work when content already exists digitally. In addition, a large vertical whiteboard can be difficult to use for people who may not be able to comfortably reach or write across the entire board. Our goal is to create a portable robot that can attach to a whiteboard and automatically write or erase user-provided content, allowing information to be placed on the whiteboard without requiring a person to physically write it.

# Solution
The project focuses on developing a robot that can write on and erase a whiteboard automatically using the information given by the user. The user would be able to provide the content by typing it in or using voice input. The robot would attach to the whiteboard using magnets and move across the surface with the help of wheels and servo motors. By adjusting the direction and speed of the wheels, the robot would be able to travel horizontally, vertically, and diagonally. A spring-loaded marker holder would be able to keep the marker pressed against the whiteboard with consistent pressure while the robot is writing.

# Solution Components

## Subsystem 1 - Movement and attachment to the board
This subsystem will focus on allowing the robot to attach itself securely to the whiteboard and move across the surface of the board vertically, horizontally, and diagonally. Magnets will be used to keep the robot attached to the board while the wheels and the motors will be used to control its movement. Wheel encoders and other feedback systems will be used to track and provide feedback for the distance travelled, allowing it to trace predetermined paths for letters. An IMU will also be added to help track its orientation and detect unexpected rotation or slipping, while the wheel encoders will be used to estimate the robot's displacement.

Parts:
Motor driver (DRV8833PWP)
2 DC motors with encoders (DFRobot FIT0482)
IMU (Bosch BMI270)
Wheels (Pololu 32×7 mm silicone wheel) (smaller wheel = less mm/counts per output shaft revolutions)
Others: magnets

## Subsystem 2 - Writing and erasing
This subsystem will focus on the robot writing the information provided by the user. The user will be able to enter text through a computer or other device, and the program will convert the text into the paths that the robot can follow. A small spring loaded system with a microservo will be used to ensure that the pen can be lifted during gaps, and consistently pressed on the board (via the spring) in case of uneven surfaces. A similar system can/will be used for the eraser. To ensure the wheels do not drive over text or erase unintended sections, we plan to have the robot move from left to right, top to bottom, with the pen at the top of the robot such that the robot is always below and to the right of the most recent character.

Parts: Micro servo for marker
Micro servo (TowerPro SG90)
Others: Marker, Eraser, springs

## Subsystem 3 - Control and text processing
The control subsystem receives text from the user and converts each character into a path that the robot can follow. Characters will be represented using a simplified vector or single lined font. The controller will then convert each line and curve into wheel movement commands, and the encoder and IMU measurements will be used in a feedback loop to correct the robot's motion while it writes when necessary.

Parts:
ESP-32 (ESP32-S3-WROOM-1-N8)
Others: PCB, Wifi/bluetooth connection

# Criterion For Success
The project will be considered successful if the robot can:
- Remain attached to a steel-backed whiteboard without external support, including when it moves.
- Move in two dimensions across the whiteboard, including horizontal, vertical, and diagonal motion, with little to no slipping.
- Be able to receive some sort of text for it to recognize and write out via the pathing of the robot, whether it is through text, audio, or another format wirelessly.
- Be able to write recognizable letters of the alphabet (a-z)
- Raise and lower the marker automatically with a spring loaded system to maintain good contact, and prevent strokes outside the letters.
- Erase the board completely when done.

Decentralized Systems for Ground & Arial Vehicles (DSGAV)

Mingda Ma, Alvin Sun, Jialiang Zhang

Featured Project

# Team Members

* Yixiao Sun (yixiaos3)

* Mingda Ma (mingdam2)

* Jialiang Zhang (jz23)

# Problem Statement

Autonomous delivery over drone networks has become one of the new trends which can save a tremendous amount of labor. However, it is very difficult to scale things up due to the inefficiency of multi-rotors collaboration especially when they are carrying payload. In order to actually have it deployed in big cities, we could take advantage of the large ground vehicle network which already exists with rideshare companies like Uber and Lyft. The roof of an automobile has plenty of spaces to hold regular size packages with magnets, and the drone network can then optimize for flight time and efficiency while factoring in ground vehicle plans. While dramatically increasing delivery coverage and efficiency, such strategy raises a challenging problem of drone docking onto moving ground vehicles.

# Solution

We aim at tackling a particular component of this project given the scope and time limitation. We will implement a decentralized multi-agent control system that involves synchronizing a ground vehicle and a drone when in close proximity. Assumptions such as knowledge of vehicle states will be made, as this project is aiming towards a proof of concepts of a core challenge to this project. However, as we progress, we aim at lifting as many of those assumptions as possible. The infrastructure of the lab, drone and ground vehicle will be provided by our kind sponsor Professor Naira Hovakimyan. When the drone approaches the target and starts to have visuals on the ground vehicle, it will automatically send a docking request through an RF module. The RF receiver on the vehicle will then automatically turn on its assistant devices such as specific LED light patterns which aids motion synchronization between ground and areo vehicles. The ground vehicle will also periodically send out locally planned paths to the drone for it to predict the ground vehicle’s trajectory a couple of seconds into the future. This prediction can help the drone to stay within close proximity to the ground vehicle by optimizing with a reference trajectory.

### The hardware components include:

Provided by Research Platforms

* A drone

* A ground vehicle

* A camera

Developed by our team

* An LED based docking indicator

* RF communication modules (xbee)

* Onboard compute and communication microprocessor (STM32F4)

* Standalone power source for RF module and processor

# Required Circuit Design

We will integrate the power source, RF communication module and the LED tracking assistant together with our microcontroller within our PCB. The circuit will also automatically trigger the tracking assistant to facilitate its further operations. This special circuit is designed particularly to demonstrate the ability for the drone to precisely track and dock onto the ground vehicle.

# Criterion for Success -- Stages

1. When the ground vehicle is moving slowly in a straight line, the drone can autonomously take off from an arbitrary location and end up following it within close proximity.

2. Drones remains in close proximity when the ground vehicle is slowly turning (or navigating arbitrarily in slow speed)

3. Drone can dock autonomously onto the ground vehicle that is moving slowly in straight line

4. Drone can dock autonomously onto the ground vehicle that is slowly turning

5. Increase the speed of the ground vehicle and successfully perform tracking and / or docking

6. Drone can pick up packages while flying synchronously to the ground vehicle

We consider project completion on stage 3. The stages after that are considered advanced features depending on actual progress.

Project Videos