Legacy Forum: Preserving Nearly 20 Years of Community History - A Time Capsule of Discussions, Memories, and Shared Experiences.

My Bioloid "L"

Bioloid robot kit from Korean company Robotis; CM5 controller block, AX12 servos..
39 postsPage 2 of 31, 2, 3
39 postsPage 2 of 31, 2, 3

Post by 27Loco » Tue Apr 20, 2010 10:59 pm

Post by 27Loco
Tue Apr 20, 2010 10:59 pm

Actually quite good after the upgrade to the premium. It was really at its limits with the CM5 and its heavy battery. Had shutdowns really often but now they are nearly gone.

At the moment the LiPo is connected to the hip servo but I will go a servo deeper so the hip servo only has to carry the CM510 and this should avoid any shutdowns at all :)
Actually quite good after the upgrade to the premium. It was really at its limits with the CM5 and its heavy battery. Had shutdowns really often but now they are nearly gone.

At the moment the LiPo is connected to the hip servo but I will go a servo deeper so the hip servo only has to carry the CM510 and this should avoid any shutdowns at all :)
27Loco
Savvy Roboteer
Savvy Roboteer
Posts: 63
Joined: Sat Feb 20, 2010 10:16 pm

Post by 27Loco » Wed Apr 21, 2010 8:12 pm

Post by 27Loco
Wed Apr 21, 2010 8:12 pm

Picture of my Bioloid with the new LiPo location.

Image
Picture of my Bioloid with the new LiPo location.

Image
27Loco
Savvy Roboteer
Savvy Roboteer
Posts: 63
Joined: Sat Feb 20, 2010 10:16 pm

Walk

Post by UncleBob » Thu Apr 22, 2010 1:09 am

Post by UncleBob
Thu Apr 22, 2010 1:09 am

How is walking ? any vid?
How is walking ? any vid?
UncleBob
Savvy Roboteer
Savvy Roboteer
Posts: 398
Joined: Sun Dec 27, 2009 5:25 am

Post by 27Loco » Thu Apr 22, 2010 8:05 am

Post by 27Loco
Thu Apr 22, 2010 8:05 am

Still working on it. Walking is so always a long process for me and I somehow unable to figure out the whole inverse kinematics thing. :oops:

But as soon he is doing is first stable steps I will post a video.
Still working on it. Walking is so always a long process for me and I somehow unable to figure out the whole inverse kinematics thing. :oops:

But as soon he is doing is first stable steps I will post a video.
27Loco
Savvy Roboteer
Savvy Roboteer
Posts: 63
Joined: Sat Feb 20, 2010 10:16 pm

Walking

Post by UncleBob » Thu Apr 22, 2010 9:07 am

Post by UncleBob
Thu Apr 22, 2010 9:07 am

I am beginning to understand walking. I manage to do a baby step. Maybe I should write an ebook once I got running figure out.
I am beginning to understand walking. I manage to do a baby step. Maybe I should write an ebook once I got running figure out.
UncleBob
Savvy Roboteer
Savvy Roboteer
Posts: 398
Joined: Sun Dec 27, 2009 5:25 am

incredible

Post by UncleBob » Thu Apr 22, 2010 11:45 am

Post by UncleBob
Thu Apr 22, 2010 11:45 am

Incredible. This robot walks WITHOUT power based on Ted McGeer's theory.

phpBB [media]


The term and its principles were developed by Tad McGeer in the late 1980s. While at Simon Fraser University in Burnaby, British Columbia, McGeer showed that a human-like frame can walk itself down a slope without requiring muscles or motors. Unlike traditional robots, which expend energy by using motors to control every motion, McGeer's early passive-dynamic machines relied only on gravity and the natural swinging of their limbs to move forward down a slope
Incredible. This robot walks WITHOUT power based on Ted McGeer's theory.

phpBB [media]


The term and its principles were developed by Tad McGeer in the late 1980s. While at Simon Fraser University in Burnaby, British Columbia, McGeer showed that a human-like frame can walk itself down a slope without requiring muscles or motors. Unlike traditional robots, which expend energy by using motors to control every motion, McGeer's early passive-dynamic machines relied only on gravity and the natural swinging of their limbs to move forward down a slope
UncleBob
Savvy Roboteer
Savvy Roboteer
Posts: 398
Joined: Sun Dec 27, 2009 5:25 am

cool

Post by UncleBob » Thu Apr 22, 2010 11:54 am

Post by UncleBob
Thu Apr 22, 2010 11:54 am

this is also very cool !!!

phpBB [media]
this is also very cool !!!

phpBB [media]
UncleBob
Savvy Roboteer
Savvy Roboteer
Posts: 398
Joined: Sun Dec 27, 2009 5:25 am

this is so cool

Post by UncleBob » Thu Apr 22, 2010 12:02 pm

Post by UncleBob
Thu Apr 22, 2010 12:02 pm

This is so cool !!!!

phpBB [media]
This is so cool !!!!

