Add TRO identification for the Mubea seat-cover store (500573)
Works out which TROs the control system will need for drawing 500573_60_1, derived from the mechanical DXF and matched against the TRO catalog, plus the annotated figures it refers to. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,174 @@
|
||||
# Identifying the Control Units (TROs) from a Mechanical Layout
|
||||
### Mubea seat-cover store — Schönenberger drawing `500573_60_1`
|
||||
|
||||
**Author:** Automation Engineering · **As of:** 2026-07-28 · **Source:** `500573_60_1.dxf` (23.8 MB)
|
||||
|
||||
---
|
||||
|
||||
## 0. For readers outside our team — what this document is
|
||||
|
||||
Schönenberger builds the **material-flow control software** (Siemens TIA Portal / SCL) that
|
||||
runs conveyor systems. A lot of that PLC code is repetitive: the same control block appears
|
||||
once per functional point on the conveyor, differing only in its parameters. We are building
|
||||
a tool that **generates that repetitive code automatically** from the plant layout.
|
||||
|
||||
The unit of that code is a **TRO — "Transfer Route Object"**: the control logic for **one
|
||||
hand-over point** on the conveyor. A TRO is, for example, *one* stopper, *one* switch, *one*
|
||||
storage block, or *one* driven conveyor segment. A plant is described as a set of connected
|
||||
TROs.
|
||||
|
||||
**This document is the first step for a new plant:** we take the *mechanical* CAD drawing of
|
||||
the Mubea seat-cover store and work out **which TROs the control system will need, and why** —
|
||||
before any code is written. It is an engineering proposal, not yet a verified list (see §6).
|
||||
|
||||
> **Key limitation, stated up front:** this DXF is a **mechanical / steel-construction
|
||||
> drawing**. It contains **no TRO numbers and no electrical signal tags** — those live in the
|
||||
> electrical documentation, not here. Every TRO below is therefore **inferred** from the
|
||||
> physical equipment we can see (drives, a switch, separators, scanners, gravity lanes) and
|
||||
> matched to our standard type catalogue in
|
||||
> [../TRO_Katalog/TRO_Katalog.md](../TRO_Katalog/TRO_Katalog.md).
|
||||
|
||||
---
|
||||
|
||||
## 1. The plant in plain language
|
||||
|
||||
| | |
|
||||
|---|---|
|
||||
| **Customer / project** | Mubea — 500573 "Sitzbezügelager" (seat-cover store), Wendlingen |
|
||||
| **Conveyor system** | Schönenberger **TX200** overhead hanger conveyor |
|
||||
| **What moves** | **Bügelträger** — hanger carriers that carry seat covers (*Sitzpolster* = cushion, *Lehne* = backrest) |
|
||||
| **What the plant does** | Empty hanger carriers are **loaded** with covers, **circulate** on a powered track, are **stored** when empty in a large **gravity buffer**, pass a **quality-control** point, and can take an **express** route |
|
||||
|
||||
**Indicative material flow** (components are certain; exact routing is to be confirmed):
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
classDef store fill:#d4f0d4,stroke:#338833,color:#111
|
||||
classDef swi fill:#ffe4a0,stroke:#cc8800,color:#111
|
||||
classDef sep fill:#d4e8ff,stroke:#3388cc,color:#111
|
||||
classDef vario fill:#e8d4f0,stroke:#883388,color:#111
|
||||
|
||||
AUF["Aufgabestation<br/>load covers onto hangers"]:::sep
|
||||
V["Powered track<br/>(TX200 friction drive)"]:::vario
|
||||
W["Weiche W.12000.1<br/>diverter"]:::swi
|
||||
QC["Qualitätskontrolle<br/>inspection stop"]:::sep
|
||||
EXP["Express route"]:::sep
|
||||
STORE["PinStore — gravity buffer<br/>~20 gravity lines · 1 separator per line"]:::store
|
||||
|
||||
AUF --> V --> W
|
||||
W -->|standard| QC
|
||||
W -->|express| EXP
|
||||
QC --> STORE
|
||||
STORE -->|release empties| AUF
|
||||
```
|
||||
|
||||

|
||||
|
||||
---
|
||||
|
||||
## 2. How we read the drawing (method & evidence)
|
||||
|
||||
Parsed with the `ezdxf` library. A full-text scan confirmed there are **no `TRO…` labels and
|
||||
no `BG/MA/MB/BX…` electrical tags**. Identification therefore relies on four things a
|
||||
mechanical drawing *does* contain:
|
||||
|
||||
1. **Named component blocks** — the mechanical part library (`S-SP` separator, `SCAN`, …).
|
||||
2. **Equipment serials** carried as block attributes — `M.12000` (drive motor),
|
||||
`W.12000.1` (switch), motor spec `TX200FD · WF20 · 0.37 kW · pitch 127`.
|
||||
3. **Layer names** (German construction codes) — decisive for the gravity finding:
|
||||
- `ABH-GEF-DRT` — *Abhängung **Gefälle** DRT* → **gravity (sloped) track** ✔ the store lines
|
||||
- `TX200FD` — *Friction Drive* → the **powered** circulation track
|
||||
- `5SEP-SP` — *Separator/Sperre*, `ZZSCANNER` — scanners, `3-BO-90/180` — curves
|
||||
4. **Station labels** (text) — `Aufgabestation`, `Qualitätskontrolle`, `Express`,
|
||||
`leere Bügelträger Rückführung`.
|
||||
|
||||
### Equipment actually present (main plan, duplicate detail removed)
|
||||
|
||||
| Element (block / tag) | What it is | Count | Powered? |
|
||||
|---|---|---:|---|
|
||||
| `M.12000` friction drives (`TX200-41019-D`) | motorised track segments | ~7 | powered (`TX200FD`) |
|
||||
| `W.12000.1` switch (`TX200-41302-D`) | one diverter / Weiche | 1 | powered |
|
||||
| `S-SP` separators (`5SEP-SP`) | one stopper per storage line | ~22 | on **gravity** lines |
|
||||
| storage lanes (`ABH-GEF-DRT`) | gravity accumulation lines | ~20 | **gravity** |
|
||||
| `SCAN` (`ZZSCANNER`) | barcode read points | 8 | — |
|
||||
| `3-BO-90/180`, curves | passive track bends (not TROs) | many | — |
|
||||
|
||||
---
|
||||
|
||||
## 3. What changed vs. the first draft (corrections)
|
||||
|
||||
Three domain corrections from review, now applied:
|
||||
|
||||
1. **The big multi-lane block is the PinStore**, not an "empty-carrier buffer". It is the
|
||||
single storage block that holds **all** the lines. → type **`PinStore_Auto`**.
|
||||
2. **The storage lines are gravity lines** (layer `ABH-GEF-DRT`, *Gefälle*), not driven —
|
||||
carriers roll down each lane and are held by the line separator. This is now the defining
|
||||
evidence for the PinStore.
|
||||
3. **There is no `Vario_workStation`.** The `Aufgabestation` and `Qualitätskontrolle` are
|
||||
stop points on the track, not driven manual-station modules. They are modelled as simple
|
||||
separators (`1Sep`).
|
||||
|
||||
---
|
||||
|
||||
## 4. Identified TROs
|
||||
|
||||
Types refer to [../TRO_Katalog/TRO_Katalog.md](../TRO_Katalog/TRO_Katalog.md). IDs are
|
||||
provisional — the plant has no control numbering yet.
|
||||
|
||||
| TRO (provisional) | Type | Why we chose this type | Confidence |
|
||||
|---|---|---|---|
|
||||
| **Store** — *leere Bügelträger Rückführung* | **`PinStore_Auto`** | One storage block holding **all ~20 lines**; each line is a **gravity** lane (`ABH-GEF-DRT`) with its own `S-SP` separator that releases carriers one at a time — the defining pattern of a pin/line store | **Very high** |
|
||||
| **Weiche `W.12000.1`** | **`1Sep1Swi`** | The single diverter in the plant (serial `W.12000.1`): one entry, two exits (standard vs. Express) | **High** |
|
||||
| **Transport segments** ×~5–7 | **`Vario`** | Each `M.12000` friction-drive motor (`TX200FD`, 0.37 kW) powers one section of the circulation track — a driven conveyor segment | High (type) / Medium (count) |
|
||||
| **Read stop(s)** at scanners | **`1Sep_SSCC`** / `1Sep`+scanner | Where a `SCAN` sits at a stopper, the carrier is halted and its barcode read before release | Medium |
|
||||
| **Aufgabestation** (loading) | **`1Sep`** | A stop where an operator loads covers, then releases the carrier — a plain separator, **not** a driven work-station module | Medium |
|
||||
| **Qualitätskontrolle** (inspection) | **`1Sep`** | A stop point for manual inspection on the powered track | Medium |
|
||||
| **Express branch** | **`1Sep`** | The stopper feeding the switch's express exit | Low–Medium |
|
||||
|
||||
**PinStore — the heart of the plant** (gravity lines, one `S-SP` separator each):
|
||||
|
||||

|
||||
|
||||
**Aufgabestation / loading zone** (drives + scanner feeding the store's track):
|
||||
|
||||

|
||||
|
||||
**Annotated overview** of the whole plan:
|
||||
|
||||

|
||||
|
||||
---
|
||||
|
||||
## 5. Glossary (German ↔ meaning)
|
||||
|
||||
| Term | Meaning |
|
||||
|---|---|
|
||||
| **TRO** | *Transfer Route Object* — our control block for one hand-over point |
|
||||
| **Bügelträger** | hanger carrier (holds the seat covers) |
|
||||
| **Aufgabestation** | loading / infeed station |
|
||||
| **Qualitätskontrolle** | quality control |
|
||||
| **Weiche** | switch / diverter (two-way) |
|
||||
| **Vereinzeler / Sperre** (`S-SP`) | separator / stopper — releases one carrier at a time |
|
||||
| **Gefälle** (`ABH-GEF`) | gravity slope — the lines the carriers roll down |
|
||||
| **PinStore** | multi-line gravity accumulation store |
|
||||
| **Vario** | driven (friction/chain) conveyor segment |
|
||||
| **TX200** | Schönenberger overhead-conveyor product line (`FD` = friction drive) |
|
||||
|
||||
---
|
||||
|
||||
## 6. Assumptions & next steps
|
||||
|
||||
- **Certain:** the plant is built around **one gravity PinStore** and **one switch**, served
|
||||
by a **friction-driven** TX200 loop with barcode scanners. The *component types* are solid.
|
||||
- **Approximate:** the **number and boundaries of the `Vario` segments** and the **exact
|
||||
routing** are read from geometry and need confirmation.
|
||||
- **A detail sub-region is drawn twice** (shifted ~55.7 m in X, same serials `M.12000` /
|
||||
`W.12000.1`) — counted once here.
|
||||
- **To turn this into a verified TRO list** we need the same inputs as a normal project:
|
||||
the **electrical I/O list** (for the sensor/motor tags per unit) and, once it exists, the
|
||||
**`FB_Main`** call sites (for TRO numbering, direction logic and jam areas) — the workflow
|
||||
described in [../HundM/EA-Listen-Analyse.md](../HundM/EA-Listen-Analyse.md) and
|
||||
[../HundM/Json_Layout-Konzept.md](../HundM/Json_Layout-Konzept.md).
|
||||
|
||||
*Figures generated from `500573_60_1.dxf` with `ezdxf`; markers overlaid on the block-insert
|
||||
coordinates.*
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 44 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 68 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 40 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 82 KiB |
Reference in New Issue
Block a user