collapse

Welcome!



Welcome to Robot Rebels, an online robot maker community.

Register today to post your projects, ask questions, share knowledge and meet like-minded people from around the world.


The RobotRebel.org Community

Author Topic: 3D Printed Full size Humanoid  (Read 1066 times)

danphobic_

  • Member
  • *
  • Posts: 48
  • personal text?
3D Printed Full size Humanoid
« on: July 19, 2017, 12:44:37 PM »
Hi All,

  I haven't posted in ages, I have been extremely busy with work unfortunately.

   I have recently started work on a new project which is to build a full size humanoid robot.  I started a new youtube channel just for this project.

Updated video of it leaning and falling over. With a little cameo from me!


   As with all of my work, I am designing this to be made from the cheapest components possible. All of the joints are made using cheap plastic gearboxes and position feed back is from potentiometers. I have only got to the point of making the legs and programming the arduino to control them in a usable manner. I got it to stand on one leg yesterday, but much more work is needed to get it balancing using any kind of responsive intelligence. It doesn't have any body weight so counterbalancing is quite difficult at the moment. I haven't actually designed the upper body yet, but I have a good idea of how I want it to look.

I am planning to add giro stabilisation and pressure sensors, although programming the responses to that data is going to be a real challenge and will probably take weeks.
 
   All of the plastic parts are 3D printed. I am still using the L298 breakout boards you can get on ebay for the drivers quite simply because of the time saving and cost factor.

Each leg has 6 degrees of freedom and it can move in any way a human could conceivable move.

I took some time to learn a bit of Processing which is helping with control of the legs. I wasted days and days learning how to send data between the arduino and PC using the serial bus. It was extremely painful! I had to break down 3 digit integers into individual characters to send in a string and then vice versa on the other end. I cracked that eventually.
    I have programmed a simple GUI using Processing, which is designed to allow me to save positions down to a position array that can be played back when you click on the buttons. I just need to program a timed position sequencer and I will have the rudiments of system that can control the legs into a basic walking movement.

    Even when I have that, it still won't have any semblance of intelligent control. That could take years to program. I have some great ideas around programming control, but it seems that my programming skills may take some time to catch up with my ideas.

  The only way I was able to make this progress is by taking time off work, but unfortunately I will be back at work on Monday, so progress will slow right down again.
« Last Edit: July 21, 2017, 04:06:16 PM by danphobic_ »

jinx

  • calling from free Europe
  • Sr. Member
  • *****
  • Posts: 400
Re: 3D Printed Full size Humanoid
« Reply #1 on: July 20, 2017, 03:16:57 AM »
WOW that is looking really cool, not a word i use often but that Dan is an awesome project  really hope you keep us updated
« Last Edit: July 20, 2017, 03:22:33 AM by jinx »
I build bots

MEgg

  • Member
  • *
  • Posts: 235
Re: 3D Printed Full size Humanoid
« Reply #2 on: July 21, 2017, 03:28:09 PM »
Absolute great project.
The sound of the whole thing moving is already like from a Sci Fi film.

I took some time to learn a bit of Processing which is helping with control of the legs. I wasted days and days learning how to send data between the arduino and PC using the serial bus.

Why didn't you ask here in RR?

I am a beginner in robotics but I send serial data between my raspberry and the Arduino spider board all the time.
My "command chain" is:
PC <--- WLAN ---> Raspberry on robot: terminal window  with minicom  <----Serial ----> Arduino / Spider board (on robot) <----> motor controller (on robot)
I do not have long time experience if this will work in the future though.


  The only way I was able to make this progress is by taking time off work, but unfortunately I will be back at work on Monday, so progress will slow right down again.

I guessed that this takes some time.
Maybe I should do this also, but my girl wants holidays without robots.
 ;)
« Last Edit: July 21, 2017, 04:54:51 PM by MEgg »
1st project: Dagu 5 Rover + Dagu - 4 Channel DC Motor + Red Back Spider robot controller + Raspberry B+
Chassis + wheels: https://picload.org/image/dggroior/20150831_028.jpg
current: https://www.keepandshare.com/userpics/m/a/r/k/usegg/2016-04/sb/img_3480-79682018.jpg

danphobic_

  • Member
  • *
  • Posts: 48
  • personal text?
Re: 3D Printed Full size Humanoid
« Reply #3 on: July 21, 2017, 04:39:31 PM »
Absolute great project.

