Mini-Max

This is my first Biped Bot using the Arduino Nano.

Currently Mini-Max has the ability to detect an object in his path using the Sharp IR Sensor.

The Bot is 5" Tall and is 6 DOF.

He uses 6 SG90 9G Plastic Gear Servos. Runs on 7.4v Lipo.

The main portion of the legs are made from vinyl.

Here is a link to the product I used. https://www.lowes.com/pd/Fiberon-Common-Actual-1-25-in-x-1-25-in-x-33-5-in-Homeselect-White-Composite-Not-Wood-Deck-Baluster/4220392

The Brackets for the servos are made from Foam PVC. https://www.mcmaster.com/#standard-pvc-sheets/=1a62tg6

I created a jig and then cut the parts and heated them up. The parts were then inserted into the jig until the cooled down.

Once cooled down I then cut them to fit the servos.

The servos were also altered so they would have a pivot point on the back.

I removed the back covers and drilled holes and used #4 Screws and put a nut on the outside to keep everything tight.

He is able to walk around and when a object is in his path he stops and backs up and then turns to his left.

This is just the start of this project.

I plan on adding a real time clock module so that a specific time of day he will go into a motion detection phase and alert when there is motion.

Will also be adding a SD card module for the playback of WAV files.

The top of his head will be covered in clear plastic once his wires are all hidden and 2 LED's will be placed in his head for visual.

Will post a video soon along with other updates.

We now have arms and hands..

The arms are made from the straw portion of a cat tail teaser that you can buy at dollar tree.

https://www.dollartree.com/3-Tail-Cat-Teaser-Wands-18-5-in-/p357832/index.pro

The hands were also made from the Foam PVC and then glued into the straws.

UPDATE: 11/11/17

After getting undesireable results from the IR sensor I switch to a Ping sensor and get much better results.

 

UPDATE: 11/12/17

Now that I am using a Ping sensor the result as much better and the bot is stopping when too close to an object or wall.

I decided to change the main body of the program to make the bot more reactive to his surroundings.

In the original code when the bot would come to an object or wall it would stop for X amount of time and his hands would raise and then he would go backwards and then turn to the left. At this point a counter would start and once it hit the magic number of 3 times of performing this action it would then turn to the right after backing up.

Now when the bot is too close to an object or wall he immediately turns to his left and if it is clear continues forward, if not he then turns to his right and goes forward.

I also added the ability for the bot to always sense the distance while in a walk cycle so if you walk infront of the bot he will back up immediately.

 

UPDATE: 11/19/17

Max now has a head.

With the change in weight/center of gravity I am working on fixing all the walk cycles to accomodate the difference.

New video to come soon.

 

UPDATE: 11/24/17

I have rounded the corners of the feet to keep them from catching on any while walking on carpet.

I have also fixed the walking gait to compensate for the head being added.

To my surprise the new gate is faster and very stabile. The bot can now walk at 1 inch per second.

I have also given a little smile to the bot.

I plan on adding a RTC module wich will fit into his head.

Why add a RTC, I can then do a schedule and have the bot do specific things at a given time.

I am currently testing a motion detection piece of code that uses the already present ping sensor.

The sensor takes several samples within a 100 ms time and then compares them.

You will notice that in the new video a blue LED light comes on.

The bot stops for a short interval and then checks for motion, if there is motion the LED lights up.

 

New video soon!

So now that Max is working I wanted to add a way for him to determine terrain height and then change the distance in which he lifts his leg. I recently received a TOF sensor (Top of Flight) which uses a narrow beam of light to detect distance. What I talking about is  walking from a tile surface onto carpet, there is that difference in height between the two. I played with a Ping sensor and a IR sensor and they did a horrible job in detecting that difference because the carpet would absorb the sound from the ping sensor and did the same for the IR sensor. While the TOF sensor is not perfect it still gives a good result for this. The greatest distance that I can get an accurate reading from the TOF sensor is 7 inches. This is perfect as the distance from Max's hip to the ground is only 3.5 inches. I will be making a new version of Max called Max V2 which will have a much better walking gait and will have the TOF sensor mounted in the hip and angled so that it points just slightly infront of his feet.

UPDATE 1/1/18

