0% found this document useful (0 votes)
36 views29 pages

Term Project

The document outlines a project on Programmable Logic Controllers (PLCs) for an Automatic Assembly and Palletizing System aimed at enhancing warehouse efficiency through automation. It details the system's configuration, including digital and analog inputs/outputs, the chosen PLC model, and a flowchart illustrating the operational processes. The objective is to ensure proper assembly, movement, and placement of parts while avoiding collisions during the operation.

Uploaded by

duc.bui030702
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
36 views29 pages

Term Project

The document outlines a project on Programmable Logic Controllers (PLCs) for an Automatic Assembly and Palletizing System aimed at enhancing warehouse efficiency through automation. It details the system's configuration, including digital and analog inputs/outputs, the chosen PLC model, and a flowchart illustrating the operational processes. The objective is to ensure proper assembly, movement, and placement of parts while avoiding collisions during the operation.

Uploaded by

duc.bui030702
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 29

HO CHI MINH CITY NATIONAL UNIVERSITY

UNIVERSITY OF TECHNOLOGY
FACULTY OF MECHANIC
DEPARTMENT OF MECHATRONICS

PROGRAMMABLE LOGIC CONTROLLERS


IN ROBOTICS AND AUTOMATION PROJECT

Group – CC01

Student Name Student ID School Email

Nguyễn Phúc Anh 2052029 anh.nguyenckk20@hcmut.edu.vn

Lê Phương Quốc Bảo 2153203 bao.le2809@hcmut.edu.vn

Bùi Công Đức 2052958 duc.bui030702@hcmut.edu.vn

Phan Phước Thịnh 2152999 thinh.phanthinh23203@hcmut.edu.vn

Lecturer: Phạm Phương Tùng

Ho Chi Minh City, 09/12/2024


1. SYSTEM ABSTRACT
Automatic Assembly and Palletizing System represents a sophisticated solution
designed to enhance warehouse operations by automating activities like part assembly,
place part into the box and pallet movement. The PLC plays a crucial role in overseeing
diverse system components to achieve the desired objectives of efficiency, accuracy,
and productivity.
Automatic Assembly and Palletizing System
Task:
PLC must complete these processes:
- Assemble parts made of lids and bases using a two-axis pick and place.
- Place the five complete parts into the box using a three-axis manipulator.
Design Philosophy:
- The CPU of the PLC operates the FullPart Conveyor, UpperPart Conveyor, Box
Conveyor, Loading Conveyor, Two-Axis Pick & Place, and Three-Axis Pick & Place
Manipulator. The FullPart Conveyor and UpperPart Conveyor are directed towards the
operational zone of the Two-Axis Pick & Place Manipulator. The Two-Axis Pick &
Place Manipulator is responsible for assembling lids from the UpperPart Conveyor to
FullPart Conveyor. Then, complete parts move to zone of the Three-Axis Pick & Place
Manipulator and Three-Axis Pick & Place Manipulator will transports complete parts to
the pallet.
- Digital IO is used to control the state of the conveyors and receive digital signals
from sensors.
- Analog IO is used for controlling the position of the Three-Axis Pick & Place
Manipulator, as well as for reading feedback signals from position sensors.
- The system operates in a continuous loop.
Objective:
The PLC system should achieve these requirements:
- The conveyors run and stop properly.
- Make sure the lids fit together properly.
- Ensure that five complete parts are positioned in each pallet without any instances
of collision.

1
2. SYSTEM CONFIGURATION
2.1. Digital input
There are 31 digital input in the system:
01. Start button
02. Stop button
03. Reset button
04. Auto button
05. Emmergency stop button
06. Moving X sensor
07. Moving Z sensor
08. Item detected sensor
09. Lid clamped sensor
10. Lid at place sensor
11. Base clamped sensor
12. Base at place sensor
13. Part leaving sensor
14. Pos at limit (bases) sensor
15. Full at place sensor
16. Full clamped sensor
17. Part to pickup sensor
18. Pallet at place sensor
19. Moving X box sensor
20. Moving Z box sensor
21. Object detected sensor
22. FactIO Runnning
23. AWC entry sensor
24. AWC at load sensor
25. Stacker crane left limit sensor
26. Stacker crane middle limit sensor
27. Stacker crane right limit sensor
28. Stacker crane moving X sensor
29. Stacker crane moving Z sensor
30. Pick X sensor
31. Pick Y sensor

