Skip to main content

BR2 soft-arm assembly simulator

Project description

BR2 Simulator

Documentation Status

Simulator development for BR2 Softrobot using PyElastica.

Configuration

Rod Library

If the rod material property is not specified in Rod class, the default parameter will be used to construct the rod. The fiber can be added on the rod using alpha and beta parameter which takes the list of fiber angles in degrees. It is recommended to use the angle above 60 degrees, because the current actuation actuation model assumes negligible radial displacement and perpendicular cross-section. To simulate the bending, apply gamma angle (in degrees) which is the cosine angle of the direction of bending moment.

{ 
    "Info": "Example rod properties",
    "DefaultParams": {
        "n_elements"     : 41,
        "direction"      : [0.0,1.0,0.0],
        "normal"         : [0.0,0.0,1.0],
        "base_length"    : 0.18,
        "base_radius"    : 0.007522,
        "density"        : 1500,
        "nu"             : 0.089178,
        "youngs_modulus" : 1e7,
        "poisson_ratio"  : 0.5
    },
    "Rods": {
        "SampleRod": {
            "Info": "Simple",
            "alpha"          : [60],
            "beta"          : [60],
            "gamma"          : [120],
            "youngs_modulus" : 1e7,
            "base_length"    : 0.20
        }
    }
}

Assembly Configuration

Segments class defines the structure of each segment, and each segment will be serially connected to the tip of the previous segment. Activations can be defined jointly for multiple rod, which resembles shared actuation pressure. The position is defined in z-x coordinate which locates the base of the rod.

{ 
    "CaseID": 1,
    "Date": "2021-10-11",
    "Info": "Single-segment BR2 Assembly",
    "Segments": {
        "seg1": {
            "rod_order": ["RodBend", "RodRightTwist", "RodLeftTwist"],
            "base_position": [
                [0.0, 0.0],
                [0.015044, 0.0],
                [0.007522, 0.0130285]
            ]
        }
    },
    "Activations": {
        "action1": [
            ["seg1", "RodBend"]
        ],
        "action2": [
            ["seg1", "RodRightTwist"]
        ],
        "action3": [
            ["seg1", "RodLeftTwist"]
        ]
    },
    "Misc": {
        "Gravity": "Off"
    }
}

Procedures

Surface Connection Test

  • run_testcases_surface_connection.py
    • set_environment_testcases.py
    • surface_connection_parallel_rod_numba.py
    • custom_activation.py
    • custom_constraint.py

The script is testing parallel surface connection with various arm constructions. This procedure includes customized activation and constraint implementation. The surface connection implementation is used throughout the other procedures. Different test cases are available, and they will be running using multiprocessing.

Single FREE Characterization

  • run_FREE_bending.py
    • set_environment_single.py
      • free_simulator.py
      • free_actuation.py
  • run_FREE_twist.py
    • set_environment_single.py
      • free_simulator.py
      • free_actuation.py
  • plot_bending_characterization.py
  • plot_twist_characterization.py

This scripts simulate single-rod with increasing activation. The result is used to characterize single FREE actuation.

Simple BR2

  • run_br2.py
    • set_environment_br2.py
      • free_simulator.py
      • free_actuation.py
  • run_br2_batch.py
    • set_environment_br2.py
      • free_simulator.py
      • free_actuation.py

Interactive BR2

work in progress

  • run_br2_interactive.py

Interactive simulation module.

Miscellaneous

  • skeleton.py

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

br2-0.0.1.tar.gz (48.0 kB view hashes)

Uploaded Source

Built Distribution

br2-0.0.1-py2.py3-none-any.whl (60.5 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page