1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Nghiên cứu giải pháp dùng tay máy cho bài toán lưu trữ, trích xuất bình gas trong hệ thống phân phối

73 253 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 73
Dung lượng 5,56 MB

Nội dung

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM - NGÔ PHONG CƯỜNG NGHIÊN CỨU GIẢI PHÁP DÙNG TAY MÁY CHO BÀI TOÁN LƯU TRỮ, TRÍCH XUẤT BÌNH GAS TRONG HỆ THỐNG PHÂN PHỐI LUẬN VĂN THẠC SĨ Chuyên ngành: Kỹ thuật Cơ điện tử Mã số ngành: 60520114 TP HỒ CHÍ MINH, tháng 02 năm 2014 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM - NGÔ PHONG CƯỜNG NGHIÊN CỨU GIẢI PHÁP DÙNG TAY MÁY CHO BÀI TOÁN LƯU TRỮ, TRÍCH XUẤT BÌNH GAS TRONG HỆ THỐNG PHÂN PHỐI LUẬN VĂN THẠC SĨ Chuyên ngành : Kỹ thuật Cơ điện tử Mã số ngành: 60520114 HƯỚNG DẪN KHOA HỌC: TS.NGUYỄN DUY ANH CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TP HỒĐẠI CHÍHỌC MINH, thángNGHỆ 02 nămTP 2014 TRƯỜNG CÔNG HCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM lậpANH – Tự – Hạnh phúc Cán hướng dẫn khoa học: TS NGUYỄNĐộc DUY (Ghi rõ họ, tên, học hàm, học vị chữ ký) Luận văn Thạc sĩ bảo vệ Trường Đại học Công nghệ TP HCM ngày 25 tháng 01 năm 2014 Thành phần Hội đồng đánh giá Luận văn Thạc sĩ gồm: (Ghi rõ họ, tên, học hàm, học vị Hội đồng chấm bảo vệ Luận văn Thạc sĩ) Họ tên TS Ngô Cao Cường PGS.TS Nguyễn Tấn Tiến TS Nguyễn Hùng TS.Võ Hoàng Duy TS Nguyễn Quốc Hưng Chức danh Hội đồng Chủ tịch Phản biện Phản biện Ủy viên Ủy viên, Thư ký Xác nhận Chủ tịch Hội đồng đánh giá Luận sau Luận văn sửa chữa (nếu có) Chủ tịch Hội đồng đánh giá LV TRƯỜNG ĐH CÔNG NGHỆ TP HCM PHÒNG QLKH – ĐTSĐH TP HCM, ngày 12 tháng 06 năm 2013 NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: NGÔ PHONG CƯỜNG Giới tính: Nam Ngày, tháng, năm sinh: 20/09/1968 Nơi sinh: Thừa Thiên Huế Chuyên ngành: Kỹ thuật Cơ điện tử MSHV: 1241840001 I- Tên tài: đề NGHIÊN CỨU GIẢI PHÁP DÙNG TAY MÁY CHO BÀI TOÁN LƯU TRỮ, TRÍCH XUẤT BÌNH GAS TRONG HỆ THỐNG PHÂN PHỐI II- Nhiệm vụ nội dung: - Thiết kế bố trí sản phẩm nhà kho, sử dụng tay máy (robot) gắp sản phẩm - nhập xuất lưu trữ Lựa chọn robot phù hợp để đáp ứng yêu cầu Phân tích động học thuận nghịch robot chọn Đề xuất giải thuật nhập xuất xếp sản phẩm nhà kho, mô Kết mô kết luận III- Ngày giao nhiệm vụ: 12/06/2013 IV- Ngày hoàn thành nhiệm vụ: 30/12/2013 V- Cán hướng dẫn: TS.NGUYỄN DUY ANH CÁN BỘ HƯỚNG DẪN CHUYÊN NGÀNH KHOA QUẢN LÝ (Họ tên chữ ký) (Họ tên chữ ký) LỜI CAM ĐOAN Tôi xin cam đoan công trình nghiên cứu riêng Các số liệu, kết nêu Luận văn trung thực chưa công bố công trình khác Tôi xin cam đoan giúp đỡ cho việc thực Luận văn cảm ơn thông tin trích dẫn Luận văn rõ nguồn gốc Học viên thực Luận văn Ngô Phong Cường LỜI CÁM ƠN Trong suốt thời gian tham gia học chương trình cao học thực luận văn thạc sĩ, nhận giảng dạy, giúp đỡ, hướng dẫn, góp ý nhiều quý Thầy Cô môn Cơ điện tử, khoa Cơ điện tử Trường Đại học Công Nghệ Tp.HCM quí Thầy Cô Trường Đại học Bách Khoa Tp HCM Trước tiên, chân thành cám ơn quý Thầy tham gia giảng dạy chương trình cao học ngành Cơ điện tử, giúp tích lũy thêm kiến thức sâu rộng chuyên môn, cung cấp cho biện pháp nghiên cứu lĩnh vực điều khiển Tôi chân thành gửi lời cám ơn sâu sắc đến Thầy Tiến sĩ Nguyễn Duy Anh, người Thầy giảng dạy, hướng dẫn góp ý giúp hoàn thành luận văn thạc sĩ TpHCM, ngày17 tháng 11 năm 2013 Học viên Ngô Phong Cường TÓM TẮT Hiện nhu cầu sử dụng bình gas dân dụng 12 kg ngày nhiều dẫn đến nhu cầu xây dựng nhà kho nhỏ có chức phân phối bình gas đến người tiêu dùng lớn Từ trạng vấn đề tự động hóa công việc lưu trữ, xếp, phân phối nhà kho cần thiết nhằm tăng hiệu công việc Mục tiêu luận văn đưa phương án tự động hóa công việc xếp bình gas nhà kho, cụ thể lựa chọn robot để thực công việc Đề tài tập trung giải phần sau:  Đưa phương án lựa chọn robot phù hợp với yêu cầu  Mô robot phần mềm 3D thể kết cấu hoạt động robot  Đưa giải thuật xếp kho: - Tối ưu hóa đường robot việc xếp sản phẩm nhà kho - Phân phối sản phẩm theo phương pháp sản phẩm nhập trước xuất trước(FIFO-“first-in-first-out”) - Mô robot phần mềm 3D thể hoạt động nhập xuất xếp sản phẩm robot nhà kho ABSTRACT Nowadays, the demand for using of 12kg civil gas tanks has increased This leads to the set up of small warehouses which its function is distributing gas to consummers has also increased As the current state, the issue of automatize storage, arrangement and distribution in the warehouses is essential to improve work efficiency The main objective of this thesis (essay) is to suggest a soution for arranging the gas tanks in the warehouses automatically- using a robot to handle this job is one among options Thesis focuses on the following sections:  Providing alternative plans in design, analyzing, evaluating and opting the plans in accordance with the requirements  Simulating 3D robot on a software representing structure and operation of the robot  Providing warehouse arrangement algorithm: - Optimization of robot paths in arranging items in a warehouse - Item distribution by FIFO (First-In-First-Out) method - 3D Robot simulation on a software showing I/O operation of items in the warehouse 10 MỤC LỤC 10 SUCCESS = xlswrite('D:\LV_ngophongcuong_huteach\nhap30.12\nhap\trongso1.xls',trongso); elseif(SoBinhNhap == 2) SUCCESS = xlswrite('D:\LV_ngophongcuong_huteach\nhap30.12\nhap\trongso2.xls',trongso); elseif(SoBinhNhap == 1) SUCCESS = xlswrite('D:\LV_ngophongcuong_huteach\nhap30.12\nhap\trongso3.xls',trongso); elseif(SoBinhNhap == 0) SUCCESS = xlswrite('D:\LV_ngophongcuong_huteach\nhap30.12\nhap\trongso4.xls',trongso); end end length_plot = size(x_plot); doc = length_plot(1,1); ngang = length_plot(1,2); for i = 1:ngang for j = 1:doc if (x_plot(j,i) x_plot(j,i) end if (y_plot(j,i) y_plot(j,i) end if (z_plot(j,i) z_plot(j,i) end end end x_BaseRobot = [8 y_BaseRobot = [4 4 == 0) = x_plot(j-1,i); == 0) = y_plot(j-1,i); == 0) = z_plot(j-1,i); 8 8 4 8 4]; 4]; figure(1) plot3(x_plot(:,1),y_plot(:,1),z_plot(:,1),'LineWidth',5); hold on; plot(x_BaseRobot,y_BaseRobot,'r','LineWidth',2); xlabel('truc x'); ylabel('truc y'); zlabel('truc z'); grid on; figure(2) plot3(x_plot(:,2),y_plot(:,2),z_plot(:,2),'LineWidth',5); hold on; plot(x_BaseRobot,y_BaseRobot,'r','LineWidth',2); xlabel('truc x'); ylabel('truc y'); zlabel('truc z'); grid on; figure(3) plot3(x_plot(:,3),y_plot(:,3),z_plot(:,3),'LineWidth',5); hold on; plot(x_BaseRobot,y_BaseRobot,'r','LineWidth',2); xlabel('truc x'); 59 ylabel('truc y'); zlabel('truc z'); grid on; figure(4) plot3(x_plot(:,4),y_plot(:,4),z_plot(:,4),'LineWidth',5); hold on; plot(x_BaseRobot,y_BaseRobot,'r','LineWidth',2); xlabel('truc x'); ylabel('truc y'); zlabel('truc z'); grid on; SUCCESS = xlswrite('D:\LV_ngophongcuong_huteach\nhap30.12\nhap\myworkbook.xls',move); Chương trình xác định vị trí nhập sản phẩm function [x_input_end,y_input_end,z_input_end,empty] = find_input_position(x_area,y_area,work_area,x_input_begin,y_input_begin,x_output_ end,y_output_end,date_input) empty = 0; tang1 = 0; trongso_input_end = 500; for x_input_end = 1:x_area for y_input_end = 5:y_area if(work_area(y_input_end,x_input_end,1) == 0) tang1 = 1; tam = abs(x_input_end - x_input_begin) + abs(y_input_end y_input_begin) + abs(x_input_end - x_output_end) + abs(y_input_end y_output_end); if (tam < trongso_input_end) tam_x_input_end = x_input_end; tam_y_input_end = y_input_end; trongso_input_end = tam; end end end end %tang1 = 0;%test %trongso_input_end = 100;%test if (tang1 == 1) x_input_end = tam_x_input_end; y_input_end = tam_y_input_end; z_input_end = 1; empty = 1; end if (tang1 == 0) for x_input_end = 1:x_area for y_input_end = 5:y_area if(work_area(y_input_end,x_input_end,2) == 0) tam = abs(x_input_end - x_input_begin) + abs(y_input_end y_input_begin) + abs(x_input_end - x_output_end) + abs(y_input_end y_output_end) + 0.9*date_input(y_input_end,x_input_end,1); if (tam < trongso_input_end) tam_x_input_end = x_input_end; tam_y_input_end = y_input_end; trongso_input_end = tam; 60 empty = 1; end end end end if (empty == 1) x_input_end = tam_x_input_end; y_input_end = tam_y_input_end; z_input_end = 2; end end if (empty == 0) x_input_end = 0; y_input_end = 0; z_input_end = 0; end chương trình tính khoảng cách function ketqua = TINHTRONGSO(x_begin,y_begin,x_end,y_end,trongso,work_area,y_area,x_area) trongso = ones(y_area,x_area); trongso = trongso*100; if (x_end > x_begin) step_x = 1; elseif (x_end < x_begin) step_x = -1; elseif (x_end == x_begin) step_x = 0; end if (y_end > y_begin) step_y = 1; elseif (y_end < y_begin) step_y = -1; elseif (y_end == y_begin) step_y = 0; end if(x_begin ~= x_end) for x = x_begin:step_x:x_end for y = y_begin:step_y:y_end buoc_tam = 0; y_move = y; x_move = x; if(work_area(y_move,x_move) ~= 10) while (y_move ~= y_end) y_move = y_move + step_y; if(work_area(y_move,x_move) == 10) y_move = y_move - step_y; x_move = x_move + step_x; end buoc_tam = buoc_tam + 1; end while (x_move ~= x_end) if(x_move < x_end) step_x_tam = 1; x_move = x_move + step_x_tam; else step_x_tam = -1; x_move = x_move + step_x_tam; 61 end if(work_area(y_move,x_move) == 10) x_move = x_move - step_x_tam; y_move = y_move + step_y; end buoc_tam = buoc_tam + 1; end trongso(y,x) = buoc_tam; end end end elseif (x_begin == x_end) for y = y_begin:step_y:y_end buoc_tam = 0; y_move = y; x_move = x_begin; if(work_area(y_move,x_move) ~= 10) while (y_move ~= y_end) y_move = y_move + step_y; if(work_area(y_move,x_move) == 10) y_move = y_move - step_y; x_move = x_move + step_x; end buoc_tam = buoc_tam + 1; end while (x_move ~= x_end) if(x_move < x_end) step_x_tam = 1; x_move = x_move + step_x_tam; else step_x_tam = -1; x_move = x_move + step_x_tam; end if(work_area(y_move,x_move) == 10) x_move = x_move - step_x_tam; y_move = y_move + step_y; end buoc_tam = buoc_tam + 1; end trongso(y,x_begin) = buoc_tam; end end end for i = 4:8 for j = 4:8 trongso(j,i) = 500; end end for i = 1:12 trongso(12,i) = 500; trongso(i,12) = 500; end ketqua = trongso; Chương trình tìm đường function [ketqua,buoc,x_plot,y_plot,z_plot] = TIM_DUONG (x_begin,y_begin,z_begin,x_end,y_end,z_end,move,buoc,work_area,trongso,x_plot,y_p lot,z_plot,SoBinhNhap) 62 x_current = x_begin; y_current = y_begin; di_batdau = buoc; z_dichuyen = 2; buoc_ve = 1; move(buoc,1) = x_current; move(buoc,2) = y_current; move(buoc,3) = z_begin; x_plot(buoc_ve,5 - SoBinhNhap) = x_current; y_plot(buoc_ve,5 - SoBinhNhap) = y_current; z_plot(buoc_ve,5 - SoBinhNhap) = z_begin; buoc = buoc + 1; buoc_ve = buoc_ve + 1; move(buoc,1) = x_current; move(buoc,2) = y_current; x_plot(buoc_ve,5 - SoBinhNhap) = x_current; y_plot(buoc_ve,5 - SoBinhNhap) = y_current; buoc = buoc + 1; buoc_ve = buoc_ve + 1; if (x_end > x_begin) step_x = 1; elseif (x_end < x_begin) step_x = -1; elseif (x_end == x_begin) step_x = 0; end if (y_end > y_begin) step_y = 1; elseif (y_end < y_begin) step_y = -1; elseif (y_end == y_begin) step_y = 0; end while (x_current ~= x_end || y_current ~= y_end) if (x_current + step_x > 0) if ((trongso(y_current,x_current + step_x) y_begin) step_y = 1; elseif (y_end < y_begin) step_y = -1; elseif (y_end == y_begin) step_y = 0; end while (x_current ~= x_end || y_current ~= y_end) if (x_current + step_x > 0) if ((trongso(y_current,x_current + step_x)

Ngày đăng: 05/09/2017, 21:05

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w