Skip to content

Group Assignment : Velichappaadu (വെളിച്ചപ്പാട്)

Objectives

  • design a machine that includes mechanism+actuation+automation+application
  • build the mechanical parts and operate it manually
  • document the group project and your individual contribution
  • actuate and automate your machine
  • document the group project and your individual contribution

Presentation

Presentation Slide

Presentation Video

Brainstorming

BrainstormDay1

Even though we planned for 1 day to brainstorm, we ended up spending 2 days brainstorming different concepts for a machine. We wanted it to be fun as this would make it easy to present in a 1 min video.

We thought of many ideas we thought of before finalising a design. ProductIdeas

We finally decide on making An automatic light painting machine..

VelichappaduBrainstorm

Velichappaad (വെളിച്ചപ്പാട്)

The idea:
“A machine to automate light painting”.

Light painting is a photographic technique where you move a light source while taking a long-exposure photograph to make beautiful light trails. Here are some references of various light painting photographs. LightPaintingExample

To help convey and understand the idea better amongst us, we did some light painting in our lab. LightPaintingExample

LightPaintingExample

LightPaintingExample

LightPaintingExample

Project Planning

After we finalized the idea we divided the tasks and duties of each member.

  • Mechanical Design - Tom, Noel
  • Overall Design - Akash, Namita
  • Electronics- Akash, Ancy
  • Fabrication- Revi
  • Programming- Ashish, Noel
  • Project Planning- Akash, Revi
  • Ancy-Testing
  • Documentation- Noel
  • UI & Path planning- Ashish, Namita
  • Video editing- Abin
  • Assembly- All
  • BOM & Component sourcing- Akash, Ancy

This is our tentative project plan:

ProjectPlanRough

We make daily updates regarding the tasks completed and the the agenda for the day to discuss and distribute work accordingly.

The Design

We wanted to paint in free space. To do so the machine would resemble an open frame where the light trails will be plotted within it. This is will help to capture the background as well. A module with the lights in it will be embedded on to the mount . These lights can be controlled via a software in which we can give inputs for making whatever design we would like to paint. A camera will be setup to capture these trails and click the photograph. We would like to design the machine in such a way that it can easily replicate in any Fablab facility. ProjectPlanRough

Mechanism - Akash

We debated between using a polargraph design or a Core XY mechanism, but we ended up choosing the Core XY mechanism since

  1. It is more stable
  2. We have larger pool of references toreal life examples to rely on while building the machine
  3. We can reduce moment of inertia using this design.

CoreXYRef

Bill of Materials - Ancy

Mechanical Design - Akash

Our rough design would look something like this

mechanismDesign

We started to make CAD models of the parts of the mechanism with the task lead by Akash. The basic framework of it was created. Some minor adjustments are made according to the constraints we faced.

mechanismDesign

mechanismDesign

LED End Effector

PCB Design - Namita

We had to make a PCB for the addressable LEDs and also an eclosure for so that it can be easily taken out for recharging/any maintanence. The PCB was primarily designed to understand how the light trails could be made in different configurations.The PCB designing is lead by Namita and the enclosure locking system is being designed by Thomas and Noel.

The lights were arranged in way that we could increase the brushstroke by turning on different rows of the lights. WS2812B Leds were used for this project. We used the ESP32C6 miccrocontroller to control the LEDs through Wifi. two lithium battteries are provided after calculating the battery consumption. mechanismDesign mechanismDesign

The 7 WS2812B Leds are supposed to control the stroke size of the leds. It would offer 3 brush sizes to control the width of the stroke of light painting.

The LED PCB would be wirelessly controlled by another ESP32 C6 using ESP NOW mechanismDesign

Mount Design - Noel & Tom

The plan was to make a removable mount to make it easy to charge via USB C connection provided by the Xiao ESP32 C6.

LEDmountphoto

We had to figure out a way to attach the belts without the fasteners and be able to easily remove it without disassembling the whole body. To do this we went through a number of iterations for the lock mechanism.

