Files
2026-05-20 09:41:27 +02:00

14 KiB

title, type, sources, related, last_compiled
title type sources related last_compiled
Galileo Simulation & Test Setup (Gateway, EasyS, PIE) operation
sources/archives/Tests_Miniload_Gateway.md
sources/archives/Configuration_EasyS.md
sources/archives/Configuration_SmartUI.md
sources/archives/Plan_tests_stations.md
architecture/galileo-integration.md
operations/galileo-troubleshooting.md
operations/robotics-project-lifecycle.md
operations/vm-installation.md
operations/vm-network-routing.md
concepts/stations.md
concepts/mechanical-elements.md
concepts/putaway.md
2026-04-17

Galileo Simulation & Test Setup (Gateway, EasyS, PIE)

Overview

EasyS is the 3D simulation front-end that speaks the same protocol as GALILEO. Running EasyS + EasyWMS Gateway on a dev VM lets you reproduce the full robotic flow (PIE → Miniload → PK → PS) without physical hardware. This page covers Gateway install, EasyS simulation configuration, PIE event injection, pick/shipping test flows, and station/route synchronisation procedures.

Shared demo environment (Mecalux France):

  • VM ALL on server LYOITSW02 — IP 10.58.10.75
  • Credentials: mecalux / mecalux
  • Warehouse: WRH_MIXTE (miniload + conveyor path)

See VM Installation and VM Network Routing for creating a fresh dev VM.

1. Install the EasyWMS Gateway

The Gateway is the Windows service that translates between GALILEO/EasyS frames and the EasyWMS API. Install on the same host as EasyWMS.

  1. Download: https://msscc.mecalux.com/documentation/documentation/master/EN/docs_downloads/services/gateway.md
  2. Run the installer → select GatewayInstall
  3. Install path: C:\Program Files\Mecalux\EasyWMS Gateway 2015

Configure the Gateway

File: C:\ProgramData\Mecalux\EasyWMS Gateway 2015\Config\MainObject.config

  1. Set tenantCode = the WMS tenant you want to target
  2. Fill the TokenUser connection section (not ClientUser)
  3. Passwords must be encrypted — run PasswordEncrypt.exe from C:\Program Files\Mecalux\EasyWMS Gateway 2015
  4. Start the Windows service EasyWMSGateway2015

Logs go to C:\ProgramData\Mecalux\EasyWMS Gateway 2015\Logs\AllLog.log — see Galileo Troubleshooting.

2. Open port 3000 on the VM

EasyS / GALILEO use TCP port 3000 to reach the Gateway. Open inbound (and outbound for some edge cases).

PowerShell:

Remove-NetFirewallRule -DisplayName "EasyS Port 3000"
New-NetFirewallRule -DisplayName "EasyS Port 3000" -Direction Inbound -LocalPort 3000 -Protocol TCP -Action Allow -Profile Any -RemoteAddress Any

GUI fallback: Windows Defender Firewall → New Rule (Inbound + Outbound) → TCP 3000 → Allow.

3. EasyS warehouse configuration

Automation elements live in the EasyS category Automatic elements.

3.1 Location & container settings

For locations and stations that feed an automatic warehouse:

  • DeleteEmptyContainers = Not Delete
    • Exception: picking stations (PK) may use Delete or Ask when operators physically remove empty containers
  • Storage mode = Only Containers

3.2 Rack types

Every miniload location must be bound to a rack type with the exact dimensions of the physical rack. Each rack type declares which container type(s) it accepts.

3.3 PLC Types (PIE gauge mapping)

At each PIE pass, GALILEO returns:

  • PLC Container Type — derived from width
  • PLC Height Type — derived from height

Procedure:

  1. EasyS → PLC Types menu
  2. Define each container height value
  3. Bind each container master to its PLC Container Type

⚠️ On miniloads, container type and height are usually tied. If GALILEO reads PLCHeightType = 1, PLCType must also be 1. Make the coupling explicit in the interface document delivered with the project.

3.4 Automatic aisle (TK / Miniload)

To simulate a TK, add an Automatic Aisle. The aisle ↔ rack link works like a manual aisle:

  1. Pick the rack → link it to the miniload/TK station
  2. Double-click the rack to open the location editor
  3. Assign each location its rack type

