Mini Drawing Bot - Live Android App - Trignomentry

Introduction: Mini Drawing Bot - Live Android App - Trignomentry

About: Want to do some thing best with my less resource.

Thank GOD and all of you for make my project Baby-MIT-Cheetah-Robot won the first prize in the Contest Make it Move. I am very happy because lot of friends ask lot of question in conversation and in messages. One of the important question was how the robot move smoothly (with out body up and down) and asked about the array in the program initialization, how it is calculated. For the answer of that questions i plan to make a drawing bot with the legs i designed for the Baby-MIT-Cheetah-Robot. This is the test leg first i designed before print all the four legs. Also for this i try to draw in android and transfer the data to arduino to draw.

I like maths very much, i believe all in the world run with maths. There is nothing with out maths. Here i detailed the maths used to calculate the degrees of servo in detailed.

Step 1: Materails Required

Materials Required

1)Arduino Uno R3 - 1No

2) HC-05 Blue tooth module. - 1No

3) Micro Servo - 3 Nos

4) LM2596 DC to DC Voltage Regulator. - 1 No

5) 3.7V 18650 Battery - 2 Nos

6) 18650 Battery Holder

7) 3D printed Arm (obj file given the arm page)

8) Small aluminum pipe (got from old FM antenna).

9) Some scrap items.

10) Plastic sheet to make cover.

Step 2: Trigonometry and Pythagoras Theorem

The Image is self explanatory if you want to read continue....

What we have is noted first

Image1

Drawing arms dimension both lower arm 3Cm and both upper arm 6 Cm. The distance between the two servo arm arm axis is 4.5cm. So consider you put it all in a graph and mark the first servo center as (0,0) so second servo center is at (4.5,0).

Image2

Now mark a point in the graph where the pen want to move, now i make it at (2.25,5).

Image3 - Distance Formula and Pythagorean Theorem

Now we want to find the length of two lines (0,0) to (2.25,5) and (4.5,0) to (2.25,5). Use the Distance Formula and Pythagorean Theorem. From the formula Length = sqrt((X2-X1)square +(Y2-Y1)Square) (please see the image to see the formula in correct format). The point is in the center of the y axis with the servo, So the boths sides have same dimension of triangle. So the result is 5.48 in both sides.

Image 4

Now you can able to divide the triangles. We got 3 triangles with all the 3 sides known.

Image 5 Trigonometry - the law of cosines

Use the Trigonometry - the law of cosines to calculate the angles we want. Please see the image for formula.

Image 6 Radiant to Degree

The result from the Trigonometry is in radiant so use the formula Degree = Radiant * (180/pi()), to convert radiant to degree.

Image 6

Sum up the degrees in the same side to find the rotation of the arms.

Step 3: Check the Math Again

Now a test, move the point in the graph to different point and calculate the degrees of the arm. I create a excel and find the angle. See the above excel for calculation.

Step 4: Circuit

Its a very simple diagram with Three servos control using the digital pin 5,6 and 9, where 5 and 6 pins used to drive the arm and 6 used to up down the arm. The HC05 Tx connected to Arduino pin 0 (RX) and RX connected to Arduino pin 1 (TX). From 2 Nos 18650 battery 7.4V given to Arduino vin pin and input side of LM2596 DC to DC Voltage Regulator through switch. Output from LM2596 DC to DC Voltage Regulator is given to the servo supply pins. Thats all the circuit over.

Step 5: Develop Circuit

As like every project for this project also i make a shield with female header pins for HC-05 bluetooth and Male header for servos.

Step 6: Create Servo Stand

I use MG90S 2 Nos for arms and SG90 for pen up and down. Cut a small novapan sheet to fix the servos as shown in the figure. As like the picture hot glue the both MG90S servos in straight vertical and the SG90 in the base.

Step 7: Arm in Tinkercad

The same leg designed for MIT Cheetah Robot and Printed by the 3D print service provider A3DXYZ. Only one set is required for the drawing bot. If you only design for drawing then change the drawing to make the pen holder at the end of one arm

Step 8: Fix the Drawing Arm

The 3D Printed arm is received as 6 pieces, 4 arm pieces and 3 screw like pieces to joint the arms. Join the arms and use the feviquick to paste the screw piece. Paste the horn in the arm and quick fix it using fevi quick. Now make a simple program and put the servo 1 to 150 degree and servo2 to 30 degree and fix the horn in the arm and screw it. For up down mechanism simply use a servo horn.

Step 9: Hinge for Up Down Mechanism

For Making Hinge i use a old micro tip pencil from scrap and a round metal rod from the scrap. Cut both sides of the Micro tip pencil and take the tube hot glue it with the novapan sheet, already servo is pasted. Now insert the rod in to the tube and place a tiny piece of novapan sheet on both sides of the rod between the base and rod and hot glue it. now the Hinge is ready.

Step 10: Fix All in One Board

Use hot glue gun to fix it all in the single novapan sheet. I change the 18650 battery holder with the new one with switch built with it (old one fitted in the fully 3D printed Baby MIT Cheetah currently in development).

Step 11: Pen Holder

I search for lot of items and finally found a aluminium tube in the scarp from FM antenna. Cut a 43 cm length (15 + 13 + 15) of the pipe abd try the sketch fitted in it correctly. Cut slot in the 15 cm from both sides and open the both sides and make it flat. bend it to 90 degree and make the rectangle to circle. Use file to polish the edges and put it straight to the arm and Quick fix it with the holder with the arm using feviquick.

Step 12: Make a Cover

