The mouth allows a biomechanical organism to transfer food from a food source into its stomach.
This increases its energy level so that it does not "die" when its energy level
reaches zero. You can add a mouth the same way you do all parts. Select it as the
default body part and select the Add Body button on the
command bar. Then click on the parent part you want to add the mouth onto. You can position the
mouth anywhere you want and it will maintain that location and orientation relative to the parent even as the organism moves in the simulation. In order
to eat the mouth has to be within a user-defined distance of a food source, and it has to be stimulated. You specify the distance using the Minimum Food Radius
property. If the mouth is within that distance it is possible for it to eat the food, but it will still not do so until it is stimulated.
To do this you need
to add a mouth node to a neural network diagram and draw a connection from a neuron onto the mouth node. This will add an adapter between the two nodes.
You need to configure the gain of the adapter to convert membrane voltage or firing frequency into an eating rate. This rate determines how fast food is
transferred from the source to the stomach. If it is 1 then 1 quantity of food will be transferred to the stomach each time step. Typically, you will want this
to be pretty small. If you want it to eat 1 unit of food in 1 second and you had a time step of 1 ms then you should set this value to be 0.001.
If a stomach is present then it will take food from the source at a rate determined by the feeding rate signal and transfer it to the stomach.
The food is stored in the stomach as caloric energy. For each food source you can specify the how many calories one unit of food is worth. When the
mouth eats a unit of food it transfers that many calories into the stomach. This lets you have food sources that have different nutritional values. You can
have a high energy food source, and a different lower energy food source that is more plentiful. Odors could be used to distinguish between them.
The mouth will continue to transfer food over until it is all gone, it is no longer stimulated so the eating rate goes back to zero, or if the mouth
is moved so it is no longer close enough to the food source. If no stomach is present then it will remove food from the source and the food energy will be gone.
See the sections on the Odor Sensor,
Stomach, and Food Sourcesfor more information on this subject.
Default value: Red (255, 0, 0)
Acceptable range: R: 0 - 255, G: 0 - 255, B: 0 - 255;
The name of this body
Default value: If it is the first body in an organism, "root".
Otherwise the name is "body_xx" where xx is the number in which the body was
Minimum Food Radius
The mouth must be within this radius distance away from a food source for it to be able to eat from that source.
Default value: 10 cm
Acceptable range: Any value greater than 0.
The transparency value determines how transparent a body part is. The higher the
transparency value the more transparent a body will be. 1 is fully
transparent and 0 is
Default value: 0 (opaque)
Acceptable range: 0 - 1
Determines if this body is visible within the
simulation. If you set this value to false then this body will still be included
in the simulation and any dynamics related to this object will still be
calculated, but no graphics will be generated for the user. This property does
not effect visibility in the editor. If you wish to make something invisible in
the editor then you will need to use the alpha value described above.
Default value: True
Acceptable values: True, False
The radius of the mouth. This value can be directly entered by the
user or they can use the mouse by clicking on the curved portion of the cylinder
and dragging the mouse to the desired radius.
Default value: 1 cm
Acceptable range: any number greater than zero
This project was supported by: