Palletizer · DIS_Job_Seq · lane 10

Robot cell

How J8005 calls a lane to the palletizer. Full lane goes into FIFO_DIS, DIS_Job_Seq handshakes PALLET_TO_SUPER[0].2, then latches DISCHARGE_LN.10. Tags rewrite for the lane you pick.

Active lane

Palletizer handshake

J8005 ↔ robot

Stage 5

Data handshake (seq 30 → 40)

J8005 tells the robot which lane, then echoes PALLET_TO_SUPER[0].2 until the robot drops it.

Key tags · tap to copy

  1. 1.Seq 30: SUPER_TO_PALLET[1] > 0, robot PALLET_TO_SUPER[0].2 still on, our SUPER_TO_PALLET[0].2 off → latch DATA_SENT_LN.10.
  2. 2.L18x then follows the robot: PALLET_TO_SUPER[0].2 on → OTL SUPER_TO_PALLET[0].2; PALLET_TO_SUPER[0].2 off → OTU SUPER_TO_PALLET[0].2.
  3. 3.Seq 40 waits until PALLET_TO_SUPER[0].2 drops (ack) — or a purge is already in progress.

Robot data handshake

PALLET_TO_SUPER[0].2

Robot request, then ack drop

SUPER_TO_PALLET[0].2

J8005 echoes [0].2

DATA_SENT_LN.10

Latched at seq 30

DISCHARGE_LN.10

Latched after ack

Seq 10 needs PALLET_TO_SUPER[0].2 on. Seq 40 waits for it to drop. If the robot never drops [0].2, DISCHARGE_LN never latches.

EQU(DIS_Job_Seq.Num,30)  GRT(SUPER_TO_PALLET[1],0)  XIC(PALLET_TO_SUPER[0].2)  XIO(SUPER_TO_PALLET[0].2)
OTL(DATA_SENT_LN.10)  MOV(40,DIS_Job_Seq.Num)

XIC(DATA_SENT_LN.10) XIC(PALLET_TO_SUPER[0].1)
  XIO(SUPER_TO_PALLET[0].2) XIC(PALLET_TO_SUPER[0].2) OTL(SUPER_TO_PALLET[0].2)
  XIC(SUPER_TO_PALLET[0].2) XIO(PALLET_TO_SUPER[0].2) OTU(SUPER_TO_PALLET[0].2)

Checks 0/5

Produced / consumed bits

  • out
    J8005 heartbeat
  • in
    Robot heartbeat
  • in
    Robot auto / ready
  • in
    Handshake request (must toggle)
  • out
    Handshake echo
  • in
    Reject pulse (lane 4 uses .4)
  • in
    Inhibit / cell fault
  • in
    Pallet complete — odd lanes
  • in
    Pallet complete — even lanes
  • out
    Lane number sent to the robot

Odd lanes finish on PALLET_TO_SUPER[0].7. Even lanes finish on PALLET_TO_SUPER[0].8. Lane 10 watches PALLET_TO_SUPER[0].8.