2
2.2. Digital output
There are 10 digital output:
01. Start light
02. Stop light
03. Reset light
04. Lid conveyor
05. Base conveyor
06. Box conveyor
07. Left positioner (lid)
08. Left positioner (base)
09. Two – axis pick & place (lid)
10. Two – axis pick & place (product)

2.3. Analog output


There are 3 analog output in the system:
01. Stacker crane
02. Counter
03. Target pos

2.4. Choosing PLC


Based on number of input output, we chose PLC Siemens S7-1200 with CPU
1214C DC/DC/DC (6ES7214-1AG40-0XB0).
We chose extend modules:
• 2 modules 6ES7232-4HD32-0XB0 with AQ 4x14 bits ±10 VDC or 4–20 mA.
• 1 module 6ES7223-1BH32-0XB0 with DI/DQ 8 x 24 V DC / 8 x 24 VDC 0.5A.

Figure1. Siemens S7-1200 with CPU 1214C

3
Figure 2. Modules 6ES7232-4HD32-0XB0

Figure 3. Modules 6ES7232-4HD32-0XB0


3. ALGORITHMIC FLOWCHART
A flowchart is a structured and graphical representation designed to record, analyze,
and communicate information effectively, as well as describe operational processes in a
sequential and logical manner. The primary purpose of a flowchart lies in its ability to
record and document processes systematically. By providing a clear and comprehensive
overview of operations, flowcharts enable users to understand, optimize, and execute
processes with greater efficiency and accuracy.

4
Start

No No No
Pressed Start button? Pressed Stop button? Pressed Reset button?

Yes Yes
Yes

End Reset X, Y, Z axis motor;


number of item; order of item

Turn ON Turn ON
UpperPart Conveyor FullPart Conveyor

No
At entry sensor?
No No
Disfuse sensor 1 Disfuse sensor 2
Yes
Yes Yes
Turn OFF
Pallet conveyor

Move X, Y, Z axis motor Turn ON entry conveyor


to assembly lids and load conveyor

No No
Assembly done At load sensor?

Yes Yes

Turn OFF entry conveyor


Turn on Right
Positioner 4 Raise and load conveyor

Step 1

Step 2
No
Diffuse Sensor 3
Step 3
Yes

Operating Three-Axis
Move to start position
Manipulator to take next item

Reset order of Count up the number


box of pallet
of items on rack

Turn ON
pallet conveyor Last item to No
put in rack?

Yes

End
Step 1 Step 2 Step 3

No No Move to right No
At middle sensor? At middle sensor?
position?

Yes Yes Yes

Yes Checking the order of item Yes


Moving X sensor? Moving X sensor?
No

No No
Move to position on rack
based on order of item
Put Fork left out Put Fork right out

Return
No No
At left sensor? At right sensor?

Yes Yes

Lift item Drop item

Put Fork left in Put Fork right in

Return Return
5. VARIABLES DECLARATION
Input/Output Name
%I0.0 Start
%I0.1 Stop
%I0.2 Auto
%I0.3 Sensor 1
%I0.4 Sensor 2
%I0.5 Item Detected
%I0.6 Moving z
%I0.7 Moving x
%I1.0 Sensor 3
%I1.1 Pallet Sensor
%I1.2 Object Detection Sensor
%I1.3 Load
%I1.4 Entry
%I1.5 Stacker moving x
%I1.6 Stacker moving z
%I1.7 Stacker middle
%I2.0 Stacker left limit
%I2.1 Stacker right limit
%I2.2 Reset
%ID30 X
%ID34 Y
%ID38 Z