phpBB [media]
UncleBob
Savvy Roboteer
Savvy Roboteer
Posts: 398
Joined: Sun Dec 27, 2009 5:25 am

one more

Post by UncleBob » Thu Apr 22, 2010 12:07 pm

Post by UncleBob
Thu Apr 22, 2010 12:07 pm

phpBB [media]
phpBB [media]
UncleBob
Savvy Roboteer
Savvy Roboteer
Posts: 398
Joined: Sun Dec 27, 2009 5:25 am

Post by siempre.aprendiendo » Thu Apr 22, 2010 12:46 pm

Post by siempre.aprendiendo
Thu Apr 22, 2010 12:46 pm

:o

That's incredible. Specially the first one!

This worth a new topic, isn`t? : )
:o

That's incredible. Specially the first one!

This worth a new topic, isn`t? : )
siempre.aprendiendo
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 559
Joined: Wed Aug 08, 2007 9:13 pm
Location: Barcelona

Post by 27Loco » Thu Apr 22, 2010 1:07 pm

Post by 27Loco
Thu Apr 22, 2010 1:07 pm

Yep this sound like a whole new topic. I have never seen this before. Thanks for sharing UncleBob. Very interesting stuff! :shock:

But imagine your robot has feet like them where the sole is round. Would make them pretty unstable as soon as they stop walking I guess.
Yep this sound like a whole new topic. I have never seen this before. Thanks for sharing UncleBob. Very interesting stuff! :shock:

But imagine your robot has feet like them where the sole is round. Would make them pretty unstable as soon as they stop walking I guess.
27Loco
Savvy Roboteer
Savvy Roboteer
Posts: 63
Joined: Sat Feb 20, 2010 10:16 pm

Post by FabinovX » Thu Apr 22, 2010 11:02 pm

Post by FabinovX
Thu Apr 22, 2010 11:02 pm

Yeah, your new premium L looks great :D
Yeah, your new premium L looks great :D
FabinovX
Savvy Roboteer
Savvy Roboteer
Posts: 74
Joined: Mon Feb 01, 2010 4:12 pm

Post by 27Loco » Thu Apr 29, 2010 8:37 pm

Post by 27Loco
Thu Apr 29, 2010 8:37 pm

Changed the hands to the "normal" ones again, because without the additional AX-12+ it doesn't make sense to add gripper. :?

Furthermore I made minor changes to the legs and took the design of the FREEDOM JrIII and changed all Dynamixel IDs. Oh dear making all motions again :roll:

Image

Does anybody tried the software of best technology? The motion editor has a quite a different but interesting approach.

They are taking a "HomePostion" by just capturing the position of the servos. Looks like this below:

Code: Select all
/*======================================================================*/
/* HomePosition                                                         */
/*======================================================================*/
const __attribute__((section (".rom3"))) THumanoid HomePos = {
  Servos:{
    RightLeg:{  507,    517,    738,    590,    510,},
    LeftLeg: {  504,    516,    290,    437,    511,},
    RightArm:{  491,    245,    486,},
    LeftArm: {  519,    775,    542,},
  },
};


After declaring the home position the value zero will be that servo postion captured as home position. Makes it easier to remember were the robot started with his movement. :)

Code: Select all
// Wake Up
const __attribute__((section (".rom4"))) THumanoidMotion WakeUp[]={
  { Servos:{
      RightLeg:{    0,     0,     0,     0,     0,},
      LeftLeg: {    0,     0,     0,     0,     0,},
      RightArm:{    0,     0,     0,},
      LeftArm: {    0,     0,     0,},
    },
    Adj:ADJ_SACC_SDECEL, Div:4000,
  },
};


Below is a simple bow motion. This is the part I am still trying to figure out. The difficulty is to recalculated the values to get the values of the servo postion.

I think the formula goes like this:
Code: Select all
CurrentPosition * Previous Position / 1000 + HomePosition


Lets try that out with the second servo of the right and left leg:
right: 517 * 718 / 1000 + 517 = 888
left: 515 * 724 / 100 + 515 = 890

hm the left value is somehow not correct. should be below 512 of course. No idea how they figure that out. Maybe they are just adding a small line somewhere that calculates the following for the left side: (512-890)+512

Code: Select all
// Bow
const __attribute__((section (".rom4"))) THumanoidMotion Bow[] ={
  { Servos:{
      RightLeg:{    0,   718,   -11,  -249,    -2,},
      LeftLeg: {   -8,   724,     2,  -263,     0,},
      RightArm:{  240,    -5,    -5,},
      LeftArm: {  275,    -2,     8,},
    },
    Adj:ADJ_SACC_SDECEL, Div:1000
  },
  { Servos:{
      RightLeg:{    0,     0,     0,     0,     0,},
      LeftLeg: {    0,     0,     0,     0,     0,},
      RightArm:{    0,     0,     0,},
      LeftArm: {    0,     0,     0,},
    },
    Adj:ADJ_SACC_SDECEL, Div:1000
  },
};


