4.5 PLC
4.5.2 PLC Code (Ladder Logic Programme)
57
58 Figure 4.23: PLC programme
The programme in Figure 4.23 is shown in the Programming Mode of the PLC, i.e. logged out from the PLC. Figure 4.24 shows the PLC programme when logged into the PLC via the Ethernet connection, i.e. Run Mode. The initial state of the programme shows the XIO contacts to be TRUE (highlighted in blue).
59 Figure 4.24: PLC programme (initial state)
Figure 4.25 shows the activation of Rung 0001. Rung 0001 is activated by the manual switch for toBranch_INPUT (Switch 1L). The switch creates a logic continuity with the XIO contact ‘A’ to energise the relays for Motors 1 and 2, i.e. the To-Branch conveyor segment.
Figure 4.25: Rung 0001 activation
Figure 4.26 shows the activation of Rung 0007. Rung 0007 is activated in a similar way to Rung 0002, with the toPart_INPUT switch (Switch 2L) being turned on by the operator; this energises the relays for Motors 3 and 4, i.e. the To-Part conveyor segment.
Figure 4.26: Rung 0007 activation
60 Figure 4.27 shows the activation of Rung 0008. Rung 0008 functions likewise to Rung 0007, except that Switch 3L is used to activate Motors 5 and 6, i.e. the To-ASRS conveyor segment.
Figure 4.27: Rung 0008 activation
The operator turns on the aforementioned switches (1L to 3L) upon start-up to initiate the workflow in the fixture manufacturing cell. The pallets can travel throughout the cell in a unidirectional manner due to the activation of the conveyor motors (see Section 3.5).
Figure 4.28 shows the activation of Reconfiguration Mode via Switch 0L in Rung 0002. The logic continuity in Rung 0002 is broken due to the FALSE state of Sensor_INPUT. The cell is now ready to divert any fixture retrieved from the ASRS to the Reconfiguration Station. A parallel connection is shown on the input side of Rung 0002; this is known as a ‘seal-in rung’. A seal-in rung ensures that the activation of the OTE in the main rung due to a momentary XIC condition is kept activated even after the XIC signal has changed back to FALSE, i.e. it ‘seals in’ the activation of the OTE due to the momentary XIC [96]. This ensures that the output condition remains constant, even after the subsequent scan cycle reads the XIC signal as FALSE. This state is maintained until some other condition is met to break the logic continuity that exists due to the seal-in rung.
Figure 4.28: Reconfiguration Mode ready
Figure 4.29 shows the state of the ladder programme upon activation of the diffuse light sensor by a pallet in transit. This action energises the artificial OTE ‘B’, the address of which is read as an input signal to Rung 0002 in the subsequent scan cycle. The activation of B initiates the toBranch_TIMER, which delays subsequent actions in that rung for the designated 3 seconds. This is the time required for the pallet to move from the position at which it first intersects the red light beam of the sensor, to the position at which it is in front of the actuator plunger, which is aligned with the branch conveyor itself (Figure 4.22).
61 Figure 4.29: Sensor activated on Rung 0002
Figure 4.30 shows the state of the ladder programme after the toBranch_TIMER has elapsed. The sensor is no longer activated at this point, which is why the seal-in rung was required to maintain the energisation of OTE ‘B’. Logic continuity is evident in Rung 0003, which energises both artificial OTEs
‘A’ and ‘C’. The activation of OTE ‘A’ writes a 1 to the artificial XIO ‘A’ in the next scan cycle, which breaks the logic continuity of Rung 0001 (as shown in Figure 4.31). This switches Motors 1 and 2 off, which brings the pallet to a halt at the required position for the plunger; as shown in Figure 4.32. The activation of OTE ‘C’ writes a 1 to the XIC ‘C’ in Rung 0004, which completes the logic continuity required in that rung for the activation of the solenoid valve. This initiates the outstroke of the pneumatic actuator, which extends the piston rod, as shown in Figure 4.33. The real output of Valve_OUTPUT is then used as an artificial input in Rung 0005, where it initiates a timer. The timer delays further actions for 5 seconds, which is the time required for the piston rod to extend.
62 Figure 4.30: Valve activated on Rung 0005, waiting for timer to elapse
Figure 4.31: Motors 1 and 2 deactivated
Figure 4.32: Conveyor segment paused, pallet waiting at position
63 Figure 4.33: Piston rod extension to push pallet along branch conveyor
Figure 4.34 shows the state of the ladder programme after ActuatorOut_TIMER has elapsed. The artificial OTE ‘D’ is energised by the input signal from the valve (which is deactivated at the subsequent scan; this is why it is shown as deactivated in Figure 4.34) and sealed-in to ensure it remains energised after the valve signal is inactive, while the artificial XIC input in Rung 0008 waits for the ActuatorIn_TIMER to elapse after 5 seconds while the piston rod retracts. After the final timer has elapsed, the artificial OTE ‘E’ is energised, which breaks the logic continuity in both Rungs 0007 and 0002, thus de-energising both OTEs ‘D’ and ‘B’, for use in subsequent operations. De-energising OTE
‘B’ energises XIO ‘B’ in Rung 0001 in the next scan cycle, which switches Motors 1 and 2 on for continued operation of that conveyor segment. The ladder programme is now ready to undergo the same procedure when needed again.
Figure 4.34: Waiting for piston rod to retract on Rung 0008 so procedure can be concluded
64 Figure 4.35 shows the sensor being activated when Reconfiguration Mode has been turned off by the operator. Logic continuity does not exist in the rung, which does not energise OTE ‘B’. Therefore, the aforementioned procedure does not occur, thus allowing the pallet to continue along the conveyor and to the part manufacturing system without reconfiguration of the fixture.
Figure 4.35: Sensor activated when Reconfiguration Mode is not activated
The straight conveyor branches were powered by three-phase motors, and were thus switched on manually; they were not controlled by the PLC programme.