1. Trang chủ
  2. » Luận Văn - Báo Cáo

Phân tích động lực học hệ nhiều vật trong lân cận điểm kỳ dị

84 47 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 84
Dung lượng 0,92 MB

Nội dung

Phân tích động lực học hệ nhiều vật trong lân cận điểm kỳ dị Phân tích động lực học hệ nhiều vật trong lân cận điểm kỳ dị Phân tích động lực học hệ nhiều vật trong lân cận điểm kỳ dị luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI NGUYỄN HẢI NGUYÊN PHÂN TÍCH ĐỘNG LỰC HỌC HỆ NHIỀU VẬT TRONG LÂN CẬN ĐIỂM KỲ DỊ LUẬN VĂN THẠC SĨ NGÀNH CƠ HỌC KỸ THUẬT Hà Nội, 2010 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI NGUYỄN HẢI NGUYÊN PHÂN TÍCH ĐỘNG LỰC HỌC HỆ NHIỀU VẬT TRONG LÂN CẬN ĐIỂM KỲ DỊ LUẬN VĂN THẠC SĨ NGÀNH CƠ HỌC KỸ THUẬT NGƯỜI HƯỚNG DẪN: TS ĐINH VĂN PHONG Hà Nội, 2010 Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị MỤC LỤC MỤC LỤC LỜI CẢM ƠN LỜI CAM ĐOAN DANH MỤC CÁC CHỮ VIẾT TẮT TIẾNG ANH DANH MỤC CÁC HÌNH VẼ VÀ ĐỒ THỊ DANH MỤC CÁC BẢNG CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN 10 Bài tốn phân tích động lực học hệ nhiều vật 10 Mục đích luận văn 11 Cấu trúc luận văn 11 CHƯƠNG 2: HỆ PHƯƠNG TRÌNH VI PHÂN ĐẠI SỐ 12 Phương trình vi phân đại số 12 Chỉ số hệ DAE 16 Hạ bậc cho phương trình vi phân đại số 19 Ổn định hóa phương trình hạ bậc 20 4.1 Ổn định hóa Baumgarte 20 4.1 Phương pháp chiếu 21 CHƯƠNG 3: MÔ PHỎNG, ĐIỀU KHIỂN HỆ NHIỀU VẬT 23 Sơ lược hệ nhiều vật 23 Các dạng thức hệ nhiều vật 24 Nguyễn Hải Nguyên -1- Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị 2.1 Dạng thức Lagrange nhân tử (LMF) 24 a Phương pháp nhân tử Lagrange 25 b Ổn định hóa liên kết 27 2.2 Dạng thức Lagrange tổ hợp (ALF) 30 a Dạng thức bù 30 b Dạng thức Lagrange tổ hợp 32 2.3 Dạng thức Udwadia – Kalaba 34 a Dạng thức Udwadia - Kalaba 34 b Ổn định hóa dạng thức Udwadia-Kalaba 36 2.3 Dạng thức nguyên lý phù hợp 37 a Nguyên lý phù hợp 37 b Dạng thức nguyên lý phù hợp (CPF) 38 CHƯƠNG 4: VỀ MỘT SỐ ỨNG DỤNG THỰC TẾ 42 Con lắc toán học 42 Cơ cấu tay quay trượt 47 So sánh phương pháp 51 a So sánh thời gian tính tốn phương pháp 51 b Sai số phương pháp theo bước thời gian 53 Điều khiển robot SCARA (RRTR) 55 KẾT LUẬN 60 TÀI LIỆU THAM KHẢO 61 PHỤ LỤC 65 Nguyễn Hải Nguyên -2- Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị Cấu trúc chương trình 65 a Chương trình 66 b Phương pháp nhân tử Lagrange 68 c Dạng thức Udwadia – Kalaba 70 d Dạng thức bù 72 e Dạng thức Nguyên lý phù hợp 74 Con lắc toán học 79 Cơ cấu tay quay trượt 79 Robot SCARA 80 Nguyễn Hải Nguyên -3- Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị LỜI CẢM ƠN Trong suốt q trình học tập hồn thành luận văn này, nhận hướng dẫn, giúp đỡ quý báu thầy cô động viên, góp ý bạn đồng nghiệp, bạn bè gia đình Với lịng kính trọng biết ơn sâu sắc xin bày tỏ lời cảm ơn chân thành tới: Ban giám hiệu, Phòng đào tạo sau đại học, Bộ môn Cơ học ứng dụng trường Đại Học Bách Khoa Hà Nội tạo điều kiện thuận lợi giúp đỡ tơi q trình học tập hoàn thành luận văn PGS TS Đinh Văn Phong, người thầy kính mến hết lịng giúp đỡ, dạy bảo, động viên tạo điều kiện thuận lợi cho tơi suốt q trình học tập hoàn thành luận văn tốt nghiệp Xin chân thành cảm ơn thầy cô hội đồng chấm luận văn cho tơi đóng góp q báu để hoàn chỉnh luận văn Các anh chị em phịng Cơ điện tử, Viện Cơ học nhiệt tình giúp đỡ suốt trình học tập nghiên cứu Nhân đây, xin gửi lới cảm ơn tới bạn bè, anh chị em lớp Cơ học kỹ thuật 2008 động viên giúp đỡ tơi lúc tơi gặp khó khăn Đặc biệt, xin chân thành cảm ơn bố mẹ bên cạnh động viên giúp đỡ học tập, làm việc hoàn thành luận văn Hà Nội, tháng 10 năm 2010 Tác giả Nguyễn Hải Nguyên -4- Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị LỜI CAM ĐOAN Tôi xin cam đoan cơng trình khoa học tơi Các số liệu luận văn trung thực có nguồn gốc cụ thể, rõ ràng Các kết luận văn chưa công bố công trình khoa học Hà Nội, tháng 10 năm 2010 Tác giả Nguyễn Hải Nguyên -5- Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị DANH MỤC CÁC CHỮ VIẾT TẮT TIẾNG ANH ODEs Ordinary Differential Equations DAEs Differential Algebraic Equations SVD Singular Value Decomposition BDF Backward Differentiation Formulas RK Runge-Kutta methods LMF Lagrangian Multiplier Formulation PF Penalty Formulation ALF Augmented Lagrangian Formulation UKF Udwadia-Kalaba Formulation CPF Compatibility Principle Formulation Nguyễn Hải Nguyên -6- Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị DANH MỤC CÁC HÌNH VẼ VÀ ĐỒ THỊ Hình 1.1 Hiện tượng phá vỡ liên kết q trình mơ 14 Hình 1.2 Mơ lắc tốn học có ổn định hóa 14 Hình 1.3 Sai lệch với tham số khác [7] 15 Hình 4.1 Con lắc toán học 42 Hình 4.2 Quỹ đạo nghiệm lắc toán học phương pháp 44 Hình 4.3 Sai lệch liên kết cấp vị trí 45 Hình 4.4 Sai lệch liên kết cấp vận tốc 45 Hình 4.5 Sai lệch so với nghiệm tham chiếu 45 Hình 4.6 Sai số phương pháp Baumgarte ( 200,200 ) 47 Hình 4.7 Cơ cấu tay quay trượt [7] 47 Hình 4.8 Nghiệm số hệ có kỳ dị động học khoảng (0;2)s 49 Hình 4.9 Nghiệm hệ khơng có kỳ dị động học khoảng (0;10)s 49 Hình 4.10 Nghiệm khơng ổn định hóa cho sai số 0.001 50 Hình 4.11 Nghiệm ổn định hóa Baumgarte (3,3) cho sai số 1.57e-7 50 Hình 4.12 Nghiệm ổn định hóa Baumgarte cải tiến cho sai số 1.8e-9 50 Hình 4.13 Đồ thị thời gian tính tốn theo bước tích phân cho lắc toán hoc t = [0,1]s 51 Hình 4.14 Đồ thị thời gian tính tốn theo bước tích phân cho cấu tay quay trượt t = [0,1]s 52 Nguyễn Hải Nguyên -7- Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị Hình 4.15 Đồ thị thời gian tính tốn theo bước tích phân cho cấu tay quay trượt t = [0,10]s 52 Hình 4.16 Đồ thị sai số tính tốn theo bước tích phân cho lắc toán hoc t = [0,1]s 53 Hình 4.17 Đồ thị sai số tính tốn theo bước tích phân cho cấu tay quay trượt t = [0,1]s 54 Hình 4.18 Đồ thị sai số tính tốn theo bước tích phân cho cấu tay quay trượt t = [0,10]s 54 Hình 4.19 Robot SCARA (RRTR) 55 Hình 4.20 Lực điều khiển robot SCARA 59 Hình 4.22 Đồ thị vận tốc khớp robot SCARA 59 Nguyễn Hải Nguyên -8- Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị tlmf:=loglogplot(dat,linestyle=dot,color=blue): dat:=[[dta[n],errorCPF[n]]$n=0 num]: ecpf:=loglogplot(dat): dat:=[[dta[n],errorCPFb[n]]$n=0 num]: ecpfb:=loglogplot(dat,linestyle=dash,color=green): dat:=[[dta[n],errorCPFm[n]]$n=0 num]: ecpfm:=loglogplot(dat,linestyle=dot,color=blue): display(tcpf,tukf,tlmf); display(ecpf,ecpfb,ecpfm); Chương trình khởi tạo initiate.txt: with(LinearAlgebra): with(ArrayTools): with(plots): q:=Matrix([[q_t[1]],[q_t[2]]]): v:=Matrix([[v_t[1]],[v_t[2]]]): a:=Matrix([[a_t[1]],[a_t[2]]]): qi:=Matrix(2,1): vi:=Matrix(2,1): ai:=Matrix(2,1): qi1:=Matrix(2,1): vi1:=Matrix(2,1): ai1:=Matrix(2,1): b Phương pháp nhân tử Lagrange Được lưu file: LMF.txt, LMFb.txt "NON STABILIZED LMF"; qi1:=q0: vi1:=v0: #data struct eps:=0.: deps:=0.: Nguyễn Hải Nguyên - 68 - Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị err:=array(0 imax): derr:=array(0 imax): pErr:=array(0 imax): pts:=array(0 imax): x_sol:=array(0 imax):y_sol:=array(0 imax):t_sol:=arr ay(0 imax): dx_sol:=array(0 imax):dy_sol:=array(0 imax): tLMF:=time(): for i from to imax qi:=evalf(qi1);vi:=evalf(vi1);#initiate t_sol[i]:=i*dt; x_sol[i]:=evalf(qi1[1,1]);y_sol[i]:=evalf(qi1[2,1]);#s tore dx_sol[i]:=evalf(vi1[1,1]);dy_sol[i]:=evalf(vi1[2,1]); #store #function evaluation Mi:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],M)); Qi:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],v[1,1]=vi [1,1],v[2,1]=vi[2,1],Q)); Phii:=subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],Phi); Phi_qi:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],Phi_q )); Phi_ti:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],Phi_t )); dPhii:=Phi_qi.vi+Phi_ti; ci:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],v[1,1]=vi [1,1],v[2,1]=vi[2,1],c)); #Trong file LMFb.txt thay ci công thức #ci:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],v[1,1]=vi[1,1],v[2,1]=vi[2,1],g)); M_1:=evalf(MatrixInverse(Mi)); ai:=evalf(M_1.Qi); qi1:=qi+vi*dt; Nguyễn Hải Nguyên - 69 - Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị vi1:=vi+ai*dtM_1.Transpose(Phi_qi).MatrixInverse(Phi_qi.M_1.Transpo se(Phi_qi)).(Phi_qi.ai-ci)*dt; err[i]:=Phii[1,1]; derr[i]:=dPhii[1,1]; if abs(err[i])>(eps) then eps:=abs(err[i]) end if; if abs(derr[i])>(deps) then deps:=abs(derr[i]) end if; end do: tLMF:=time()-tLMF: pts:=[[t_sol[n],x_sol[n]]$n=0 imax]: q1LMF:=plot(pts,color=blue): pts:=[[t_sol[n],y_sol[n]]$n=0 imax]: q2LMF:=plot(pts,linestyle=dash,color=blue): pts:=[[t_sol[n],dx_sol[n]]$n=0 imax]: dq1LMF:=plot(pts,color=green): pts:=[[t_sol[n],dy_sol[n]]$n=0 imax]: dq2LMF:=plot(pts,linestyle=dash,color=green): pts:=[[t_sol[n],err[n]]$n=0 imax]: errLMF:=plot(pts,color=blue): pts:=[[t_sol[n],derr[n]]$n=0 imax]: derrLMF:=plot(pts,linestyle=dash,color=blue): "accuracy"; eps,deps; c Dạng thức Udwadia – Kalaba Được lưu file: UKF.txt, UKFb.txt "NON STABILIZED UKF"; qi1:=q0: vi1:=v0: #data struct eps:=0.: deps:=0.: Nguyễn Hải Nguyên - 70 - Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị err:=array(0 imax): derr:=array(0 imax): pErr:=array(0 imax): pts:=array(0 imax): x_sol:=array(0 imax):y_sol:=array(0 imax):t_sol:=arr ay(0 imax): dx_sol:=array(0 imax):dy_sol:=array(0 imax): tUKF:=time(): for i from to imax qi:=evalf(qi1);vi:=evalf(vi1);#initiate t_sol[i]:=i*dt; x_sol[i]:=evalf(qi1[1,1]);y_sol[i]:=evalf(qi1[2,1]);#s tore dx_sol[i]:=evalf(vi1[1,1]);dy_sol[i]:=evalf(vi1[2,1]); #store #function evaluation Mi:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],M)); Qi:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],v[1,1]=vi [1,1],v[2,1]=vi[2,1],Q)); Phii:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],Phi)); Phi_qi:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],Phi_q )); Phi_ti:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],Phi_t )); dPhii:=evalf(Phi_qi.vi+Phi_ti); ci:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],v[1,1]=vi [1,1],v[2,1]=vi[2,1],c)); #Trong file UKFb.txt thay ci công thức #ci:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],v[1,1]=vi[1,1],v[2,1]=vi[2,1],g)); M_1:=evalf(MatrixInverse(Mi)); ai:=evalf(M_1.Qi); R:=Transpose(LUDecomposition(Mi,method = 'Cholesky')); Nguyễn Hải Nguyên - 71 - Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị R_1:=evalf(MatrixInverse(R)); C:=evalf(Phi_qi.R_1); C_pseu:=evalf(MatrixInverse(C,method=pseudo));#iner RC:=evalf(R_1.C_pseu); qi1:=qi+vi*dt; vi1:=vi+ai*dt+RC.(ci-Phi_qi.ai)*dt; err[i]:=Phii[1,1]; derr[i]:=dPhii[1,1]; if abs(err[i])>(eps) then eps:=abs(err[i]) end if; if abs(derr[i])>(deps) then deps:=abs(derr[i]) end if; end do: tUKF:=time()-tUKF: pts:=[[t_sol[n],x_sol[n]]$n=0 imax]: q1UKF:=plot(pts,color=blue): pts:=[[t_sol[n],y_sol[n]]$n=0 imax]: q2UKF:=plot(pts,linestyle=dash,color=blue): pts:=[[t_sol[n],dx_sol[n]]$n=0 imax]: dq1UKF:=plot(pts,color=green): pts:=[[t_sol[n],dy_sol[n]]$n=0 imax]: dq2UKF:=plot(pts,linestyle=dash,color=green): pts:=[[t_sol[n],err[n]]$n=0 imax]: errUKF:=plot(pts,color=blue): pts:=[[t_sol[n],derr[n]]$n=0 imax]: derrUKF:=plot(pts,linestyle=dash,color=blue): "Accuracy"; eps,deps; d Dạng thức bù Được lưu file: PF.txt "NON STABILIZED PF"; "imax:=100;dt:=0.001;"; alpha_p:=10000000;#penalty value Omega:=3; Nguyễn Hải Nguyên - 72 - Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị mu:=3; qi1:=q0: vi1:=v0: #data struct err:=array(0 imax):pErr:=array(0 imax): pts:=array(0 imax): x_sol:=array(0 imax):y_sol:=array(0 imax):#LMF for i from to imax qi:=qi1;vi:=vi1;#initiate x_sol[i]:=qi1[1,1];y_sol[i]:=qi1[2,1];#store #function evaluation Mi:=subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],M); Qi:=subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],v[1,1]=vi[1,1], v[2,1]=vi[2,1],Q); Phii:=subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],Phi); Phi_qi:=subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],Phi_q); Phi_ti:=subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],Phi_t); dPhi_qi:=subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],v[1,1]=vi[ 1,1],v[2,1]=vi[2,1],dPhi_q); dPhi_ti:=subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],v[1,1]=vi[ 1,1],v[2,1]=vi[2,1],dPhi_t); ci:=subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],v[1,1]=vi[1,1], v[2,1]=vi[2,1],c); M_1:=MatrixInverse(M+Transpose(Phi_qi).Phi_qi*alpha_p) ; ai:=M_1.Qi; qi1:=qi+vi*dt; vi1:=vi+ai*dtalpha_p*M_1.Transpose(Phi_qi).(dPhi_qi.vi+dPhi_ti+2*Om ega*mu*(dPhi_qi.vi+dPhi_ti)+Omega^2*Phii)*dt; end do: Nguyễn Hải Nguyên - 73 - Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị for i from to imax err[i]:=x_sol[i]^2+y_sol[i]^2-1: end do: pts:=[[x_sol[n],y_sol[n]]$n=0 imax]: figPF:=plot(pts,style=point,color=black): pErr:=[[n*dt,err[n]]$n=0 imax]: errPF:=plot(pErr,style=point,color=black): "Graph:figPF"; "Error:errPF"; e Dạng thức Nguyên lý phù hợp Được lưu file: CPF.txt, CPFb.txt "NON STABILIZED COMPATIBILITY PRINCIPLE FORMULATION"; qi1:=q0: vi1:=v0: #data struct eps:=0.:deps:=0.: err:=array(0 imax):derr:=array(0 imax): pts:=array(0 imax):t_sol:=array(0 imax): x_sol:=array(0 imax):y_sol:=array(0 imax): dx_sol:=array(0 imax):dy_sol:=array(0 imax): tCPF:=time(): for i from to imax qi:=evalf(qi1);vi:=evalf(vi1);#initiate t_sol[i]:=i*dt; x_sol[i]:=evalf(qi1[1,1]);y_sol[i]:=evalf(qi1[2,1]);#s tore dx_sol[i]:=evalf(vi1[1,1]);dy_sol[i]:=evalf(vi1[2,1]); #store #function evaluation Mi:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],M)); Nguyễn Hải Nguyên - 74 - Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị Qi:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],v[1,1]=vi [1,1],v[2,1]=vi[2,1],Q)); Phii:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],Phi)); Phi_qi:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],Phi_q )); Phi_ti:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],Phi_t )); dPhii:=evalf(Phi_qi.vi+Phi_ti); dPhi_qi:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],v[1, 1]=vi[1,1],v[2,1]=vi[2,1],dPhi_q)); dPhi_ti:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],v[1, 1]=vi[1,1],v[2,1]=vi[2,1],dPhi_t)); ci:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],v[1,1]=vi [1,1],v[2,1]=vi[2,1],c)); #Trong file CPFb.txt thay ci công thức #ci:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],v[1,1]=vi[1,1],v[2,1]=vi[2,1],g)); di:=NullSpace(Phi_qi); Di:=convert(convert(di,list),Matrix); siz:=Size(Phi_qi); O1:=ZeroMatrix(siz[1],siz[2]); siz:=Size(Transpose(Di)); O2:=ZeroMatrix(siz[1],siz[2]); siz:=Size(Transpose(Di)); O3:=ZeroMatrix(siz[1],1); siz:=Size(Mi); E:=IdentityMatrix(siz[1],siz[2]); K:=Matrix([[ Mi , -E ],[ Phi_qi Transpose(Di) ]]); b:=Matrix([[ Qi ],[ ci ],[ O3 ]]); qri:=MatrixInverse(K).b; ai[1,1]:=qri[1,1]; ai[2,1]:=qri[2,1]; Nguyễn Hải Nguyên - 75 - , O2 ],[ O1 Luận văn Thạc sỹ học , Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị qi1:=qi+vi*dt; vi1:=vi+ai*dt; err[i]:=Phii[1,1]; derr[i]:=dPhii[1,1]; if abs(err[i])>(eps) then eps:=abs(err[i]) end if; if abs(derr[i])>(deps) then deps:=abs(derr[i]) end if; end do: tCPF:=time()-tCPF: pts:=[[t_sol[n],x_sol[n]]$n=0 imax]: q1CPF:=plot(pts,color=blue): pts:=[[t_sol[n],y_sol[n]]$n=0 imax]: q2CPF:=plot(pts,linestyle=dash,color=blue): pts:=[[t_sol[n],dx_sol[n]]$n=0 imax]: dq1CPF:=plot(pts,color=green): pts:=[[t_sol[n],dy_sol[n]]$n=0 imax]: dq2CPF:=plot(pts,linestyle=dash,color=green): pts:=[[t_sol[n],err[n]]$n=0 imax]: errCPF:=plot(pts,color=blue): pts:=[[t_sol[n],derr[n]]$n=0 imax]: derrCPF:=plot(pts,linestyle=dash,color=blue): "Accuracy:"; eps,deps; CPFm.txt "modified Compatibility principle formulation"; qi1:=q0: vi1:=v0: #data struct eps:=0.:deps:=0.: err:=array(0 imax):derr:=array(0 imax): pts:=array(0 imax):t_sol:=array(0 imax): Nguyễn Hải Nguyên - 76 - Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị x_sol:=array(0 imax):y_sol:=array(0 imax): dx_sol:=array(0 imax):dy_sol:=array(0 imax): siz1:=[1,2]: for i from to imax qi:=evalf(qi1);vi:=evalf(vi1);#initiate t_sol[i]:=i*dt; x_sol[i]:=evalf(qi1[1,1]);y_sol[i]:=evalf(qi1[2,1]);#s tore dx_sol[i]:=evalf(vi1[1,1]);dy_sol[i]:=evalf(vi1[2,1]); #store #function evaluation Mi:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],M)); Qi:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],v[1,1]=vi [1,1],v[2,1]=vi[2,1],Q)); Phii:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],Phi)); Phi_qi:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],Phi_q )); Phi_ti:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],Phi_t )); dPhii:=evalf(Phi_qi.vi+Phi_ti); dPhi_qi:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],v[1, 1]=vi[1,1],v[2,1]=vi[2,1],dPhi_q)); dPhi_ti:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],v[1, 1]=vi[1,1],v[2,1]=vi[2,1],dPhi_t)); ci:=evalf(subs(q[1,1]=qi[1,1],q[2,1]=qi[2,1],v[1,1]=vi [1,1],v[2,1]=vi[2,1],c)); di:=NullSpace(Phi_qi); Di:=convert(convert(di,list),Matrix); siz:=Size(Phi_qi); O1:=ZeroMatrix(siz[1],siz[2]); siz:=Size(Transpose(Di)); O2:=ZeroMatrix(siz[1],siz[2]); siz:=Size(Transpose(Di)); O3:=ZeroMatrix(siz[1],1); siz:=Size(Mi); O0:=ZeroMatrix(siz[1],siz[2]); Nguyễn Hải Nguyên - 77 - Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị M_1:=MatrixInverse(Mi); siz:=Size(Mi); E:=IdentityMatrix(siz[1],siz[2]); #Matrix([[ , ],[ , ]]); K:=Matrix([[ E ,O0, E,O0 ],[O0,Mi,O0,E],[ Phi_qi,O1 , O2,O2 ],[ O1,Phi_qi,O2,O2],[O1,O1,Transpose(Di),O2 ],[O1,O1,O2,Transpose(Di) ]]); b:=Matrix([[vi],[ Qi ],[-Phi_ti-Phii/dt],[ ci-Phii/dt ],[ O3 ],[ O3 ]]); qri:=MatrixInverse(K).b; vi[1,1]:=qri[1,1]; vi[2,1]:=qri[2,1]; ai[1,1]:=qri[3,1]; ai[2,1]:=qri[4,1]; qi1:=qi+vi*dt; vi1:=vi+ai*dt; err[i]:=Phii[1,1]; derr[i]:=dPhii[1,1]; if abs(err[i])>(eps) then eps:=abs(err[i]) end if; if abs(derr[i])>(deps) then deps:=abs(derr[i]) end if; end do: pts:=[[t_sol[n],x_sol[n]]$n=0 imax]: q1CPF:=plot(pts,color=blue): pts:=[[t_sol[n],y_sol[n]]$n=0 imax]: q2CPF:=plot(pts,linestyle=dash,color=blue): pts:=[[t_sol[n],dx_sol[n]]$n=0 imax]: dq1CPF:=plot(pts,color=green): pts:=[[t_sol[n],dy_sol[n]]$n=0 imax]: dq2CPF:=plot(pts,linestyle=dash,color=green): pts:=[[t_sol[n],err[n]]$n=0 imax]: errCPF:=plot(pts,color=blue): Nguyễn Hải Nguyên - 78 - Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị pts:=[[t_sol[n],derr[n]]$n=0 imax]: derrCPF:=plot(pts,linestyle=dash,color=blue): "Accuracy:"; eps,deps; Con lắc toán học Mơ tả lắc tốn học điều kiện đầu cho file sau: System.txt #System identify "Pendulum"; M:=Matrix([[1,0],[0,1]]); Q:=Matrix([[0],[-9.8]]); Phi:=Matrix([q[1,1]^2+q[2,1]^2-1]); Phi_q:=(Matrix([[2*q[1,1],2*q[2,1]]])); Phi_t:=Matrix([0]); dPhi_q:=Matrix([[2*v[1,1],2*v[2,1]]]); dPhi_t:=Matrix([0]); c:=-dPhi_t-dPhi_q.v; g:=c-2*alpha_b*(Phi_q.v+Phi_t)-beta_b^2*Phi; ICc.txt "consistent IC"; q0:=Matrix([[1],[0]]);v0:=Matrix([[0],[0]]); Cơ cấu tay quay trượt Mô tả hệ điều kiện đầu cho file sau: System.txt #System identify "Slider-Crank Mechanism"; M:=Matrix([[2,cos(q[2,1]-q[1,1])],[cos(q[2,1]q[1,1]),1]]); Nguyễn Hải Nguyên - 79 - Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị Q:=Matrix([[sin(q[2,1]-q[1,1])*(v[2,1])^219.6*sin(q[1,1])],[-sin(q[2,1]-q[1,1])*(v[1,1])^29.8*sin(q[2,1])]]); Phi:=Matrix([-cos(q[1,1])-cos(q[2,1])]); Phi_q:=(Matrix([[sin(q[1,1]),sin(q[2,1])]])); Phi_t:=Matrix([0]); dPhi_q:=Matrix([[cos(q[1,1])*v[1,1],cos(q[2,1])*v[2,1] ]]); dPhi_t:=Matrix([0]); c:=-dPhi_t-dPhi_q.v; g:=c-2*alpha_b*(Phi_q.v+Phi_t)-beta_b^2*Phi; ICc.txt "consistent IC"; q0:=Matrix([[Pi/4],[3*Pi/4]]);v0:=Matrix([[0],[0]]); Robot SCARA File mô tả hệ thống: system.txt #System identify "SCARA ROBOT (RRTR)"; M:=Matrix(4,4); M[1,1]:=m[1]*l[1]^2+m[2]*(a[1]^2+l[2]^2+2*a[1]*l[1]*co s(q[1,1]))+m[3]*(a[1]^2+a[2]^2+2*a[1]*a[2]*cos(q[2,1]) )+m[4]*(a[1]^2+a[2]^2+2*a[1]*a[2]*cos(q[2,1]))+Iz[1]+I z[2]+Iz[3]+Iz[4]: M[1,2]:=m[2]*(l[2]^2+a[1]*l[2]*cos(q[2,1]))+m[3]*(a[2] ^2+a[1]*a[2]*cos(q[2,1]))+m[4]*(a[2]^2+a[1]*a[2]*cos(q [2,1]))+Iz[2]+Iz[3]+Iz[4]: M[2,1]:=M[1,2]: M[1,4]:=-Iz[4]: M[4,1]:=M[1,4]: M[2,2]:=m[2]*l[2]^2+m[3]*a[2]^2+m[4]*a[2]^2+Iz[2]+Iz[3 ]+Iz[4]: M[2,4]:=-Iz[4]: Nguyễn Hải Nguyên - 80 - Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị M[4,2]:=-Iz[4]: M[3,3]:=m[3]+m[4]: M[4,4]:=Iz[4]: C:=Matrix(4,4); C[1,1]:=2*a[1]*sin(q[2,1])*(m[2]*l[2]+m[3]*a[2]+m[4]*a[2])*v[2 ,1]: C[1,2]:=a[1]*sin(q[2,1])*(m[2]*l[2]+m[3]*a[2]+m[4]*a[2])*v[2,1 ]: C[2,1]:=a[1]*sin(q[2,1])*(m[2]*l[2]+m[3]*a[2]+m[4]*a[2 ])*v[1,1]1/2*a[1]*sin(q[2,1])*(m[2]*l[2]+m[3]*a[2]+m[4]*a[2])*v [2,1]: C[2,2]:=1/2*a[1]*sin(q[2,1])*(m[2]*l[2]+m[3]*a[2]+m[4] *a[2])*v[1,1]: dKdq:=Matrix(4,1): ga:=9.8:#gravity dKdq[3,1]:=m[3]*ga+m[4]*ga: dKdq: Q:=-C.v-dKdq; rd:=Matrix([[ 0.3*cos(2*Pi*t) +1/sqrt(2)-1.3],[ 0.3*sin(2*Pi*t) +1/sqrt(2)],[ d[1]-d[4] +0.3]]); re:=Matrix([[ a[1]*cos(q[1,1])+a[2]*cos(q[1,1]+q[2,1]) ],[ a[1]*sin(q[1,1])+a[2]*sin(q[1,1]+q[2,1]) ],[ d[1]d[4]+q[3,1]]]); Phi:=Matrix(3,1): Phi:=re-rd; Phi_q:=Matrix([[-a[1]*sin(q[1,1])a[2]*sin(q[1,1]+q[2,1]) ,-a[2]*sin(q[1,1]+q[2,1]), ,0],[a[1]*cos(q[1,1])+a[2]*cos(q[1,1]+q[2,1]),a[2]*cos (q[1,1]+q[2,1]) , ,0 ],[ , , ,0 ]]); Phi_t:=Matrix([[ Pi*sin(2*Pi*t) ],[ -Pi*cos(2*Pi*t) ],[ ]]); Nguyễn Hải Nguyên - 81 - Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị dPhi_q:=Matrix([[ -a[1]*cos(q[1,1])*v[1,1]a[2]*cos(q[1,1]+q[2,1])*(v[1,1]+v[2,1]) ,a[2]*cos(q[1,1]+q[2,1])*(v[1,1]+v[2,1]), ,0], [ -a[1]*sin(q[1,1])*v[1,1]a[2]*sin(q[1,1]+q[2,1])*(v[1,1]+v[2,1]) , a[2]*sin(q[1,1]+q[2,1])*(v[1,1]+v[2,1]) , ,0 ], [ , , ,0 ]]); dPhi_t:=Matrix([[ 2*Pi^2*cos(2*Pi*t) ], [ 2*Pi^2*sin(2*Pi*t) ], [ ]]); c:=-dPhi_t-dPhi_q.v; g:=c-2*alpha_b*(Phi_q.v+Phi_t)-beta_b^2*Phi; File tham số: parameter.txt #Parameters a:=Vector([ , , d:=Vector([ , , l:=Vector([ 0.5, 0.5 , m:=Vector([ , , Ix:=Vector([ 1,1,1,1]); Iy:=Vector([ 1,1,1,1]); Iz:=Vector([ 1,1,1,1]); 0 0.2 0.7 , , , , 0.3 0.1 0.5 ]); ]); ]); ]); File điều kiện đầu: ICc.txt "consistent IC"; q0:=Matrix([[Pi/4],[3*Pi/4],[0.3],[Pi/6]]); v0:=Matrix([[0],[Pi],[0],[0]]); Nguyễn Hải Nguyên - 82 - Luận văn Thạc sỹ học ... Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị CHƯƠNG 2: HỆ PHƯƠNG TRÌNH VI PHÂN ĐẠI SỐ Sự vận động hệ học nói riêng, hệ động lực nói chung mơ tả qua hệ phương trình vi phân, ... KHIỂN HỆ NHIỀU VẬT 23 Sơ lược hệ nhiều vật 23 Các dạng thức hệ nhiều vật 24 Nguyễn Hải Nguyên -1- Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị. .. Luận văn Thạc sỹ học Phân tích động lực học hệ nhiều vật lân cận điểm kỳ dị Hình 4.8 Nghiệm số hệ có kỳ dị động học khoảng (0;2)s Hình 4.9 Nghiệm hệ khơng có kỳ dị động học khoảng (0;10)s Như