7
Input/Output Name
%Q0.0 Lower part
%Q0.1 Upper part
%Q0.2 Upper conveyor
%Q0.3 Full conveyor
%Q0.4 Positioner 4 Clamp
%Q0.5 Positioner 3 Clamp
%Q0.6 Grab
%Q0.7 Move z
%Q1.0 Move x
%Q1.1 Positioner 4 Raise
%Q1.2 Box Conveyor
%Q1.3 Roller conveyor
%Q1.4 Positioner 1 Clamp
%Q1.5 Box Emitter
%Q1.6 Grab XYZ
%Q1.7 Loading conveyor
%Q2.0 Stacker lift
%Q2.1 Stacker left
%Q2.2 Stacker right
%QD30 X-axis motor
%QD34 Y-axis motor
%QD38 Z-axis motor
%QD42 Stacker position

8
Input/Output Name
%M0.0 Item Entry Mem
%M0.1 Part Conveyor
%M0.2 C+
%M0.6 Moving z mem 0
%M1.5 Moving x mem
%M1.6 Moving z mem 1
%M2.3 2
%M2.4 1
%M2.5 9
%M2.6 Moving z mem 2
%M2.7 10
%M3.1 Sensor 3 temp
%M3.2 Tag_2
%MW4 Counting term
%M4.3 4
%M4.4 3
%M4.7 5
%M5.7 Tag_1
%M6.1 6
%M6.2 8
%M7.1 7
%M7.2 11
%MW10 CEI
%M10.1 Tag_3
%M10.6 Tag_4

6. CONTROL PROGRAM PRINTOUT

9
Totally Integrated
Automation Portal

Main [OB1]
Main Properties
General
Name Main Number 1 Type OB Language LAD
Numbering Automatic
Information
Title "Main Program Sweep (Cy‐ Author Comment Family
cle)"
Version 0.1 User-defined ID

Name Data type Default value Comment


Input
Initial_Call Bool Initial call of this OB
Remanence Bool =True, if remanent data are available
Temp
Reset Bool
Constant

Network 1:

%FC9000
"MHJ-PLC-Lab-Function-S71200"
EN ENO

Network 2: MODULE 1
Totally Integrated
Automation Portal

%I0.0 %Q0.0
"Start" "Lower part"
S

%Q0.1
"Upper part"
S

%Q0.2
"Upper conveyor"
S

%Q0.3
"Full conveyor"
S

%I0.1 %Q0.0
"Stop" "Lower part"
R

%Q0.1
"Upper part"
R

%Q0.2
"Upper conveyor"
R

%Q0.3
"Full conveyor"
R

Network 3:
Totally Integrated
Automation Portal

%DB7 %DB8
"IEC_Timer_0_DB_ "IEC_Timer_0_DB_
4" 5"
%Q0.4
%I0.3 TP TON "Positioner 4
"Sensor 1" Time Time Clamp"
IN Q IN Q
T#1S PT ET T#0ms T#300MS PT ET T#0ms

%DB9 %DB10
"IEC_Timer_0_DB_ "IEC_Timer_0_DB_
6" 7"
%Q0.5
%I0.4 TP TON "Positioner 3
"Sensor 2" Time Time Clamp"
IN Q IN Q
T#1S PT ET T#0ms T#300MS PT ET T#0ms

Network 4:

%DB5 %DB6
"IEC_Timer_0_DB_ "IEC_Timer_0_DB_
2" 3"

%I0.4 TP TON %Q0.7


"Sensor 2" Time Time "Move z"
P IN Q IN Q S
%M0.0 T#1S PT ET T#0ms T#900MS PT ET T#0ms
"Item Entry Mem"

Network 5:
Totally Integrated
Automation Portal

%Q1.0 %I0.6 %I0.5 %Q0.6


"Move x" "Moving z" "Item Detected" "Grab"
N S
%M0.6
"Moving z mem 0"
%Q0.7
"Move z"
R

Network 6:

%DB11 %DB12
"IEC_Timer_0_DB_ "IEC_Timer_0_DB_
8" 9"

%I0.5 %Q1.0 %Q0.7 %Q0.6 %I0.6 TP TON %Q1.0


