Starpery.com

open source 'humanoid robot' project suggestions needed

Got an idea? Need an invention?
User avatar
rubherkitty
Doll Oracle
Doll Oracle
Posts: 8962
Joined: Sat Aug 25, 2012 5:24 pm
Location: Interstate 44 with 10 long-haired Friends a' Jesus In a chartreuse micra-bus
Contact:

Re: open source 'humanoid robot' project suggestions needed

Post by rubherkitty »

RE: Elvis > Elvia head.
He says the skin is silicone. May just be latex. I don't think TPE would be good idea.
The face could maybe pass if it had better make up, feminine eyebrows, better wig.
Going downtown. Gonna see my gal. Gonna sing her a song. I'm gonna show her my ding dong! C&C

donoghu
Active Poster
Active Poster
Posts: 76
Joined: Sun Jul 08, 2018 10:55 pm
Contact:

Re: open source 'humanoid robot' project suggestions needed

Post by donoghu »

I have read the comments up to now as this is something that clearly have came to my mind even before I though about purchasing a Love Doll.

In my case, it came from my curiosity about exoskeleton's current technology. One of the golden rules in making something secure and efficient is to be able to produce its opposite with as little risks and issues. So, anyone who plan to make an exoskeleton to enhances the human body should also be able, with the same kind of technology, to produce a robot that mimic the human who's using the exoskeleton... otherwise there are some missing features/data and that's a source for risks.
For those who still don't get it, if you can mimic an human movement realistically which includes limits of rotation, contraction and extension, you can apply those same limits to an exoskeleton in reverse so that the exoskeleton never exceed the angles of the user. Limiting those by "hard-crafting" the limits, which means that the motor or whatever is assisting the human is unable to physically exceed a specific limit is the simpler way, but it involves additional hardship in crafting the device. It's more efficient to set "limits" in the core of the software that runs the movement instead of applying them in the machinery itself. In case some wonders, the only reason why limits, in machine, are sometimes prompt to errors is when the limits are soft-coded, meaning the limits are set in a different set of data than the set of data that runs the movements.
I'm trying to make it simple to see/understand, as it's still quite complex to actually do.

Here are a few things that could "help" in terms of how you could reach your goal.
Because, let's face it, the goal is the result of multiple pre-goals.

First, the uses of external energy as the main source is much more risky than using an internal source of energy.
You don't have any control on the outside source unless you do some heavy change to the electrical system of the room in which the doll is located and plugged. I'm not saying that you shouldn't be plugging it to a wall, but more that you should be using an internal source that can recharge on the outside source as well as it can act as a form of "limiter".

