BÁO cáo THỰC tập tốt NGHIỆP kỹ THUẬT điều KHIỂN và tự ĐỘNG HOÁ tại CÔNG TY điện lực THỪA THIÊN HUẾ

36 0 0
BÁO cáo THỰC tập tốt NGHIỆP kỹ THUẬT điều KHIỂN và tự ĐỘNG HOÁ tại CÔNG TY điện lực THỪA THIÊN HUẾ

Đ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

ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA ĐIỆN BÁO CÁO THỰC TẬP TỐT NGHIỆP NGÀNH: KỸ THUẬT ĐIỀU KHIỂN VÀ TỰ ĐỘNG HỐ THỰC TẬP TẠI: CƠNG TY ĐIỆN LỰC THỪA THIÊN HUẾ Sinh viên thực hiện: Lê Thị Minh Liên Trịnh Duy Tuấn Kiệt Người hướng dẫn: GVHD : PGS.TS Lê Tiến Dũng CBHD1: Nguyễn Ngọc Hoài Quang CBHD2: Huỳnh Thế Quốc Thừa Thiên Huế, tháng 3/2023 THỰC TẬP TỐT NGHIỆP HUẾ CÔNG TY ĐIỆN LỰC THỪA THIÊN CƠNG TY ĐIỆN LỰC CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM THỪA THIÊN HUẾ Độc lập – Tự – Hạnh phúc PHIẾU NHẬN XÉT, ĐÁNH GIÁ SINH VIÊN THỰC TẬP TỐT NGHIỆP (Phần đánh giá công ty, doanh nghiệp nơi sinh viên đến thực tập) Thông tin chung: Họ tên sinh viên: Lớp: Mã số sinh viên: Thời gian thực tập: Tên công ty, doanh nghiệp thực tập: Cán hướng dẫn: Chức vụ: Thông tin liên hệ: Email: Đánh giá: Nội dung đánh giá Điểm tối đa - Chuyên cần, thái độ học tập, giao tiếp - Ý thức kỷ luật, chấp hành nội quy, quy định - Kết học tập chun mơn, mức độ hồn thành cơng việc Tổng cộng 10 Điểm đánh giá Nhận xét chung: Xác nhận công ty, doanh nghiệp thực tập ……………, ngày … tháng … năm …… Cán hướng dẫn (Ký ghi rõ họ tên) THỰC TẬP TỐT NGHIỆP HUẾ CÔNG TY ĐIỆN LỰC THỪA THIÊN Nội dung thực tập STT Thời gian 14/2/2023 đến 19/2/2023 20/2/2023 đến 26/2/2023 27/2/2023 đến 5/2/2023 6/2/2023 đến 15/2/2023 Nội dung cơng việc Tìm hiểu chung: + Tổng quan Công ty Điện lực Thừa Thiên Huế + Các phịng, ban Cơng ty + Tổng quan lưới điện Thừa Thiên Huế Giải pháp thu thập diệu công tơ điện từ xa + Hệ thống AMR + Hệ thống DS-PM + Hệ thống RS-SPIDER Thực xử lý ảnh, nhận diện màu sắc hình dạng Python + Tính tốn phương trình động học thuận, động học ngược + Mô ROBOT Solidwork + Mô Matlab&Simulink + Làm mô hình ROBOT THỰC TẬP TỐT NGHIỆP HUẾ CƠNG TY ĐIỆN LỰC THỪA THIÊN MỤC LỤC CHƯƠNG 1: TỔNG QUAN VỀ CÔNG TY ĐIỆN LỰC THỪA THIÊN HUẾ 1.1 Giới thiệu Công ty Điện Lực Thừa Thiên Huế 1.2 Sơ đồ máy tổ chức công ty điện lực Thừa Thiên Huế 1.3 Tổng quan chức nhiệm vụ số Phòng Ban 1.4 Tổng quan lưới điện phân phối Thừa Thiên Huế .10 CHƯƠNG 2: GIẢI PHÁP THU THẬP DỮ LIỆU CÔNG TƠ ĐIỆN TỪ XA 13 2.1 Giới thiệu hệ thống AMR 13 2.1.1 Tổ chức hệ thống .13 2.1.2 Công nghệ thu thập liệu .14 2.2 Hệ thống DSPM 14 2.2.1 Đặc điểm hệ thống 14 2.2.2 Các thành phần hệ thống 15 2.3 Hệ thống RF – SPIDER 16 2.3.1 Đặc điểm hệ thống: .16 2.3.2 Các thành phần hệ thống .16 CHƯƠNG 3: TÌM HIỂU GIẢI PHÁP XỬ LÝ HÌNH ẢNH, NHẬN DIỆN MÀU SẮC VÀ HÌNH DẠNG ĐANG ĐƯỢC TRIỂN KHAI ỨNG DỤNG TẠI CÔNG TY ĐIỆN LỰC THỪA THIÊN HUẾ 18 3.1 Ảnh số không gian màu xử lý ảnh .18 3.1.1 Ảnh raster 18 3.1.2 Ảnh vector 18 3.1.3 Các không gian màu biểu diễn ảnh 19 3.1.4 Chuyển đổi không gian màu OpenCV .20 3.2 Xử lý ảnh với thư viện OpenCV ngôn ngữ Python 20 3.2.1 Làm việc với thư viện OpenCV 20 CHƯƠNG 4: MÔ PHỎNG CÁNH TAY ROBOT 4DOF BẰNG SOILDWORK VÀ MATLABSIMULINK 23 THỰC TẬP TỐT NGHIỆP HUẾ CÔNG TY ĐIỆN LỰC THỪA THIÊN 4.1 Tính tốn động học thuận động học ngược cánh tay robot 4DoF 23 4.1.1 Động học thuận 23 4.1.2 Tính toán động học ngược 24 4.2 Mô SoildWork MatlabSimulink .25 4.2.1 Mô SoildWork 25 4.2.2 Mô MatlabSimulink .25 4.3 Mơ hình cánh tay Robot thực tế .34 THỰC TẬP TỐT NGHIỆP HUẾ CÔNG TY ĐIỆN LỰC THỪA THIÊN CHƯƠNG 1: TỔNG QUAN VỀ CÔNG TY ĐIỆN LỰC THỪA THIÊN HUẾ 1.1 Giới thiệu Công ty Điện Lực Thừa Thiên Huế Công ty Điện lực Thừa Thiên Huế (viết tắt TTHPC) doanh nghiệp thành viên thuộc Tổng công ty Điện lực miền Trung (EVNCPC), hoạt động đa ngành nghề ngành nghề sản xuất kinh doanh điện địa bàn tỉnh Thừa Thiên Huế Tên gọi : Công ty Điện lực Thừa Thiên Huế Tên nước : Thua Thien Hue Power Company Địa Huế : 32 Lý Thường Kiệt, phường Vĩnh Ninh, thành phố Hotline : 19001909 Email : pctth@cpc.vn Số điện thoại : (84-234) 3997999 Hình 1 Trụ sở Cơng ty Điện Lực Thừa Thiên Huế THỰC TẬP TỐT NGHIỆP HUẾ CÔNG TY ĐIỆN LỰC THỪA THIÊN 1.2 Sơ đồ máy tổ chức công ty điện lực Thừa Thiên Huế Công ty Điện lực Thừa Thiên Huế bao gồm: Giám đốc, Phó giám đốc, 13 Phòng ban 10 chi nhánh điện lực trực thuộc 1.3 Tổng quan chức nhiệm vụ số Phòng Ban a) Phòng an toàn - Chức năng: Tham mưu tổ chức thực cơng tác kỹ thuật an tồn, BHLĐ, PCTT&TKCN, PCCN&CNCH bảo vệ hành lang an toàn lưới điện phạm vi Cơng ty quản lý - Nhiệm vụ chính: + Xây dựng kế hoạch AT-VSLĐ, PCTT&TKCN, PCCN&CNCH hàng năm để Ban Giám đốc Công ty xem xét, phê duyệt trình EVNCPC + Tổ chức hướng dẫn, kiểm tra đánh giá việc thực công tác AT-VSLĐ, PCTT&TKCN PCCN&CNCH THỰC TẬP TỐT NGHIỆP HUẾ CÔNG TY ĐIỆN LỰC THỪA THIÊN + Tổ chức huấn luyện, sát hạch quy trình kỹ thuật an tồn định kỳ hàng năm cho công nhân, làm thủ tục cấp thẻ an toàn theo quy định hành + Định kỳ, đột xuất kiểm tra chế độ phiếu công tác, phiếu thao tác, chế độ trực ca vận hành, … + Tổ chức điều tra, thống kê, báo cáo vụ tai nạn lao động cố xảy tồn Cơng ty theo quy định EVNCPC Rút kinh nghiệm, đề xuất biện pháp phòng ngừa xử lý vi phạm + Tổ chức huấn luyện cho cán gián tiếp, mạng lưới an toàn vệ sinh viên đơn vị theo quy định hành + Tổ chức kiểm tra xin cấp phép thiết bị có yêu cầu nghiêm ngặt an toàn Kiểm tra việc quản lý sử dụng thiết bị có u cầu nghiêm ngặt an tồn, cập nhật đầy đủ thông số hồ sơ lý lịch thiết bị + Đề xuất xử lý điểm an tồn lưới + Thực cơng tác kiểm tra đơn vị thực bảo vệ an toàn hành lang tuyến lưới điện theo quy định + Khơng để xảy TNLĐ chủ quan b) Phịng kỹ thuật - - Chức năng: Tham mưu tổ chức thực công tác Quản lý kỹ thuật nguồn lưới điện; Theo dõi hoạt động sáng kiến hợp lý hoá sản xuất nghiên cứu khoa học, triển khai ứng dụng tiến KHCN vào hoạt động SXKD Công ty; Quản lý môi trường chất thải nguy hại Nhiệm vụ chính: + Xây dựng kế hoạch phát triển nguồn, lưới theo phân cấp để đảm bảo việc phát triển đồng đáp ứng việc phát triển phụ tải phù hợp với quy hoạch phát điển KTXH địa phương + Xây dựng bảo vệ tiêu KT hàng năm Công ty với cấp + Thẩm tra giải pháp kỹ thuật + Đề xuất giải pháp, phương án KT, theo dõi đôn đốc đơn vị liên quan thực nghiệp vụ QLKT để vận hành khai thác nguồn, lưới điện đạt tiêu chí KT cấp giao, bảo đảm an toàn THỰC TẬP TỐT NGHIỆP HUẾ CÔNG TY ĐIỆN LỰC THỪA THIÊN cho người thiết bị, bảo đảm chất lượng điện cung cấp cho khách hàng + Triển khai công tác xây dựng, cập nhật khai thác CSDL lưới điện chương trình QLKT (PMIS, GIS …) + Quản lý cơng tác thí nghiệm, bảo dưỡng, sửa chữa định kỳ cơng trình nguồn, lưới điện + Tham gia lập quy hoạch phát triển hạ tầng với địa phương + Thực công tác quản lý cố nguồn, lưới điện + Triển khai ứng dụng phát triển Tự động hóa lưới điện + Xây dựng phương án liên quan đến đền bù tài sản lưới điện c) Phòng Điều độ - - Chức năng: Tham mưu tổ chức thực công tác QLVH hệ thống điện, trực tiếp huy điều độ hệ thống điện thuộc quyền điều khiển, chấp hành huy thống Trung tâm Điều độ hệ thống điện miền Trung trình điều độ hệ thống điện, chấp hành phương thức vận hành EVNCPC giao Nhiệm vụ chính: + Lập sơ đồ kết dây lưới điện phân phối + Lập phương thức vận hành hàng năm, tháng, tuần, ngày lưới điện thuộc quyền quản lý + Xây dựng phương thức tự động hóa lưới điện phân phối + Lập thực phương thức vận hành hệ thống điện Quốc gia thiếu nguồn + Tính toán chế độ bảo vệ rơle lưới điện phân phối + Chỉ huy vận hành lưới điện thuộc quyền điều khiển an toàn, ổn định, liên tục, đảm bảo chất lượng điện vận hành chế độ kinh tế + Chỉ huy thao tác xử lý cố lưới điện phân phối Ngoài hành chính, Điều độ viên ca trực sử dụng quyền Giám đốc Công ty để yêu cầu nguồn lực đơn vị việc điều hành cố + Thực thao tác thiết bị thuộc quyền điều khiển ủy quyền lưới điện phân phối TBA 110kV có kết nối với THỰC TẬP TỐT NGHIỆP HUẾ CÔNG TY ĐIỆN LỰC THỪA THIÊN TTĐK, đồng thời thực giám sát tình trạng vận hành thao tác thiết bị TBA 110kV (Không người trực) phân cấp theo lệnh điều độ A3, qua hệ thống SCADA hệ thống công nghệ giám sát điều khiển xa khác + QLVH hệ thống thông tin vô tuyến phục vụ công tác sản xuất + QLVH hệ thống SCADA/DMS tự động hóa lưới điện d) Phịng Kinh doanh - Chức năng: Tham mưu tổ chức thực công tác: + Kinh doanh điện năng, dịch vụ khách hàng, quản lý nhu cầu phụ tải, dụng lượng điện tiết kiệm có hiệu + Tuyên truyền, quảng bá công tác phát triển lượng tái tạo theo - quy định, sách Nhà nước, EVN EVNCPC ban hành, đảm bảo hiệu SXKD Nhiệm vụ + Thực đàm phán, quản lý hợp đồng mua bán điện Đàm phán, kí kết quản lý hợp đồng liên quan đến công tác thuê thực ghi số, thu tiền điện + Triển khai chương trình đại hóa hệ thống đo đếm điện phù hợp lộ trình phát triển EVNCPC + Quản lý nhu cầu phụ tải, bao gồm hoạt động: dự báo phụ tải, quản lý nhu cầu điện điều chỉnh phụ tải + Quản lý hệ thống đo đếm điện khách hàng, đầu nguồn, ranh giới Công ty với EVNCPC đơn vị thành viên + Quản lý khai thác hệ thống thu thập liệu đo đếm từ xa + Phân tích đề giải pháp nhằm kiểm soát tổn thất điện thương mại Công ty + Lập kế hoạch triển khai công tác tuyên truyền sử dụng lượng điện tiết kiệm hiệu 1.4 Tổng quan lưới điện phân phối Thừa Thiên Huế Để đảm bảo cung cấp điện an toàn, liên tục, phục vụ sản xuất kinh doanh, đời sống sinh hoạt nhân dân, hoạt động doanh nghiệp địa bàn tỉnh Thừa Thiên 10 THỰC TẬP TỐT NGHIỆP HUẾ b) CÔNG TY ĐIỆN LỰC THỪA THIÊN Phương pháp xử lý ảnh nhận diện màu sắc + Chuyển đổi khơng gian màu: Ta chuyển đổi không gian màu ảnh sang khơng gian màu khác HSV LAB, sau sử dụng ngưỡng để phân loại pixel thành lớp màu sắc khác Ví dụ, màu đỏ có giá trị H (hue) nằm khoảng từ đến 30 từ 330 đến 360 không gian màu HSV + Sử dụng histogram: Ta tính tốn histogram ảnh phân tích độ phân bố mức xám khác để xác định lớp màu sắc khác Ví dụ, pixel với giá trị mức xám cao coi màu sắc sáng hơn, pixel với giá trị mức xám thấp coi màu sắc tối + Sử dụng mơ hình học máy: Ta sử dụng mơ hình học máy mạng neural để huấn luyện mơ hình nhận diện màu sắc Ta sử dụng phương pháp mạng neural tích chập (CNN) để tìm kiếm đặc trưng màu sắc phân loại chúng thành lớp khác + Sử dụng phân đoạn ảnh: Phân đoạn ảnh trình phân tách ảnh thành vùng tương đồng màu sắc độ sáng Ta sử dụng phân đoạn ảnh để tìm kiếm vùng màu sắc khác phân loại chúng thành lớp màu sắc khác  Kết nhận diện màu sắc: 22 THỰC TẬP TỐT NGHIỆP HUẾ CÔNG TY ĐIỆN LỰC THỪA THIÊN 23 THỰC TẬP TỐT NGHIỆP HUẾ CÔNG TY ĐIỆN LỰC THỪA THIÊN 24 THỰC TẬP TỐT NGHIỆP HUẾ CÔNG TY ĐIỆN LỰC THỪA THIÊN CHƯƠNG 4: MÔ PHỎNG CÁNH TAY ROBOT 4DOF BẰNG SOILDWORK VÀ MATLABSIMULINK 4.1 Tính tốn động học thuận động học ngược cánh tay robot 4DoF 4.1.1 Động học thuận Các khớp đặt hình vẽ Phương pháp Biến đổi Denavit-Hartenberg (DH) theo sau để gán khung phối hợp (Denavit Hartenberg 1955, Craig 2017) Để có tham số DH, khung phối hợp (tức khung liên kết lập đồ cá trục quay liên tiếp) cho trùng khớp với trục qua chung có thứ tự Bảng 4.1 hiển thị thông số DH Robot θ Link α d l1 θ1 90 l2 θ2 0 l3 θ3 0 l4 θ4 0 Dạng tổng quát ma trận Denavit-Hartenberg cho khâu: Ta xác định ma trận biến đổi cho cánh tay máy 4DoF [ [ c1 s T 1= 0 s1 0 −c 1 c1 0 c −s s c3 T 3= 0 0 ] l3 s3 l3 c 0 ] [ [ ] ] c −s s c2 T 2= 0 0 l s2 l2 c 0 c −s s c4 T 4= 0 0 l4 s4 l4 c 0 25 THỰC TẬP TỐT NGHIỆP HUẾ CƠNG TY ĐIỆN LỰC THỪA THIÊN T =T ×T ×T ×T [ R11 R 12 R 13 P x R R 22 R 23 P y T = 21 R31 R 32 R 33 P z 0  4.1.2 Tính tốn động học ngược ] Bài toán động học ngược phát biểu là: Cho trước vị trí hướng endeffector robot, tính tốn tất tập hợp giá trị biến khớp sử dụng để tạo vị trí hướng end-effector Đối với tay máy robot nối tiếp, toán động học thuận thường dễ giải toán động học ngược tốn khó tồn nhiều nghiệm Nghiệm phương trình: θ1=arctan ⁡( Py ) Px θ3 =arctan ⁡( s3 ) c3 C 3= s3= √1−c ( l1+ √ P x 2+ P y 2−l4 cos234 ) + ( P z −d 1+ l4 sin234 )2−(l22 +l32) 2l l θ2=α + β α =arctan ⁡( β=arctan ( l3 s ) l 2+ l3 cosθ P z −d 1+l sin 234 l 1+ √ P x + P y −l cos234 2 ) θ 4=θ234 −(θ2 +θ3 ) 26 THỰC TẬP TỐT NGHIỆP HUẾ CÔNG TY ĐIỆN LỰC THỪA THIÊN 4.2 Mô SoildWork MatlabSimulink 4.2.1 Mô SoildWork 4.2.2 Mô MatlabSimulink a) Liên kết Matlab SoildWork b) Code điều khiển cánh tay máy 4DoF function varargout = dung(varargin) gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, 'gui_Singleton', gui_Singleton, 'gui_OpeningFcn', @dung_OpeningFcn, 'gui_OutputFcn', @dung_OutputFcn, 'gui_LayoutFcn', [] , 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout 27 THỰC TẬP TỐT NGHIỆP HUẾ CÔNG TY ĐIỆN LỰC THỪA THIÊN [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else end gui_mainfcn(gui_State, varargin{:}); function dung_OpeningFcn(hObject, eventdata, handles, varargin) handles.output = hObject; guidata(hObject, handles); function varargout = dung_OutputFcn(hObject, eventdata, handles) varargout{1} = handles.output; function slider1_Callback(hObject, eventdata, handles) ModelName = 'ROBOTNE'; %l1=242; l2=350; l3=391; l4=232; %góc quay theta1=get(handles.slider1,'value'); set(handles.edit1,'string',num2str(theta1)); theta2=get(handles.slider2,'value'); set(handles.edit2,'string',num2str(theta2)); theta3=get(handles.slider3,'value'); set(handles.edit3,'string',num2str(theta3)); theta4=get(handles.slider4,'value'); set(handles.edit4,'string',num2str(theta4)); %xoay canh tay ben simulink set_param([ModelName '/Slider set_param([ModelName '/Slider set_param([ModelName '/Slider set_param([ModelName '/Slider Gain'],'Gain',num2str(theta1)); Gain1'],'Gain',num2str(theta2)); Gain2'],'Gain',num2str(theta3)); Gain3'],'Gain',num2str(theta4)); T1 = [cosd(theta1) sind(theta1) 0 0 sind(theta1) -cosd(theta1) 0 0; 0; 242; 1]; T2 = [cosd(theta2) sind(theta2) 0 -sind(theta2) cosd(theta2) 0 0 l2*cosd(theta2); l2*sind(theta2); 0; 1]; T3 = [cosd(theta3) sind(theta3) 0 -sind(theta3) cosd(theta3) 0 0 l3*cosd(theta3); l3*sind(theta3); 0; 1]; T4 = [cosd(theta4) sind(theta4) 0 -sind(theta4) cosd(theta4) 0 0 l4*cosd(theta4); l4*sind(theta4); 0; 1]; T = T1*T2*T3*T4 28 THỰC TẬP TỐT NGHIỆP HUẾ CÔNG TY ĐIỆN LỰC THỪA THIÊN px = T(1,4); py = T(2,4); pz = T(3,4); set(handles.edit8,'string',num2str(px)); set(handles.edit9,'string',num2str(py)); set(handles.edit10,'string',num2str(pz)); function slider1_CreateFcn(hObject, eventdata, handles) if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor',[.9 9]); end function slider2_Callback(hObject, eventdata, handles) ModelName = 'ROBOTNE'; %l1=242; l2=350; l3=391; l4=232; %góc quay theta1=get(handles.slider1,'value'); set(handles.edit1,'string',num2str(theta1)); theta2=get(handles.slider2,'value'); set(handles.edit2,'string',num2str(theta2)); theta3=get(handles.slider3,'value'); set(handles.edit3,'string',num2str(theta3)); theta4=get(handles.slider4,'value'); set(handles.edit4,'string',num2str(theta4)); %xoay canh tay ben simulink set_param([ModelName '/Slider set_param([ModelName '/Slider set_param([ModelName '/Slider set_param([ModelName '/Slider Gain'],'Gain',num2str(theta1)); Gain1'],'Gain',num2str(theta2)); Gain2'],'Gain',num2str(theta3)); Gain3'],'Gain',num2str(theta4)); T1 = [cosd(theta1) sind(theta1) 0 0 sind(theta1) -cosd(theta1) 0 0; 0; 242; 1]; T2 = [cosd(theta2) sind(theta2) 0 -sind(theta2) cosd(theta2) 0 0 l2*cosd(theta2); l2*sind(theta2); 0; 1]; T3 = [cosd(theta3) sind(theta3) 0 -sind(theta3) cosd(theta3) 0 0 l3*cosd(theta3); l3*sind(theta3); 0; 1]; T4 = [cosd(theta4) sind(theta4) 0 -sind(theta4) cosd(theta4) 0 0 l4*cosd(theta4); l4*sind(theta4); 0; 1]; 29 THỰC TẬP TỐT NGHIỆP HUẾ CÔNG TY ĐIỆN LỰC THỪA THIÊN T = T1*T2*T3*T4 px = T(1,4); py = T(2,4); pz = T(3,4); set(handles.edit8,'string',num2str(px)); set(handles.edit9,'string',num2str(py)); set(handles.edit10,'string',num2str(pz)); function slider2_CreateFcn(hObject, eventdata, handles) if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor',[.9 9]); end function slider3_Callback(hObject, eventdata, handles) ModelName = 'ROBOTNE'; %l1=242; l2=350; l3=391; l4=232; %góc quay theta1=get(handles.slider1,'value'); set(handles.edit1,'string',num2str(theta1)); theta2=get(handles.slider2,'value'); set(handles.edit2,'string',num2str(theta2)); theta3=get(handles.slider3,'value'); set(handles.edit3,'string',num2str(theta3)); theta4=get(handles.slider4,'value'); set(handles.edit4,'string',num2str(theta4)); %xoay canh tay ben simulink set_param([ModelName '/Slider set_param([ModelName '/Slider set_param([ModelName '/Slider set_param([ModelName '/Slider Gain'],'Gain',num2str(theta1)); Gain1'],'Gain',num2str(theta2)); Gain2'],'Gain',num2str(theta3)); Gain3'],'Gain',num2str(theta4)); T1 = [cosd(theta1) sind(theta1) 0 0 sind(theta1) -cosd(theta1) 0 0; 0; 242; 1]; T2 = [cosd(theta2) sind(theta2) 0 -sind(theta2) cosd(theta2) 0 0 l2*cosd(theta2); l2*sind(theta2); 0; 1]; T3 = [cosd(theta3) sind(theta3) 0 -sind(theta3) cosd(theta3) 0 0 l3*cosd(theta3); l3*sind(theta3); 0; 1]; T4 = [cosd(theta4) sind(theta4) 0 -sind(theta4) cosd(theta4) 0 0 l4*cosd(theta4); l4*sind(theta4); 0; 1]; 30 THỰC TẬP TỐT NGHIỆP HUẾ CÔNG TY ĐIỆN LỰC THỪA THIÊN T = T1*T2*T3*T4 px = T(1,4); py = T(2,4); pz = T(3,4); set(handles.edit8,'string',num2str(px)); set(handles.edit9,'string',num2str(py)); set(handles.edit10,'string',num2str(pz)); function slider3_CreateFcn(hObject, eventdata, handles) if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor',[.9 9]); end % - Executes on slider movement function slider4_Callback(hObject, eventdata, handles) ModelName = 'ROBOTNE'; %l1=242; l2=350; l3=391; l4=232; %góc quay theta1=get(handles.slider1,'value'); set(handles.edit1,'string',num2str(theta1)); theta2=get(handles.slider2,'value'); set(handles.edit2,'string',num2str(theta2)); theta3=get(handles.slider3,'value'); set(handles.edit3,'string',num2str(theta3)); theta4=get(handles.slider4,'value'); set(handles.edit4,'string',num2str(theta4)); %xoay canh tay ben simulink set_param([ModelName '/Slider set_param([ModelName '/Slider set_param([ModelName '/Slider set_param([ModelName '/Slider Gain'],'Gain',num2str(theta1)); Gain1'],'Gain',num2str(theta2)); Gain2'],'Gain',num2str(theta3)); Gain3'],'Gain',num2str(theta4)); T1 = [cosd(theta1) sind(theta1) 0 0 sind(theta1) -cosd(theta1) 0 0; 0; 242; 1]; T2 = [cosd(theta2) sind(theta2) 0 -sind(theta2) cosd(theta2) 0 0 l2*cosd(theta2); l2*sind(theta2); 0; 1]; T3 = [cosd(theta3) sind(theta3) 0 -sind(theta3) cosd(theta3) 0 0 l3*cosd(theta3); l3*sind(theta3); 0; 1]; T4 = [cosd(theta4) -sind(theta4) l4*cosd(theta4); 31 THỰC TẬP TỐT NGHIỆP HUẾ sind(theta4) 0 CÔNG TY ĐIỆN LỰC THỪA THIÊN cosd(theta4) 0 l4*sind(theta4); 0; 1]; T = T1*T2*T3*T4 px = T(1,4); py = T(2,4); pz = T(3,4); set(handles.edit8,'string',num2str(px)); set(handles.edit9,'string',num2str(py)); set(handles.edit10,'string',num2str(pz)); function slider4_CreateFcn(hObject, eventdata, handles) if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor',[.9 9]); end % - Executes on slider movement function slider5_Callback(hObject, eventdata, handles) px=get(handles.slider5,'value'); set(handles.edit5,'string',num2str(px)); function slider5_CreateFcn(hObject, eventdata, handles) if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor',[.9 9]); end % - Executes on slider movement function slider6_Callback(hObject, eventdata, handles) py=get(handles.slider6,'value'); set(handles.edit6,'string',num2str(py)); function slider6_CreateFcn(hObject, eventdata, handles) if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor',[.9 9]); end % - Executes on slider movement function slider7_Callback(hObject, eventdata, handles) pz=get(handles.slider7,'value'); set(handles.edit7,'string',num2str(pz)); function slider7_CreateFcn(hObject, eventdata, handles) if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor',[.9 9]); end function edit1_Callback(hObject, eventdata, handles) function edit1_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit2_Callback(hObject, eventdata, handles) 32 THỰC TẬP TỐT NGHIỆP HUẾ CÔNG TY ĐIỆN LỰC THỪA THIÊN function edit2_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit3_Callback(hObject, eventdata, handles) function edit3_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit4_Callback(hObject, eventdata, handles) function edit4_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit5_Callback(hObject, eventdata, handles) function edit5_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit6_Callback(hObject, eventdata, handles) function edit6_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit7_Callback(hObject, eventdata, handles) function edit7_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit8_Callback(hObject, eventdata, handles) function edit8_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit9_Callback(hObject, eventdata, handles) function edit9_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end 33 THỰC TẬP TỐT NGHIỆP HUẾ CÔNG TY ĐIỆN LỰC THỪA THIÊN function edit10_Callback(hObject, eventdata, handles) function edit10_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end % - Executes on button press in pushbutton1 function pushbutton1_Callback(hObject, eventdata, handles) ModelName = 'ROBOTNE'; open_system(ModelName); set_param(ModelName,'BlockReduction','off'); set_param(ModelName,'StopTime','inf'); set_param(ModelName, 'simulationMode','normal'); set_param(ModelName, 'StartFcn','1'); set_param(ModelName, 'SimulationCommand','start'); function pushbutton2_Callback(hObject, eventdata, handles) close; function pushbutton3_Callback(hObject, eventdata, handles) ModelName = 'ROBOTNE' %a1 = 242; a2 = 350; a3 = 391; a4 = 232; theta1 theta2 theta3 theta4 = = = = 0; 0; 0; 0; %xoay canh tay ben simulink set_param([ModelName '/Slider set_param([ModelName '/Slider set_param([ModelName '/Slider set_param([ModelName '/Slider Gain'],'Gain',num2str(theta1)); Gain1'],'Gain',num2str(theta2)); Gain2'],'Gain',num2str(theta3)); Gain3'],'Gain',num2str(theta4)); T1 = [cosd(theta1) sind(theta1) 0 0 sind(theta1) -cosd(theta1) 0 0; 0; 242; 1]; T2 = [cosd(theta2) sind(theta2) 0 -sind(theta2) cosd(theta2) 0 0 a2*cosd(theta2); a2*sind(theta2); 0; 1]; T3 = [cosd(theta3) sind(theta3) 0 -sind(theta3) cosd(theta3) 0 0 a3*cosd(theta3); a3*sind(theta3); 0; 1]; T4 = [cosd(theta4) -sind(theta4) a4*cosd(theta4); 34 THỰC TẬP TỐT NGHIỆP HUẾ sind(theta4) 0 CÔNG TY ĐIỆN LỰC THỪA THIÊN cosd(theta4) 0 a4*sind(theta4); 0; 1]; T = T1*T2*T3*T4 px = T(1,4); py = T(2,4); pz = T(3,4); set(handles.slider1,'value',theta1); set(handles.slider2,'value',theta2); set(handles.slider3,'value',theta3); set(handles.slider4,'value',theta4); set(handles.edit1,'string',num2str(0)); set(handles.edit2,'string',num2str(0)); set(handles.edit3,'string',num2str(0)); set(handles.edit4,'string',num2str(0)); set(handles.edit5,'string',num2str(px)); set(handles.edit6,'string',num2str(py)); set(handles.edit7,'string',num2str(pz)); set(handles.edit8,'string',num2str(px)); set(handles.edit9,'string',num2str(py)); set(handles.edit10,'string',num2str(pz)); % - Executes on button press in pushbutton4 function pushbutton4_Callback(hObject, eventdata, handles) ModelName= 'ROBOTNE'; global var; px=get(handles.slider5,'value'); set(handles.edit5,'string',num2str(px)); py=get(handles.slider6,'value'); set(handles.edit6,'string',num2str(py)); pz=get(handles.slider7,'value'); set(handles.edit7,'string',num2str(pz)); set(handles.edit8,'string',num2str(px)); set(handles.edit9,'string',num2str(py)); set(handles.edit10,'string',num2str(pz)); l1 d1 l2 l3 l4 = = = = = 0; 242; 350; 391; 232; theta1 = atan2d(py,px); theta234 = 0; c3 = (((l1+sqrt(px^2+py^2) - l4*cosd(theta234))^2 + (pz-d1+l4*sin(theta234))^2 (l2^2+l3^2))/(2*l2*l3)); s3 = sqrt(1-(c3^2)); theta3 = atan2d(s3,c3); alpha = atan2d(l3*sind(theta3), l2+l3*cosd(theta3)); beta = atan2d(pz - d1 +l4*sind(theta234), l1+sqrt(px^2+py^2)-l4*cosd(theta234)); theta2 = alpha + beta; theta4 = theta234 - (theta2+theta3); 35 THỰC TẬP TỐT NGHIỆP HUẾ CÔNG TY ĐIỆN LỰC THỪA THIÊN guidata(hObject,handles); set_param([ModelName set_param([ModelName set_param([ModelName set_param([ModelName '/Slider '/Slider '/Slider '/Slider Gain'],'Gain',num2str(theta1)); Gain1'],'Gain',num2str(theta2)); Gain2'],'Gain',num2str(theta3)); Gain3'],'Gain',num2str(theta4)); set(handles.edit1,'string',num2str(theta1)); set(handles.edit2,'string',num2str(theta2)); set(handles.edit3,'string',num2str(theta3)); set(handles.edit4,'string',num2str(theta4)); c) Giao diện GUI điều khiển cánh tay máy 4.3 Mơ hình cánh tay Robot thực tế 36

Ngày đăng: 27/04/2023, 08:35

Tài liệu cùng người dùng

Tài liệu liên quan