Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ДИПЛОМ АСЫЛБЕК

.pdf
Скачиваний:
36
Добавлен:
24.03.2015
Размер:
1.02 Mб
Скачать

13X=X+.5*H

14CALL FCT(X,Y,DERY) GOTO 10

15IF(ITEST)16,16,20

16DO 17 I=1,NDIM

17AUX(4,I)=Y(I)

ITEST=1 ISTEP=ISTEP+ISTEP-2

18IHLF=IHLF+1

X=X-H

H=.5*H

DO 19 I=1,NDIM

Y(I)=AUX(1,I)

DERY(I)=AUX(2,I)

19AUX(6,I)=AUX(3,I) GOTO 9

20IMOD=ISTEP/2

IF(ISTEP-IMOD-IMOD)21,23,21 21 CALL FCT(X,Y,DERY)

DO 22 I=1,NDIM AUX(5,I)=Y(I)

22AUX(7,I)=DERY(I) GOTO 9

23DELT=0.

DO 24 I=1,NDIM

24DELT=DELT+AUX(8,I)*ABS(AUX(4,I)-Y(I)) IF(DELT-PRMT(4))28,28,25

25IF(IHLF-10)26,36,36

26DO 27 I=1,NDIM

27AUX(4,I)=AUX(5,I)

ISTEP=ISTEP+ISTEP-4 X=X-H

IEND=0

GOTO 18

28 CALL FCT(X,Y,DERY) DO 29 I=1,NDIM AUX(1,I)=Y(I) AUX(2,I)=DERY(I) AUX(3,I)=AUX(6,I) Y(I)=AUX(5,I)

29 DERY(I)=AUX(7,I)

CALL OUTP(X-H,Y,DERY,IHLF,NDIM,PRMT) IF(PRMT(5))40,30,40

61

30 DO 31 I=1,NDIM Y(I)=AUX(1,I)

31DERY(I)=AUX(2,I)

IREC=IHLF

IF(IEND)32,32,39

32IHLF=IHLF-1 ISTEP=ISTEP/2 H=H+H IF(IHLF)4,33,33

33IMOD=ISTEP/2

IF(ISTEP-IMOD-IMOD)4,34,4

34IF(DELT-.02*PRMT(4))35,35,4

35IHLF=IHLF-1

ISTEP=ISTEP/2

H=H+H

GOTO 4

36 IHLF=11

CALL FCT(X,Y,DERY) GOTO 39

37IHLF=12 GOTO 39

38IHLF=13

39CALL OUTP(X,Y,DERY,IHLF,NDIM,PRMT)

40RETURN

END

ПОДПРОГРАММА 9- СИПАТТАЙТЫН ҚОЗҒАЛТҚЫШ ТЕҢДЕУІНІҢ ОҢ ЖАҒЫН ҚҰРУ

SUBROUTINE FD(XD,YD,DD) COMMON

/SS/Z1,TM1,TM4,H1,H4,C2,C3,C5,C6,E1,E2,E3,E4,E5,E6,E7,DU COMMON /SS/Z,C2,C3,C5,C6,E1,E2,E3,E4,E5,E6,E7,DU

COMMON H1,H4,TM1,TM4 COMMON /R/Y3,Y4

DIMENSION YD(2),DD(2)

DD(1)=-(H1*Z*Y3+YD(1))/TM1

DD(2)=-(H4*Z*Y4+YD(2))/TM4 RETURN

END

ПОДПРОГРАММА 10-ШЫҒЫС АҚПАРАТТЫ ӨҢДЕУ

SUBROUTINE OUD(XD,YD,DD,IHD,N,PRD)

62

COMMON /S3/XT,XTD DIMENSION PRD(5),YD(2),DD(2) IF(ABS(XD-XTD)-0.0001) 8,8,6

8 XTD=XTD+0.001

6 RETURN

END

ПОДПРОГРАММА 11МАНИПУЛЯТОР 2-НІҢ ҚОЗҒАЛЫС ТЕҢДЕУІН ҚҰРУ

SUBROUTINE

PROGD1(XC,DXC,YC,DYC,F11,F22,DF11,DF22) COMMON /S1/DL1,DL2

R1=XC**2+YC**2-DL1**2-DL2**2+2*(DL1**2-YC*DL1) R2=XC**2+YC**2-DL1**2-DL2**2 R3=SQRT(4*DL1**2*DL2**2-(XC**2+YC**2-DL1**2-

DL2**2)**2)

R4=2*DL1*DL2

F11=ATAN(R1/R3)