Feature Description Result
Belt Test 1BeltTest1Img Enclosure to hold the belt at the light mount No resistive force to hold the belt in place.
Belt Test 2BeltTest2Img Added a dovetail joint to improve the resistive force keeping the belt in place. Now it works much better, but the clearance between the two parts is too much
Belt Test 3BeltTest3Img Reducing the clearance between the two parts by 0.5 and 1 mm offset Not working as expected, the belt comes off much looser this time, redesigning it so that the belt makes a loop
Belt Test 4BeltTest4Img Modified the design to form a loop Works much better once I reduced spacing for belt by 0.1 mm, but now the belt is not centered, will have to center it.
Belt Test 5BeltTest5Img Modified the design so that belt forms a loop over itself The belts slip against each other and come free. Will have to go back to previous design and modify it
Belt Test 6BeltTest6Img Modified design so that that the belt comes in the center and the whole joint takes up minimum horizontal space This version works very well, will proceed with this version

To make it easily removable, we used a push-and-slide lock mechanism.

HorizontalCrossSection NotchCrossSection SlideLockCavityCAD CylinderCAD

Unfortunately, at the end, the mount design had to be discarded since the uneven weight distribution and imablances in tension forces among the belts caused the LED mount to spin around its axis whenever the stepper motors moved it around.

Fabrication - Revi

mechanismDesign mechanismDesign mechanismDesign

Electronics - Ashish

Programming - Ashish

Firmware is a type of software permanently programmed into a hardware device to control its functions. Unlike general software applications that run on operating systems, firmware operates at a lower level and communicates directly with the hardware. In microcontroller-based systems, such as those used in embedded electronics or CNC machines, firmware is essential—it interprets commands, manages timing and logic, and interacts with physical components like sensors, motors, and communication interfaces.

Grbl_ESP32 is a firmware project that adapts the popular open-source Grbl CNC control software to run on the ESP32 microcontroller. It interprets G-code commands—standard instructions used in CNC machining—to generate precise step signals that drive stepper motors along the machine’s axes. In addition to core Grbl functions like motion control and parameter handling, Grbl_ESP32 leverages the ESP32’s built-in Wi-Fi and Bluetooth to enable wireless G-code transmission, machine status monitoring, and remote configuration.

We already had a CoreXY machine in our lab called the LUNA Plotter, so we used it for testing the firmware. GRBL was chosen as the firmware, and we needed to add custom commands to the G-code to control the LED—turning it ON and OFF and changing its color. Ashish had already tested the ESP-NOW communication protocol, so we also wanted to test it with this setup.

cnctestingflowchart.jpg

We initially tested the motor rotation through the firmware, which worked successfully. Next, we proceeded to test the CoreXY system. Using firmware, we moved the end effector in both positive and negative X and Y directions. We then focused on implementing homing with a limit switch. After some effort, we successfully tested the homing functionality. Finally, we tested the overall concept by feeding a G-code and running the machine. The resulting output is shown below.

testingwithled4.jpg

testingwithled2.jpg

Since high speed was required, we conducted tests on the machine using various feed rates and acceleration values. Through these trials, we determined the optimal settings: a feed rate of 12,000 mm/min, an acceleration of 6,000 mm/s² , and 160 steps/mm. The formula used to calculate the steps per millimeter is provided below.

equation.jpg

Motor steps per revolution = 200 steps

Micro stepping factor = 32 (1/32 micro stepping)

Pulley teeth count = 20 teeth

Belt pitch (distance between teeth) = 2 mm (GT2 belt) mechanismDesign

Testing - Noel

Fastener Tests

Feature Description Result
Screw HolesScrewHoleTest Required clearance for screw holes +0.3(M3), +0.2(M4), +0.3(M5), +0.1(M6)
Bearing TestBearingTestImg Required clearance for smooth rotation for pulleys ⌀5.08 mm (GT2)
Heated Threaded InsertsThreadedInsertImg Required clearance for heated threaded inserts ⌀5.28mm (M3), ⌀5.96mm (M4).

Resources & Downloads


Last update: April 19, 2025