Week 1: Ideating & Finalising Project (13/05 – 17/05)
After many backs and forth discussions with each other and with Tony, our group finalised our project idea, the 4-Wheel Drive Remote-controlled Heavy Duty Trolley. This means that each wheel has its own motor and rotation, allowing for multi-directional movement with different modes, such as stationary turning and ‘crab-driving.’ As a result, the trolley can easily navigate tight spaces. Furthermore, the remote-control aspect enables the user to control it without the need to physically push the trolley.
To illustrate this, we constructed a prototype model of our trolley, where each wheel can rotate on its own as shown below.
Week 2: Tweaking & Modelling our Design (20/05 – 24/05)
Since the main idea of our project has been approved and confirmed, the next step was to develop the details of our project. To do so, we constructed a simplified block diagram to represent the principal parts of our trolley and how they were all interconnected.
We also created the initial 3D model of our wheel with the dimensions of parts we planned to buy. This included the servo motor, the wheel, shaft and aluminium profiles which we planned to use for assembly.
Week 3: Shopping Time!! (27/05 – 31/05)
After modeling our design, it was finally time to go shopping! This kicked off a flurry of shopping links to various components for our project. We sorted through different wheel models, servo motors, batteries, drivers, and more. The list seemed endless, but in the end, we consolidated all the suitable parts needed for our project and created our very first shopping list!
Week 4: Break Week (03/06 – 07/06)
Our group took a break from our project for this week to enjoy our summer breaks! As our group split to travel on our respective Overseas Learning Trips with the CN Yang Scholar’s Program. Our group were spread across the globe with 3 of us in Switzerland, 1 in Denmark and 1 in China!! XD
Week 5: Risk Assessment :/ + Wheel Model Ver 2.0 (10/06 – 14/06)
Since everyone from our group is back from our respective trips, it was time to start MnT-ing!! Before we got started, we had to first get our risk assessments done, which was what we set out to do before starting work in the lab.
Additionally, we also had slight changes in our wheel model. After several discussions, we realised that there were potential load bearing issues that may arise if we were to attempt to place our ideal goal of 50kg per wheel. Moreover, we failed to account for wiring difficulties from the wheel to the driver, as version 1.0 of our wheel could potentially get tangled up in its own wires. Hence, we tweaked our design to have a smaller width and have the wheel bear the load directly, as compared to its side. To illustrate our idea better, we constructed version 2.0 of our model!
Week 6: Ordered Supplies (17/06 – 21/06)
After having our first check-in with Dr Ho and Hanyang, we finalised the design and went ahead to purchase our first set of parts, which included 2 different wheel models for us to test out, as well as the remaining pieces to our model. RIP to Lloyd’s wallet, we appreciate your sacrifice 😭
Week 7: Waiting for Parts to Arrive :/ (24/06 – 28/06)
Having placed orders for our parts, all we could do was play the waiting game as we wait for our parts to arrive…
Week 8: Starting Work in the MnT Lab!! (01/07 – 05/07)
Our parts have arrived, and it’s time to get to work!
We started off the week with a lesson on soldering from Jeremy, where we learnt how to solder using a DIY clock soldering set.
1. BATTERY SCAM ;(
Our battery had been delivered however upon inspection, the battery was too light to be a proper working battery and the charger also did not work. To prevent any possible accidents in the lab, we decided it was best to not use the battery we ordered, and instead resorted to using the table top power source generators for now.
2. SERVO MOTOR TESTING
This week our servo motor had arrived, which allowed us to start testing our code. However, with our first few rounds of testing, we realised that the servo motor does not turn accurately when angles were specified, and it could only turned clockwise.
Additionally, we tried attaching our servo motor to the shaft to start, which made us realise that we needed a frame to house our wheel to attach the wheel to the servo. We built a temporary prototype of the servo attached to aluminium profiles. Thus, we started modelling different variations of a possible connector between the shaft and wheel as shown below. However, after getting it checked with Fuden, we realised it would most likely crack under the weight of the load of our trolley…
3. 1ST WHEEL MODEL (INTRODUCING BOB)
In week 6, we had decided to order 2 different wheel models to trial and error before confirming which wheel model to use. Since one of the models had arrived already, we decided to start testing with it first. So, let us introduce our first wheel, Bob!
However, when we tried to solder the motor and hall wires from the wheel to the driver, we realised that the supplier had not provided the data sheet for our wheel. This was a problem as if we were to connect the wires in the wrong order, it could cause our driver to be fried. Hence, we resorted to using a data sheet for a wheel that was a similar model to the one we had.
On the bright side, our group now has a box in the MnT Lab!! 😀
Week 9: Solving our Problems (08/07 – 12/07)
1. ATTACHING BOB TO THE DRIVER
Over the weekend, we managed to contact the supplier and they provided us with the data sheet for the wire connections, hence we went ahead with the soldering of the wires to the driver.
After which, we started to attach the Bob to the Arduino to get started on controlling the wheel.
Once we managed to get it to spin, we started testing if it could take a heavy load. This was done by constructing a metal frame to allow the wheel to push a box filled with heavy load. However, after some trial and error, it was found that Bob could not push the box forward, instead it kept stopping whenever it was placed on the ground. This was when we realised the wheel starts off from high speed, causing the motor to stall every time it was met with a resisting force (aka the floor when we placed it down) Hence, we came up with an alternative solution, which was to attach Bob to a skateboard which carried the heavy load, so instead of pushing, it will pull the load. Additionally, we went back to relook at our code for the wheel again, to attempt to rewrite it such that there will be a gradual increase in speed, instead of immediately starting at high speed.
The next day, we came in with new code to test out Bob’s ability to carry heavy loads again. However, when we were testing out the code by itself, Bob just didn’t turn… :0 Even when we tried to use the original code from the previous day, the wheel still wouldn’t turn. After multiple rounds of testing and troubleshooting, we started to suspect that the driver had fried as it showed the signs of a fried driver (aka wheel turns for a split second and stops then continues making whirring noises), so the plan for next week was to desolder Bob from its driver to attach it to a new one.
2. SERVO TURNING SUCCESS!!
After our failure in controlling the servo motor from the previous week, we came back determined to fix it. With some help from online sources and advice from Jeremy and Fuden, we realised that we messed up our code for the servo motor and had been inputting the wrong angles for the motor to turn. So after some recalibration, we finally got the servo motor to turn smoothly!! YAY 😀
3. SOLUTION TO ATTACH SERVO TO WHEEL
When we checked our new 3D designs with Fuden, we realised that no matter how we redesign our connector piece, it was bound to crack as the 3D printed part would not be able to withstand the heavy load. Thus, we went back to the drawing board to come up with a new solution. That was when we found metal shaft supports that could help join our wheel to the servo shaft in place of our connector piece! So the new plan was the create a metal housing out of aluminium profiles for our wheel, and attach the shaft support piece to the top, to allow the servo the turn the wheel.
4. SEARCHING FOR RCs & RECEIVERS
Now that we have managed to make our wheel and servo motor turn, we decided to start looking into different remote controllers and receivers. After some searching and advice from Yao Xiang, we decided on the remote shown below and bought it, so that we could start testing the wheel and servo with the RC.
Week 10: Pivoting & Unfortunate Events (15/07 – 19/07)
1. CHANGE OF PLANS
Over the weekend, our group discussed our progress on the project. With the amount of time we have left and the project still stuck at only 1 wheel (aka Bob) that was now no longer working, we pivoted from our original plan of 4-wheel drive trolley and downsized to a 2-wheel drive trolley with 2 dummy wheels. With this new plan, we started to 3D model our new trolley with 5-inch dummy wheels that we sourced.
2. PUTTING BOB ON LIFE SUPPORT/TRYING TO PERFORM CPR
Coming back into the lab, we started off by desolder Bob from the suspected fried driver and solder it to a new driver. After which, we reran our tests with the old and new code, however nothing seemed to be working. This was when we started to test the different hall and motor wires to see if it was a problem with the connection. Finally, we managed to diagnose the problem with Bob. The conclusion was that the motors in the wheel had most likely stalled while we were testing its ability to push the load. Due to the sudden resistance force when we dropped it to the floor, it probably caused the motors to stall and break. Thus, we had no choice but to pronounce Bob dead, and unplug its life support…RIP BOB 😭
3. INTRODUCING JIMMY!!!
With Bob gone, it was time for us to move on to our second wheel model that we had bought in week 6, who we’ve decided to name Jimmy! 😀
Our journey with Jimmy began with soldering it to a new driver! After some troubleshooting and playing around with different connections from Arduino to wheel, we managed to get Jimmy to spin!!
Now that we know that Jimmy can spin, we started testing if we could control its direction, which we managed to do with little problem 🙂
It was time to move on to the next step, aka the scariest step…Bob’s cause of death…heavy load testing. Having learnt our lesson from Bob, we decided to start directly with the skateboard method. However, this was when issues started to arise. When we turned on the power supply for Jimmy, the wires started to spin along with the wheel and the clamp does not stop the axle from turning. 😱
After some research, we realised Jimmy was a scooter wheel that required a specific scooter fork to clamp it to hold it steady. Thus, we set out to find one that is suitable for our wheel. (aka Jimmy needs crutches :/ )
4. TRYING TO CONTROL SERVO MOTORS WITH RC
Now that our wheel issues had been settled, it was time to move on to testing the individual parts with the remote control. Starting off with the servo motors! However, while we could control it clockwise smoothly, the anticlockwise direction was causing issues, which was to be solved next week.
5. RECEIVER NEEDS TO BE WITHIN FOV OF CONTROLLER
As we were playing around with the controller, we also realised that the receiver of the remote control has to be within the field of vision of the remote control in order to receive signal from the control. This caused issues with our original design for the electronics housing which was meant to be under the base of our trolley. So, we redesigned, and now our we plan to have it at the tail end of the trolley.
Week 11: Break Week + We Lost Our Sanity!! (22/07 – 26/07)
Amidst the hustle and bustle of MnT, orientation period came around, so we all took a week break from MnT, to focus on orientation camp.
After our orientation camp ended, we had a MnT check-in presentation, but we had lost our minds due to orientation 😭 So, introducing the characters of our Mario Cart…
MEET THE CREW:
Bob – Wheel Model 1 (RIP)
Jimmy & Timmy – Wheel Model 2 (motorised wheels)
Clementine & Clementia – Dummy Wheels 1 & 2
Philipéé/Philip/Philippé/Filip (the Phamily) – Servo Motors
Archie – Remote Control
Week 12: Problem Solving (29/07 – 02/08)
1. JIMMY’S CRUTCHES
Coming back from our break week, we looked back at the problems that arose in week 10. We managed to innovate a solution to our axle turning which involved two triangle brackets clamping the wheel’s axle still.
2. CONTROLLING JIMMY WITH THE RC
This week we started working on connecting the RC to the wheel. By the end, we managed to control the direction of the wheel (forward and backward) as well as the speed of the wheel (e.g slowly ramping up speed)