3.5 Station types (recap)

Type Role
Automatic Aisle Stacker crane / Miniload
PIE Entry identification (label + weigh)
Picking (PK) Picking conveyor
PKE PK entry control — if full, recirculate
Inbound Table (ME) Conveyor into the TK/Miniload
Outbound Table (MS) Conveyor out of the TK/Miniload
CME TK/Miniload entry control — if full, recirculate
Outbound Post Exit conveyor (operator can pick the container up)
MP Preparation table (stock drop after pick)
Transporter Plain conveyor with no special function

Full catalogue: Stations & Routes; translation matrix: Mechanical Elements.

3.6 Double-depth rack storage zones

Two layout patterns for double-depth racks:

  • Case #1 (most common at Mecalux France) — best for mono-product supports (several supports share the same item inside the TK). Rotation zones split by front face / rear face.
  • Case #2 — best for multi-product supports (a given item never lives in two supports simultaneously). Reduces relocations during picking without pre-emptive defragmentation.

3.7 Route configuration

Every movement needs a route in EasyS between origin and destination. A single task PIE → Miniload typically generates 4 movements — the WMS creates one task, but the routing table must allow every hop.

If no path exists, EasyWMS generates a reject task toward the reject station.

Route inventory in EasyWMS: Menu → Control → Itineraries between stations.

Route types:

Type Description
Galileo Requires Gateway calls to move the container physically
Manual Operator action triggered by a WMS task
Virtual Instant virtual stock movement (e.g. output → consolidation zone)

3.8 Entry / outbound tables (TE / TS) on the TK

Multiple containers can sit on a TE/TS at once:

  1. Size the table large enough physically
  2. Lay out containers in Positions (side by side) and Stack (one behind the other)
  3. Logical X = 991 — except tables embedded in the rack, which inherit the replaced location's coordinates

3.9 Multidirectional tables (LTM)

Set routing options = 1 for every feeder conveyor allowed to deposit a container.

3.10 Picking station configuration

  1. Add a conveyor with role Picking
  2. Create a Workstation to drive the station from SmartUI
  3. Define routes — where stock can arrive from, where it can leave to

Preparation table (TP/MP) routes:

  • Manual route from picking table → preparation tables
  • Galileo route from preparation tables → output table
  • Virtual route → consolidation zone

3.11 Reject configuration

The reject route lets the WMS redirect containers with no valid route.

  • Configure GALILEO routes from the main stations → REJECT station
  • Add a VIRTUAL route → floor zone so lost containers are moved off the simulation automatically
  • Reject routes render in red. Unlike normal routes, the red route gives the task destination (not the movement destination).

Different rejection reasons (IdentError) can point to different destinations — see IdentErrorType.

4. SmartUI workstation configuration

Companion configuration once the EasyS layout is in place.

4.1 Preparation tables (MP/TP)

Each preparation table is linked to a picking station. After picking confirmation, stock moves from the container to the chosen preparation table.

Assignment mode:

  • Automatic — WMS assigns the next order to a table
  • Manual — operator assigns via Menu → Control → Picking-station assignment

⚠️ In manual mode, tasks do not generate until the shipping order is assigned to a table.

To switch mode: Menu → Control → Workstations → select preparation table(s) → Modify assignment mode.

⚠️ The preparation table must have a route to the shipping dock of the order — otherwise tasks won't generate.

4.2 Picking table max-concurrent orders

To cap how many orders a picking table can handle in parallel:

Menu → Control → Workstations → select the picking station → update the value.

The value must equal the number of preparation tables associated with the picking station.

5. Run EasyS in simulation mode

  1. Launch EasyS and load the warehouse configuration
  2. Click Start
  3. Enter the WMS server IP → Next
  4. Uncheck Generate simulation report → click Simulation 3D
  5. Watch the Gateway log (AllLog.log) — lots of lines with no errors = connection OK

6. Inject a container at the PIE

  1. Double-click the PIE in EasyS
  2. Tab PIE Info → leftmost button
  3. Fill:
    • Transport Number: 0
    • Data: container code
    • Container Type: corresponding PLC Container Type
    • Weight
    • Height Type: corresponding PLC Height Type
  4. Click Save — a pallet/bin visibly moves on the conveyor

