benikigai/plus-onePublic

Plus One

madecell-balanced.json · 5.3 KB · commit #5 · Nov 2, 2026

SHA-256 0eed6bb1bb176e2c13a209ae99de978da7aeb26874b1c98ce25b59dcdcc2c823

{
 "schema": "factory-n1/layout/v1",
 "revision": 1,
 "selection": {
  "status": "proposal",
  "date": "2026-11-01"
 },
 "geometry_evidence": "ASSUMPTION",
 "calibration_status": "uncalibrated",
 "workstations": "manual",
 "units": {
  "length": "m",
  "angle": "rad"
 },
 "frame": {
  "handedness": "right",
  "up_axis": "Z",
  "origin": "floor corner at minimum X and Y",
  "flow_axis": "+X",
  "station_pose_anchor": "footprint centre at floor level",
  "quaternion_order": "xyzw"
 },
 "station_geometry_defaults": {
  "footprint_m": [
   1.2,
   0.75
  ],
  "work_surface_height_m": 0.9
 },
 "id": "plus-one-madecell-balanced",
 "label": "Plus One on a MadeCell base, balanced to 10,000 a month (concept)",
 "title": "Plus One · MadeCell, balanced",
 "room": {
  "size_m": [
   21.6,
   6.4384,
   3.0
  ]
 },
 "footprint_m": [
  20.2,
  4.44
 ],
 "stations": [
  {
   "station_id": "W1",
   "position_m": [
    4.346,
    3.8942,
    0.0
   ],
   "orientation_xyzw": [
    0.0,
    0.0,
    1.0,
    0.0
   ],
   "label": "Top shell and board"
  },
  {
   "station_id": "W2",
   "position_m": [
    6.846,
    3.8942,
    0.0
   ],
   "orientation_xyzw": [
    0.0,
    0.0,
    1.0,
    0.0
   ],
   "label": "Screws, speaker, haptic"
  },
  {
   "station_id": "W3",
   "position_m": [
    9.346,
    3.8942,
    0.0
   ],
   "orientation_xyzw": [
    0.0,
    0.0,
    1.0,
    0.0
   ],
   "label": "Battery and base",
   "copies": [
    {
     "position_m": [
      9.346,
      2.5442,
      0.0
     ],
     "orientation_xyzw": [
      0.0,
      0.0,
      0.0,
      1.0
     ]
    }
   ]
  },
  {
   "station_id": "W4",
   "position_m": [
    11.846,
    3.8942,
    0.0
   ],
   "orientation_xyzw": [
    0.0,
    0.0,
    1.0,
    0.0
   ],
   "label": "Flash + calibrate",
   "copies": [
    {
     "position_m": [
      11.846,
      2.5442,
      0.0
     ],
     "orientation_xyzw": [
      0.0,
      0.0,
      0.0,
      1.0
     ]
    }
   ]
  },
  {
   "station_id": "T",
   "position_m": [
    15.05,
    3.8942,
    0.0
   ],
   "orientation_xyzw": [
    0.0,
    0.0,
    1.0,
    0.0
   ],
   "label": "Test cell",
   "copies": [
    {
     "position_m": [
      16.35,
      3.8942,
      0.0
     ],
     "orientation_xyzw": [
      0.0,
      0.0,
      1.0,
      0.0
     ]
    },
    {
     "position_m": [
      17.65,
      3.8942,
      0.0
     ],
     "orientation_xyzw": [
      0.0,
      0.0,
      1.0,
      0.0
     ]
    }
   ]
  }
 ],
 "base": {
  "origin_m": [
   2.0,
   2.0
  ],
  "size_m": [
   12.192,
   2.4384
  ],
  "shell_height_m": 2.896,
  "operator_strip_m": 1.0,
  "bay_pitch_m": 2.5,
  "bay_centres_x_m": [
   4.346,
   6.846,
   9.346,
   11.846
  ]
 },
 "conveyor": {
  "type": "straight",
  "centreline_y_m": 3.2192,
  "from_x_m": 2.0,
  "to_x_m": 18.4,
  "width_m": 0.6
 },
 "test_cell": {
  "x_m": [
   14.45,
   18.3
  ],
  "fixtures": 3,
  "operator_side": "A"
 },
 "restock": {
  "type": "overhead_rail",
  "z_m": 2.25,
  "from_x_m": 0.8,
  "to_x_m": 12.6,
  "y_m": 3.2192
 },
 "crews": [
  {
   "id": "w1",
   "count": 1,
   "stations": [
    "W1"
   ]
  },
  {
   "id": "w2",
   "count": 1,
   "stations": [
    "W2"
   ]
  },
  {
   "id": "w3",
   "count": 2,
   "stations": [
    "W3"
   ]
  },
  {
   "id": "w4",
   "count": 2,
   "stations": [
    "W4"
   ]
  },
  {
   "id": "test",
   "count": 1,
   "stations": [
    "T"
   ]
  }
 ],
 "behavior_binding": {
  "station_key": "station_id",
  "route_source": "active product sequence",
  "station_definition_source": "resolved product station library",
  "timing_and_outcome_source": "recorded engine events and results",
  "inactive_station_policy": "retain footprint; show inactive; no unit visits"
 },
 "transport": {
  "duration_source": "engine",
  "layout_time_model": "not-calibrated"
 },
 "notes": [
  "Concept layout for the 10,000-a-month scenario (studies/plus_one_demand.yaml) on the MadeCell base of the madecell layout (prototype brief v0.1 planning dimensions: not engineered, not a fit check, not compliance). Every new position is an ASSUMPTION.",
  "One workstation per bay on side A; bays 3 and 4 also hold a second copy of the same workstation on side B. No bay pairs two consecutive steps, so the shared transfer point never hands a unit from one station to the next.",
  "The test cell is past the output end on the host floor: the conveyor runs on 4.2 m to 18.4 m as the buffer in front of three test fixtures, with one operator on side A tending them.",
  "Restocking: an overhead rail at 2.25 m above the conveyor runs from INPUT to bay 4; a material handler loads bin trolleys at the kitted-parts zone at INPUT, pushes them along above the conveyor and lowers full bins down a chute to each bench's bin rail, taking the empties back. Nobody restocks across an operator strip.",
  "\"copies\" are the same workstation's parallel fixtures (line_stations.<W>.parallel in the study); the viewer draws a bench at each.",
  "Work in process lives only on pallets; a failed unit stays on its pallet, flagged red, and rides to the HOLD lane at the output end (display only).",
  "footprint_m spans the parts zone at INPUT to the AGV zone past the test cell, operator strips included.",
  "\"crews\" repeats the study's crews (studies/plus_one_demand.yaml) for the viewer, which draws only that many operators at the benches they are working; tests/test_demand_layouts.py keeps the two the same."
 ]
}