Biomimesis y movimiento

De Casiopea



TítuloBiomimesis y movimiento
Tipo de ProyectoProyecto de Titulación
Palabras Clavebiomimesis, movimiento
Período2019-2019
CarrerasDiseño, Diseño Industrial"Diseño Industrial" is not in the list (Arquitectura, Diseño, Magíster, Otra) of allowed values for the "Carreras Relacionadas" property.
Alumno(s)César Sánchez
ProfesorJuan Carlos Jeldes

La investigación surge a partir de la relación de las nuevas tecnologías y su aproximación a la mimesis del movimiento y su aplicaciones rizomáticas en las nuevas formas del diseño. Durante un tiempo el diseño ha integrado el movimiento como un resultado final de la unión de dos sistemas que coexisten dentro del mismo objeto, en el cual la fuente del movimiento es lejana al resultado que este sistema le otorga al objeto, por lo cual la fuente de movimiento pasa por una serie de transformaciones hasta que en el final de su cadena se manifiesta su uso real. en el contexto del Antropoceno y el surgimiento de políticas de desarrollo sostenible y eficiencia tecnológica, es necesario que la forma en la que se integra el movimiento en el diseño sea construida de manera más eficiente.

movimiento del caballo
anatomia comparada de animales, prueba la efectividad de las formas en el movimiento

Movimiento del Pulpo

El naturalista, biólogo y matemático escocés D’Arcy Thompson (1860-1948) publicó en 1917 el libro “Sobre el crecimiento y la forma”. En él planteó que las formas de los seres vivos y de algunos fenómenos se deben a aspectos físicos de los procesos biológicos: las fuerzas que intervienen en ellos y las propiedades físicas de la materia en cuestión. Según la teoría de Thompson, las fuerzas físicas son las que forman directamente a los organismos, y los ideales de la geometría euclidiana predominan en las formas naturales, simplemente porque las “leyes naturales” favorecen la simplicidad como una óptima representación de esas fuerzas. Las formas ideales de la geometría ofrecen soluciones eficaces a problemas morfológicos el movimiento en la naturaleza está ligada a sus formas y más allá del por que de la función se investigara cómo es que la naturaleza optimiza el movimiento.


esquema de sistema de reconocimiento del pulpo de su propio tentaculo.

L-System

En 1968 por el biólogo y botánico teórico húngaro Aristid Lindenmayer introdujo el L system un sistema de gramática formal  que modela la morfología del crecimiento de las plantas y de una variedad de organismos.

Los sistemas L paramétricos son definidos como un conjunto G = {V, S, ω, P}, donde V (el alfabeto) es un conjunto de símbolos que contiene elementos que pueden ser reemplazados (variables) S es un conjunto de símbolos que contiene elementos que se mantiene fijos (constantes) ω es una cadena de símbolos de V que definen el estado inicial del sistema (inicio o axioma) P es un conjunto de reglas o producciones que definen la forma en la que las variables pueden ser reemplazadas por combinaciones de constantes y otras variables. Una producción está formada por dos cadenas — el predecesor y el sucesor. Las reglas gramaticales de los sistemas-L se aplican iterativamente a partir de un estado inicial-


Codigo usado en Taller de Fractales


import processing.pdf.*;

String default_rule = "FF[+F]F[-F]";
int    default_iterations = 6;
float  default_angle = PI / 10;
float  default_angle_chaos = 0;
float  default_extension = 10;
float  default_extension_chaos = 0;
int     default_y_offset = 400;
boolean default_draw_tips = true;
String  default_filename = "iterations-7.pdf";
LSystem system;
class LSystem
{
  String axiom,
         string;
  String [] rules;
  String rule;
  float [] state;
  float [][] state_stack;
  int stack_size = 0;
  int pos = 0;
  color col;
 
  float angle = default_angle;
  float angle_chaos = default_angle_chaos;
  float extension = default_extension;
  float extension_chaos = default_extension_chaos;
 
  LSystem ()
  {
    axiom = "F";
    string = "F";
    state = new float[3];
    state[0] = 0;
    state[1] = 0;
    state[2] = 0;
    col = color(0, 0, 0);
    rule = default_rule;
    state_stack = new float[4096][3];
  }
 
  void iterate ()
  {
    this.iterate(1);
  }
 
  void iterate (int count)
  {
    for (int i = 0; i < count; i++)
    {
      String string_next = "";
      
      for (int j = 0; j < string.length(); j++)
      {
        char c = string.charAt(j);
        if (c == 'F')
        {
          string_next = string_next + rule;
        } else {
          string_next = string_next + c;
        }
      }
      string = string_next;
    }
  }

 
  void draw()
  {
      beginRecord(PDF, default_filename);
      translate(100, default_y_offset);
      rotate(1.5 * PI);
      strokeWeight(0.5);
      for (int i = 0; i < string.length(); i++)
      {
        this.drawSegment();
      }
      
      endRecord();
  }
 
