Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 139 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
139
Dung lượng
3,71 MB
Nội dung
ABSTRACT We now live in a culture where robots are utilized to accomplish both simple and sophisticated activities, assisting humans in performing repetitive, dangerous, and demanding duties or maybe extremely challenging There are many types of industrial robots created in areas such as manufacturing, military surveillance, weapons, medicine and healthcare, transportation, and safer and more efficient research The primary goal of this project is to investigate how to build, simulate, and operate a robot arm model that can move freely in a plane (Planar robot arm) using a ring control method using Servo and Step motors From there, the initiative wants to contribute to the open loop technique of robotics research work in college and university laboratories Cable robots are structurally similar to parallel-actuated robots, but with the fundamental difference that cables can only pull the end-effector, but not push it These input constraints make feedback control of cable robots a lot more challenging than standard robots In this project, we present a computationally efficient control design procedure for a cable robot with two cables, which is kinematically determined as long as all cables are in tension The control strategy is based on dynamic aspects of a statically feasible workspace This computational framework is recursively used to find a set of reachable domains, using which, we are able to expand the region of feasibility by connecting adjacent domains through common points The salient feature of the technique is that it is computationally efficient, or online implementable, for the control of a cable robot with positive input constraints However, due to the complexity of the dynamics of the general motion of a cable robot No cable interference is considered in this project Finally, the effectiveness of the proposed method is illustrated by numerical simulations and laboratory experiments on a two-degree-of-freedom cable robot With what has been stated, together with the enthusiastic working spirit and the ultimate help of the instructor, the group has completed the thesis " DESIGN AND MANUFACTURE OF CABLE-DRIVEN SERIAL ROBOT." Page | ix TÓM TẮT Giờ đây, sống văn hóa nơi người máy sử dụng để thực hoạt động đơn giản tinh vi, hỗ trợ người thực nhiệm vụ lặp lặp lại, nguy hiểm địi hỏi cao thách thức Có nhiều loại robot cơng nghiệp tạo lĩnh vực sản xuất, giám sát quân sự, vũ khí, y học chăm sóc sức khỏe, giao thơng vận tải, nghiên cứu an tồn hiệu Mục tiêu dự án nghiên cứu cách xây dựng, mô vận hành mơ hình cánh tay robot di chuyển tự mặt phẳng (cánh tay robot Planar) phương pháp điều khiển vòng sử dụng động Servo Step Từ đó, sáng kiến mong muốn đóng góp vào kỹ thuật vịng mở cơng việc nghiên cứu chế tạo robot phịng thí nghiệm cao đẳng đại học Robot cáp có cấu trúc tương tự robot hoạt động song song, có khác biệt dây cáp kéo thiết bị tác động cuối khơng thể đẩy Những ràng buộc đầu vào làm cho việc kiểm sốt phản hồi rơ bốt cáp khó khăn nhiều so với rơ bốt tiêu chuẩn Trong dự án này, chúng tơi trình bày quy trình thiết kế điều khiển hiệu mặt tính tốn cho rơ bốt cáp có hai dây cáp, xác định động học miễn tất dây cáp trạng thái căng Chiến lược kiểm soát dựa khía cạnh động khơng gian làm việc khả thi mặt tĩnh Khung tính tốn sử dụng đệ quy để tìm tập hợp miền truy cập, cách sử dụng chúng, chúng tơi mở rộng vùng khả thi cách kết nối miền liền kề thông qua điểm chung Đặc điểm bật kỹ thuật hiệu mặt tính tốn, triển khai trực tuyến, để điều khiển robot cáp với ràng buộc đầu vào tích cực Tuy nhiên, phức tạp động lực học chuyển động chung robot cáp Khơng có nhiễu cáp xem xét dự án Cuối cùng, hiệu phương pháp đề xuất minh họa mơ số thí nghiệm phịng thí nghiệm rơ bốt cáp hai bậc tự Với nêu, với tinh thần làm việc hăng say giúp đỡ tận tình thầy hướng dẫn, nhóm hồn thành khóa luận “THIẾT KẾ VÀ THI CÔNG ROBOT NỐI TIẾP ĐIỀU KHIỂN BẰNG CÁP” Page | x TABLE OF CONTENT NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP I PHIẾU NHẬN XÉT ĐỒ ÁN TỐT NGHIỆP II PHIẾU NHẬN XÉT ĐỒ ÁN TỐT NGHIỆP V ACKNOWLEDGEMENTS VIII ABSTRACT IX TÓM TẮT X TABLE OF CONTENT XI LIST OF ACRONYMS USED IN THIS REPORT XIII LIST OF TABLES XIV APPENDIX XV CHAPTER 1: INTRODUCTION 1.1 Overview and issues: 1.2 Limit the scope of the study 1.3 Research Methods 1.4 Contents presented in chapters CHAPTER 2: THEORETICAL BASIS 2.1 Definition of robot 2.2 Types of industrial robots and their application 2.3 Classification of robots 2.4 Forward kinematics [2] 2.5 Inverse Kinematics [2] 10 2.6 Plan the trajectory of the robot [2] [3] 11 2.7 Jacobi and Velocity Dynamics [2] 13 2.8 Robot dynamics [2] 14 2.9 Robot controller [2] 16 2.10 Sensor equipped on the robot [2] 19 2.11 Communication I2C bus [4] 22 CHAPTER 3: DESIGN AND CONSTRUCTION OF HARDWARE FOR CABLE DRIVEN ROBOT 25 3.1 Mechanical design 25 3.2 Flexural strength test [5] 25 3.3 Joint Torques Calculations 32 3.4 Sort and choose the right cable type [6] 35 3.5 Electrical design 37 3.6 Hardware Construction 38 Page | xi CHAPTER 4: ALGORITHMS AND METHODS CONTROLLERS OF ROBOT 60 4.1 Block diagram of the system 60 4.2 The forward and reverse kinetics of the robot 62 4.3 Workspace and trajectory plan for robots [3] 65 4.4 Jacobi and velocity dynamics [2] 75 4.5 Calculating the dynamics of the cable robot [2] 75 4.6 Design a simulation program on Matlab-Simulink with Simscape 79 4.7 Computed-Torque Control simulation with differential function [11] 81 4.8 Design realistic model control program via Matlab Simulink 93 CHAPTER 5: PROJECT RESULTS 96 5.1 Simulation results 96 5.2 Actual results 98 CHAPTER 6: CONCLUSIONS AND DEVELOPMENT ORIENTATIONS 99 6.1 Criteria for experimentation 99 6.2 Conclusion 99 6.3 Acquired Knowledge: 99 6.4 Limitations of the topic: 100 6.5 Direction of Development 100 REFERENCES 101 MAIN CODE APPENDIX 102 Page | xii LIST OF ACRONYMS USED IN THIS REPORT D-H Denavit – Hartenbegr IOT Internet Of Things AI Artificial Intelligence LVDT Linear Variable Differential Transformer CNC Computer(ized) Numerical(ly) Control(led) I2C Inter-Integrated Circuit SDA Serial Data Line SCL Serial Clock Line ACK Acknowledge NACK Not Acknowledge CB Circuit Breaker Page | xiii LIST OF TABLES Table 1: D-H parameter sheet Table 1: Table technical specification of Cable [7] 36 Table 2: Specifications of Servo driver Mitsubishi MR-J2S-20A 42 Table 3: Specifications of Servo Motor HC-KFS23 43 Table 4: General specifications of Encoder Omron E6B2 – CWZ6C 44 Table 5: Specifications of Arduino UNO R3 45 Table 6: Specifications of Arduino MEGA 2560 46 Table 7: Specifications of CB 2P 16A Panasonic BBD2162CNV 47 Table 8: Specifications of Pulse Input 220VAC Out 24V 5A 120W 48 Table 9: Specifications of Reusable x 300 mm Plastic Drawstring 49 Table 10: Specifications of Terminal Block Switchboard 12 Pole 25A 600V 50 Table 11: Specifications of Terminal Block Switchboard Pole 25A 600V 50 Table 12: Specifications of Plastic Troughs for Electrical Wiring 51 Table 13: Specifications of Emergency Stop -LAY37-11ZS 52 Table 14: Specifications of Spiral Wire Wrap Cable 53 Table 15: Specifications of Hold Button With LED 220V-LA38-11DNZS 54 Table 16: Specifications of Signal Lights 10mm 55 Table 17: Specifications of LM2596 56 Table 18: Specifications of Round Cosse Head 57 Table 19: Specifications of Module Opto 58 Table 20: Specifications of Cosse Head Y 58 Table 21: Specifications of Electrical cabinets 600x400x180mm 59 Table 1: Parameter table DH of robot 63 Table 2: Table of robot parameters 76 Page | xiv APPENDIX Figure 1: Robot (Internet) Figure 2: Articulated Robot Arm (Internet) Figure 3: Articulated Robot Arm (Internet) Figure 4: Polar or Spherical Robot Arm (Internet) Figure 5: Polar or Spherical Robot Arm (Internet) Figure 6: Modeling joints and links robot [2] Figure 7: Block diagram of the Robot Control System 16 Figure 8: Open-loop control system (a) Closed-loop control system (b) 17 Figure 9: The robot's arms and legged dynamics [2] 17 Figure 10: Hardware structure of a typical robot control system 18 Figure 11: Basic joint control system block diagram of a typical robot 18 Figure 12: The working principle of the LVDT [2] 21 Figure 13: The incremental encoder disc a single ring [2] 22 Figure 14: The Absolute encoder disk by Gray codes and 8-bit binary codes [2] 22 Figure 15: Start and Stop Conditions [4] 23 Figure 16: Data Acknowledgement [4] 23 Figure 17: I2C Read/Write [4] 24 Figure 18: I2C Register Read/Write [4] 24 Figure 1: Movement type 25 Figure 2: Link SOLIDWORKS 25 Figure 3: Link SOLIDWORDS 26 Figure 4: Link 26 Figure 5: Diagram of forces link 27 Figure 6: Section [5] 27 Figure 7: Section of 1/2 link [5] 28 Figure 8: Circular cross section link [5] 29 Figure 9: Link1 30 Page | xv Figure 10: Diagram of forces 30 Figure 11: Section of 1/2 link [5] 31 Figure 12: Force calculation of joints 32 Figure 13: Stainless steel 3mm cable 7x7 [7] 36 Figure 14: Overview about Controller cabinet 37 Figure 15: Paradigm base before paint 38 Figure 16: Paradigm base before paint 38 Figure 17: Paradigm base before paint 39 Figure 18: Paradigm robot arm 39 Figure 19: Paradigm after paint 40 Figure 20: Paradigm robot arm assembly 40 Figure 21: Paradigm Finish 41 Figure 22: Servo driver Mitsubishi MR-J2S-20A [9] 42 Figure 23: HC-KFS23 [10] 43 Figure 24: Encoder Omron E6B2 - CWZ6C 2000 xung 44 Figure 25: Arduino UNO R3 [8] 45 Figure 26: Arduino MEGA 2560 [8] 46 Figure 27: MCB 2P 16A Panasonic BBD2162CNV [8] 47 Figure 28: Pulse Input 220VAC Out 24V 5A 120W [8] 48 Figure 29: Reusable x 300 mm Plastic Drawstring [8] 49 Figure 30: TB2512 Terminal Block Switchboard 12 Pole 25A 600V [8] 49 Figure 31: TB2506 Terminal Block Switchboard Pole 25A 600V [8] 50 Figure 32: Plastic Troughs for Electrical Wiring [8] 51 Figure 33: Emergency Stop -LAY37-11ZS [8] 52 Figure 34: Spiral Wire Wrap Cable [8] 53 Figure 35: Hold Button With LED 220V-LA38-11DNZS [8] 54 Figure 36: Signal Lights 10mm [8] 55 Figure 37: LM2596 [8] 56 Page | xvi Figure 38: Round Cosse Head [8] 57 Figure 39: Module Opto [8] 58 Figure 40: Cosse Head Y [8] 58 Figure 41: Electrical cabinets 600x400x180mm [8] 59 Figure 1: System block diagram 60 Figure 2: Overview about electrical structure 60 Figure 3: Diagram of the workings 61 Figure 4: Robot model 62 Figure 5: Diagram of robot model with coordinate axis system attached 63 Figure 6: The working space of the Robot Oxy 65 Figure 7: Orbits from A (0;500) to B (200;500) 67 Figure 8: Orbits from A (0;500) to B (0;600) 68 Figure 9: Speed of end impact point 68 Figure 10: Acceleration of end impact point 69 Figure 11: The robot's trajectory is triangle 70 Figure 12: Speed of end impact point 71 Figure 13: Acceleration of end impact point 71 Figure 14: The robot's trajectory is circular 73 Figure 15: Speed of end impact point 74 Figure 16: Acceleration of end impact point 74 Figure 17: Algorithm Diagram 79 Figure 18: Simulate robot with simscape 80 Figure 19: Conver Solidworks to Matlab 80 Figure 20: Linear system 83 Figure 21: PD computed torque structure 83 Figure 22: When Kp=0; Kd=0 84 Figure 23: When Kp=50; Kd=0 84 Figure 24: When Kd=60 Kd=17 85 Page | xvii Figure 25: Diagram of robot model with coordinate axis system attached 85 Figure 26: Simulink block 86 Figure 27: From A (300;600) to B (0;600) 87 Figure 28: Joint angles and feedback (rad) 87 Figure 29: Torque Input (N.m) 88 Figure 30: Tracking error (Rad) 88 Figure 31: Circle with center I (50;600) R=50 89 Figure 32: Joint angles and feedback (rad) 89 Figure 33: Torque Input (N.m) 90 Figure 34: Tracking Error (N.m) 90 Figure 35: Triangle with A (400;400), B (0;500), C (200;600) 91 Figure 36: Joint angles and feedback (rad) 91 Figure 37: Torque Input (N.m) 92 Figure 38: Tracking Error (N.m) 92 Figure 39: The Simulink Support Package for Arduino (Internet) 93 Figure 40: Some blocks in the Simulink Support Package for Arduino 93 Figure 41: The components of an open-loop controller 93 Figure 42: The following controller structure 94 Figure 43: MATLAB to Simscape Multibody (Internet) 94 Figure 44: MATLAB & Simulink 95 Figure 45: GUI interface for interacting with the robot 95 Figure 1: The robot runs in a triangular trajectory 96 Figure 2: The robot runs in a circular trajectory 96 Figure 3: The robot runs in a straight line trajectory 97 Figure 4: Change the height of the first translation joint 97 Figure 5: Change the rotation angle of the 2nd joint 98 Figure 6: The actual model of the project 98 Page | xviii Graduation Report Faculty for High Quality Tranning 'gui_OpeningFcn', @GUide_OpeningFcn, 'gui_OutputFcn', @GUide_OutputFcn, 'gui_LayoutFcn', [] , 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT % - Executes just before GUide is made visible function GUide_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to GUide (see VARARGIN) % Choose default command line output for GUide handles.output = hObject; % Update handles structure guidata(hObject, handles); % - Outputs from this function are returned to the command line function varargout = GUide_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output; Page | 115 Graduation Report Faculty for High Quality Tranning global a ; a=serial('COM6','BaudRate',9600); % - Executes on button press in go function go_Callback(hObject, eventdata, handles) % hObject handle to go (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) global t tmr ; t=0; tmr=timer('TimerFcn',{@TimerCallback,hObject,handles},'P eriod',1,'ExecutionMode','fixedRate'); start(tmr); function TimerCallback(obj, event,hObject, handles) global t tmr tmr0 ; global a; select=get(handles.select,'value'); switch select case %home if t