GUI Manual · Chapter 30

Cylinder Editor

Cylinder Editor is the editor for defining the machine's pneumatic cylinders. For each cylinder you set a name and a motion type, and map the extend/retract solenoid outputs and the arrival sensor inputs to IO signals, managing it all in a single row. The entry path is Project → Cylinder Editor (Ctrl+Shift+2).

The screen consists of a cylinder list DataGrid and a SAVE button at the bottom. Each row in the grid is a single cylinder, and the solenoid/sensor mappings defined here are reflected into the runtime at build time for use in scripts and test screens.

Main columns

Each row is a single cylinder. The basic information columns are as follows.

ColumnDescription
NameThe cylinder name. Referenced from scripts as CYL["name"].
EnableA checkbox specifying whether the cylinder is in use.
DescriptionA description of the cylinder's purpose.
TypeThe CylinderType Enum selection column specifying the motion method.
GroupNameThe name of the group the cylinder belongs to, used by the group tabs on the test screen.
SubModelThe sub-model identifier used when branching by model.

Timing and error columns

These columns are used for motion monitoring and error handling. If the arrival sensor does not engage within the specified time after the solenoid acts, it is treated as a timeout.

ColumnDescription
TimeOutA · TimeOutBCompletion-monitoring timeout for the A motion and B motion.
DelayA · DelayBDelay applied after the A motion and B motion.
ErrorCodeA · ErrorCodeBThe error code raised when the A motion or B motion fails.

Solenoid and sensor mapping

These columns connect the cylinder's outputs (solenoids) and inputs (arrival sensors) to IO signals. The A series corresponds to motion in one direction and the B series to the opposite direction, with up to four channels available per direction. Mapped cells are shown with a background color according to their input/output type (IoToBrush color), so the wiring state can be checked at a glance.

Column groupDescription
SolIndexA1SolIndexA4Solenoid output mapping for the A-direction motion (output IO).
SolIndexB1SolIndexB4Solenoid output mapping for the B-direction motion (output IO).
SensorIndexA1SensorIndexA4Arrival sensor input mapping for the A direction (input IO).
SensorIndexB1SensorIndexB4Arrival sensor input mapping for the B direction (input IO).

The values entered here point to IO signals defined in IO Editor. Use Change IO ID to Name from the context menu to switch from ID notation to name notation for better readability.

Row editing

Right-clicking in the grid opens a context menu for row editing. It includes adding, duplicating, moving, and deleting rows, along with items that assist with IO mapping.

Menu itemAction
Add RowAdds a new cylinder row.
Duplicate RowDuplicates the selected row.
Move Up · Move DownMoves the selected row up or down.
Set All This ColumnApplies the selected column's value to all rows at once.
Search IOSearches for an IO signal to map.
Delete RowDeletes the selected row.
Change IO ID to NameConverts IO ID notation to name notation.

Workflow

  1. Open the editor via Project → Cylinder Editor (Ctrl+Shift+2).
  2. Add a cylinder row with Add Row from the context menu and enter Name and Description.
  3. Select a CylinderType value in Type and set usage with Enable.
  4. Map the output/input signals defined in IO Editor to the SolIndex and SensorIndex columns.
  5. If needed, configure motion monitoring and error handling with TimeOutA/B, DelayA/B, and ErrorCodeA/B.
  6. Save with SAVE at the bottom, then verify the defined cylinder's behavior in Cylinder Test.