Upload
buikien
View
227
Download
1
Embed Size (px)
Citation preview
INDU411 – CIM
Final Lab Report
The Pawn
Carol Awad 6012140
Aurelien Boudier 9274669
Dr. Onur Kuzgunkaya
Tuesday, April 10th, 2012
2
Table of Content
1 Introduction ......................................................................................................... 3
2 The CAD Pawn’s Drawings .................................................................................... 4
3 Gcode ................................................................................................................... 6
3.1 Pawn Base ........................................................................................................................................................ 6
3.2 Pawn Body ....................................................................................................................................................... 8
4 Robotic Assembly / ACL Code ..............................................................................10
5 Mixed model production .....................................................................................15
6 System Optimization ...........................................................................................17
7 Conclusion ...........................................................................................................18
3
1 Introduction
Computer Integrated Manufacturing is a manufacturing method where the entire
production is controlled by computers. This integration allows manufacturing to be faster,
more efficient and with less errors, and the main advantage is that it allows automation of
the production.
The objective of the project was to manufacture and assemble a chess piece, the pawn,
using automated controls. The pawn is made of two separate parts, the base and the body,
which are assembled at the end. The base is a 3.5”x2”x1/2” block, and the body is a ¾”
cylinder block, both in Plexiglas.
Three machines were used to complete the project, a lathe, a mill and an assembly robot.
The whole project was conducted in the CIM lab under the appropriate supervision.
Dimensionless CAD drawings of the part to be manufactured were provided, and the first
step was to dimension every feature in order to make the programming easier. It was
done using AutoCAD.
The first part of the manufacturing process involved programming the mill to
manufacture the base of the pawn, which consisted of engraving the word PAWN on the
top face, and drilling the slot for the body (see FIGURE APPENDIX). The process was
programmed in the GCODE language in ProLight CNC mill control software. The Pawn
body was realized by turning using a lathe, and the code was programmed in ProLight
Turning center.
The robot was also programmed to assemble the two parts together.
2 Th
e CA
D P
awn’
s D
raw
ings
Figure 1 - C
AD drawing of th
e Bod
y
4
Figure 2 - C
AD drawing of th
e ba
se
5
6
3 Gcode
3.1 Pawn Base
G90 G01 X0.625 Y1 Z0.1 M06 T02; select tool 2 with dia .78 G01 X0.625 Z-.375 G01 Z.1 G00 X0 Y0 M06 T01; select tool 1 G01 X1.219 Y.532 ; STARTING THE EDGE G01 Z-.0625 G01 Y1.469 G01 X3.219 G01 Y.532 G01 X1.219 G01 Y.594 G01 X3.219 G01 Y1.407 G01 X1.219 G01 Z.1; STARTING LETTER N M06 T03; select tool 3 with dia .154 G01 X2.875 Y.688 G01 Z-.0625 G01 Y.923 G01 X2.985 Y.688 G01 Z.1 G01 X3 Y1.313 G01 Z-.0625 G01 Y1.077 G01 X2.875 Y1.323 G01 Z.1 M06 T04; SELECT TOOL 4 DIA .125 G01 X2.6875 Y1.3755; ALIGN FOR N BORDER G01 Z-.0625 G01 Y0.6875; N IS COMPLETE; STARTING LETTER W G01 X2.065 G01 X2.094 Y.7035 G01 X2.6875 G01 X2.406
7
G01 X2.250 Y.988 G01 X2.095 Y.7035 G01 X2.22 Y.863 G01 X2.281 Y.7035 G01 Z.1 M06 T03; SELECT TOOL 3 G01 X2.015 Y1.313 G01 Z-.0625 G01 X2.094 Y1.09 G01 X2.173 Y1.313 G01 Z.1 G01 X2.327 G01 Z-.0625 G01 X2.406 Y1.077 G01 X2.485 Y1.313 G01 Z.1 M06 T04; CHANGE TO TOOL 4 G01 X2.6875 G01 Z-0.0625 G01 X2.4685 Y.766 G01 X2.5935 G01 Y1; LAST EDGE OF W G01 Z.1 G01 X1.8125 Y1.313 G01 Z-.0625 G01 X2.0625 Y.688; STARTING LETTER A G01 Z.1 G01 X1.4375 Y.688 G01 Z-.0625 G01 X1.6875 Y1.313 G01 Z.1 G01 X1.6255 Y.688 G01 Z-.0625 G01 X1.655 Y.750 G01 X1.845 G01 X1.8745 Y.688; STARTING LETTER P G01 Z.1 G01 X1.4385 G01 Z-.0625 G01 Y1 G91 G03 X0 Y0.3755 I0 J.1875
8
3.2 Pawn Body
G90; G70; M06 T05; G00 X0.5 Z2.188; M03 S2000; G01 X-0.03 F5; G00 X0.4; G00 Z3.5 M06 T01; G00 Z2.188 X.38; G01 X0.325 F10; G01 Z0.946; G00 Z2.188; G00 X0.275 G01 Z1.913; G00 Z2.188; G00 X0.225; G00 Z1.963; G00 Z2.188; G00 X0.175; G01 Z2.013; G00 Z2.188; G00 X0.125; G01 Z2.063; G00 Z2.188; G00 X0.075; G01 Z2.113; G00 Z2.188; G00 X0; G01 Z1.875 X0.313; G01 Z1.352; G01 X0.275; G01 Z0.969; G00 Z1.283; G01 X0.225; G01 Z1.036; G00 Z1.225; G01 X0.188; G01 Z1.103; G00 Z1.225; G01 X0.17; G01 Z1.103; G01 X0.5; G00 X0.5 Z3.5
9
M06 T03; G00 Z0.816; G00 X0.4; M03; G01 X0.375; G03 X0.333 Z0.909 I0.25 K0.816; G02 X0.13 Z1.3 I0.75 K1.375; G02 X0.138 Z1.326 I0.161 K1.304; G01 X0.188 Z1.408; G00 X0.38; G01 Z1.352; G01 X0.263; G01 Z1.705; G00 Z1.283; G01 X0.213; G01 Z1.646; G00 Z1.225; G01 X0.188; G01 Z1.625; G00 Z1.569; G01 X0.125; G02 X0.142 Z1.597 I0.156 K1.569; G03 X0.313 Z1.875 I0 K1.875; G00 X0.5 Z3.5 M06 T01; G00 Z1.5; G01 X0.125; G01 Z1.45; G03 X0.134 Z1.428 I0.156 K1.45; G01 X0.188 Z1.343; G00 X1 Z3.5; M02; M05; M30;
10
4 Robotic Assembly / ACL Code
The following section is the ACL code for the robot. Refer to the Appendix for the
Intelitek Reports.
Figure 3: Starting the Program Figure 4: Positioning the Base and Getting Ready to Grab the Body
Figure 5: Positioning the Body Figure 6: Moving towards the Workspace
Figure 7: Putting Base on Workspace
Figure 8: Grabbing the Body
11
Figure 9: Moving the Body to Assembly Figure 10: Moving Assembly
Figure 11: Putting Assembled Product at the Origin
The two manufactured parts travel throughout the set up using pallets on a conveyor belt,
and those pallets can be stop at various location using small pistons. The pallets carrying
the parts are stop next to the working area. The robotic arm then grabs the pallet holding
the body, and positions it in the intermediate area. The robot then grabs to the other pallet
and positions it in the same area. The body is then moved to the assembly jib for
assembly. The robot then grabs the body of the pawn, rotates it 90 degrees in order to
have the body vertical, and proceed to assembling the two parts by setting the body in the
corresponding slot on the base.
The assembly is then grabbed by the robot, put back on the pallet, and the pallet is moved
to the conveyor belt.
12
Below is the example of the robot programming code, which was used to perform robotic
arm movement between the predetermined positions.
Set Subroutine GET_CYL_RACK Go to Position 25 Speed 50 (%) Go to Position 2 Fast Go to Position 8 Speed 50 (%) Open Gripper Go Linear to Position 7 Speed 10 (%) Close Gripper Go Linear to Position 8 Speed 50 (%) Go to Position 2 Fast Return from Subroutine Set Subroutine GET_BLOCK_TEMPLATE Go to Position 2 Fast Go to Position 17 Speed 50 (%) Open Gripper Go Linear to Position 18 Speed 10 (%) Close Gripper Go Linear to Position 17 Speed 50 (%) Go to Position 2 Fast Return from Subroutine Set Subroutine GET_CYL_TEMP Go to Position 2 Fast Go to Position 10 Speed 50 (%) Open Gripper Go Linear to Position 15 Speed 10 (%) Close Gripper Go Linear to Position 10 Speed 50 (%) Go to Position 2 Speed 50 (%) Return from Subroutine Set Subroutine PUT_CYL_RACK Ring Bell Go to Position 2 Fast Go to Position 8 Speed 50 (%) Go Linear to Position 7 Speed 10 (%) Open Gripper Go Linear to Position 8 Speed 50 (%) Go to Position 2 Fast Return from Subroutine Set Subroutine PUT_BLOCK_RACK Ring Bell Go to Position 2 Fast Go to Position 4 Speed 50 (%) Go Linear to Position 3 Speed 10 (%)
13
Open Gripper Go to Position 4 Speed 50 (%) Go to Position 2 Fast Return from Subroutine Set Subroutine GET_BLOCK_RACK Ring Bell Go to Position 2 Fast Go to Position 4 Speed 50 (%) Open Gripper Go Linear to Position 3 Speed 10 (%) Close Gripper Go to Position 4 Speed 50 (%) Go to Position 2 Fast Return from Subroutine Set Subroutine PUT_CYL_CUBE Go to Position 39 Speed 50 (%) Go to Position 44 Speed 10 (%) Open Gripper Return from Subroutine Set Subroutine PUT_BLOCK_CUBE Go to Position 25 Speed 50 (%) Go to Position 36 Speed 10 (%) Open Gripper Return from Subroutine Set Subroutine GET_BLOCK_CUBE Go to Position 41 Speed 50 (%) Go to Position 25 Speed 50 (%) Go to Position 36 Speed 10 (%) Close Gripper Go to Position 25 Speed 50 (%) Go to Position 2 Speed 50 (%) Go to Position 4 Speed 50 (%) Go to Position 56 Speed 10 (%) Open Gripper Return from Subroutine Set Subroutine PUT_BLOCK_TEMPLATE Ring Bell Go to Position 2 Fast Go to Position 14 Speed 50 (%) Go Linear to Position 24 Speed 10 (%) Open Gripper Go to Position 13 Fast Close Gripper Go to Position 2 Fast Return from Subroutine Set Subroutine ASSEMBLY
14
Call Subroutine GET_BLOCK_TEMPLATE Call Subroutine PUT_BLOCK_RACK Call Subroutine GET_CYL_TEMP Call Subroutine PUT_CYL_RACK Call Subroutine GET_BLOCK_RACK Call Subroutine PUT_BLOCK_CUBE Call Subroutine GET_CYL_RACK Call Subroutine PUT_CYL_CUBE Call Subroutine GET_BLOCK_CUBE Return from Subroutine
15
5 Mixed model production
Using Open CIM, the production simulation of the 4 pieces manufactured in the lab was
run. The process times for each piece are in the following table.
Table 1: Process Times
Lathe (mins) Mill (mins)
Rook 2:10 7:00
King 2:45 6:15
Bishop 1:20 7:36
Pawn 1:55 6:49
The machine’s algorithm was 40% FIFO, 20% Random and 40% SPT. The simulation
was started and the obtained results in form of report are attached in the Appendix. The
system followed a FIFO (First In First Out) during 40% of the time and had a random
process during 20% of the time.
The following figure is the value stream map of the production line for the 4 pieces
manufactured during the lab sessions. The raw material is ordered by the lab instructors
from the supplier and then goes on the conveyor belt until it is manufactured through 2
processes: lathe and milling, and then goes back to the conveyor belt until it is given to
each team.
16
Figure 12
: Value Stream M
ap
17
6 System Optimization
After writing the G-code and the ACL code for the robot arm, some points that needed to
be improved were taken into consideration. During the observation of the piece being
manufactured, several changes will be discussed.
While manufacturing the base, the program had to be stopped and the process had to be
interrupted twice in order to modify the G-code because the tool was about to touch the
base of the machine, a move that would damage the instruments. The lab instructor
proofread the code. However, to obtain a perfect code without wasted moves, a
simulation had to be made on the machine. If batches of pawns and bases were to be
produced, many simulations would have to be done and the code would have to be
improved in order to have an optimized process. In order to fix this problem, an extension
to the software that alarms the user while coding when the tool goes near the machine’s
instruments could be implemented, instead of doing several tests on the piece and wasting
time. While manufacturing the base, a bigger tool could have been used to reduce the
number of passes required to do the outside of the letters, which would have allowed to
save time.
The robot arm had unnecessary moves that could removed from the ACL code and
therefore improve the process time and minimize the cost of production. Some pieces
were not placed right into their base and the intervention of the operator was needed.
Overall, eliminating wastes is the key to optimize the process.
18
7 Conclusion
The project was a success, as the pieces were manufactured without any problem and in a
very acceptable time. The finish product is conforming to the specifications.
Possible sources of error come from the milling and turning process, as tool wear out and
can be misaligned with the piece, therefore reducing precision. Reducing to a minimum
the number of operation can also reduce the chances of error.
In terms of programming, the absolute limits for the tool should be better defined when
writing the code. When running the program on the computer, neither warning nor
problem came up, but the manufacturing process had to be stopped because the tool
might have hit the surrounding instruments.
During the milling process for the base, concerning the slots around the letters, tool T01
was used, while a bigger tool was available. It does not change anything in terms of
quality, however use of tool T02 would have made the process a bit faster, as fewer pass
would have been required, and therefore the code should be updated should this program
be used again.
19
Appendix