⚠ Scene is in a background tab — browser may throttle it. Open in a separate window for best performance.
PICK & PLACE PALLETIZER v1.100
STOPPED
SIM SCAN: 
DISCONNECTED
Drag=Orbit · +−=Zoom · Arrows=Orbit
BRIDGE WS URL: Run acc-modbus-bridge.js first, then click CONNECT
ACC MODBUS BRIDGE  —  INSTALL GUIDE

What is the ACC Modbus Bridge?

A small Node.js program that runs on your PC and connects this browser scene to a real Modbus TCP or Modbus RTU master such as a PLC, SCADA system, or Modbus Poll software.


Step 1 — Download the installer

Download the zip file and extract it to a folder on your PC.

Download acc-modbus-bridge.zip

Step 2 — Install Node.js (one-time)

The bridge requires Node.js. Download the LTS version from nodejs.org and run the installer.


Step 3 — Run the installer

  1. Extract the zip file
  2. Windows: double-click install.bat
  3. macOS: double-click install.command
  4. Follow the on-screen prompts to choose Ethernet (TCP), Serial (RTU), or both
  5. The installer creates a start-modbus-bridge shortcut for you

Step 4 — Start the bridge

  1. Double-click start-modbus-bridge.bat (Windows) or start-modbus-bridge.command (macOS)
  2. Keep the terminal window open while using Modbus

Step 5 — Connect this scene

  1. Confirm the Bridge WS URL is ws://127.0.0.1:8502
  2. Click CONNECT — the badge turns amber when linked

Modbus Address Map — Pick & Place Palletizer

  1. Coil  00001  →  Y1 Arm Move X  (master writes)
  2. Coil  00002  →  Y2 Arm Move Y — Lower  (master writes)
  3. Coil  00003  →  Y3 Grip Close — Vacuum  (master writes)
  4. Coil  00004  →  Y4 Feed Conveyor Enable  (master writes)
  5. Coil  00005  →  Y5 Pallet Eject  (master writes)
  6. DI    10001  →  X1 Box Present  (master reads)
  7. DI    10002  →  X2 Arm Home X  (master reads)
  8. DI    10003  →  X3 Arm Home Y (Up)  (master reads)
  9. DI    10004  →  X4 Grip Confirm (Vacuum)  (master reads)
  10. DI    10005  →  X5 At Pick X  (master reads)
  11. DI    10006  →  X6 At Place X1 (Col 1)  (master reads)
  12. DI    10007  →  X7 At Place X2 (Col 2)  (master reads)
  13. DI    10008  →  X8 Arm Down  (master reads)
  14. DI    10009  →  X9 Contact Pressure  (master reads)
  15. DI    10010  →  X10 Skid Present  (master reads)

More tutorials at  accautomation.ca  ·  YouTube @ACCautomation

OUTPUTS Y
Y1
Arm Move XExtend to pick/place
Y2
Arm Move YLower gripper
Y3
Grip CloseVacuum / gripper
Y4
Feed EnableConveyor advances
Y5
Pallet EjectRemove full pallet / load empty

Arm Position

X: HOME
Y: HOME
Grip: OPEN
Drag to orbit · Scroll/+−=Zoom · Arrows=Orbit
INPUTS X
X1
Box PresentAuto — feed sensor
AUTO
X2
Arm Home XAuto — X home
AUTO
X3
Arm Home YAuto — gripper up
AUTO
X4
Grip ConfirmAuto — vacuum
AUTO
X5
At Pick XAuto — arm at pick pos
AUTO
X6
At Place X1Auto — arm at col 1
AUTO
X7
At Place X2Auto — arm at col 2
AUTO
X8
Arm DownAuto — Y at bottom travel
AUTO
X9
Contact PressureAuto — gripper seated
AUTO
X10
Skid PresentAuto — pallet on table
AUTO

Sequence Log

Open ACC PLC Simulator to link — or press RUN for standalone modeSCAN #0

PICK & PLACE PALLETIZER SCENE

XY Gantry — 2-Column × 3-Row Pallet Stack

An industrial XY gantry pick-and-place system. ACC Automation branded boxes emerge from a sheet-metal cowling with strip curtains at the left end of a feed conveyor and travel to a pick position. A vacuum gripper picks each box and places it on a wooden pallet in a 2-column × 3-row pattern (6 boxes total). When the pallet is full, a chain conveyor ejects it through black strip curtains in the right wall and an empty pallet returns through the same curtains. A skid-present sensor confirms the empty pallet is seated before any new cycle is allowed to start.