"Item Detected" "Move x" "Move z" "Grab" "Moving z" Time Time "Move x"
N IN Q IN Q S
%M1.6 T#600MS PT ET T#0ms T#500MS PT ET T#0ms
"Moving z mem 1"

Network 7:

%I0.5 %Q0.6 %I0.6 %I0.7 %Q0.7


"Item Detected" "Grab" "Moving z" "Moving x" "Move z"
N S
%M1.5
"Moving x mem"

Network 8:
Totally Integrated
Automation Portal

%DB2
"IEC_Timer_0_DB"
%Q1.0 %Q0.7 %I0.6 TP %Q0.6
"Move x" "Move z" "Moving z" Time "Grab"
N IN Q R
%M2.6 T#1S_500MS PT ET T#0ms
"Moving z mem 2"
%DB4
%Q0.7 "IEC_Timer_0_DB_
"Move z" 1"
%Q1.1
R TON "Positioner 4
Time Raise"
IN Q
T#500MS PT ET T#0ms
%Q1.0
"Move x"
R

Network 9: MODULE 2

%I0.0 %Q1.2
"Start" "Box Conveyor"
S

%Q1.5
"Box Emitter"
S

%I0.1 %Q1.2
"Stop" "Box Conveyor"
R

%Q1.5
"Box Emitter"
R

Network 10:
Totally Integrated
Automation Portal

%I2.2
"Reset" MOVE MOVE MOVE MOVE
EN ENO EN ENO EN ENO EN ENO
0.0 IN %QD30 0.0 IN %QD34 0.0 IN %QD38 0 IN %MW4
OUT1 "X-axis motor" OUT1 "Y-axis motor" OUT1 "Z-axis motor" OUT1 "Counting term"

Network 11:
Totally Integrated
Automation Portal

Network 11: (1.1 / 3.1)

%Q1.4
%I1.0 "Positioner 1
"Sensor 3" Clamp"

%I1.1 %Q1.2
"Pallet Sensor" "Box Conveyor"
N R
%M10.1
"Tag_3"

%MW4 %I1.0
"Counting term" "Sensor 3" MOVE
==
N EN ENO
Int
0 %M3.2 4.5 IN %QD34
"Tag_2" OUT1 "Y-axis motor"

MOVE
%MW4 EN ENO
"Counting term" 6.8 IN %QD30
==
OUT1 "X-axis motor"
Int
2

%MW4
"Counting term"
==
Int
3

%MW4
"Counting term"
==
Int
4

2.1 ( Page1 - 8)
Totally Integrated
Automation Portal

Network 11: (2.1 / 3.1)


1.1 ( Page1 - 7)

%MW4
"Counting term"
==
Int
5

%MW4 %ID30 %ID30 %ID34 %ID34 %ID38 %I1.0


"Counting term" "X" "X" "Y" "Y" "Z" "Sensor 3" MOVE
== > < > < ==
Int Real Real Real Real Real EN ENO
0 6.6 6.9 4.2 4.6 0.0 8.0 IN %QD38
OUT1 "Z-axis motor"

%MW4
"Counting term"
==
Int
2

%MW4
"Counting term"
==
Int
3

%MW4
"Counting term"
==
Int
4

%MW4
"Counting term"

3.1 ( Page1 - 9)
Totally Integrated
Automation Portal

Network 11: (3.1 / 3.1)


2.1 ( Page1 - 8)
==
Int
5
Totally Integrated
Automation Portal

Network 12:

%I1.2
%ID30 %ID30 %ID34 %ID34 %ID38 %ID38 %I1.0 "Object %Q1.6
"X" "X" "Y" "Y" "Z" "Z" "Sensor 3" Detection Sensor" "Grab XYZ"
> < > < > <
S
Real Real Real Real Real Real
6.6 6.9 4.2 4.6 7.8 8.1

%MW4
"Counting term"
MOVE
==
Int EN ENO
1 IN %MW4
0
OUT1 "Counting term"

%Q1.6
"Grab XYZ" MOVE
EN ENO
0.0 IN %QD38
OUT1 "Z-axis motor"