You can download their complete library from their website including inverse kinematics walking, motions for the robo one competition. :)

Does anybody can imagine a different approach on how they are using their motion data?

You can find more info on their website, including a lot of code.
http://www.besttechnology.co.jp/modules/knowledge/?%E3%83%A2%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E4%BD%9C%E6%88%90[/code] :)

Best wishes,


Loco :P
Changed the hands to the "normal" ones again, because without the additional AX-12+ it doesn't make sense to add gripper. :?

Furthermore I made minor changes to the legs and took the design of the FREEDOM JrIII and changed all Dynamixel IDs. Oh dear making all motions again :roll:

Image

Does anybody tried the software of best technology? The motion editor has a quite a different but interesting approach.

They are taking a "HomePostion" by just capturing the position of the servos. Looks like this below:

Code: Select all
/*======================================================================*/
/* HomePosition                                                         */
/*======================================================================*/
const __attribute__((section (".rom3"))) THumanoid HomePos = {
  Servos:{
    RightLeg:{  507,    517,    738,    590,    510,},
    LeftLeg: {  504,    516,    290,    437,    511,},
    RightArm:{  491,    245,    486,},
    LeftArm: {  519,    775,    542,},
  },
};


After declaring the home position the value zero will be that servo postion captured as home position. Makes it easier to remember were the robot started with his movement. :)

Code: Select all
// Wake Up
const __attribute__((section (".rom4"))) THumanoidMotion WakeUp[]={
  { Servos:{
      RightLeg:{    0,     0,     0,     0,     0,},
      LeftLeg: {    0,     0,     0,     0,     0,},
      RightArm:{    0,     0,     0,},
      LeftArm: {    0,     0,     0,},
    },
    Adj:ADJ_SACC_SDECEL, Div:4000,
  },
};


Below is a simple bow motion. This is the part I am still trying to figure out. The difficulty is to recalculated the values to get the values of the servo postion.

I think the formula goes like this:
Code: Select all
CurrentPosition * Previous Position / 1000 + HomePosition


Lets try that out with the second servo of the right and left leg:
right: 517 * 718 / 1000 + 517 = 888
left: 515 * 724 / 100 + 515 = 890

hm the left value is somehow not correct. should be below 512 of course. No idea how they figure that out. Maybe they are just adding a small line somewhere that calculates the following for the left side: (512-890)+512

Code: Select all
// Bow
const __attribute__((section (".rom4"))) THumanoidMotion Bow[] ={
  { Servos:{
      RightLeg:{    0,   718,   -11,  -249,    -2,},
      LeftLeg: {   -8,   724,     2,  -263,     0,},
      RightArm:{  240,    -5,    -5,},
      LeftArm: {  275,    -2,     8,},
    },
    Adj:ADJ_SACC_SDECEL, Div:1000
  },
  { Servos:{
      RightLeg:{    0,     0,     0,     0,     0,},
      LeftLeg: {    0,     0,     0,     0,     0,},
      RightArm:{    0,     0,     0,},
      LeftArm: {    0,     0,     0,},
    },
    Adj:ADJ_SACC_SDECEL, Div:1000
  },
};


You can download their complete library from their website including inverse kinematics walking, motions for the robo one competition. :)

Does anybody can imagine a different approach on how they are using their motion data?

You can find more info on their website, including a lot of code.
http://www.besttechnology.co.jp/modules/knowledge/?%E3%83%A2%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E4%BD%9C%E6%88%90[/code] :)

Best wishes,


Loco :P
27Loco
Savvy Roboteer
Savvy Roboteer
Posts: 63
Joined: Sat Feb 20, 2010 10:16 pm

Roboplus

Post by UncleBob » Thu Apr 29, 2010 10:13 pm

Post by UncleBob
Thu Apr 29, 2010 10:13 pm

It is a different approach indeed. But why do it this way. Isn't roboplus motion method can also achieve the same?
It is a different approach indeed. But why do it this way. Isn't roboplus motion method can also achieve the same?
UncleBob
Savvy Roboteer
Savvy Roboteer
Posts: 398
Joined: Sun Dec 27, 2009 5:25 am

Post by 27Loco » Thu Apr 29, 2010 10:17 pm

Post by 27Loco
Thu Apr 29, 2010 10:17 pm

I would prefer a combination of both. Setting a Homeposition and then just setting the values to -10 or 200. Would be much easier for synchronizing the left and right site.

I believe making precise motions could be archived faster that way.
I would prefer a combination of both. Setting a Homeposition and then just setting the values to -10 or 200. Would be much easier for synchronizing the left and right site.

I believe making precise motions could be archived faster that way.
27Loco
Savvy Roboteer
Savvy Roboteer
Posts: 63
Joined: Sat Feb 20, 2010 10:16 pm

PreviousNext
39 postsPage 2 of 31, 2, 3
39 postsPage 2 of 31, 2, 3