Now, before some start saying that having a battery in your doll is risky as it might explode, I'll tell it now... I'm not writing about the "current" batteries, but more about more compact and even more efficient battery that insanely safe such as Mike Zimmerman's polymer based batteries (http://ionicmaterials.com/). Basically, can be damaged in any way (cut in half, pierced, heated at 40 degrees, etc.) and it's still safe.
Even better, that battery takes almost no place and can be bent in any shapes. As I'm still in only the early stage of my exoskeleton's project (where my ultimate goal is to triple the strength my some key parts of my body like the arms, legs and back.), I do plan on contacting Ionic Materials inc. when I get to the point of the battery.
If you want something "cheap and easy to manufacture", Salt-Water batteries could also be an alternative, though heavier and with a lower charge per mass than current batteries. (It's a 100% recyclable battery.)

I see quite a few subject about air pressure or mechanical articulation, yet I haven't seen anything in here about ionoprinting which, as funny as it might sound, is like... already what Love Doll are about. For those who want to know more: http://www.robotpark.com/academy/what-i ... ing-11110/
No air and no oil and no heating and can be formed in any shape. Create a inner skeleton which uses small parts (the articulation) with electric charged hydrogel and you got your "muscles" right there. Not only that, but cutting the "power" is one relatively safe way of releasing all the muscles.

So, while my previous post about the polymere battery still stands, I do suggest highly, if using hydrogel, to include a kind of "failsafe" power-cut feature. Call it an "emergency button" or switch or pin if you like. Something that, when removed, broken or turned off cut all the power in the doll which, then, return the hydrogel to its former soft form.

3 existing technologies which are accessible for not that much of a price. Some that date as back as early 2013 and, on top of that, the ability to use the current Love Doll building and manufacturing mechanisms.

Now, of course, this leaves us with the most complex part: Software and Hardware to manage the doll, a.k.a. the doll's brain and nervous system.
In a sense, I'll surprise some here, but that also isn't much of a problem in terms of cost (if you count on people who does it as a hobby).
All you need is...

1 mini PC with enough powered pins. For example, a set of Raspberry Pi3 or a Arduino with enough pins.
I'll leave most of the geek-talk out and simply explain this: it might not be possible to use the Ras-Pi3 or the Arduino as both the brain and nervous system. Let me explain the difference: The brain controls what has to be done and the nervous system controls the signals sent to the muscles (how much energy is sent to the hydrogel). Since the mini-pc usually have a limit in terms of how much power they can output through their PIN, it's currently unknown how much power (in relation to the condensation of ions embedded in the hydrogel) is needed to move something like an arm or leg. If you need as much a 1V per muscle or more, that means that the Ras-Pi3 and Arduino might be able to, by themselves, power only about 6 to 8 muscles. Hence why you might an external circuit which the Ras-Pi3 or Arduino can tap into to manage another power distribution system. (Making those PIN with limited voltage into simple controllers that tells another circuit how to set the power which is tapped directly from the battery.)
For security, it could be 2 batteries: One set at 5V for the mini-PC and one set to a potentially higher voltage for the circuit. Then, the mini-PC keep sending signal to the circuit that allows the said circuit to set how much power is sent through each muscles power lines.

As a matter of fact and kinda-joke, you could put the Ras-Pi3 in the head, the circuit in the stomach zone and the batteries as a big ball in the heart zone and it would work. You could put an emergency shutdown in the neck and several soft-shut switch in the arms and legs. One being a system that cut the power between the battery(ies) and the 2 other system and the other being just a switch set between the mini-PC and the circuit that, when turned on, switch as value to 0 (release all muscles tension).

The 3 main challenges in these methods are:
1) Setting up the system with the right amount of battery capacity and the right amount of ion concentration in the hydrogel.
In other words, setting up a skeleton frame that works with enough power and movement strength to support its articulation. For this, I suggest that, instead of going with the usual metallic skeleton (like if most Love Doll), fiberglass might be a better alternative. The skeleton then loose about 1/2 if not 3/4 of its weight and only a small amount of durability. It would also allow, in case of big emergency, to cut/break a limb of the doll without a saw.

2) Setting up the software in the mini-PC.
This isn't really a challenge in terms of talents/knowledge. You get pretty much the right amount of information just from a Starter Kit for the Arduino or the Ras-Pi3 (most includes software and example of program that can be used in the same way). The challenge is more about finding the right data in terms and creating the actual "action/reaction" systems. Making a body move isn't hard... making it move with a purpose and specific rules is on hell of a challenge. (That's like making an hand that can move its fingers. That's a 1 week project. Making a hand that is able to notice and pick-up an apple without making it explode... that's a 2-3 months project.)

3) Setting up the doll exterior features to includes the interior features.
If we're talking about having the system in the doll, that's not much of a problem. Just put the mold in a way that allows the skeleton to be in the right place in the doll.
If you're molding a whole body in 1 shot with a giant mold, it's a different process than if you're molding 1 part at a time and, afterward, clean the seams.
The issue comes afterward and it's actually a one thing about current dolls: What about maintenance?
Currently, fixing a doll inner-frame is like a surgery where you try to damage as little of the outer-shell as possible while modifying or changing the inner part.
If you add the complexity and occasional risks involved with robotics in the doll, then it wouldn't be strange to say that a surgery might be needed every month just to check/change some parts. The Mini-PC, if in the head, might be easy to access (back of the head... and bam!), but checking up on the hydrogel or wires in the doll is another matter.

