top of page

Writing Bot: A Pedagogical Tool

Team Project (3)


During the term for our first robotic design course, we undertook a project to design a toy for >3 yrs old children. We decided to develope a robot proficient in mimicking "human" handwriting.

Design Philosophy

Bearing in mind our target audience – children at the nascent stages of writing – we ensured our robot that could serve as both an educational assistant and a playmate for kids, easing them into the world of writing while keeping the experience fun and interactive. It's lightweight, allowing a child to transport it effortlessly, offering both educational and entertainment value.


  1. Proximity Driven: The inclusion of an Ultrasonic sensor boosts the robot's interactivity, pausing or initiating the writing task based on object proximity.

  2. Arduino-Driven Control System: Employs Arduino for processing and controlling the robot's actions, allowing for customizable scripts and adaptability in writing patterns.

Prototype: pen holder

LEGO Pen Holder 
The pen holder was constructed from LEGO pieces I found at home, designed to hold a pen of different sizes. While it serves its basic purpose, its grip on pens doesn't meet the desired firmness, leading to instances where the pen may not be held securely. 

Structure and Assembly

The robot’s kinematic structure comprises three servomotors. The initial servo, attached to the base plate, together with the mid-tier servo, constitutes a two-bar mechanism. This configuration coordinates the rotational movement of its two links, guiding the pen along predetermined path. The third servo motor serves as the pen-lifting mechanism.

  shows our CAD design that visually presents all of our components. 

Technical Overview

The most important part of our robot was to determine the path of motion of the arm, which was done using vector summation. We defined the long arm as R1 and the servo connected on top of it as R2 then their sum was defined as R3. Delta1 and the delta2 were determined using the magnitude of R3 and the value of that magnitude was considered as our initial point of the path of the arm. In addition, we determined the angles of each point in expression “MEC 101” and used those angles in Arduino program to perform “MEC 101” on a sheet of paper. The technical calculations are shown below.
bottom of page