Prob. con visual vieja edicion
Publicado por Leonardo (4 intervenciones) el 30/05/2006 03:48:30
el siguiente es un trabajo que tengo que presentar y lo copie de un libro que parece usaba una version vieja de Visual, tube problema con el comando “input” como podran ver, y “locate” que no existe en al version 6.0, y “screen ” . el tema que yo recien estoy aprendiendo a prog. en visual y tengo demasiados problemita con este caso de simulacion que tego que hacer.
teoriamente me tiene que aparecer uns lista para llenar entradas de la simulacion, realizarme un grafico, esperosu respuesta!
Graciass!!!
Option Explicit
Dim B, C, T, C2, S, PR, T1, Y, R, X, E, EI, Y1, Y2, Y3, Y4, Y5
10 Print "***Control de Presión en Tubería***"
20 Print "-------------------------------------"
30 '-------------------------------------------------------
40 '*** FUNCIONES LAZO DE CONTROL (P=D/DT) ***
50 '*** CONTROLADOR - DEF FNC(P)=K(1+(1/(R*P)) ***
60 '*** VALVULA - DEF FHV(P)=1/((C2*P)^2+2*S*C2*P+1) ***
70 '*** PROCESO - DEF FNP(P)=1/(1+PR*P) ***
80 '*** TRANSMISOR - DEF FNT(P)=1/(1+T1*P) ***
90 '-------------------------------------------------------
100 Print "LIMITES DE TIEMPO (MIN)-B,C=";
110 Input #1, B, C
120 Print "T-INCREMENTO DE TIEMPO (MIN=";
130 Input #1, T
140 Print "C2(CONST. TIEMP VALV.)=";
150 Input #1, C2
160 Print "S(FACTOR DE AMORTIG. VALV.)="
170 Input #1, S
180 Print "PR(CONST. TIEMPO PROCESO=";
190 Input #1, PR
200 Print "T1(CONST. TIEMPO TRASM. PRESICION)="
210 Input #1, T1
220 Print "K(GANANCIA)="
230 Input #1, K
240 Print "R(MIN/REP)="
250 Input #1, R
260 Print "INTEGRACION DE EULER-VALORES INICIALES"
270 Print "-------------------------------------"
280 Print "X(CONSIGNA)=";
290 Input #1, X
300 Print "E(ERROR=CONSIGANA-VARIABLE)=";
310 Input #1, E
320 Print "EI(INTEGRAL DEL ERROR)=";
330 Input #1, EI
340 Print "Y1(SALIDA DEL CONTROLADOR)=";
350 Input #1, Y1
360 Print "Y2(CAUDAL VALVULA)=";
370 Input #1, Y2
380 Print "Y3(DERIVA DEL CAUDAL)=";
390 Input #1, Y3
400 Print "Y4(PRESIÓN TUBERÍA)=";
410 Input #1, Y4
420 Print "Y5(SALIDA TRASMISOR)=";
430 Input #1, Y5
440 '-------------------------------------------------------
450 '-DIBUJO DE EJES Y CURVA RESOLUCION (640*200)
460 '- FACTOR DE ESCALA DE EJES (C*P ENTRE 400 Y 600) (Q=150)
470 '-------------------------------------------------------
480 P = 560 / C: Q = 150
490 cls
500 SCREEN 2
510 Line (40, 175)-(640, 175)
520 Line (40, 175)-(40, 0)
530 Line (40 + B * P, 177)-(40 + B * P, 173): locate 23, ((40 * B * P) / 8): Print "B"
540 Line (40 + C * P, 177)-(40 + C * P, 173): locate 23, (((40 + C * P) / 8) - 6): Print "MIN C"
550 Line (38, 100)-(42, 100): locate 13, 3: Print "50"
560 Line (38, 25)-(42, 25): locate 4, 2: Print "100"
570 locate 2, 20: Print "CONTROL PRESIÓN"
580 For w = B To C Step T
590 EI = EI + E * T
600 Let E = X - Y5
610 Y1 = K + E + (K * EI) / R
620 Y3 = Y3 + T * (1 / (C2) ^ 2) * (Y1 - Y2 - 2 * S * C2 * Y3)
630 Y2 = Y2 + T * Y3
640 If Y2 > 1 Then Y2 = 1
650 If Y2 < 0 Then Y2 = 0
660 Y4 = Y4 + T + (1 / PR) * (Y2 - Y4)
670 Y5 = Y5 + T + (1 / T1) * (Y4 - Y5)
680 Y = Y5
690 PSet (w * P + 40, -Y * Q + 175), 1
700 Next w
710 End
teoriamente me tiene que aparecer uns lista para llenar entradas de la simulacion, realizarme un grafico, esperosu respuesta!
Graciass!!!
Option Explicit
Dim B, C, T, C2, S, PR, T1, Y, R, X, E, EI, Y1, Y2, Y3, Y4, Y5
10 Print "***Control de Presión en Tubería***"
20 Print "-------------------------------------"
30 '-------------------------------------------------------
40 '*** FUNCIONES LAZO DE CONTROL (P=D/DT) ***
50 '*** CONTROLADOR - DEF FNC(P)=K(1+(1/(R*P)) ***
60 '*** VALVULA - DEF FHV(P)=1/((C2*P)^2+2*S*C2*P+1) ***
70 '*** PROCESO - DEF FNP(P)=1/(1+PR*P) ***
80 '*** TRANSMISOR - DEF FNT(P)=1/(1+T1*P) ***
90 '-------------------------------------------------------
100 Print "LIMITES DE TIEMPO (MIN)-B,C=";
110 Input #1, B, C
120 Print "T-INCREMENTO DE TIEMPO (MIN=";
130 Input #1, T
140 Print "C2(CONST. TIEMP VALV.)=";
150 Input #1, C2
160 Print "S(FACTOR DE AMORTIG. VALV.)="
170 Input #1, S
180 Print "PR(CONST. TIEMPO PROCESO=";
190 Input #1, PR
200 Print "T1(CONST. TIEMPO TRASM. PRESICION)="
210 Input #1, T1
220 Print "K(GANANCIA)="
230 Input #1, K
240 Print "R(MIN/REP)="
250 Input #1, R
260 Print "INTEGRACION DE EULER-VALORES INICIALES"
270 Print "-------------------------------------"
280 Print "X(CONSIGNA)=";
290 Input #1, X
300 Print "E(ERROR=CONSIGANA-VARIABLE)=";
310 Input #1, E
320 Print "EI(INTEGRAL DEL ERROR)=";
330 Input #1, EI
340 Print "Y1(SALIDA DEL CONTROLADOR)=";
350 Input #1, Y1
360 Print "Y2(CAUDAL VALVULA)=";
370 Input #1, Y2
380 Print "Y3(DERIVA DEL CAUDAL)=";
390 Input #1, Y3
400 Print "Y4(PRESIÓN TUBERÍA)=";
410 Input #1, Y4
420 Print "Y5(SALIDA TRASMISOR)=";
430 Input #1, Y5
440 '-------------------------------------------------------
450 '-DIBUJO DE EJES Y CURVA RESOLUCION (640*200)
460 '- FACTOR DE ESCALA DE EJES (C*P ENTRE 400 Y 600) (Q=150)
470 '-------------------------------------------------------
480 P = 560 / C: Q = 150
490 cls
500 SCREEN 2
510 Line (40, 175)-(640, 175)
520 Line (40, 175)-(40, 0)
530 Line (40 + B * P, 177)-(40 + B * P, 173): locate 23, ((40 * B * P) / 8): Print "B"
540 Line (40 + C * P, 177)-(40 + C * P, 173): locate 23, (((40 + C * P) / 8) - 6): Print "MIN C"
550 Line (38, 100)-(42, 100): locate 13, 3: Print "50"
560 Line (38, 25)-(42, 25): locate 4, 2: Print "100"
570 locate 2, 20: Print "CONTROL PRESIÓN"
580 For w = B To C Step T
590 EI = EI + E * T
600 Let E = X - Y5
610 Y1 = K + E + (K * EI) / R
620 Y3 = Y3 + T * (1 / (C2) ^ 2) * (Y1 - Y2 - 2 * S * C2 * Y3)
630 Y2 = Y2 + T * Y3
640 If Y2 > 1 Then Y2 = 1
650 If Y2 < 0 Then Y2 = 0
660 Y4 = Y4 + T + (1 / PR) * (Y2 - Y4)
670 Y5 = Y5 + T + (1 / T1) * (Y4 - Y5)
680 Y = Y5
690 PSet (w * P + 40, -Y * Q + 175), 1
700 Next w
710 End
Valora esta pregunta


0