Network 13:
Totally Integrated
Automation Portal

%MW4 %ID30 %ID30 %ID34 %ID34 %ID38 %ID38 %I1.1 %Q1.6


"Counting term" "X" "X" "Y" "Y" "Z" "Z" "Pallet Sensor" "Grab XYZ" MOVE
== > < > < >= <
EN ENO
Int Real Real Real Real Real Real
1 6.6 6.9 4.2 4.6 0.0 0.5 1.8 IN %QD30
OUT1 "X-axis motor"

MOVE
EN ENO
1.2 IN %QD34
OUT1 "Y-axis motor"

%ID30 %ID30 %ID34 %ID34 %ID38 %ID38


%I1.1 %Q1.6
"X" "X" "Y" "Y" "Z" "Z" "Pallet Sensor" "Grab XYZ" MOVE
> < > < >= <
Real Real Real Real Real Real EN ENO
1.6 1.9 1.0 1.3 0.0 0.5 10.0 IN %QD38
OUT1 "Z-axis motor"

%ID38 %ID38 %I1.1 %Q1.6


"Z" "Z" "Pallet Sensor" "Grab XYZ"
> <
R
Real Real
9.8 10.1
MOVE
EN ENO
2 IN %MW4
OUT1 "Counting term"

%I1.2
"Object %Q1.6 %I1.1
Detection Sensor" "Grab XYZ" "Pallet Sensor" MOVE
EN ENO
0.0 IN %QD38
OUT1 "Z-axis motor"

Network 14:
Totally Integrated
Automation Portal

%MW4 %ID30 %ID30 %ID34 %ID34 %ID38 %ID38 %I1.1 %Q1.6


"Counting term" "X" "X" "Y" "Y" "Z" "Z" "Pallet Sensor" "Grab XYZ" MOVE
== > < > < >= <
EN ENO
Int Real Real Real Real Real Real
2 6.6 6.9 4.2 4.6 0.0 0.5 1.8 IN %QD30
OUT1 "X-axis motor"

MOVE
EN ENO
5.0 IN %QD34
OUT1 "Y-axis motor"

%ID30 %ID30 %ID34 %ID34 %ID38 %ID38


%I1.1 %Q1.6
"X" "X" "Y" "Y" "Z" "Z" "Pallet Sensor" "Grab XYZ" MOVE
> < > < >= <
Real Real Real Real Real Real EN ENO
1.6 1.9 4.8 5.1 0.0 0.5 10.0 IN %QD38
OUT1 "Z-axis motor"

%ID38 %ID38 %I1.1 %Q1.6


"Z" "Z" "Pallet Sensor" "Grab XYZ"
> <
R
Real Real
9.8 10.1
MOVE
EN ENO
3 IN %MW4
OUT1 "Counting term"

%I1.2
"Object %Q1.6 %I1.1
Detection Sensor" "Grab XYZ" "Pallet Sensor" MOVE
EN ENO
0.0 IN %QD38
OUT1 "Z-axis motor"

Network 15:
Totally Integrated
Automation Portal

%MW4 %ID30 %ID30 %ID34 %ID34 %ID38 %ID38 %I1.1 %Q1.6


"Counting term" "X" "X" "Y" "Y" "Z" "Z" "Pallet Sensor" "Grab XYZ" MOVE
== > < > < >= <
EN ENO
Int Real Real Real Real Real Real
3 6.6 6.9 4.2 4.6 0.0 0.5 3.7 IN %QD30
OUT1 "X-axis motor"

MOVE
EN ENO
5.0 IN %QD34
OUT1 "Y-axis motor"

%ID30 %ID30 %ID34 %ID34 %ID38 %ID38


%I1.1 %Q1.6
"X" "X" "Y" "Y" "Z" "Z" "Pallet Sensor" "Grab XYZ" MOVE
> < > < >= <
Real Real Real Real Real Real EN ENO
3.5 3.8 4.8 5.1 0.0 0.5 10.0 IN %QD38
OUT1 "Z-axis motor"

%ID38 %ID38 %I1.1 %Q1.6


"Z" "Z" "Pallet Sensor" "Grab XYZ"
> <
R
Real Real
9.8 10.1
MOVE
EN ENO
4 IN %MW4
OUT1 "Counting term"

%I1.2
"Object %Q1.6 %I1.1
Detection Sensor" "Grab XYZ" "Pallet Sensor" MOVE
EN ENO
0.0 IN %QD38
OUT1 "Z-axis motor"

Network 16:
Totally Integrated
Automation Portal

%MW4 %ID30 %ID30 %ID34 %ID34 %ID38 %ID38 %I1.1 %Q1.6


"Counting term" "X" "X" "Y" "Y" "Z" "Z" "Pallet Sensor" "Grab XYZ" MOVE
== > < > < >= <
EN ENO
Int Real Real Real Real Real Real
4 6.6 6.9 4.2 4.6 0.0 0.5 3.7 IN %QD30
OUT1 "X-axis motor"

MOVE
EN ENO
1.2 IN %QD34
OUT1 "Y-axis motor"

%ID30 %ID30 %ID34 %ID34 %ID38 %ID38


%I1.1 %Q1.6
"X" "X" "Y" "Y" "Z" "Z" "Pallet Sensor" "Grab XYZ" MOVE
> < > < >= <
Real Real Real Real Real Real EN ENO
3.5 3.8 1.0 1.3 0.0 0.5 10.0 IN %QD38
OUT1 "Z-axis motor"

%ID38 %ID38 %I1.1 %Q1.6


"Z" "Z" "Pallet Sensor" "Grab XYZ"
> <
R
Real Real
7.9 10.1
MOVE
EN ENO
5 IN %MW4
OUT1 "Counting term"

%I1.2
"Object %Q1.6 %I1.1
Detection Sensor" "Grab XYZ" "Pallet Sensor" MOVE
EN ENO
0.0 IN %QD38
OUT1 "Z-axis motor"

Network 17:
Totally Integrated
Automation Portal

Network 17: (1.1 / 2.1)

%MW4 %ID30 %ID30 %ID34 %ID34 %ID38 %ID38 %I1.1 %Q1.6


"Counting term" "X" "X" "Y" "Y" "Z" "Z"
"Pallet Sensor" "Grab XYZ"
== > < > < >= <
1
Int Real Real Real Real Real Real
5 6.6 6.9 4.2 4.6 0.0 0.5

%ID30 %ID30 %ID34 %ID34 %ID38 %ID38


%I1.1 %Q1.6
"X" "X" "Y" "Y" "Z" "Z" "Pallet Sensor" "Grab XYZ" MOVE
> < > < >= <
Real Real Real Real Real Real EN ENO
2.5 2.8 2.9 3.2 0.0 0.5 10.0 IN %QD38
OUT1 "Z-axis motor"

%ID38 %ID38 %I1.1 %Q1.6


"Z" "Z"
"Pallet Sensor" "Grab XYZ"
> <
R
Real Real
7.8 10.1
MOVE
EN ENO
0 IN %MW4
OUT1 "Counting term"

%I1.2
"Object %Q1.6 %I1.1
Detection Sensor" "Grab XYZ" "Pallet Sensor"
3
%Q1.2
"Box Conveyor"
S

MOVE
1 EN ENO

2.1 ( Page1 - 16)


Totally Integrated
Automation Portal

Network 17: (2.1 / 2.1)


1.1 ( Page1 - 15)
1 EN ENO
2.7 IN %QD30
OUT1 "X-axis motor"

MOVE
2 EN ENO
3.1 IN %QD34
OUT1 "Y-axis motor"

MOVE
3 EN ENO
0.0 IN %QD38
OUT1 "Z-axis motor"
7. SHOWING THE SYSTEM OPERATION (TIA PORTAL FILE AND VIDEO)
Our Tia Portal file and Video in the link below:
https://drive.google.com/file/d/1nzKmZA5738oQUn26FqZTx1DuAU3KCeOy/view
8. FactoryIO

11

You might also like