Robotic – Final Project Part 5(Final ) – The Curious & Timid Turtle.

Continue from my part 4 of this project updates,  This is the final part which leads to the completion and is rather long as many things from getting the power supply, modelling, testing, painting, assembling to coding had been done in the past 2 weeks.

First, the final video of The Curious & Timid Turtle.

And then, into the process….

NEW POWER SUPPLY!!!

At the end of last post, I was waiting for the power supply to reach and it did during these 2 weeks so I’ve tested it out, The one that I bought is a AC-DC converter at 6V 20A when all I needed was 6V 8A, i decided to buy the higher Amp one just if i need more amp in the future, and I could also share the supply to my Interactive device project during the End of sem show.I did some wiring afterwards.

And after the wiring, I did power test, it could easily run 8 servos simultaneously with nothing overheating. which is a great news for me!

 

NEW LEVER SYSTEM FOR THE LEGS!!

Since the last post that I’ve decided to change the system in the legs to save space and shorten the overall length by stacking a smaller MG90S on the MG966R to act as a lever system to pull control the legs.
After testing this system out and seemed to be working, I merged it with the turtle leg that I’ve modeled in Zbrush, I don’t know about Zbrush before this project and it tool a long time just to model the shell, the legs and the feet.

I merged the leg with the previous test “rod-like” leg because I’ve already gotten the dimension in there so i just need to scale the Zbrush modeled leg accordingly to fit the “rod-like” leg.

 

changing of the entire base layout to reduce size and increase EFFICIENCY for the back legs.

At this point, I was wondering if I should change the MG966R(metal gears) into SG-5010(plastic gears) due to weight issue I might face later after adding the shell and so on, so I weigh the motors and decided that I should change the back leg to SG5010(but I changed it back to MG966R one day before submission due to the internal gears got loose in SG5010)

Major changes were made for whole layout of the base due to various reasons – the backleg will move differently from the front and since my project is basically a turtle with round shell instead of a flat one, it made more sense to use a smaller but higher layout rather than a flatter and wider one to make use of all the space within the shell.

This was quite the final base before I added the mount for the small backleg servo and the servo driver mount which will be attached it using screws.

Zbrush Modelling Nightmare Funfair

Since my Zbrush was cracked, it crash rather often and I did the same thing over and over if I forgot to save frequently and hence it took quite long to model anything, but well~~

As for the shell… it took so much time and crashes to get it right, because the shell cannot be too thin(unable to print later) and cant be too thick (too heavy) and I cant find a function that could allow me to see the thickness (like reduce opacity of the material to see through), so everytime to check the thickness, I have to export into STL, and import into Tinkercad to check the thickness.

Everytime I made major changes to the shell, I’ll have to import to Tinkercad to check the thickness and shape.

The model appear

Nothing is more satisfying in removing the support in one whole chunk(I did alot of cutting before this video so I can pluck out in one piece.)

this is the liner slider an an aluminium rod for the head system.

Printing for the base shell:

Printing for the top shell:

And then the finishing(PART1)of the model.

 

The Final mechanism of the turtle

testing out of the head slider and to mark the length I need it to move and cut.

The mechanism to slide the head that I will use after cutting the rod to almost the size I need.

this is the final mechanism for the head after I printed a small piece to prevent the wire from tilting too much when pushing the rod.

the head could be push and pull out nicely even before adding the string to control the tilt of the head.

metal rod were epoxyed into the head to tie the elastic thread to control the tile of the head.

and a elastic thread was added to counter the tension created by the elastic thread to turn the head

And then the finishing(PART2)of the model.

The final test of the turtle before I finally started coding it. The head uses elastic thread because it will go forward and retract, since I dont want anything to be loose and might interfere with the shoulder servo motor, I decided to use elastic thread so that the thread wont be loose when the head is retracted.

This is the almost completed sequence of action,the turtle’s movement is quite restricted due to the shell and the back leg is unable to push the turtle forward because of the shell’s restriction as well as the weaker servo(MG90S) which is responsible for the forward and backward thrust, while the MG966R is strong enough to lift the turtle up, so the turtle could do movements up and down but not walk.

After this, I added a few lines of code to substitute the button pressed with sound sensor to make the turtle more intractable and a few more actions that made it more timid looking (head peeking out to check the environment before the whole body come out.)

In conclusion:

Overall, I really liked this project although I kind of regretted trying to make a turtle during the process because the shell is giving a lot of layout and movability problem made me kept thinking that if I were to make something without shell, it will be so much easier, but the reason that I first wanted to make a turtle is the best is because the shell naturally hide all components that break the user’s perception that this is a robot and a turtle is my spiritual animal, now that I finished the project, I am really glad that I sticked to my initial idea of making a turtle and persevere through all the problems I faced(mainly hardware and mechanical problems which I changed my system and design so many times.).

This was what made into my final turtle with many component being edited into the next version.

With more time, I am sure that I could code the turtle be able to be scare back into the shell by another sudden loud noise – I tried to change the delay in my code to Millis multiple times and it do every action in the sequence twice so I sticked to using delay for now, which disabled me to write the activation code for using the sound as a trigger since it is in a delay loop. But, it looked really nice for now even if there is only one sequence of movement and I am glad that people were thinking that the turtle is cute when they saw it.

 

Robotic – Final Project Prototype Part 4 – Unlimited Revisions.

There is only testing and remodeling, testing and remodeling after i went to simlim to look for a battery 2 weeks ago.

After that, the battery could also power no more than 3 servo at once so I purchases some AC-DC 6V 10A converter online and had been waiting for its arrival since then.

meanwhile waiting, all I did was re-model almost everything again and again…. and I also downloaded ZBrush- a 3d sculpting software and learnt it just for me to sculpt the turtle appearance since i have to learn it sooner or later and luckily I tried it now so I know that there are actually a lot of problems in my current structure when place in the shell I modeled afterwards.

After last post, I’ve built a bigger base mount for the turtle.

This was originally the rough full size for the turtle base, Version1, Version 2 with 2 arm motor attached, and Version 3 with no Arm motor attached.

And I downloaded Zbrush and started to learn how to sculpt something in it and MANNNNN IT IS HARRDDDDD

And then I printed it out in smaller scale to see how it feels.

And to check which layout should work.

 

 

and since after I did more research on turtle, I realize that the bone structure of the turtle wasn’t straight and so I tilted the motors to give it an angular tilt for it to move more like a turtle.

then I tested the structure of this configurations.

I also modeled a arm motor connector and found out that this is WAAAYYY to long for it to work properly, and another problem is that there is still not enough tilt, so I changed from a 45 degree tilt to a 22.5 degree tilt.

This is the Version 4 and Version 5 of the motor mount, I’ve decide to make it higher so to be able to turn the arm in the correct direction, I’ve also tried to add the middle servo which will control the turtle head retraction and head/tail turning.

This is with Version 5 base and version 2 Motor connector which are much shorter.

Next, I further edit the turtle shell and upscale it to see how it fits into my system, however i found many problems here like it doesnt fit well. Since I can make adjustments to the layout, I decided to use another method to do the leg mechanism.

By combining this lever system straight into the leg.

The 4 generation of motor connector.

This should be the mechanism I will use for the leg, I hope it works.

for now, I have to test them out again.

Robotic – Final Project Prototype Part 3 – Understanding the Motors and Power Supply.

For weeks, I’d been thinking that my code was wrong hence I cant move more than 2 motor at the same time or it will corrupt the system….

And in the end, it wasnt my code, as I was using PCA9685 which is a servo driver which I bought online and thought that I could control 16 motors at the same time, Yes, it could and the code can work.. the problem is the power supply. NEVER HAVE A SERVO DRIVER’S MOTOR POWER SUPPLY POWERED STRAIGHT FROM THE ARDUINO!

I finally found out today that was the main reason, when the motor drains too much of the Arduino’s power, it will brownout, causing erratic behaviors in the motors which was my main problem up till now, so instead of limiting myself to code up to two motors to move at the same time, I could potentially move all 16 motors just by finding another power supply.


15:15- 16:10

 

My Brownout will occur when I run 4 servo at the same time, so 3 servo running simultaneously is the maximum for my current power supply, There are ways which I could solve this problem.

  1. Using a battery which could supply 6V power at 10A or more, after my research, battery are rarely rated at 6V and 10A is just too much for a battery, even if they do, it will drain the battery out really fast unless I am using a HUGE car battery on 12V and step down the supply using a Voltage Regulator.
  2. Using Multiple battery at 5 V or 6V and parallel them to increase their current, since this will be the most expensive out of all option, the only way possible to get this done is to series 4xAA battery and parallel multiple group of 4xAA to create a powerbank, the downside of this will be the voltage drop overtime due to lesser power in the battery.
  3. Using a power adapter with the 5V or 6V at 10A, and this will probably be more feasible due to the availability of 10A power adapter in the market, or I could use a 12V 10A power adapter along with a Voltage Regulator and step down it to 6V. I think this will be relatively doable because it will have a stable supply and I do not have to worry about recharging my battery, moreover, I might be able to supply power to my Arduino at the same time too.