After using the NewPing library on Wall-E and getting positive results I then applied it to Max and recieved good results.

The precision of measurements it much better and object avoidance is spot on.

Max now avoids all objects and a couple of times have caught him trying to escape my room.

What a big improvement with just the change of a library.

UPDATE: 2/3/2018

I recently was watching a video of biped playing soccer and got an idea. Max could do that I just need a way of detecting the ball. The ball will have to be a unique color so that it is easily detectable. I have ordered a color sensor array. I am thinking that I could mount the color sensor in one of his feet or if sensitive enough in his chest.


This is a companion discussion topic for the original entry at https://community.robotshop.com/robots/show/mini-max

Mini Max

If your programming glitches, you can call him “Mad Mini Max”. Looking forward to seeing a video of him getting around!

Cool Biped

pretty cool.  Glad to see you are staying busy.

Nice work !

If you cover up all the cables maybe you could disguise him similarly as your Desktop Bot. Also, do you plan adding arms ? Or is the not enough space.

opidopi

Yes, the plan is to add

Yes, the plan is to add arms. When I designed the body I pre-planned enough space to be able to add 2 servos for the arms. I will take some more detailed pictures of what the body cavity looks like with the sides off.

After really getting

After really getting interested in the Arduino I have went from getting bored with the PC based stuff to open up a whole new avenue of what I can do.

I am going to do a video of

I am going to do a video of him this weekend and hopefully find time to add the arms and redesign the feet slightly.

Halloween

Too late for this year, but the way “it” walks, if you added arms which are straight out, it could be a “robo zombie”.

Interesting you say that

Interesting you say that because I was going to paint him pale green and put a smile on his body like this one.

https://previews.123rf.com/images/kennykiernanillustration/kennykiernanillustration1307/kennykiernanillustration130700119/20686928-Classic-Frankenstein-Monster-Cartoon-Head-Stock-Vector-halloween.jpg

So his body would be a head.

I have since change my mind on that and will be adding a head that will be a ping sensor and removing the IR sensor.

Screws

Nice video ! But what kind of screws do you use ? The plasitc looks quite thin. How well do they hold it all together ?

 

opidopi

I used the screws that come

I used the screws that come with the servos. I had many left over screws from previous servos that I had not used so they were perfect for the job. The main plate that the two leg servos go through is 5/8" thick while the other material is 1/8" thick.

Great robot

I like that you used traditional ways of manufacturing.

Could you post a picture of your jig and more details of the building process? It’s really interesting to see how it comes to life.

maelh thank you for your

maelh thank you for your interest.

While I would be more than glad to take some pictures of the jig I have to say it was just a temporary thing I made.

I will do my best to describe it for you.

I used 2" x 3/4" pieces of wood.

I laid the 3/4" side of one piece of wood down on the 2" section of other piece to for a T, this was secured using a screw,

I then used to more pieces of the same size wood as clamps on the outside.

I would lay the PVC over the 3/4" of the wood and then heat it up.

Once the PVC ws heated up enough it would start to droop over each side.

I then would take the other two pieces of wood and clamp them, one on each side to hold the PVC secure.

Once cooled down I took the clamps off and cut the notches out for the servos to sit in.

I hope this helps you.

Thanks. I got a better idea

Thanks. I got a better idea now :slight_smile:

This is getting really good.

The arms really added some special “it factor”.  Maybe adorable is the word I am looking for, or that french phrase for I don’t know what.  I can’t wait to see what the head looks like.

I am not sure if I will be

I am not sure if I will be able to add a head without doing some redesigning of the body panels to allow another servo.

I could just make a static head that has the ping sensor in it.

Kind of up in the air on this one.

Max’s Personality

Nice to see Max with a head, green hair…  Based on the materials used, it seems straightforward to add a curved surface to cover the top of the body? Looking forward to seeing its personality.

Cool little cute guy

Very cool this “little guy” you have there. It’s really a complete robot with arms, legs and a head. The green hair adds personality. I like it. Well done.

Thank you much for the

Thank you much for the compliments. 

Max

Very cool.  I just watched the walking video.  I love when he bend his legs to look up and down or pans the head, very expressive and useful.  A lot going on in a small space.