For this, there's something I have though about ever since I have bought my first doll (still waiting for it).
Currently, the dolls are done in a way that, mostly, uses the same material (PTE or Silicone) for everything except the skeleton. This is because it's possible to controls how firms the material becomes and so to adjust each part with a different feeling. (That's how high grade dolls also have the feeling of bones and more "felt" details overall while touching their skin.)

What if we were to think a bit differently and, instead, we used PTE or Silicon only for a tight yet not full shell and, for under that "skin", we used something a bit more ingenuous?
There are quite a few self-healing polymer around.
For example, this one "heals" when exposed to water : https://www.youtube.com/watch?v=gJ_qA80Ztww
https://en.wikipedia.org/wiki/Self-healing_material

While I understand that this is something that might be quite expensive to implement in dolls (hence maybe dolls that are 8K or more), I'm still surprised it's not part of the standard in high-grade dolls. By the way, the video above is the result of reproducing the squid teeth through the use of a synthesized bacteria (meaning... using a molecular printer with data taken from the cell of a squid teeth). Even "just" a polymer that can restructure its link upon heating (called Diels-Alder) would fit right in. Your doll is damaged? Quickly heat the part damaged which will "heal" the inner structure (could be with something like an heated butter knife), then apply a bit of cured PTE or Silicon on the outer-shell (repairing the skin) and voila!
This would allow regular maintenance of the inner parts of the "mechanical" doll to safe and to not leave signs of damages on the outside.

I know that all I did was sound like if it was easy, which is not. In my case, it's more about me understanding the whole thing and thinking "Yup! That can be done." as I could do it myself if I had the time and materials (hence the money to get both). Most of the existing cases I have seen around about dolls/robots usually involves 10-years old technologies. That's usually because it would be a never ending circle "let's redo from the start" which, each time, would cost money. (You work on this mecanical doll for 6 years and then, an easier solution pop-up from the world of science. Either you destroy 4-5 years of work and invest time and money in the new techs or you continue and try to forget about the now-accessible-solution. Rince and repeat every 2-4 years)

Maecer
Senior Member
Senior Member
Posts: 417
Joined: Mon Aug 06, 2018 1:27 pm
Location: Virginia
Contact:

Re: open source 'humanoid robot' project suggestions needed

Post by Maecer »

donoghu wrote:I have read the comments up to now as this is something that clearly have came to my mind even before I though about purchasing a Love Doll.

In my case, it came from my curiosity about exoskeleton's current technology. One of the golden rules in making something secure and efficient is to be able to produce its opposite with as little risks and issues. So, anyone who plan to make an exoskeleton to enhances the human body should also be able, with the same kind of technology, to produce a robot that mimic the human who's using the exoskeleton... otherwise there are some missing features/data and that's a source for risks.
For those who still don't get it, if you can mimic an human movement realistically which includes limits of rotation, contraction and extension, you can apply those same limits to an exoskeleton in reverse so that the exoskeleton never exceed the angles of the user. Limiting those by "hard-crafting" the limits, which means that the motor or whatever is assisting the human is unable to physically exceed a specific limit is the simpler way, but it involves additional hardship in crafting the device. It's more efficient to set "limits" in the core of the software that runs the movement instead of applying them in the machinery itself. In case some wonders, the only reason why limits, in machine, are sometimes prompt to errors is when the limits are soft-coded, meaning the limits are set in a different set of data than the set of data that runs the movements.
I'm trying to make it simple to see/understand, as it's still quite complex to actually do.

Here are a few things that could "help" in terms of how you could reach your goal.
Because, let's face it, the goal is the result of multiple pre-goals.

First, the uses of external energy as the main source is much more risky than using an internal source of energy.
You don't have any control on the outside source unless you do some heavy change to the electrical system of the room in which the doll is located and plugged. I'm not saying that you shouldn't be plugging it to a wall, but more that you should be using an internal source that can recharge on the outside source as well as it can act as a form of "limiter".