F22=ATAN(R2/R4) AT=XC**2+YC**2-DL1**2-DL2**2 FT=SQRT(4*DL1**2*DL2**2-AT**2) BT=2*(DL1**2-YC*DL1)+AT DAT=2*(XC*DXC+YC*DYC) DFT=-AT*DAT/FT CT=DFT+2*DXC*DL1 RT=CT**2+BT**2 DBT=DAT-2*DL1*DYC DCT=DFT+2*DXC*DL1 PT=CT*DBT-BT*DCT

DF11=2*PT/RT

DF22=-DAT/FT RETURN

END

ПОДПРОГРАММА 12 - МАНИПУЛЯТОР 2-НІҢ ҚОЗҒАЛЫС ТЕҢДЕУІНІҢ ОҢ ЖАҚТАРЫНЫҢ КОЭФФИЦИЕНТТЕРІН ЕСЕПТЕУ

SUBROUTINE KOEF1(F11,F22,A11,A12,A22,B1,B2)

COMMON /S/DM1,DM2

COMMON /S1/DL1,DL2

COMMON Z,G,T

S0=DM2*DL1*DL2

63

S1=(DM1*DL1**2+DM2*DL2**2)/3+DM2*DL1**2

S2=(DM1/2+DM2)*G*DL1

S3=DM2*G*DL2/2

S22=DM2*DL2**2

A11=S1+S0*COS(F22)

A12=S22/3+S0/2*COS(F22)

A22=S22/3

B1=-S2*SIN(F11)-S3*SIN(F22)

B2=-S3*SIN(F22)

RETURN

END

ПОДПРОГРАММА 13МАНИПУЛЯТОР 2-НІҢ ҚОЗҒАЛЫС ТЕҢДЕУІНІҢ КӨМЕКШІ КОЭФФИЦИЕНТТЕРІН ЕСЕПТЕУ

SUBROUTINE FORC1(F1,F2,A11,A12,A22,B1,B2) COMMON

/SS/Z1,TM1,TM4,H1,H4,C2,C3,C5,C6,E1,E2,E3,E4,E5,E6,E7,DU COMMON /SS/Z1,TM1,TM4,H1,H4,C2,C3,C5,C6,E1,E2,DU

COMMON /S/DM1,DM2 COMMON /S1/DL1,DL2 COMMON Z,G,T

COMMON MD1,MD4 C1=MD1*Z-B1 C4=MD4*Z-B2 C2=C1*A22 C3=C4*A12 C5=C1*A12 C6=C4*A11

D1=-DM2*DL1*DL2*SIN(F2)

D2=-DM2*DL1*DL2/2*SIN(F2) DU=A11*A22-A12**2

E1=(D1*A12*F1**2+D2*A22*F2**2)/2+D1*A22*F1*F2

E2=(D1*A11*F1**2+D2*A12*F2**2)/2+D1*A12*F1*F2 RETURN

END

МЕХАНИЗМІ ТҰЙЫҚ ЕМЕС КИНЕМАТИКАЛЫҚ ТІЗБЕК НЕГІЗІНДЕГІ МАНИПУЛЯТОРДЫҢ ДИНАМИКАСЫН ЕСЕПТЕУ ПРОГРАММАСЫ

EXTERNAL F,OU,ZAC,PROGD1,KOEF1

COMMON Z,TM1,TM2,H1,H2,M1,M2,L1,L2,G,XT

DIMENSION Y(6),PR(5),D(6),AU(48)

64

REAL L1,L2,M1,M2

OPEN(1,FILE='rzad.dat')

OPEN(2,FILE='rpol.dat')

OPEN(3,FILE='rotk.dat')

OPEN (4, FILE ='RMECH.rez')

WRITE (1,91)

WRITE (2,93)

WRITE (3,90)

WRITE(4,215)

215FORMAT(43X,'КЕСТЕ') WRITE(4,115)

115 FORMAT(1X,52('-'))

WRITE(4,16)

16 FORMAT(1X,'! T ! ХC ! YC !',* ' XK ! YK ! DEL !') WRITE(4,115)

90 FORMAT(2x,'АУЫТҚУ ҚАТЕЛІГІ')

БАҒДАРЛАМАЛЫ ОРЫН АУЫСТЫРУДЫ ТАҢДАУ

DO 14 K=1,8 K=1

PRINT 15,K

15 FORMAT(' ОРЫН АУЫСТЫРУ ',I2)

БАСТАПҚЫ МӘНДЕРІ

L1=1.

L2=1.

M1=20.

M2=10.

H1=328.