I took some time to learn a bit of Processing which is helping with control of the legs. I wasted days and days learning how to send data between the arduino and PC using the serial bus.

Why didn't you ask here in RR?

I am a beginner in robotics but I send serial data between my raspberry and the Arduino spider board all the time.
My "command chain" is:
PC <--- WLAN ---> Raspberry on robot: terminal window  with minicom  <----Serial ----> Arduino / Spider board (on robot) <----> motor controller (on robot)
I do not have long time experience if this will work in the future though.


Thanks, I hadn't thought of asking actually. It seemed like a very specific and long winded problem to those who use processing and arduino, although come to think of it, you guys eat that for breakfast!

Thanks Jinx as well. I am really trying to make it look professional, something people would want to invest in. But I also want it to look a bit Sci-Fi. I really like the look of the police robots in teh film Elysium so I am trying to make something along those lines, not the same but similar. I think I am going to go with a functional scifi robot face rather than try to do human characteristics. Maybe a visor or I was thinking the red pulsing light of kit or the cylons.

    My current problem is a purely coding and maths problem. I am trying to program in a 'D' to go with my P and I on the arduino that controls the motors.
   It's twisting my melon so to speak. 

 I currently have boiled it down to needing to try to quantify the rate at which the 'error' of the angle is improving or getting worse. I've got the difference between the angle that the joint is now and the angle that I want it to be.  Then I have the 'Integral' by having a variable that counts how long the error has been a lot.
 Now I need to work out how to calculate the rate the error is changing.

The best way I can think to do this is to sample the difference or error at timed intervals and then somehow work out the rate of improvement from that.

   The mind boggles. My variable for measuring the difference in angle between where it is and where i want it is :

diff


So over time a list of samples would look like this:
millis()+10                  diff[20]
millis()+10                  diff[20]
millis()+10                  diff[19]
millis()+10                   diff[15]
millis()+10                    diff[7]
millis()+10                    diff[0]


So in this example the measurements of difference are the same for a while but then accelerate in their improvment. They accelerate towards no error. So somehow I need to mathematically measure that acceleration. So I need to somehow get the differences between the diff[] measurements and calculate the acceleration. So I guess it would be :

0,
0,
1,
4,
8,
7

What my code would need to do is take the 0,1,4,8 over the four measurements and somehow say the rate of improvement is increasing by roughly *2 each time and predict when I need to lower the power to prevent the joints from over shooting as they are now. The problem is I don't know how to calculate an acceleration of improvement. I going to have read a whole lot of internet about PID.

MEgg

  • Member
  • *
  • Posts: 235
Re: 3D Printed Full size Humanoid
« Reply #4 on: July 21, 2017, 04:50:38 PM »
Can you build in some sensor contacts which prevent the joints from shooting over?
« Last Edit: July 21, 2017, 04:56:14 PM by MEgg »
1st project: Dagu 5 Rover + Dagu - 4 Channel DC Motor + Red Back Spider robot controller + Raspberry B+
Chassis + wheels: https://picload.org/image/dggroior/20150831_028.jpg
current: https://www.keepandshare.com/userpics/m/a/r/k/usegg/2016-04/sb/img_3480-79682018.jpg

danphobic_

  • Member
  • *
  • Posts: 48
  • personal text?
Re: 3D Printed Full size Humanoid
« Reply #5 on: July 21, 2017, 05:20:22 PM »
Can you build in some sensor contacts which prevent the joints from shooting over?


Unfortunately I wish it was that easy! I am currently using potentiometers to give feedback on position. Seems basic but that is how servos worked until very recently. Even with a constant reminder of the current position the joints will still overshoot because to get to that position in a timely fashion you need to accelerate the motors by increasing the voltage ( or in this case PWM). I'm using cheap DC motors and the whole joint builds up a lot of momentum when it is moving, so the joints will usually overshoot even with a Proportional and integral factor. This is why I need the last part, the derivative. Without this my joints will always look shakey and weird. I am using these cheap DC motors instead of servos or steppers to keep the cost at rock bottom. The idea being that not many people can afford to buy a £20000 machine ( which the UXA-90 is rumoured to be priced at). But quite a few people would happily pay £1000 to have a full size humanoid.

MEgg

  • Member
  • *
  • Posts: 235
