Session 11: Drawing on the Rubik’s Cube

19 July, 1:00 PM, Making & Tinkering lab

Shawn, Hung, Xinhui, Kang Hao

As the deadlines drew closer, we decided to start drawing on the Rubik’s cube directly. However, we had to first recalibrate the Ender3 Printer to fit the position of the Rubik’s cube. Afterwards, we tried to test our drawing mechanism on the Rubik’s Cube but a successful drawing was not achieved and the quality of the drawing was not very good.

The difficulties we encountered are as follows:

  1. The cube was not stabilized during the drawing process due to the bearing it was placed above.
  2. Gaps in between the corners of the Rubik’s cube face interfered with the drawing.

We will have to think of a solution to solve the two issues on hand.

In the meantime, we found an open-sourced algorithm online that uses deep learning to convert an image to line art, which we hope to integrate with our drawing. For now, we hope to be able to draw an outline of the image on the Rubik’s cube and then colour it through dithering.

21 July, 1:00 PM, Making & Tinkering lab

Shawn, Hung, Xinhui, Kang Hao

The pully method was not working very well as it made the Rubik’s cube wobble during the drawing process. Hence, we decided to attach a pancake Nema 17 motor to the bottom of the Rubik’s cube holder instead, making it more stable while keeping it at a suitable height. We have also printed a base to hold the flipper, motor and Rubik’s cube holder in place.

As the process of converting an image to Gcode through Inkscape was not very intuitive, we plan to create an interface in the form of a web app to make it easier. Our web app, created using python with Flask, will take in image files and convert them to individual Gcode files at the backend.

Session 8: Electromagnets & Mona Lisa

27th June & 1st July, 2:00PM, Making & Tinkering Lab

Shawn, Kang Hao, Xinhui

We managed to get Inkscape to work properly with the Ender3, changing the settings so that the pen goes up before moving to a new point. We also changed the origin according to the position of the tip of the pen and shifted the Z-axis clicker up to fit the height of the pen. With that, we successfully drew out the 1st perfect edition of the Mona Lisa, and we managed to scale the size of the canvas down to the size of our Rubik’s cube.

27th June, 2:00PM, Making & Tinkering Lab

Shawn

The first idea of our flipper is shown in this video. However, we tried to 3D print the object and it doesn’t work as expected.

Image 1: First Flipper Prototype

There is a slider between the pointer of the motor and the horizontal flipper as shown in Image 1. The friction of the pointer and horizontal flipper is pretty high which causes it not to work as expected in the video.

30th June, 12:00PM, Making & Tinkering Lab

Shawn, Hung

The purpose of using an electromagnet is to act as a switch to grab and release the pen.

The electromagnet we tested has an operating voltage of 5 Volts. However, we have realized that the ramp 1.4 we used was operating at 12 Volts which is way much higher than the operating voltage of the electromagnet. We tried to use the MOSFET in RAMP 1.4 by inputting PWM (pulse width modulation)) to the electromagnet, however, the 12 Volts supply might have damaged the electromagnet.

Hence, we are now trying to buy another electromagnet with an operating voltage of 12 Volts.

1st July, 3:00PM, Making & Tinkering Lab

Shawn

Another idea of the flipper is pretty straight forward by having holes on the Rubik cube holder and a motor flips through the hole to flip the Rubik cube as shown below:

Video 1: Flipper Prototype 2

Aside from that, there is a Nema Motor under the Rubik’s cube holder to have a rotation at the z-direction. We have printed out the model in video 1 shown below:

Mainly 2 problems exist in this model:

  1. The height of the whole model is around 12 cm tall. There is not much space left for the Ender 3 Printer to work properly
  2. The Rubik Cube is stuck in the Rubik Cube Holder without turning properly as shown in the video below:

 

Session 1: Hanyang’s 3D Printing Lesson + Meeting Dr Ho #1

10th May, 9:30AM, SPMS

Shawn, Kang Hao, Xinhui

As a part of our M&T training, we attended a 3D Printing workshop conducted by Hanyang, one of the instructors for M&T. He began the lesson by starting up the 3D printer to print a small cat figurine. After briefly introducing what 3D Printing is about, he shared more about what material was used for 3D Printing, the mechanism behind 3D Printing, and the software used for 3D Modelling. For this course, the software introduced to us was Fusion360, and we were given a license to design and draw out parts which we might need for our project. After the theory part, we were free to experiment with the software after Hanyang gave us a guided lesson on how to use Fusion360. We also took a look at the printed objects and realized how versatile they could be in terms of flexibility, size and colour.