Now, before some start saying that having a battery in your doll is risky as it might explode, I'll tell it now... I'm not writing about the "current" batteries, but more about more compact and even more efficient battery that insanely safe such as Mike Zimmerman's polymer based batteries (http://ionicmaterials.com/). Basically, can be damaged in any way (cut in half, pierced, heated at 40 degrees, etc.) and it's still safe.
Even better, that battery takes almost no place and can be bent in any shapes. As I'm still in only the early stage of my exoskeleton's project (where my ultimate goal is to triple the strength my some key parts of my body like the arms, legs and back.), I do plan on contacting Ionic Materials inc. when I get to the point of the battery.
If you want something "cheap and easy to manufacture", Salt-Water batteries could also be an alternative, though heavier and with a lower charge per mass than current batteries. (It's a 100% recyclable battery.)

I see quite a few subject about air pressure or mechanical articulation, yet I haven't seen anything in here about ionoprinting which, as funny as it might sound, is like... already what Love Doll are about. For those who want to know more: http://www.robotpark.com/academy/what-i ... ing-11110/
No air and no oil and no heating and can be formed in any shape. Create a inner skeleton which uses small parts (the articulation) with electric charged hydrogel and you got your "muscles" right there. Not only that, but cutting the "power" is one relatively safe way of releasing all the muscles.

So, while my previous post about the polymere battery still stands, I do suggest highly, if using hydrogel, to include a kind of "failsafe" power-cut feature. Call it an "emergency button" or switch or pin if you like. Something that, when removed, broken or turned off cut all the power in the doll which, then, return the hydrogel to its former soft form.

3 existing technologies which are accessible for not that much of a price. Some that date as back as early 2013 and, on top of that, the ability to use the current Love Doll building and manufacturing mechanisms.

Now, of course, this leaves us with the most complex part: Software and Hardware to manage the doll, a.k.a. the doll's brain and nervous system.
In a sense, I'll surprise some here, but that also isn't much of a problem in terms of cost (if you count on people who does it as a hobby).
All you need is...

1 mini PC with enough powered pins. For example, a set of Raspberry Pi3 or a Arduino with enough pins.
I'll leave most of the geek-talk out and simply explain this: it might not be possible to use the Ras-Pi3 or the Arduino as both the brain and nervous system. Let me explain the difference: The brain controls what has to be done and the nervous system controls the signals sent to the muscles (how much energy is sent to the hydrogel). Since the mini-pc usually have a limit in terms of how much power they can output through their PIN, it's currently unknown how much power (in relation to the condensation of ions embedded in the hydrogel) is needed to move something like an arm or leg. If you need as much a 1V per muscle or more, that means that the Ras-Pi3 and Arduino might be able to, by themselves, power only about 6 to 8 muscles. Hence why you might an external circuit which the Ras-Pi3 or Arduino can tap into to manage another power distribution system. (Making those PIN with limited voltage into simple controllers that tells another circuit how to set the power which is tapped directly from the battery.)
For security, it could be 2 batteries: One set at 5V for the mini-PC and one set to a potentially higher voltage for the circuit. Then, the mini-PC keep sending signal to the circuit that allows the said circuit to set how much power is sent through each muscles power lines.

As a matter of fact and kinda-joke, you could put the Ras-Pi3 in the head, the circuit in the stomach zone and the batteries as a big ball in the heart zone and it would work. You could put an emergency shutdown in the neck and several soft-shut switch in the arms and legs. One being a system that cut the power between the battery(ies) and the 2 other system and the other being just a switch set between the mini-PC and the circuit that, when turned on, switch as value to 0 (release all muscles tension).

The 3 main challenges in these methods are:
1) Setting up the system with the right amount of battery capacity and the right amount of ion concentration in the hydrogel.
In other words, setting up a skeleton frame that works with enough power and movement strength to support its articulation. For this, I suggest that, instead of going with the usual metallic skeleton (like if most Love Doll), fiberglass might be a better alternative. The skeleton then loose about 1/2 if not 3/4 of its weight and only a small amount of durability. It would also allow, in case of big emergency, to cut/break a limb of the doll without a saw.

