MCube Light

by ChristopheV4 in Circuits > LEDs

470 Views, 2 Favorites, 0 Comments

MCube Light

ikea-ps-pendant-lamp-white__0366383_PE548622_S4.JPG
MCube light

Hi everybody,

This is my first instructable and I will show you my current project. The idea come from the Ikea ps2014 light.

I am a maker and I prefer to make some things instead of buy the same thing, so I decided to create my own mechanical light starting from the ikead's idea.

Anyway, when you don't have any tools, such as 3d printer or laser cutter and a job, it's very hard to go to a fablab and create a clear model of your project. That's why my first prototype is an assembly of cardboard, wooden skewer and so on ...

Finally, make a globe for this project was an objective but unrealistic. I will show you the cube model.

Mechanical Parts 1 - Upper Squares

DSC_0310.JPG
DSC_0209.JPG
DSC_0311.JPG
DSC_0208.JPG

The first step of the mechanical part is to make the upper moving squares. On the schematic, theses squares are identified by numbers 3, 4, 5 and 6.

The middle square will be used as a support for the light and the electronic part. They have been done by using double thickness cardboard and 100 mm side. Only one angle is beveled and measure 42 mm.

Each upper square is guided by two straws and sticks (number 1 and 2 on schematic).

Mechanical Parts 2 - Rotating Part

DSC_0297.JPG
DSC_0293.JPG
DSC_0294.JPG
DSC_0295.JPG
DSC_0316.JPG
DSC_0312.JPG
DSC_0314.JPG
DSC_0315.JPG
DSC_0296.JPG

The second step is about the rotating part, used to make the movement of the light. This part shall be added to the previous one.

First, you have to draw a 100mm square side with cardboard. To help you for the next step, you can draw a cross to get the square's center. At this point, draw a cricle with wc paper tube diameter (around 47 mm).

To get a cardboard part lighter, you can reduce the surface by drawing a a schematic like a star (Third photo).

At the end, cut the edge of the start and the middle circle (last photo). To be sure of the good rotating of the cross, you can stick on each side a square cardboard as shown in the schematic. The full assembly will be the part used to rotate and push the laterals parts (next step).

Mechanical Parts 3 - Lateral Parts

DSC_0206.JPG
DSC_0207.JPG
DSC_0317.JPG
DSC_0318.JPG
DSC_0319.JPG
DSC_0320.JPG

This step show you how to make the lateral parts and how to stick it to the previous one.

First of all, you need 3 rectangles fo 170 by 100 mm and 4 parts shown in the schematic. To realize the articulation, you need a thin cardboard as you can see in all photos (white color) and sticks.

Mechanical Parts 4 - Second Rotating Parts and Servo Fixing

DSC_0321.JPG
DSC_0322.JPG
DSC_0323.JPG
DSC_0324.JPG
DSC_0205.JPG
DSC_0325.JPG
DSC_0322.JPG
DSC_0323.JPG
DSC_0327.JPG
DSC_0324.JPG
DSC_0325.JPG
DSC_0326.JPG
DSC_0329.JPG

To finish the main mechanical part, we have to make the rotating part fixed to the servo. This looks like the other cross part. The two cross shall be linked thanks to spacers and long screws.

The two cross will turn at the same, because of one is in direct link with servo-motor.

The servo-motor is fixed to the middle part (the middle square in step 1). To fixe it, we need 4 spacers at least the height of the servo (see the first schematic with servo).

In my case, it is a standart servomotor with 40 x 20 x 37 mm size and i used 26 mm spacers.

Mechanical Parts 5 - Link Between Rotating Parts and Lateral Parts

DSC_0204.JPG
DSC_0221.JPG
DSC_0271.JPG
DSC_0334.JPG
DSC_0333.JPG
DSC_0332.JPG
DSC_0331.JPG
DSC_0271.JPG
DSC_0336.JPG

In this step you will see how the rotating parts push the laterals parts when the light is opening. Sticks can be used in order to adjust the opening rate. This link has to be made by two parts according to the schematic. You have to make this part four time to push 4 laterals rectangles.

Electronic Part

DSC_0338.JPG
DSC_0213.JPG
DSC_0218.JPG
DSC_0216.JPG
DSC_0215.JPG
DSC_0214.JPG
DSC_0222.JPG
DSC_0342.JPG
DSC_0341.JPG
DSC_0340.JPG
DSC_0339.JPG

The electronic part is composed of the following list :

  • 1 x nodemcu (esp8266)
  • 32 x WS2812B RGB adressable leds
  • wires
  • 1 x standart servo-motor
  • 2 x prototyping pcb board (45 x 55 mm)
  • favorites tools to make welders and electronic boards

The nodemcu is the main component of the electronic part. It is responsible of the servo control and leds strips. The main advantage of the node mcu is to be able to use wifi connections.

Electronic part is made in two parts, the first one is used to connect the nodemcu to a power regulator. During firmware developement, usb power is used but at the end, an external power shall be connected.

The second part is used to connect four leds strip to compose the entire 16 leds strip. WS2812B offer to me a way to use only two nodemcu's output to control 32 rgb leds.

Once you have welder all your 4 leds strip, you shall be stick it to the mechanical structure and afer link all wires to the second pcb board.

Embedded Software

DSC_0343.JPG
2.png
1.png
3.png

The final step is the embedded software for the light control.

The software system is composed of two parts :

  • Wifi http server made on NodeMCU
  • Web server made on a computer (xubuntu + apache 2).

According to the schematic, the user doesn't acces to the nodemcu http server but to a webpage using html/css/jquery technologies.

This page is the only one comunicating to the nodemcu. this one analyse the calling url to determine the action (light open, switch of, color ...).

Today, the code is a simple web using a color picker and making the ajax request to the nodemcu http server

The nodemcu is using arduino coding style and make an http webserver. The screen capture show you the nodemcu's startup and its ip addresse to the local network:

Connecting to ssid :VOO-008263

Wifi connected 192.168.0.15

When I click on the web page for red color, we can see the corresponding request :

GET /?mcube.color=0;255;0 HTTP/1.1

The ajax request looks like : ip_addresse_nodemcu/?mcube.color=G;R;B;.

So the nodemcu code split the request according to ; seperator and get the RGB color to control the light.

To understand all the code, there is a lot of comments in each file and you can send me messages to discuss about it.

Next Evolutions

Soft openning mCube light
DSC_0306.JPG
DSC_0313.JPG
DSC_0278.JPG
DSC_0275.JPG
DSC_0277.JPG

As a first prototype, there is a lot of improvement points.

I have got the working principle so I decided to make 3d plans and go to a makers lab. I will make this light with thick wood parts using laser cutting tools.

If you are interested to see the final version, you can ask me to see the models.

About the software. My goal is to make an iot device able to get the gps position from internet and according to the hour trim the light color/power.

Next, the light will be able to discuss with a nodejs server (some line in the code already do it) to create a node collection of smart objects.

Any hints are welcome.

Have a nice day.