Afterwards, we were brought into the M&T Lab, which Hanyang gave us a short tour of.  More importantly, he showed us where the 3D Printers were and how we could use them. He then went through with us the procedure to follow for 3D Printing, such as where to slice, what to do during our first print, and what to look out for when we are printing. For future references, here are a few things that you should look out for:

  1. Look for lab personnel during your first print
  2. Always check the amount of filament before you print
  3. After the print starts, stay to check on the first layer of the print

In the meantime, we took the chance to talk to 2 of the students in the M&T Lab for some advice on our project. As people who had seen many M&T projects, they gave us detailed feedback on our ideas, such as the pros and cons of each idea, and whether it would be feasible to complete within 3 months. Speaking to them gave us great insight, which prompted us to settle on the idea of an Automated Sand Filtering Machine and to have a group meeting soon.

11th May, 2:00PM, SPMS

Shawn, Hung, Kang Hao, Xinhui

Today we met Dr Ho to share our idea with him. We explained to him the possible structure of our machine, which consists of collection, filter, and rubbish disposal. After hearing about our ideas, he prompted us to think about as many different ideas to collect and filter the sand and reminded us to make sure that the components were all waterproof and compatible to work with sand. Upon discussion, we decided to have another group meeting tomorrow to brainstorm the details of our idea.

12th May, 12:30PM, Tamarind Hall

Shawn, Hung, Kang Hao, Xinhui

Our agenda today was to discuss the possible ideas for all 3 parts of our machine, as well as how to sand and waterproof it. After a few hours of brainstorming and googling for ideas, we managed to think of some ideas for all 3 parts. For rubbish disposal, we decided to attach a trash bag to a trailer behind the machine, where the rubbish will be dropped through a hole at the end of the filter. For filtering, we decided on either shaking and sieving, or a rotating cylindrical filter. For the collection, however, none of our ideas seems to be feasible.

The first idea was a spiral. Though stable, it needs to be long and wide in order to collect big rubbish, and it needs to synchronize with the wheel. The second idea was a fork-like shovel. Although it can filter out most sand when it’s collecting rubbish from the beach, it has many disadvantages: material has to be strong, the gap must be of accurate size, and items might get stuck. Our final idea was a conveyor belt. It was a good idea, as it would be able to collect rubbish of any type. However, it would also be bringing up a lot of sand, which we do not want.

Additionally, all ideas face the problem of friction. We were stuck and we did not know what to do. The discussion had already taken the whole afternoon by then and we were running out of ideas. We decided that it was best to end the day.

Session 2: Meeting Dr Ho #2

20th May, 1:30PM, Zoom

Shawn, Hung, Kang Hao, Xinhui

Our group was stuck on several parts of the Automated Sand Filtering Machine for a week and decided to meet Dr Ho for his advice and opinions. We explained our drawings and workings to Dr Ho, who initially suggested an improvised Archimedes screw. However, we realized that it was hard to improvise from there. We started to look at alternative ideas.

We proposed another project (a self-sorting recycling bin) but it was turned down by Dr Ho due to inaccuracy in similar past projects using AI. Eventually, we decided to give up on sand filtering due to low efficiency and it was hard to come up with an effective way to collect and filter the rubbish from the beach.

A robot 2D sketcher was brought up which we extended to robot Chinese calligraphy writing, and henna writing. After giving it much thought, we decided on a project about 3D colouring and an improvised way different from the current market, using art markers. This machine would rotate the 3D Prints from the side, while a marker would start colouring it from the top. Feeling confident with our idea, we decided to meet up with Hanyang for further discussion.

 

Session 3:   Painting a….Rubik’s Cube?

25th May, 10:30AM, SPMS

Shawn, Kang Hao, Xinhui

We went to meet Hanyang to share our new idea, 3D colouring and asked for his opinions. When we explained our idea to him, he brought up many difficulties we might face during the project, such as overhangs in 3D Prints, and ink sipping through the grooves of the 3D Prints. Hanyang brought up a project he had seen in the past, painting Easter eggs, and advised us to scale down instead to make our project more feasible. We then sat down and discuss what we could possibly paint on, and decided to scale down to a Rubik’s Cube instead.

After telling Hanyang about our Rubik’s cube idea, he suggested a few levels of difficulty we can approach the project:

Level 1: Manual flipping after colouring

Level 2: Automatic flipping after the colouring is done

Level 3: Change different markers during the colouring process to paint.