2) Setting up the software in the mini-PC.
This isn't really a challenge in terms of talents/knowledge. You get pretty much the right amount of information just from a Starter Kit for the Arduino or the Ras-Pi3 (most includes software and example of program that can be used in the same way). The challenge is more about finding the right data in terms and creating the actual "action/reaction" systems. Making a body move isn't hard... making it move with a purpose and specific rules is on hell of a challenge. (That's like making an hand that can move its fingers. That's a 1 week project. Making a hand that is able to notice and pick-up an apple without making it explode... that's a 2-3 months project.)

3) Setting up the doll exterior features to includes the interior features.
If we're talking about having the system in the doll, that's not much of a problem. Just put the mold in a way that allows the skeleton to be in the right place in the doll.
If you're molding a whole body in 1 shot with a giant mold, it's a different process than if you're molding 1 part at a time and, afterward, clean the seams.
The issue comes afterward and it's actually a one thing about current dolls: What about maintenance?
Currently, fixing a doll inner-frame is like a surgery where you try to damage as little of the outer-shell as possible while modifying or changing the inner part.
If you add the complexity and occasional risks involved with robotics in the doll, then it wouldn't be strange to say that a surgery might be needed every month just to check/change some parts. The Mini-PC, if in the head, might be easy to access (back of the head... and bam!), but checking up on the hydrogel or wires in the doll is another matter.

For this, there's something I have though about ever since I have bought my first doll (still waiting for it).
Currently, the dolls are done in a way that, mostly, uses the same material (PTE or Silicone) for everything except the skeleton. This is because it's possible to controls how firms the material becomes and so to adjust each part with a different feeling. (That's how high grade dolls also have the feeling of bones and more "felt" details overall while touching their skin.)

What if we were to think a bit differently and, instead, we used PTE or Silicon only for a tight yet not full shell and, for under that "skin", we used something a bit more ingenuous?
There are quite a few self-healing polymer around.
For example, this one "heals" when exposed to water : https://www.youtube.com/watch?v=gJ_qA80Ztww
https://en.wikipedia.org/wiki/Self-healing_material

While I understand that this is something that might be quite expensive to implement in dolls (hence maybe dolls that are 8K or more), I'm still surprised it's not part of the standard in high-grade dolls. By the way, the video above is the result of reproducing the squid teeth through the use of a synthesized bacteria (meaning... using a molecular printer with data taken from the cell of a squid teeth). Even "just" a polymer that can restructure its link upon heating (called Diels-Alder) would fit right in. Your doll is damaged? Quickly heat the part damaged which will "heal" the inner structure (could be with something like an heated butter knife), then apply a bit of cured PTE or Silicon on the outer-shell (repairing the skin) and voila!
This would allow regular maintenance of the inner parts of the "mechanical" doll to safe and to not leave signs of damages on the outside.

I know that all I did was sound like if it was easy, which is not. In my case, it's more about me understanding the whole thing and thinking "Yup! That can be done." as I could do it myself if I had the time and materials (hence the money to get both). Most of the existing cases I have seen around about dolls/robots usually involves 10-years old technologies. That's usually because it would be a never ending circle "let's redo from the start" which, each time, would cost money. (You work on this mecanical doll for 6 years and then, an easier solution pop-up from the world of science. Either you destroy 4-5 years of work and invest time and money in the new techs or you continue and try to forget about the now-accessible-solution. Rince and repeat every 2-4 years)
So I've been delving heavily into Arduino research for building a doll system. I've been looking at Artificial Neural Networks, soft robotics, high strength servos/actuators, Arduino shields, sensors, capacitive field sensing, and the RaspberryPI. For all that processing that needs to be done/performed, I'm a huge advocate for distributed processing. As you said, there could be one Arduino/PI in the head, and several throughout the body. One controls would analyze all the data coming in from sensors and motor/actuator positions to determine what actions/functions should be executed, while the remainder of the other boards store the functions/actions to be done. It's much simpler, in my mind, to have an Arduino Mini taking the feedback from one hand and executing actions based on the processing from a main board, than to have everything done from one board.