I/O MAP
AddressDirDescription
X1INBox Present — feed sensor, box at pick position
X2INArm Home X
X3INArm Home Y — gripper fully up
X4INGrip Confirm — vacuum confirmed, box attached
X5INAt Pick X — arm aligned over conveyor pick position
X6INAt Place X1 — arm over pallet column 1
X7INAt Place X2 — arm over pallet column 2
X8INArm Down — gripper at mechanical travel limit
X9INContact Pressure — gripper seated on surface
X10INSkid Present — empty pallet seated at stop bar, safe to start new cycle
Y1OUTArm Move X — ON=extend toward pick/place, OFF=return home
Y2OUTArm Move Y — ON=lower gripper, OFF=raise
Y3OUTGrip Close — vacuum (must use latching coil)
Y4OUTFeed Conveyor Enable
Y5OUTPallet Eject — chain conveyor runs, full pallet exits through curtains, empty returns
FIVE STEPS TO PLC PROGRAM DEVELOPMENT

Use these five steps to develop your ladder program for this scene. Run standalone mode first to observe correct behaviour, then build and test your program in the ACC PLC Simulator.

STEP 1

Define the Task

ACC Automation branded boxes emerge from a production cowling with strip curtains at the left end of a feed conveyor and travel to a pick position. A gantry arm must pick each box and stack it on a pallet in a 2-column × 3-row pattern. The arm must never travel horizontally while the gripper is lowered — a collision safety interlock. Vacuum grip must be confirmed before the arm raises. When 6 boxes are placed, Y5 activates the chain conveyor: the full pallet exits through black strip curtains in the right wall, and an empty pallet returns through the same curtains and seats against a stop bar. A skid-present sensor (X10) confirms the empty pallet is seated before any new cycle is allowed to begin. If no skid is present, the machine must not run.

STEP 2

Define the Inputs and Outputs

Ten inputs: X1=Box Present, X2=Arm Home X, X3=Arm Home Y (up), X4=Grip Confirm (vacuum), X5=At Pick X, X6=Col 1, X7=Col 2, X8=Arm Down, X9=Contact Pressure, X10=Skid Present. Five outputs: Y1=Arm X (extend/retract), Y2=Arm Y (lower/raise), Y3=Grip vacuum (must use a latching coil — mem.Y is cleared every scan so OTL/OTU is required), Y4=Feed Conveyor, Y5=Pallet Eject. The scene drives arm depth automatically from placedCount — your program only needs to command Y2 ON/OFF. X10 starts ON (pallet present), goes OFF when Y5 activates, and returns ON when the empty pallet seats at the stop bar.

STEP 3

Develop the Sequence of Operation

Per-box cycle: (1) Run feed conveyor (Y4) until X1=ON. (2) Extend arm (Y1) — X movement only when X3=ON (arm fully up, safety interlock). (3) At pick X (X5=ON): lower gripper (Y2=ON). (4) Contact pressure (X9=ON): latch grip (Y3). (5) Vacuum confirmed (X4=ON): raise arm, wait for X3. (6) Arm moves to correct column (scene targets automatically from placedCount). (7) Lower (Y2=ON), wait for X9. (8) Unlatch grip (Y3=OFF). (9) Raise, return home (Y1=OFF). After 6 boxes: Y5=ON — chain conveyor ejects full pallet through curtains, empty pallet returns and seats. X10 goes ON when seated. Y5 holds ON for a timer period then resets. X10 must be ON before any new cycle can start.

STEP 4

Develop the PLC Program

Required internal bits: C100=Cycle Active (latch), C101=Box On Arm (latch), C103=Place Phase (latch), C110=Grip Latch (drives Y3 via OTE each scan). Add XIC X10 as an interlock on R1 (cycle start rung) — no skid, no cycle. CTU counter CT1 preset=6 counts placed boxes. When CT1/DN: Y5=ON, TON timer T1 holds the eject state (4s) while the scene animation runs, then RES CT1 resets the count and drops Y5. R1 is blocked by both CT1/DN (pallet full) and X10=OFF (no skid) until both conditions clear.

STEP 5

Test the Program

Connect the scene and press RUN. Verify the full cycle: box arrives, arm moves (only when X3=ON), gripper lowers to pick, vacuum latches, arm raises with box, moves to correct column, lowers to correct row, releases box, returns home. After 6 boxes: Y5=ON — full pallet slides right through curtains, empty pallet slides back in, X10 lights ON. Confirm new cycles are blocked while X10=OFF. Press STOP at any point — scene should reset cleanly. Use STEP mode to trace timer and counter transitions during the eject sequence.