He also mentioned an interesting “side quest”, which was to paint the Rubik’s cube in an already scrambled state, which must be solvable as well, but that will be something we can think about after we finish the project.

Session 4:   Shopping Time!

3rd June, 4:00PM, Plaza Singapura

Kang Hao, Xinhui

Now that we’ve settled on our project idea, there are two things that we absolutely need – a Rubik’s cube and markers. As for the Rubik’s cube, we managed to source a full white one from a local seller, Cubewerkz. It was important to us to find a local seller, so we could always go back for more cubes if needed. We also went on a shopping trip to art shops (Overjoyed, Art Friend, Popular) to try out markers with our Rubik’s Cube. The criteria for our marker selection were:

  1. Able to draw on a Rubik’s cube
  2. Dries fast (within 5 seconds) and does not smudge
  3. Has a variety of colours

After many test drawings, we bought two markers which were satisfactory: Artline Supreme Metallic Marker & Pentel Maxiflo Permanent Marker.

Total damage: $23.24

Session 5:   Building our 3D Printer (add vid of 3d printer)

7th June, 2:30PM, Making & Tinkering Lab

Shawn, Kang Hao, Xinhui

We built up the skeleton of the Ender 3 Printer with the help of Tony and Qi Jie 🙂 as there were no manuals. The process was similar to a Lego building with different motors and controllers set up. We had a lot of fun experimenting with it to get working, so we decided to put up a video of us building it and step-by-step procedures for future students!

Steps:

  1. Build up the entire structure of the 3D Printer by securing the aluminium profiles.
  2. Secure the controller and Arduino onto a holder which can be screwed onto the aluminium profiles ( We made a mistake in doing this as the last step, you can learn from us, hahaha!)
  3. Afterwards, the three x, y, and z motors controlling the printer’s movement can be attached to the aluminium profiles with the stoppers.
    X-motor
    Y-motor
    Z-motor
  4. The x, y, and z motors require each a stepper motor and switch cable. Connect them to the controller which needs to be tested with the Marlin firmware later on. Look out for X, Y, and Z in the middle in the schematics and end stops at the top right corner.Schematic of the controller
  5. Lastly, the belt and the moving roller for the extruder can be finally attached to the x-axis. Then, all the physical work of the 3D Printer is done!

    X-axis belt & roller
  6. For the 3D Printer, Marlin firmware and Arduino are required to boot up the printer. The Marlin firmware is uploaded to the Arduino Mega through the Arduino IDE, procedures can be found on their open-source site. Pronterface can also be used to control the 3D Printer.
  7. Some of the settings were changed in configuration.h file to fit our project so understand which areas you are required to change. Have fun!

Session 7: Raspberry Pi, Arduino, & Inkscape

21st June, 3:00PM, Making & Tinkering Lab

Shawn, Hung, Kang Hao, Xinhui

After experimenting with Pronterface, it led us to try out another approach.

We managed to send a serial communication (Gcode) to Arduino Mega via Raspberry Pi instead of using a laptop. The library used for Gcode processing is pyserial.

While looking for inspiration online, we discovered software used for 2D drawing on a 3D printer, Inkscape. With many tutorials online, Inkscape seemed promising, so we decided to give it a go. Following this tutorial, we started our experiment. We tried to draw a spiral at first, converting it to Gcode using Inkscape, and loading it into Pronterface. We then connected to the Ender 3 and to our relief, the Gcode seemed to be correct as the extruder was moving in a spiral, as expected.

Since Inkscape was working, we designed a temporary pen holder to fix onto the 3D Printer for test drawing.

Feeling ambitious, we decided to draw on the cube straight away. Unsurprisingly, as we did not calibrate the machine properly, we broke the tip of our marker pen. We took a step back to draw on paper instead, and the results were actually not that bad. We still have more calibrations to do, but at least we know that Inkscape works with our project.

Session 0: Brainstorming

5th May, 10:00PM, Zoom

Shawn, Hung, Kang Hao, Xinhui

This was our first group meeting and brainstorming session. Throughout the course of this zoom session, we threw out many random ideas that we thought were fun and might work.

One of us mentioned a self-sorting recycling bin that automatically sorts and categorises recyclable waste. Another proposed a plastic compressor, a machine that would turn plastic waste into decorative pieces. Even a robot bartender, whose purpose was to mix drinks like a real bartender, was added to our list of potential project ideas.

We weren’t sure which one we’d be using in the end, but we weren’t planning to decide today either. Looking at the endless list of possibilities, we decided to leave the decision to another day.