Let me point you in this direction first and foremost, because it adds flexibility and built in muscles to an animated doll.

https://softroboticstoolkit.com/documents

The website gives many examples, how -tos, and demonstrations of creating soft robotics. These examples can be added to existing projects because we can incorporate the soft structure around our metal skeletons. I would replace the air with a fixed amount of fluid, as you can hear the little compressor whirring away in the videos, and some structural elements to the soft actuator to prevent the bulging from having added pressure; that's wasted potential energy that could be redirected to the doll joints. To do all of this, 3D printer and correct materials are all required, which can get extensive

The second site is to a kickstarter project that made it main stream with an all in one 'speech recognition and speech synthesizer ' for the Arduino as a shield!

http://www.audeme.com

What I find most promising, is that once you've trained the vice commands you want, you can then set into motion any reaction; when the doll speaks back the jaw moves, the doll stands up, squats, sits down, spreads legs, etc. and so on. The voice training will be time consuming, and executing commands correctly will take a lot of coding work. With good sensor feedback, you will be giving checks and balances.

There are expansion boards to add additional motors/actuators, sensors and I2C communications so that you can have a large complex system running, with multiple Arduinos communicating together.

For video processing, I'm all about the PixyCam system, as it is an all in one solution and more comprehensive and user friendly than trying to learn OpenCV coding. You can have two PixyCams operating together to give stereo vision, and can detach the camera from the board so you could have them in the eyes. Since training a PixyCam is easy, it would be easy for a doll to 'See' your bed, pillows and you/parts of you, but difficult to the program the doll to execute the correct actions.

Me personally, I'm going to use a RaspberryPI to compute all of that information from the camera and then have it communicate with the other microcontrollers. That's because it's possible to calculate where objects are with relation to the doll. Saying something as simple as 'sit on the bed ' would require the doll to look and find the bed, determine the distance and direction, walk their without falling, turn around and know its in range to sit on the bed, then shuffle herself further into the bed. Then, while waiting for a new action, the doll would have to maintain balance to stay upright. Or if you said 'give me a hand job,' the doll would have to recognize your junk, determine the best position for a hj, get into position and maintain that position, then perform the action with falling over or crushing your junk to death.

For my initial voice commands, I'm going to work on me getting the doll to position herself; 'missionary' and 'doggy' should be simple enough to start, while 'against the wall' would add some challenge.

I have a solid understanding of how I'm going to work all of my components together with sensory inputs, motors/actuators, microcontrollers and construction. I have enough knowledge of the Arduino coding and processing that taking in all the information wouldn't be too challenging. The biggest challenge that will take months of effort will be coding everything and working out all of the bugs. That all equates to time and money, both I don't have enough of! :cry: :cry: plus, it's always way easier said than done.
We are truly in an age of doll expansion. Sure it's the wild west, with each manufacturer trying to out do one another and society still poo-pooing dolls, but eventually, the age will mature, order will be found and one day we can bring out ladies anywhere.

Maecer
Senior Member
Senior Member
Posts: 417
Joined: Mon Aug 06, 2018 1:27 pm
Location: Virginia
Contact:

Re: open source 'humanoid robot' project suggestions needed

Post by Maecer »

I'll be posting this link on the other active robot topics. For your consideration: Poppy. Who meets your post topic pretty closely.

https://www.poppy-project.org/en/

Completely open source. Even the tablet app. I'm thinking that I might start here and build off that project.

Website I found her on:

https://www.intorobotics.com/homemade-o ... -examples/
We are truly in an age of doll expansion. Sure it's the wild west, with each manufacturer trying to out do one another and society still poo-pooing dolls, but eventually, the age will mature, order will be found and one day we can bring out ladies anywhere.

Post Reply

INFORMATIONS