H2=328.

TM1=0.09

TM2=0.09

G=9.8

ҚОЗҒАЛЫСТЫ МОДЕЛДЕУ

DO 1 I=1,50,5 T=0.01*I

CALL ZAC(K,T,XC,YC,DXC,DYC)

CALL PROGD1(XC,DXC,YC,DYC,F1,F2,DF1,DF2)

БАСТАПҚЫ ОРНАЛАСУЫ ЖӘНЕ ЖЫЛДАМДЫҒЫ

Y(1)=0.0

Y(2)=0.0

Y(3)=F1

Y(4)=F2

Y(5)=0.08

65

Y(6)=0.08

MD1=Y(5)

MD4=Y(6)

PR(1)=T

PR(2)=T+0.01

PR(3)=0.0001

PR(4)=0.0001

XT=T+0.01

DO 2 J=1,6 2 D(J)=1.0/6

CALL KOEF1(F1,F2,A11,A12,A22,B1,B2) CALL RKGS(PR,Y,D,6,IH,F,OU,AU) IF(ABS(X-T)-0.01) 31,31,1

31XK=L1*COS(F1)+L2*COS(F2)

YK=L1*SIN(F1)+L2*SIN(F2) DX=XC-XK

DY=YC-YK DEL=100*SQRT(DX**2+DY**2)/DL PRINT 91

91FORMAT(2X,'ҰСТАМНЫҢ БЕРІЛЕТІН КООРДИНАТТАРЫ') PRINT 92,XC,YC

write(1,*) XC,YC

92FORMAT(2X,'XC=',F10.6,5X,'YC=',F10.6)

PRINT 93

93FORMAT(2X,'ҰСТАМНЫҢ АЛЫНАТЫН КООРДИНАТТАРЫ') PRINT 92,XK,YK

write(2,*) XK,YK PRINT 94,DEL

write(3,*) T,DEL

94FORMAT(2X,'DELTA=',F15.6)

write(4,999) T,XC,YC,XK,YK,DEL 999 FORMAT(1X,'! ',F3.2,' !',5(1X,F5.3,' !'))

T=T+0.01

1 CONTINUE WRITE(4,115)

14CONTINUE STOP END

ПОДПРОГРАММА 1 – ҚОЗҒАЛЫС ЗАҢЫН АНЫҚТАУ

SUBROUTINE ZAC(K,T,XC,YC,DXC,DYC)

REAL K11,K12,K21

66

IF(K.EQ.1) GOTO 1

IF(K.EQ.2) GOTO 2

IF(K.EQ.3) GOTO 3

IF(K.EQ.4) GOTO 4

IF(K.EQ.5) GOTO 5

IF(K.EQ.6) GOTO 6

IF(K.EQ.7) GOTO 7

IF(K.EQ.8) GOTO 8

1X0=0.8 K11=-0.4 K12=1.1 GOTO 9

2K21=0.8

Y0=1.1

K11=0.4 GOTO 10

3X0=0.8

K11=0.4

K12=1.1 GOTO 9

4K21=0.8

Y0=1.1 K11=-0.4 GOTO 10

5X0=0.5 K11=-0.4 K12=0.6 GOTO 9

6K21=0.5

Y0=0.6

K11=0.4 GOTO 10

7X0=0.5

K11=0.4

K12=0.6 GOTO 9

8K21=0.5

Y0=0.6 K11=-0.4

GOTO 10

9 XC=X0+K11*T YC=K12 DXC=K11

67

DYC=0.0

GOTO 11

10XC=K21

YC=Y0+K11*T

DXC=0.0

DYC=K11

11CONTINUE RETURN

END

ПОДПРОГРАММА 2-МАНИПУЛЯТОРДЫҢ БАҒДАРЛАМАЛЫ ҚОЗҒАЛЫСЫН ҚҰРУ

SUBROUTINE

PROGD1(XC,DXC,YC,DYC,F11,F22,DF11,DF22)

COMMON Z,TM1,TM2,H1,H2,M1,M2,L1,L2,G,XT R1=XC**2+YC**2-DL1**2-DL2**2+2*(DL1**2-YC*DL1) R2=XC**2+YC**2-DL1**2-DL2**2 R3=SQRT(4*DL1**2*DL2**2-(XC**2+YC**2-DL1**2-

DL2**2)**2)

R4=2*DL1*DL2

F11=ATAN(R1/R3)