⚠️ Valid putaway strategies must exist — even for empty containers. No valid location ⇒ reject.

Simulate a read error

Tab Scripts on the PIE → Prepare event → paste:

machine.Flags = "256";

Then inject the container. 256 = barcode error (see GALILEO Integration — PIE flag table).

7. Extract a container from the miniload

Three triggers:

  • Demand the container from the picking workstation
  • Request empty containers from the picking workstation
  • Launch an order for preparation

From the SmartUI picking workstation you can request a specific container, empty containers, or a specific item.

Put the station in manual mode

Double-click the picking station in EasyS → tick Manual action. Without this, the container departs automatically and testing is impossible.

Send the container back to the miniload

  1. SmartUI workstation → Store container
  2. EasyS → double-click the picking station → click Liberate

Once Manual Action is ticked, always click Liberate to release the container. Skipping this step freezes the simulation.

Client-order flow

On order release, the WMS:

  1. Assigns the picking station to the order
  2. Creates tasks to extract the container to the PK

Tasks are of type pickingContainer. After pick confirmation: Store containerLiberate to return the container to the miniload.

Verify preparation-table config before launching an order — tasks won't generate if routes to the dock are missing.

8. Speed up simulation

Use the speed button in EasyS to accelerate container travel. Useful for stress-testing picking/putaway strategies without waiting.

9. Station & route synchronisation procedure

Before going live, confirm WMS and GALILEO agree on stations and routes. Run the audit below during the Plan de tests des stations milestone.

9.1 Retrieve WMS stations via query

Execute on the writing side:

Context.StationRoutes.Where(sr => sr.Manager.ToString() == "Galileo")
.Select(sr => new {
    StationType = sr.StationTo.Type,
    StationNumber = sr.StationTo.Number,
    StationCode = sr.StationTo.Code,
    StationTypeName = sr.StationTo.Type.ToString(),
    X = sr.StationTo.RealLocations.Any() && sr.StationTo.RealLocations.FirstOrDefault().LogicalCoordinate != null
        ? sr.StationTo.RealLocations.FirstOrDefault().LogicalCoordinate.X : 0,
    Y = sr.StationTo.RealLocations.Any() && sr.StationTo.RealLocations.FirstOrDefault().LogicalCoordinate != null
        ? sr.StationTo.RealLocations.FirstOrDefault().LogicalCoordinate.Y : 0,
    StationSide = sr.StationTo.RealLocations.Any() && sr.StationTo.RealLocations.FirstOrDefault().LogicalCoordinate != null
        ? sr.StationTo.RealLocations.FirstOrDefault().LogicalCoordinate.Side : 0,
    AisleNumber = sr.StationTo.AisleNumber
})
// union with StationFrom — full query on Confluence
.OrderBy(sr => sr.StationType)
.ThenBy(sr => sr.StationNumber)

9.2 Routes that must report "full"

GALILEO must be able to push these routes as status 3 = Full so the WMS can recirculate:

Source type Destination type
CME TE (ME)
PKE PK
ET PS

9.3 Compare configuration on failure

If EndErrorCode=4 occurs:

  1. Open the GALILEO program in C:\<NomDuClient>\Programme → double-click the .mgp file
  2. Compare the station list side-by-side with the query above
  3. Check that every (StationType, StationNumber) pair exists on both sides, with the same aisle, allowed container types and coordinates
  4. Confirm PLC Container Type / PLC Height Type coupling matches the document

More diagnostic steps: Galileo Troubleshooting.

Common errors

  • Container injected at PIE but immediately rejected — no valid putaway strategy covers the (container type, height type) combo, or no route exists to any storage location
  • Tasks don't generate after order launch — preparation table has no route to the dock, or assignment mode is Manual and the order isn't assigned
  • Station stays loaded indefinitely in EasyS — Manual Action ticked without running Liberate
  • Gateway starts but no activity — wrong tenantCode or TokenUser password; check Gateway log
  • Connection refused from EasyS — port 3000 not open, or Gateway service not started