Make a cover using plastic sheet and paste all the joints of the plastic sheet so it look like a box. Make a slot in the side for switch ON and OFF. Now every thing is completed. Mechanical and Electronics works are finished. Now its time for Computer program in Android and Arduino.

Step 13: Paper Holder

Cut 3 pieces of plastic sheets and paste in the edges with the board as shown in the figure. Cut paper 11cm X 16 cm to use in this holder.

Step 14: Arduino Code

In this program i minimize the coding in android and insert all the maths calculation in the Arduino. So the android only send the X,Y,Pen up down from the mobile through bluetooth and once the arduino receive the point as detailed in the step 2 of this project arduino program calculated the actual degree for two servos. Servo only rotate up to 180 degree at 60 degree the servo arms are very close so i set 60 as 0. So from 60 to 240 degrees only taken in account and rotate. If the degree go less than 60 or greater than 240 or not able to calculate then the pen up. Once the servo move to that position it send back "N" to the android once the android received "N" it send the next point.

Step 15: Android Program

As like other Projects I use MIT App inventor to develop the android app. On the screen start use bluetooth picker to pick up the HC-05. If the bluetooth is connected, the next screen shown. In that screen a Canvas area is used to draw the line drawing once you start draw the Mini drawing bot also start to draw with you. in the bottom of the screen two buttons and one label box present. Redraw button is used to draw again in the line drawing and clear button is used to clear the image in the canvas. In the label it show the text send to arduino.

Only draw in bottom half only drawn by the bot because of the length of the arm.

Download the app from the link and install in your android mobile. aia file for the program is also attached for the developers.

Step 16: First Test

This is the first test draw in the novapan sheet. The name Siva is tested first. Sorry i forgot to reord this video.

Step 17: For Cheetah Leg

Lot of leg moving pattern available on the net. Or use ur own pattern. Draw it in the mobile and record it in arduino used that pattern for leg movement. Main thing keep it in mind is if the chettah walk at the height of 6 cm two cross legs in 6cm and move forward and othe two cross legs in the air of 5.5 cm ad all come to 6cm then only the cycle repeats.

Step 18: Final Workings Video and Some Output

I enjoy a lot on making in this project. same words again, I lean some new things from this project, I feel you also learn some small thing on reading this project. Thank you all for reading it.

Lot more to enjoy...............Don't forgot to comment and encourage me friends.

Made with Math Contest

Second Prize in the
Made with Math Contest

1 Person Made This Project!

Recommendations

  • Pi Day Speed Challenge

    Pi Day Speed Challenge
  • Trash to Treasure Contest

    Trash to Treasure Contest
  • Microcontroller Contest

    Microcontroller Contest

16 Comments

0
ErwinM5
ErwinM5

Question 14 days ago


I am still trying to figure out why my apk or aia file is not working, I love this project
https://www.instructables.com/Scratch-Built-Androi...
https://www.instructables.com/Mini-Drawing-Bot-Liv...
I have compared both aia files and see a difference and one that I think needs to be changed a bit instead
Difference is" btn Clear Click" is with the other" btn Clear touchup", which one is correct ???
And then a difference in spelling, one line starts with " select list" and the other with " Canvas1 Height", or can it be written like that ???
Sorry for the many questions but I am a beginner
I also think the numbers should change between redraw and clear when the drawing is in progress
The redraw button doesn't work when I press it nothing happens
Can someone help me, maybe with a working aia file so that I can compare it, thanks in advance
erwin.meyvaert@telenet.be

MDB 5a.pngMDB 7a.png
0
ErwinM5
ErwinM5

Question 19 days ago

Are the software files okay both arduino and mit app inventor
I can't draw on my smartphone, just a line and that's it
Can you please help me

0
ErwinM5
ErwinM5

Question 11 months ago

Can you put all download files in a zip file please
I have problems with rar files

0
jegatheesan.soundarapandian
jegatheesan.soundarapandian

Reply 11 months ago

Sorry i try and cant able to add the zip file in instructables. I think even in mail also i cant able to send. Please try any online unrar website to unrar it. Or i try to add it in google drive and send you the link. Because of android file it cant able to add even zip, only rar is allow.

0
magikshow
magikshow

1 year ago

why do I have draws something reflecting in the mirror?

2
magikshow
magikshow

1 year ago

which servo is the first and which is the second
I have draws in mirror reflection

0
jegatheesan.soundarapandian
jegatheesan.soundarapandian

Reply 1 year ago

There is no problem in whuch servo is first or second, because degree change 1 by 1 so it cant affect.

1
magikshow
magikshow

1 year ago

very cool project!!!!

1
kscitech
kscitech

1 year ago

Thanks, a very nice build description.

I'm particularly interested in the math and would like to check the recommended Arduino code. However, I get an error when I try to access the downloaded .rar file - see attached. Could you perhaps have an alternate file such as .zip, .ino, .txt available?

RAR file error.JPG
0
jegatheesan.soundarapandian
jegatheesan.soundarapandian

Reply 1 year ago

Thank you very much sir. The ino file or zip file cant able to add so i add as txt file in the same page Kindly see it.

1
AlexanderS290
AlexanderS290

1 year ago

What would a result look like when you are feeding a "nice" high accuracy vector drawing or shape? (It must not be complex - a circle, a little house, or whatever...) just to see the true caps and maybe shortcomings of your design.

in the texts it looks like lifting and lowering the pen give a bit of extra strokes.

0
jegatheesan.soundarapandian
jegatheesan.soundarapandian

Reply 1 year ago

I try it sir to read the vector and paint..... I think it also work because it calculate the X and Y of the point and move there.

2
philippeminerve
philippeminerve

1 year ago

Very detailed build. Thank you very much for sharing !!! Nice job