F22=ATAN(R2/R4) AT=XC**2+YC**2-DL1**2-DL2**2 FT=SQRT(4*DL1**2*DL2**2-AT**2) BT=2*(DL1**2-YC*DL1)+AT DAT=2*(XC*DXC+YC*DYC) DFT=-AT*DAT/FT CT=DFT+2*DXC*DL1 RT=CT**2+BT**2 DBT=DAT-2*DL1*DYC DCT=DFT+2*DXC*DL1 PT=CT*DBT-BT*DCT

DF11=2*PT/RT

DF22=-DAT/FT RETURN

END

ПОДПРОГРАММА 3- МАНИПУЛЯТОР ҚОЗҒАЛЫС ТЕҢДЕУІНІҢ ОҢ ЖАҚТАРЫНЫҢ КОЭФФИЦИЕНТТЕРІН ЕСЕПТЕУ

SUBROUTINE KOEF1(F11,F22,A11,A12,A22,B1,B2)

COMMON Z,TM1,TM2,H1,H2,M1,M2,L1,L2,G,XT

68

S0=DM2*DL1*DL2

S1=(DM1*DL1**2+DM2*DL2**2)/3+DM2*DL1**2

S2=(DM1/2+DM2)*G*DL1

S3=DM2*G*DL2/2

S22=DM2*DL2**2

A11=S1+S0*COS(F22)

A12=S22/3+S0/2*COS(F22)

A22=S22/3

B1=-S2*SIN(F11)-S3*SIN(F22)

B2=-S3*SIN(F22)

RETURN

END

ПОДПРОГРАММА 4-МАНИПУЛЯТОР ҚОЗҒАЛЫС ТЕҢДЕУІНІҢ ОҢ ЖАҚТАРЫНЫҢ ҚҰРУ

SUBROUTINE F(X,Y,D)

COMMON Z,TM1,TM2,H1,H2,M1,M2,L1,L2,G,XT DIMENSION Y(6),D(6)

P5=Y(1)*Z

P6=Y(2)*Z D(5)=Y(5)-P5/N1/T1/W1 D(6)=Y(6)-P6/N2/T2/W2 Q1=Y(5)*Z

Q2=Y(6)*Z

A1=M1 A2=4*M*L**2/3+M*(Y(2)**2-2*L*Y(2))

B1=-M1*(Y(4)-(L/2-Y(2))*Y(1)**2)-M*(Y(2)+L)*Y(3)**2 B2=(2*M*Y(4)*(Y(2)-L)+4*M*L**2/3+M*(Y(2)**2-2*L*Y(2)))*

*Y(3)+M1*(L/2-Y(2))**2*Y(1) C1=-M*G*COS(Y(1)) C2=-M*G*(L/2-Y(2))*SIN(Y(1)) D(1)=Y(3)

D(2)=Y(4) D(3)=(Y(1)-B1-C1)/A1 D(4)=(Y(2)-B2-C2)/A2 RETURN

END

ПОДПРОГРАММА 5-ШЫҒЫС АҚПАРАТТЫ ӨҢДЕУ

SUBROUTINE OU(X,Y,D,IH,N,PR)

COMMON Z,TM1,TM2,H1,H2,M1,M2,L1,L2,G,XT

69

DIMENSION PR(5),Y(6),D(6) IF(ABS(X-XT)-0.0001) 8,8,6

8 XT=XT+0.01

6 RETURN

END

ПОДПРОГРАММА 6 - ТЕҢДЕУДІ РУНГЕ-КУТ ӘДІСІМЕН ИНТЕГРАЛДАУ

SUBROUTINE RKGS(PRMT,Y,DERY,NDIM,IHLF,FCT,OUTP,AUX) DIMENSION Y(1),DERY(1),AUX(8,1),A(4),B(4),C(4),PRMT(1)

DO 1 I=1,NDIM

1AUX(8,I)=.06666667*DERY(I)

X=PRMT(1)

XEND=PRMT(2)

H=PRMT(3)

PRMT(5)=0.

CALL FCT(X,Y,DERY) IF(H*(XEND-X))38,37,2

2A(1)=.5

A(2)=.2928932

A(3)=1.707107

A(4)=.1666667

B(1)=2.

B(2)=1.

B(3)=1.

B(4)=2.

C(1)=.5

C(2)=.2928932

C(3)=1.707107

C(4)=.5

DO 3 I=1,NDIM

AUX(1,I)=Y(I)

AUX(2,I)=DERY(I)

AUX(3,I)=0.

3AUX(6,I)=0.

IREC=0

H=H+H IHLF=-1

ISTEP=0

IEND=0

4IF((X+H-XEND)*H)7,6,5

5H=XEND-X

70