In conclusion

I will try to find suitable power adapter along with voltage regulator, if this still don’t work as well as i thought it would work, I probably can use a capacitor to increase the current rating(I am still not sure how does this work, but I’ll figure out)

Robotic – Final Project Prototype Part 2 – Compacting Mechanical Systems.

After the Study model of the last part, where I stopped at the lever system and realize that it is not as strong as it should be, my improved method is to use 2 servo to do the same action, After a long time trying, I found out that the overall height of the servo will still be as high and as big as a standard MG 966R servo motor, and the MG966R will provide significantly higher torque than 2x SG90 at roughly the same height.

So my new solution to this is to use the heavier and stronger MG966R as the feet motor. Since they are relative big, I need a system to fully utilize the height and the movement of motors to make it as compact as possible. Since the center of the turtle shell is usually the tallest part, it make sense to stack the first rotating joint (the shoulder) above each other to greatly reduce the total size of the turtle by making it slightly taller.

Prototype of stacking the Shoulder motors, I’ve realized that the left motor should be at the bottom and right motor should be at the top as one will spin clock wise and other will spin counter clockwise to make it the same height when their pivot are not centralized.

 

Improved prototype of the system which reduces the shakiness of the Shoulder Motor(which is important as Shoulder is the first joint, if this vibrates, it will be amplified become very obvious in the feet.)

Un-centralized joint of the Shoulder Motor to Arm connector will result in centralized and same height of both left and right arm when in horizontal(walking) and vertical(back in shell) even when the shoulder motor are stacked(different height). Look at the green dot which is where the center of arm motor going to be.

 

after countless of testing to get the perfect balance of height in horizontal and vertical, this system should be able to progress into what I will use in the final, there are still improvements to be made in the base height of the Shoulder Motor as when the Arm spins, it will still touch the ground.

for now, it probably can walk and hide like this..

Next up is to further refine this system and find the suitable system for the Elbow joint.

 

 

Robotic – Final Project Ideas, Researches and Prototypes.

A Continuation from the previous Idea and Research, Part 1 where I wanted to do an Animatronic Turtle.

The Difference between a Turtle and a Tortoise is that all Tortoises are turtle and not all turtles are tortoise. Generally, Tortoise live on land and turtle lives in water most of the time, with exceptions which I’ll not go into. However in my Project, I’ve decided to use “Turtle” as I simply prefer the sound of Turtle more than Tortoise.

First thing.

How do Turtle/Tortoise walk?

Tortoise are cute! and the way they walk naturally are quite robotic =D

the “Hand” are much longer and the “feet” are much shorter in comparison. This is how a Tortoise retract its head, by bending its “neck” inwards. maybe I could emulate this.


29:43 – 30:20 where they talk about the locomotion of the tortoises

I could use a lever system to move the front and back legs so that I could use smaller motor and all 3 motor placed in the shell so the overall weight of the feet will be greatly reduced to allow me to use smaller/weaker motors.

From my research I’ve done and found this EEZYbotARM on Thingiverse which I could use it to study the mechanics I could potentially use in the feet of the Turtle.

The two motor is at the base of the mechanical arm(Typebot), in comparison to our typebot, This Typebot system is less efficient unless the torque of the motor far exceed the weight of the system and only a when there is a short (A) to (B) distance(longer fulcrum, more torque needed to turn it)

So to understand how fully it works and if there are any restrictions to this lever system, the best way is to having a study model to study how I could incorporate it into my Turtle. I also purchased a few servo few weeks ago and they also arrived so I used them in the study model.

The movement is really smooth and the movement coverage is definitely good enough for my turtle, However this system could barely carry its own weight as the base is relatively heavy, this Lever system could work great as a Type bot kind of project because doesn’t need to carry the base of the robotic arm, in my opinion, this probably wont work in my Turtle since each leg will still carry its motor weight because they are all in the shell, so having Motor(A) not carrying Motor(B) is of less importance since Motor(A) and Motor(B) will ultimately carry the weight of (A)+(B)+the mount+components+the shell in the end.

In Conclusion

I’ll need to find a more efficient system or use a bigger motor to do the work of lifting everything in the shell along with the motors and still able to cover the movements. Now my main concern will be

Weight of motor VS its Torque
Size of Motor (slightly bigger motor will result in MUCH BIGGER TURTLE which I’ll try to avoid as I wanted a COMPACT turtle, not a monster.)
Movements of motor especially within the shell.