molecubes morphology file spec

Upload: plisd

Post on 03-Apr-2018

212 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/28/2019 Molecubes Morphology File Spec

    1/5

    Molecube Morphology File (*.mmf) Specification

    Date Revision Description Engineer

    28-Mar-2008 1

    Initial official revision, file structure

    implemented and functioning to this spec. Phelps Williams

  • 7/28/2019 Molecubes Morphology File Spec

    2/5

    Overall Molecube Morphology File Structure

    Item Range Contents

    cubecount 0 - 255 Number of cubes in the morphology, this corresponds ot the number

    cubes[] Array of module descriptorsmorphology checksum 0 - 255

    statecount 0 - 2^32 Number of state descriptors in the state array

    state[] Array of state descriptors

    state checksum 0 - 255

    List of Modules is an array listing all Module Descriptors - by the number of Molecube modules comprisin

    Module Descriptor is a simple feature list that includes the following items

    Item Range Contents

    ID 0 - 253 individual Molecube module identifier, address 0xFE is reserved for b

    Class 0 - 255 Molecube class identifier, such as AX-12 servo, South actuator half, N

    NumLinks 0 - 255 Number of physical connections this module has in Molecube assem

    Links[ ] Array of Link Descriptors - structures with physical connection specif

    List Array stores all physical connections existing between modules in the Molecube assembly

    Link Descriptor is a simple feature list including two sets of items, describing both joint Molecube connect

    Item Range Contents

    selfID 0 - 253 individual Molecube module identifier of the first joint module

    selfClass 0 - 255 Molecube class identifier of the first joint module

    selfSide 0 - n The joint interface identifier for the first joint module (see Module C

    selfOrient 0 - 3 Orientation of the first module relative to the second (see Orientatio

    neighborID 0 - 253 individual Molecube module identifier of the second joint module

    neighborClass 0 - 255 Molecube class identifier of the second joint module

    neighborSide 0 - n The joint side identifier for the second joint module

    Orientation Convention

    There are four possible relative orientations of the Molecube interfaces relative

    Each of these four orientations can be characterized by one of four pin intercon

    Orientation 0 Orientation 1 Orientatio

  • 7/28/2019 Molecubes Morphology File Spec

    3/5

    Face A Face B Face A Face B Face A

    Pin 0 Pin 3 Pin 0 Pin 2 Pin 0

    Pin 1 Pin 2 Pin 1 Pin 1 Pin 1

    Pin 2 Pin 1 Pin 2 Pin 0 Pin 2

    Pin 3 Pin 0 Pin 3 Pin 3 Pin 3

    Module Connector Identification Conventions

    Face ID Actuator Gripper Controller

    0 South Main Main Triplet Main

    1 South Right Right Triplet Right

    2 South Left Left Triplet Left

    3 North Main Duet Main

    4 North Right

    5 North Left Duet Left

    State Descriptor - a state descriptor maintains some representation of physical or logical state at a point in

    Item Range Contents

    id 0 - 255 Molecube address

    class 0 - 255 Molecube class

    timestamp 0 - 2^32 Time of state validity

    channel 0 - 255 Telemetry Channel represented

    value 0 - 2^32 Telemetry Channel value

    Telemetry Channel Definitions - reference to cube specific channels of telemetry

    Class Channel Description

    0xFA South Actuator Half

    0x00 Actuator position in 10ths of degrees

    0xF8 Gripper

    0x00 Gripper position

  • 7/28/2019 Molecubes Morphology File Spec

    4/5

    of module descriptors

    the assembly

    roadcasting

    orth actuator half, etc.

    ly

    ications - size of array specified by NumLinks

    rs and their relative orientation

    nnector Identification Conventions below)

    n Convention below)

    to each other when joint together

    ection variants below

    2 Orientation 3

  • 7/28/2019 Molecubes Morphology File Spec

    5/5

    Face B Face A Face B

    Pin 1 Pin 0 Pin 0

    Pin 0 Pin 1 Pin 3

    Pin 3 Pin 2 Pin 2

    Pin 2 Pin 3 Pin 1

    Battery

    Triplet Main Masters

    Triplet Right

    Triplet Left

    Duet Main Slaves

    Duet Right

    time