  void drawSegment ()
  {
    if (pos >= string.length())
       { return; }
    
    char c = string.charAt(pos);
    switch (c)
    {
          case 'F':
            float ext_this = extension + random(-1.0 * extension * extension_chaos, extension * extension_chaos);
            float x_delta = ext_this * sin(state[2]);
            float y_delta = ext_this * cos(state[2]);
            stroke(col);
            strokeWeight(0.5);
            // stroke(random(255), random(255), random(255), 230);
            line(state[0], state[1], state[0] + x_delta, state[1] + y_delta);
            state[0] += x_delta;
            state[1] += y_delta;
            
            if (default_draw_tips)
            {
                strokeWeight(0.5);
                line(state[0], state[1], state[0] + 0.1, state[1] + 0.1);
            }
            break;
          case '-':
            state[2] -= (angle + random(-1 * angle * angle_chaos, angle * angle_chaos));
            break;
          case '+':
            state[2] += (angle + random(-1 * angle * angle_chaos, angle * angle_chaos));
            break;
          case '[':
            arraycopy(state, state_stack[stack_size++]);
            break;
          case ']':
            arraycopy(state_stack[--stack_size], state);
            break;
    }
    
    pos++;
  }
}
void setup ()
{
  int iterations = default_iterations;
  size(1300, 900);
  background(250);
  frameRate(50);
  smooth();
  system = new LSystem();
  system.iterate
 (iterations);
  system.draw();
}
void _draw ()
{
  // To draw segment by segment, rename this routine to draw()
  // and remove system.draw() from setup().
  translate(100, default_y_offset);
  rotate(1.5 * PI);
  system.draw();
  for (int i = 0; i < random(10, 50); i++)
  {
    system.drawSegment();
  }
}

import processing.pdf.*;

String default_rule = "F[-F][+F] ";
int  default_iterations = 1;
float  default_angle = PI / 12;
float  default_angle_chaos = 0;
float  default_extension = 50;
float  default_extension_chaos = 0;
int   default_y_offset = 400;
boolean default_draw_tips = true;
String  default_filename = "iterations-7.pdf";
LSystem system;
class LSystem
{

Movimientos Animales

Las articulaciones animales poseen un material duro y uno flexible, el duro otorgara la resistencia de la articulación y la base sobre la cual tejerán los músculos y tejidos flexibles, los músculos tienen su propia deformación programada y los huesos tienen sus propios límites. los impulsos nerviosos mandarán para contraer o relajar los músculos y generar los movimientos

Movimientos Pulpo

Científicos analizaron el movimiento de los pulpos y descubrieron que estos no siguen un patrón rítmico, sino que usan cada pata de manera independiente, extienden cada pata de un lado del cuerpo para impulsarse hacia el lado contrario, y si no siguen un patrón un rítmico, ¿como es que una pata no se pega con la otra?, pues el pulpo posee en la superficie de sus tentáculos un químico que desactiva las ventosas, cuando estas se encuentran entre si.

Soft Robots

Una nueva ola de robots basados en diseños biológicos, son capaces de realizar tareas que no están al alcance de las extremidades rígidas de los robots tradicionales, Esta robótica blanda nace para suplir las carencias de los robots rígidos o tradicionales que se mueven gracias a articulaciones y extremidades, siguiendo una serie de instrucciones muy concretas.

La robótica blanda es nueva generación de robots, que tendrán formas tan dispares como los seres vivos, dichos robots no solo están fabricados con materiales altamente deformables y flexibles, sino también poseen muchas estructuras biológicas, que funcionan gracias a un sistema de microcanales construidos aplicando la técnica de litografía blanda.

Soft robot caminante

camina y se arrastra por obstaculos, mediante las coredenadas que emite un sensor de presion ubicado al interior el cual configura su ritmo de caminar, cuando se arrasta la señal proviene del exterior

  • Descripción:

actuador: cuerpo de silicona sensor: sensor propioceptivo al interior fuente de energia: presion neumatica

Robot caminante.jpeg


Actuadores Controladores Sensores
base de espuma circuitos electroneumaticos Egaln
impresos en 3d placas controladoras Sensor Hibrido tela Silicona
tubos con deformación programada Sensor deformación Neumatica
laminas de papel selladas al vacio Tactip
elastomeros dialectricos Redes de Fibras Conductoras
Sensor Propioceptivo
Takktile

Soft Robots Esquemas Sistemáticos

Comparacion sistemas.JPG
Esquemas softrobot.JPG


Codigo:

#include “Servo.h” 
const int trigPin = 3; 
const int echoPin = 4; 
long duration; int distance; 
int safetyDistance; 
Servo myservo; 
int pos = 0; 
void setup() { 
pinMode(trigPin, OUTPUT); 
pinMode(echoPin, INPUT); 
myservo.attach(10); 
Serial.begin(9600); } 
void loop() { 
digitalWrite(trigPin, LOW); 
delayMicroseconds(50); 
digitalWrite(trigPin, HIGH); 
delayMicroseconds(20); 
digitalWrite(trigPin, LOW); 
duration = pulseIn(echoPin, HIGH); 
distance= duration*0.034/2; 
safetyDistance = distance; 
if (safetyDistance <=66){ 
myservo.write(40); 
delay(15);  } 
else{ 
myservo.write(0);  
delay(15); } 
Serial.print(“Distance: “);
Serial.println(distance); 
} 
}


Componenetes de Sistema electrónicos

Actuadores Contraladores Sensores Ejemplos
Diodo led Interruptor Touch color sensor Visión ultravioleta (Abejas)
LCD dysplay Joystick XY sensor fotoeléctrico
DC motor Arduino (uno, nano, mega...) sensor de reflexión
Servo motor micrófono con sensor de sonido
step motor sensor de golpe
bomba de agua sensor de rastreo
selenoide sensor de llama
actuador linear sensor detector de gas
bomba de aire sensor de distancia ultrasonido Sonar (Murciélago)
sensor receptor infrarrojo
camara
sensor de voltaje
sensor de inclinacion
acelerometro tres ejes Pelos hipersensibles (Escorpión)
sensor magnético Hall Magnetorecepción (Paloma)


Untitled Sketch esquemático.png

Prototipo

Bichio1.png
Bichio2.png