ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA CƠ KHÍ
ĐỒ ÁN TỐT NGHIỆP
NGÀNH: KỸ THUẬT CƠ ĐIỆN TỬ
ĐỀ TÀI:
THIẾT KẾ VÀ CHẾ TẠO CÁNH TAY ROBOT
5 BẬC TỰ DO PHÂN LOẠI SẢN PHẨM TRÊN
BĂNG TẢI SỬ DỤNG CÔNG NGHỆ XỬ LÝ
ẢNH
Người hướng dẫn: TS. VÕ NHƯ THÀNH
Sinh viên thực hiện: VI ĐÔNG VŨ
LÊ MAI XUÂN
Số thẻ sinh viên
: 101140171
101140172
Lớp: 14CDT1
Đà Nẵng, 2019
ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA CƠ KHÍ
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
1. Điểm đánh giá:
……../10 (lấy đến 1 số lẻ thập phân)
2. Đề nghị: ☐ Được bảo vệ đồ án
☐ Bổ sung để bảo vệ
☐ Không được bảo vệ
Đà Nẵng, ngày
Người hướng dẫn
tháng
năm 201
ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA CƠ KHÍ
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
NHẬN XÉT PHẢN BIỆN ĐỒ ÁN TỐT NGHIỆP
I.
1.
2.
Sinh viên có phương pháp nghiên cứu phù hợp, giải quyết
đủ nhiệm vụ đồ án được giao
Tính mới (nội dung chính của ĐATN có những phần
mới so với các ĐATN trước đây).
Đề tài có giá trị khoa học, công nghệ; có thể ứng dụng
thực tiễn.
80
15
Kỹ năng giải quyết vấn đề; hiểu, vận dụng được kiến
thức cơ bản, cơ sở, chuyên ngành trong vấn đề nghiên cứu.
50
Chất lượng nội dung ĐATN (thuyết minh, bản vẽ,
chương trình, mô hình,…).
Có kỹ năng vận dụng thành thạo các phần mềm ứng
dụng trong vấn đề nghiên cứu;
Có kỹ năng đọc, hiểu tài liệu bằng tiếng nước ngoài 15
ứng dụng trong vấn đề nghiên cứu;
-
Có kỹ năng làm việc nhóm;
2
Kỹ năng viết:
2a
Các tồn tại, thiếu sót cần bổ sung, chỉnh sửa:
………………………………………..…………………………………………………
……………………………………...
2.
Câu hỏi đề nghị sinh viên trả lời trong buổi bảo vệ:
…………………………………………………………………………………………
………………………………...
3.
Đề nghị: ☐ Được bảo vệ đồ án
bảo vệ
Đà Nẵng, ngày
tháng
năm 201…
☐ Bổ sung để bảo vệ
☐ Không được
TÓM TẮT
Tên đề tài: Thiết kế và chế tạo cánh tay 5 bậc tự do phân loại sản phẩm trên
băng tải sử dụng công nghệ xử lí ảnh
Sinh viên thực hiện: Vi Đông Vũ – Lê Mai Xuân
Số thẻ SV: 101140136- 101140151
Lớp: 14CDT1
2.
Đề tài thuộc diện: ☐ Có ký kết thỏa thuận sở hữu trí tuệ đối với kết quả thực
hiện
3.
Các số liệu và dữ liệu ban đầu:
4. Nội dung các phần thuyết minh và tính toán:
a.Phần chung.
STT
Họ và tên
1
Vi Đông Vũ
2
Lê Mai Xuân
Nội dung
Tìm hiểu một số một số cơ cấu ngoài thực tế để đưa ra
ý tưởng tốt nhất.
Tìm hiểu nguyên lí hoạt động , lựa chọn các cơ cấu
phù hợp.
Tìm hiểu tài liệu và phần mềm liên quan.
Hoàn thiện thuyết minh.
1
Bản
Vi Đông Vũ
Bản vẽ tổng thể
A0
Lê Mai Xuân
2
Bản vẽ sơ đồ động
b. Phần riêng
Họ và tên
Nội dung
Bản
vẽ
STT
1
2
Vi Đông Vũ
Trong cách mạng công nghiệp 4.0 việc ứng dụng tự động hóa, trí tuệ nhân tạo vào sản
xuất, kinh doanh là một xu hướng tất yếu nhằm tạo ra năng suất lao động cao. Trên thế
giới đã có nhiều nhà máy sử dụng toàn bộ hệ thống dây chuyền sản xuất tự động hóa,
đưa rô-bốt vào thay thế sức lao động của con người, tạo ra các sản phẩm tốt, độ chính
xác cao. Nhờ vào robot, cuộc sống của chúng ta ngày càng tiện nghi và an toàn hơn.
Thật vậy, robot đang dần thay thế con người trong những công việc nguy hiểm như
cứu nạn, cứu hộ, kiểm tra các môi trường độc hại, những nơi ảnh hưởng trực tiếp đến
sức khoẻ và tính mạng con người. Không chỉ vậy, trong các hộ gia đình, robot đã và
đang giúp chúng ta thực hiện những công việc nhàm chán và mất nhiều thời gian như
lau nhà, hút bụi… nhờ đó chất lượng cuộc sống ngày càng cao hơn.
Kết hợp xu thế phát triển của thời đại cũng những những kiến thức đã học, Nhóm
chúng em đã lựa chọn đề tài: “Thiết kế và chế tạo cánh tay robot 5 bậc tự do phân loại
sản phẩm trên băng tải sử dụng công nghệ xử lí ảnh”.
Trong thời gian làm đồ án, được sự chỉ bảo tận tình của thầy TS. Ngô Thanh Nghị và
TS. Nguyễn Danh Ngọc cùng với sự cố gắng của hai thành viên trong nhóm đến nay
đồ án đã hoàn thành. Tuy nhiên với kiến thức còn hạn chế, kinh nghiệm, kĩ năng còn
thiếu, mặc dù có nhiều cố gắng song nhóm em vẫn còn nhiều thiếu sót cần bổ sung,
hoàn thiện. Kính mong các thầy cô thông cảm và góp ý để đề tài của nhóm em hoàn
thiện hơn và có thể phát triển, ứng dụng trong thời gian sắp tới.
Đà Nẵng, ngày 03 tháng 6 năm 2019
Nhóm sinh viên thực hiện
Vi Đông Vũ
i
Lê Mai Xuân
CAM ĐOAN
2.1. Thiết kế cánh tay robot.......................................................................................... 6
2.1.1 Phân tích lựa chọn phương án . .......................................................................... 6
2.1.2. Tính chọn động cơ cho robot. ............................................................................. 7
2.1.3
Mô phỏng 3D cánh tay robot. ......................................................................... 9
2.1.4
Chọn vật liệu cho robot................................................................................. 10
2.1.5
Thiết kế bộ phận truyền chuyển động cho các khớp của robot .................... 11
Khớp 1 ( Khớp đế ) .................................................................................................... 11
2.2 Thiết kế hệ thống băng tải .................................................................................... 12
2.2.1 Giới thiệu .......................................................................................................... 12
2.2.2 Nguyên lí hoạt động: ........................................................................................ 13
2.2.3 Tính toán và chọn thiết bị cho băng tải. ............................................................. 13
2.2.4. Lựa chọn và tính toán băng tải ......................................................................... 15
2.3
Thiết kế khay chứa sản phẩm ........................................................................... 18
iii
2.4. Sơ đồ động hệ thống. ......................................................................................... 19
Chương 3: THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN ................................................... 22
3.1Sơ đồ khối của hệ thống. ....................................................................................... 22
Thiết kế và chế tạo cánh tay robot 5 bậc tự do phân loại sản phẩm trên băng tải sử dụng công nghệ xử lí ảnh
PHỤ LỤC.
Code Arduino
#include <SerialCommand.h>
#include <AccelStepper.h>
#include <Servo.h>
#define stpbt 12 // output
#define dirbt 13
#define stp1 2
#define stp2 3
#define stp3
#define dir1
#define dir2
#define dir3
4
5
6
7
#define en 8
#define s0Pin 9
#define s1Pin 10
#define h1 0 // home
#define h2 90
#define h3
#define h5
#define e1
#define e2
#define a2 135
#define a3 160
#define a4 45.35
#define d5 92
#define ret 60 //
SerialCommand sc;
AccelStepper stepbt(1,stpbt,dirbt);
AccelStepper step1(1,stp1,dir1);
AccelStepper step2(1,stp2,dir2);
AccelStepper step3(1,stp3,dir3);
Servo sv[2];
bool m,n,t,r;
int w,b;
float A[5];
float th1,th2,th3,th5;
int st1,st2,st3;
int v,cv;
unsigned long tc,tb,tg;
const float des[3][4]={{65,220,50,90},{-30,220,50,90},{-125,220,50,90}};
//-----------------------------------void setup() {
Serial.begin(9600);
Serial.print("Arb\r");
pinMode(en,OUTPUT); digitalWrite(en,1);
step1.setMaxSpeed(1000);
step2.setMaxSpeed(1000);
step3.setMaxSpeed(1000);
step1.setAcceleration(3000);
step2.setAcceleration(4500);
step3.setAcceleration(4500);
stepbt.setMaxSpeed(1000);
runSv();
stepbt.runSpeed();
wait();
grip();
}
//-----------------------------------void Obj(){
if(m&&b){
updateData();
tb=millis();
w=0;
MOVE();
}}
void updateData(){
char *arg;
for(int i=0;i
}
50
SVTH: Vi Đông Vũ
Lê Mai Xuân
GVHD: TS. Ngô Thanh Nghị
TS. Nguyễn Danh Ngọc
Thiết kế và chế tạo cánh tay robot 5 bậc tự do phân loại sản phẩm trên băng tải sử dụng công nghệ xử lí ảnh
//--------------------------------------void Invert(float Px, float Py, float Pz, float Or){
th1=atan2(Py,Px);
float n1=Px*cos(th1)+Py*sin(th1)-a1-a4;
float n2=Pz-d1+d5;
th3=-acos((sq(n1)+sq(n2)-sq(a2*1.0)-sq(a3*1.0))/(2.0*a2*a3));
th2=atan2((n2*(a2+a3*cos(th3))a3*sin(th3)*n1),(n1*(a2+a3*cos(th3))+a3*sin(th3)*n2));
//th4=-th2-th3;
th1*=180/PI; th2*=180/PI;
th3*=180/PI; //th4*=180/PI;
th5=th1-Or;
if (th5>180) th5-=360;
else if (th590) th5-=180;
else if (th5
}
void grip(){
if(r&&((millis()-tg)>=300)){
r=0;
Mv();
}
}
void runSv(){
if(n&&(millis()-tc>=15)){
tc=millis();
int ep;
ep=v-cv;
if(abs(ep)>1){
cv += (ep/abs(ep));
sv[0].write(cv);
}
else{
sv[0].write(v);
cv=v;
checkPos();
}}}
void checkPos(){
if((step1.distanceToGo()==0)&&(step2.distanceToGo()==0)&&(step3.distanceToGo()
==0)&&(cv==v)){
n=0;
if((w!=0)&&(w!=1))
MOVE();
}}
//---------------------------------------void On() {
52
step3.run();
}
while(step2.distanceToGo()){
step2.run();
}
}
void Off(){
m=0; n=0;
Stop();
digitalWrite(en,1);
}
void Home(){
if(m){
w=0; t=0;
th1=h1;
53
SVTH: Vi Đông Vũ
Lê Mai Xuân
GVHD: TS. Ngô Thanh Nghị
TS. Nguyễn Danh Ngọc
Thiết kế và chế tạo cánh tay robot 5 bậc tự do phân loại sản phẩm trên băng tải sử dụng công nghệ xử lí ảnh
th2=h2;
th3=h3;
th5=h5;
M0();
}}
SVTH: Vi Đông Vũ
Lê Mai Xuân
GVHD: TS. Ngô Thanh Nghị
TS. Nguyễn Danh Ngọc
Thiết kế và chế tạo cánh tay robot 5 bậc tự do phân loại sản phẩm trên băng tải sử dụng công nghệ xử lí ảnh
M0();
}}
void G1(){
if(m){
updateData();
Invert(A[0],A[1],A[2],A[3]);
M1();
}}
void unrecognized(){
//Serial.print("?\r");
}
void Th(){
if(m){
updateData();
th1=A[0]; th2=A[1];
th3=A[2]; th5=A[3];
Mv();
}}
55
SVTH: Vi Đông Vũ
handles.output = hObject;
guidata(hObject, handles);
%---------------------bkdn=imread('bkdn.jpg');
ck =imread('ck.jpg');
axes(handles.axes1);
imshow(bkdn);
axes(handles.axes2);
imshow(ck);
%
global n c rx
n=0;
c=0;
rx='';
56
SVTH: Vi Đông Vũ
Lê Mai Xuân
GVHD: TS. Ngô Thanh Nghị
TS. Nguyễn Danh Ngọc
Thiết kế và chế tạo cánh tay robot 5 bậc tự do phân loại sản phẩm trên băng tải sử dụng công nghệ xử lí ảnh
%---------------------function varargout = IRB0_OutputFcn(hObject, eventdata, handles)
varargout{1} = handles.output;
Connect_Callback(@Connect_Callback,eventdata,handles);
%-------------------------------------------------------------------------function figure1_DeleteFcn(hObject, eventdata, handles)
global s
if(strcmp(get(s,'Status'),'open'))
fclose(s);
GVHD: TS. Ngô Thanh Nghị
TS. Nguyễn Danh Ngọc
Thiết kế và chế tạo cánh tay robot 5 bậc tự do phân loại sản phẩm trên băng tải sử dụng công nghệ xử lí ảnh
end
function btnClear_Callback(hObject, eventdata, handles)
set(handles.editTrans,'string','');
function btnSend_Callback(hObject, eventdata, handles)
global s
fprintf(s,get(handles.editTrans,'string'));
set(handles.editTrans,'string','');
function btnSt_Callback(hObject, eventdata, handles)
global s
st=get(hObject,'value');
if (st)
fprintf(s,'start');
set(hObject,'string','Stop');
set(handles.txtStatus,'string','START');
else
fprintf(s,'stop');
set(hObject,'string','Start');
set(handles.txtStatus,'string','STOP');
end
%-------------------------------------------------------------------------function Connect_Callback(obj,eventdata,handles)
global s Rx
c=0;
hwinfo = instrhwinfo('serial');
set(handles.txtRec,'enable','on');
set(handles.btnSend,'enable','on');
set(handles.btnClear,'enable','on');
c=1;
rx='';
break;
else
try fclose(s);
catch
end
end
end
if ~c
set(handles.txtStatus,'foregroundColor','r');
set(handles.txtStatus,'string','Connect failed');
set(handles.btnRetry,'visible','on');
end
else
set(handles.txtStatus,'foregroundColor','r');
set(handles.txtStatus,'string','No available serial port. Check connect');
set(handles.btnRetry,'visible','on');
end
%-----------------function Video_Callback(obj, eventdata, handles)
global video
video=videoinput('winvideo',1);
video.ReturnedColorspace = 'rgb';
vidRes = video.VideoResolution;
59
SVTH: Vi Đông Vũ
Lê Mai Xuân
blue = bwareaopen(blue,25000);
blue = imclearborder(blue);
bwBlue = imfill(blue, 'holes');
axes(handles.axes4);
imshow(I);
hold on
% RED
60
SVTH: Vi Đông Vũ
Lê Mai Xuân
GVHD: TS. Ngô Thanh Nghị
TS. Nguyễn Danh Ngọc