Re: 3D Printed Full size Humanoid
« Reply #6 on: July 21, 2017, 05:58:21 PM »
Ok, so this is some kind of "slow down before endposition"-problem?

Similar to this:
« Last Edit: July 21, 2017, 06:02:30 PM by MEgg »
1st project: Dagu 5 Rover + Dagu - 4 Channel DC Motor + Red Back Spider robot controller + Raspberry B+
Chassis + wheels: https://picload.org/image/dggroior/20150831_028.jpg
current: https://www.keepandshare.com/userpics/m/a/r/k/usegg/2016-04/sb/img_3480-79682018.jpg

danphobic_

  • Member
  • *
  • Posts: 48
  • personal text?
Re: 3D Printed Full size Humanoid
« Reply #7 on: July 21, 2017, 07:16:48 PM »
thanks megg, I was reading through that and trying to apply it to the change of rate and it suddenly hit me.

In PID controllers you are supposed to do P x I but I had been doing P + I because it just so happened that the P+I number ranges fell nicely into something I could use with PWM settings for arduino.
  What I should have done is stuck with the proven PID science and kept it as P x I.  This was giving me values much higher than I can use for pwm so the solution was easy , divide it by ten.

   The legs seem to be much nicer in how they move and keep up with changing set points that is coming from my processing values. I can also adjust the output by changing that final divide by ten for say, divide by 11 or any other number until I get a really nice smooth movement. Unfortunately I can't continue testing for tonight because someone lives below me and I'm sure they are wondering what all the stomping on the floor is!

MEgg

  • Member
  • *
  • Posts: 235
Re: 3D Printed Full size Humanoid
« Reply #8 on: July 22, 2017, 08:30:20 AM »
Hahaha, tell them that your robot is stomping.
 ;D

I'd take some pallet, dampen this between floor and pallet and put the robot on an even mat ontop of the pallet.
That only works if you have place for a pallet.
1st project: Dagu 5 Rover + Dagu - 4 Channel DC Motor + Red Back Spider robot controller + Raspberry B+
Chassis + wheels: https://picload.org/image/dggroior/20150831_028.jpg
current: https://www.keepandshare.com/userpics/m/a/r/k/usegg/2016-04/sb/img_3480-79682018.jpg

DangerousThing

  • Member
  • ****
  • D
  • Posts: 13
Re: 3D Printed Full size Humanoid
« Reply #9 on: July 26, 2017, 12:41:46 AM »
Have you seen James Burton's channel on YouTube? He has 3d printed and built a number of props. One of the ones was the innards of a full-sized robot built of 3d-printed parts and 8020 aluminum extrusions. It was designed to have different "costumes" on it so it could be brought to SF cons as different bipedal robots.

He has videos in each stage of a build. When he just had the legs it was hilarious. He got it to walk, though. And some of the ways he did things was very clever. I don't think that he tried for the very cheapest way, but his way made for a workable remote-controlled robot.

He's also the guy that made the Ironman Hulk-Buster Armor.

danphobic_

  • Member
  • *
  • Posts: 48
  • personal text?
Re: 3D Printed Full size Humanoid
« Reply #10 on: July 29, 2017, 10:08:33 AM »
Have you seen James Burton's channel on YouTube? He has 3d printed and built a number of props. One of the ones was the innards of a full-sized robot built of 3d-printed parts and 8020 aluminum extrusions. It was designed to have different "costumes" on it so it could be brought to SF cons as different bipedal robots.

He has videos in each stage of a build. When he just had the legs it was hilarious. He got it to walk, though. And some of the ways he did things was very clever. I don't think that he tried for the very cheapest way, but his way made for a workable remote-controlled robot.

He's also the guy that made the Ironman Hulk-Buster Armor.


Hey DangerousThing. Yes I really like the Xrobots series of videos. He has a pretty cool job designing toys, so he can spend a lot of time on projects like this. His most recent robot that you mention, is the culmination of years of experiments. What gets me, is that his robot is actually pretty advanced in it's abilities. He could easily build some better arms and make this a fairly advanced humanoid platform, but he just happy to use it for novelty sci fi purposes. Which is pretty heartening to see. He is not that fussed about selling his ideas, but just wants to make cool robots!!

DangerousThing

  • Member
  • ****
  • D
  • Posts: 13
Re: 3D Printed Full size Humanoid
« Reply #11 on: July 31, 2017, 11:57:30 AM »