Ngày đăng: 09/02/2021, 21:55

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Đinh Văn Phong , “ Mô phỏng số và điều khiển các hệ cơ học”, NXB Giáo dục, Hà Nội, 2010 Sách, tạp chí
Tiêu đề: Mô phỏng số và điều khiển các hệ cơ học
Nhà XB: NXB Giáo dục
[2] Đinh Văn Phong, “Phương pháp số trong cơ học”, NXB Giáo dục, Hà Nội, 1996 Sách, tạp chí
Tiêu đề: Phương pháp số trong cơ học
Nhà XB: NXB Giáo dục
[4] J. G de Jalon, E. Bayo, “Kinematic and dynamic simulation of multibody systems – The Real-Time challenge”, Springer-Verlag New York Inc, 1994 Sách, tạp chí
Tiêu đề: Kinematic and dynamic simulation of multibody systems – The Real-Time challenge
[5] O. A. Bauchau, A. Laulusa, “Review of contemporary approaches for Constraint enforcement in multibody system”, ASME J. Comput.Nonlinear Dynam. 3, 2008 Sách, tạp chí
Tiêu đề: Review of contemporary approaches for Constraint enforcement in multibody system
[6] J. Baumgarte, “Stabilization of constraints and integrals of motion in dynamical systems”, Comp. Math. Appl. Mech. Eng. 1(1972), 1 – 16 Sách, tạp chí
Tiêu đề: Stabilization of constraints and integrals of motion in dynamical systems
Tác giả: J. Baumgarte, “Stabilization of constraints and integrals of motion in dynamical systems”, Comp. Math. Appl. Mech. Eng. 1
Năm: 1972
[7] H. S. Chin, “Stabilization methods for simulations of constrained multibody dynamics”, PhD Thesis, Dept. of Mathematics, The University of British Columbia, 1995 Sách, tạp chí
Tiêu đề: Stabilization methods for simulations of constrained multibody dynamics
[8] Linda R. Petzold, Yuhe Ren, Timothy Maly, “Numerical solution of DAEs with ill-conditioned constraints”, University ò Minnesota, 1993 Sách, tạp chí
Tiêu đề: Numerical solution of DAEs with ill-conditioned constraints
[9] F. E. Udwadia, “A new perspective on the tracking control of nonlinear structural and mechanical systems”, Proc. R. Soc. A 2003 Sách, tạp chí
Tiêu đề: A new perspective on the tracking control of nonlinear structural and mechanical systems
[10] E. Bayo, R. Ledesma, “Augmented Lagrangian and mass Orthogonal projection methods for constrained multibody dynamics”, Nonlinear Dynamics 9, 113-130, 1996 Sách, tạp chí
Tiêu đề: Augmented Lagrangian and mass Orthogonal projection methods for constrained multibody dynamics
[11] D. de Falco, E. Pennestri, L. Vita, “The Udwadia-Kalaba Formulation: A report on its numerical efficiency in multibody dynamics simulations and on its teaching effectiveness”, Multibody Dynamics, ECCOMAS Thematic Conference, Spain, 2005 Sách, tạp chí
Tiêu đề: The Udwadia-Kalaba Formulation: A report on its numerical efficiency in multibody dynamics simulations and on its teaching effectiveness
[12] David J. Braun, Michael Goldfarb, “Eliminating constraint drift in the numerical simulation of constrained dynamical systems”, Computer Methods in Applied Mechanics and Engineering, Volume 198, Issues 37- 40, 1 August 2009, Pages 3151-3160 Sách, tạp chí
Tiêu đề: Eliminating constraint drift in the numerical simulation of constrained dynamical systems
[13] S. Kemal Ider, “Inverse dynamics of redundant manipulators using a minimum number of control forces”, J. Robotics systems 12(8), 569-579, 1995 Sách, tạp chí
Tiêu đề: Inverse dynamics of redundant manipulators using a minimum number of control forces
[14] Dinh Van Phong, “Principle of compatibility and criteria of ideality in study of constrained mechanical systems”, Strojnicky casopis, 47, 1996, N.1, pg 2-11 Sách, tạp chí
Tiêu đề: Principle of compatibility and criteria of ideality in study of constrained mechanical systems
[15] Juan C. Garcia Orden, Roberto A. Ortega, “A conservative Augmented Lagrangian algorithm for the dynamics of constrained mechanical systems”, The third European Conference on Computational Mechanics , 2006 Sách, tạp chí
Tiêu đề: A conservative Augmented Lagrangian algorithm for the dynamics of constrained mechanical systems
[16] E. Bayo, J. García de Jalón, M. A. Serna, “A Modified Lagrangian Formulation for the Dynamic Analysis of Constrained Mechanical Systems”, Computer Methods in Applied Mechanics and Engineering, Vol. 71, pp. 183-195 (1988) Sách, tạp chí
Tiêu đề: A Modified Lagrangian Formulation for the Dynamic Analysis of Constrained Mechanical Systems
[18] Kathryn Eleda Brenan, S. L. Campbell, Stephen La Vern Campbell, Linda Ruth Petzold, “Numerical solution of initial-value problems in differential-algebraic equations”, SIAM, 1996 Sách, tạp chí
Tiêu đề: Numerical solution of initial-value problems in differential-algebraic equations
[19] Uri M. Ascher, Linda Ruth Petzold, “Computer methods for ordinary differential equations and differential-algebraic equations”, SIAM, 1998 Sách, tạp chí
Tiêu đề: Computer methods for ordinary differential equations and differential-algebraic equations
[20] K. Ider, M. N. Amirouche, “Coordinate reduction in the dynamics of contrained MBSs,” J. Appl. Mech. Trans. ASME 55, 1988 Sách, tạp chí
Tiêu đề: Coordinate reduction in the dynamics of contrained MBSs
[21] J. W. Kamman, R. L. Huston, “Dynamics of constrained MBS,” J. Appl. Mech. Trans. ASME, 51, 1984 Sách, tạp chí
Tiêu đề: Dynamics of constrained MBS
[22] S. R. Buss, J. S. Kim, “Selectively Damped Least Squares for inverse kinematics”, Available at http://math.ucsd.edu/~sbuss/ResearchWeb,2004 Sách, tạp chí
Tiêu đề: Selectively Damped Least Squares for inverse kinematics

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w