Hey DangerousThing. Yes I really like the Xrobots series of videos. He has a pretty cool job designing toys, so he can spend a lot of time on projects like this. His most recent robot that you mention, is the culmination of years of experiments. What gets me, is that his robot is actually pretty advanced in its abilities. He could easily build some better arms and make this a fairly advanced humanoid platform, but he just happy to use it for novelty sci fi purposes. Which is pretty heartening to see. He is not that fussed about selling his ideas, but just wants to make cool robots!!

I like his videos because of that attitude. Plus he shares both his successes and failures which give the world a better idea of how making things works.

If you want to see a *really* nice open source arm/hand, look at Flash Robotics. Their robot is fully open source. Though they do use some pricey motors for the arm. I think the hand just uses hobby servos, but they might be the expensive ones.

jinx

  • calling from free Europe
  • Sr. Member
  • *****
  • Posts: 400
Re: 3D Printed Full size Humanoid
« Reply #12 on: July 31, 2017, 06:55:15 PM »
i cant reach the site DT
I build bots

DangerousThing

  • Member
  • ****
  • D
  • Posts: 13
Re: 3D Printed Full size Humanoid
« Reply #13 on: August 07, 2017, 02:09:23 AM »
Jinx,

I'm sorry that I got the name of his YouTube channel wrong.

He is "James Bruton" on YouTube, though you can search on XRobots in YouTube and find his stuff also.

He also has a web site that is mentioned on his YouTube videos.

He is mainly concerned with prop building, but there is a lot of crossover between what he does and robotics. Plus, of interest to many people here, he uses 3d printing to make much of his parts and he explains what he is doing.

 

* Search


* Recent Topics

Merry Christmas by tinhead
[Today at 12:52:12 PM]


printed CNC engraver by jinx
[December 17, 2017, 04:45:43 AM]


metal chassis desktop bot by craighissett
[December 14, 2017, 06:55:16 AM]


LEGO by Impala
[December 13, 2017, 09:46:53 PM]


Your workshop space by viswesh
[December 07, 2017, 09:32:47 PM]


Albert Michelson's Harmonic Analyzer by jinx
[December 05, 2017, 01:05:48 PM]


Raspberry Pi / Python eBook - free for the next 11 hours! by MEgg
[December 03, 2017, 04:20:50 PM]


Fun Fact by Impala
[December 03, 2017, 11:26:45 AM]


CZ-1 2.0: problems, calibration and printing, part2 by MEgg
[December 02, 2017, 12:15:34 PM]


Commissioning a Nano Leg Module by BaldwinK
[November 28, 2017, 11:42:31 AM]


T-HR3 by jinx
[November 21, 2017, 03:41:11 PM]


MKS Sbase by jinx
[November 20, 2017, 03:53:21 PM]


Skull Line Follower by Ittiporng
[November 20, 2017, 03:23:18 AM]


Just scary to me... by jinx
[November 16, 2017, 03:05:30 AM]


"Artie" version 3.0 (RTV3) by jinx
[November 14, 2017, 03:11:04 AM]

* Recent Posts

Re: Merry Christmas by tinhead
[Today at 12:52:12 PM]


Re: Merry Christmas by MEgg
[December 17, 2017, 02:54:29 PM]


Re: Merry Christmas by Impala
[December 17, 2017, 02:23:27 PM]


Re: printed CNC engraver by jinx
[December 17, 2017, 04:45:43 AM]


Merry Christmas by jinx
[December 16, 2017, 04:54:26 AM]


Re: metal chassis desktop bot by craighissett
[December 14, 2017, 06:55:16 AM]


Re: LEGO by Impala
[December 13, 2017, 09:46:53 PM]


Re: Autodownload items (was: Re: LEGO) by MEgg
[December 11, 2017, 02:59:41 PM]


Re: Your workshop space by viswesh
[December 07, 2017, 09:32:47 PM]


Re: Your workshop space by tinhead
[December 07, 2017, 08:50:59 PM]


Re: Your workshop space by MEgg
[December 07, 2017, 03:13:51 PM]


Re: Your workshop space by mogul
[December 07, 2017, 02:43:22 PM]


Re: printed CNC engraver by tinhead
[December 05, 2017, 05:09:44 PM]


printed CNC engraver by jinx
[December 05, 2017, 04:59:18 PM]


Albert Michelson's Harmonic Analyzer by jinx
[December 05, 2017, 01:05:48 PM]