miércoles, 16 de mayo de 2007

Emulando Programas Windows en Linux

Hoy pude cargar un par de programas windows desde mi mandriva linux, despues de varios intentos por fin lo logre. Todo esto desde el programa Wine(Wine Is Not an Emulator).
aki esta la imagen del progama step 7 de la siemens corriendolo dese linux, y hoy realize mis practicas de PLC's desde Aki. Que agradable es esto, Saber ke no necesitas el Windows para Poder correr tus programas favoritos.
aun soy un novato de lo mas burdo en linux, pero ire creciendo, pero lo que tengo claro es la enorme diferiencia entre windows de microsoft y Gnu-linux de linus torvals y richard stallman.

miércoles, 9 de mayo de 2007

Practica 2 de MAtlab

hoy tube mi segunda practica con MAtlaB, la practica se baso en el uso de estructuras condicionales, las famosas if-else, ahi les mando el ejemplo de las 2 practicas, mezclo un poco de ciclos para hacer mas divertido el programa o la programacion.

--------------------------------------------------------------------------------
clc; %Limpia pantalla al iniciar la aplicacion%
a=1; %Variable auxiliar para el control del ciclo del menu%
while a >0, %iniciamos el ciclo,este se repetira hasta que a sea menor a 0%
disp('UNIVERSIDAD VERACRUZANA-PRACTICAS MATLAB-ESTRUCTURAS CONDICIONALES');
disp('');
disp('MENU');
disp('1.- Ejemplo 1(Raicez cuadraticas)');
disp('2.- Ejemplo 2(Ley de Ohms');
disp('3.- Salir');
opt=input('Ingresa tu Opcion:');
switch opt %condicionamos la opction que elige el usuario%
case 1, %condicionamos si el usuario eligio 1, esto nos ahorra mucho espacio a comparacion del los if-else
a=input('ingresa el VAlor de a=');
b=input('ingresa el VAlor de b=');
c=input('ingresa el VAlor de c=');
dis=(b.^2)-(4*a*c);
%empezamos a condicionar el resultado del discriminante; dependiendo si la raiz sea real,
%imaginaria o las raicez sean iguales.
if dis>0,
disp('La raiz es real');
else
disp('La raiz es Imaginaria');
end
if dis==0,
disp('Las raicez son iguales');
end
case 3,
clc;
break;
case 2,
nure=input('Ingresa el Numero de Resistencias a utilizar');
if nure==0,
disp('Error');
pause;
elseif nure==1,
disp('RT=R');
pause;
elseif nure==2,
r1=input('Ingresa el Valor de R1');
r2=input('Ingresa el Valor de R2');
rt=((1/r1)+(1/r2));
disp('La suma de resistencias en paralelo es:');
disp(rt);
pause;
elseif nure==3,
r1=input('Ingresa el Valor de R1');
r2=input('Ingresa el Valor de R2');
r3=input('Ingresa el Valor de R3');
rt=((1/r1)+(1/r2)+(1/r3));
disp('La suma de resistencias en paralelo es:');
disp(rt);
pause;
elseif nure==4,
r1=input('Ingresa el Valor de R1');
r2=input('Ingresa el Valor de R2');
r3=input('Ingresa el Valor de R3');
r4=input('Ingresa el Valor de R4');
rt=((1/r1)+(1/r2)+(1/r3)+(1/r4));
disp('La suma de resistencias en paralelo es:');
disp(rt);
pause;
elseif nure>4,
disp('Lo siento el sistema acepta como maximo 4 resistencias');
end
end
end
end
end
end

-----------------------------------------------------------

Este es el codigo, y abajo la imagen del programa ya ejecutado

PLC-Contadores

Hoy vimos un tema nueva, los Contadores....

Son dispositivos como su nombre lo dice contadores, que sirven para llevar una secuencia o conteo para ciertas aplicaciones.
ahi les muestro el ejempo en el cual los empleamos.
Problema 13.
Este problema es basicamente lo siguiente: Encender un motor con un boton de encendido, al encender el motor pasaran 15 segundos para que se apage el motor,inmediatemente encendera una luz que destellara 3 veces, cada destello durara 3 segundos y cada tiempo muerto 1.5 segundo.



lunes, 7 de mayo de 2007

Compuertas Logicas

El dia de Hoy aprendi el lenguaje de compuertas logicas para la programacion de plc's, pense que seria dificil pero no, es algo sencillo, laborioso y muy extenso, pero sencillo.


Uno de los ejercicios que hicimos fue este:


6.-Realizar el diagrama KOP y FUP para lo siguiente:


  • control de un motor monofasico en 2 puntos distintos.

  • el sistema utilizara 1 lampara para la operacion del motor y 1 para el apagado

  • un solo boton NA para desactivar el sistema.

Las solucion esta bastante sencilla,para los que conoscan de diagramas electromecanicos o electricos.



ahi esta el diagrama hecho en el programa, esto para un plc siemens pc 216

sábado, 5 de mayo de 2007

Mi primer LAPtop


Estan son las fotos de mi primer laptop, es una ibm thinkpad y digo es porque aun funciona,tiene menos de 64 mb en ram y procesador de 500 mhz p2.

No es un milagro ke aun funciones, ES IBM...........

Vean que cosa, una reliquia, esto lo veran mis hijos; ellos me diran, que es eso padre? -yo respondere: Eso hijos fueron los inicios de la IBM....

INICIANDO en MATLAB

MATlAb(LABORATORY MATRIZ).Un potente programa para el desarrollo de aplicaciones matematicas y graficas. Apesar de que tiene su propio lenguaje de programacion carece de estructura, pero no deja de ser potente. Es rapido en el proceso de datos ademas de las funciones graficas que dificilmente se logran en lenguajes como C++. siendo este mas potente por mucho que el Matlab.

Mi proyecto proximo sera el desarrollar el algoritmo de gauss-jordan, el cual no es nada complejo,pero el resultado que queremos es que se imprima cada paso del algoritmo o de desarrollo para poder de esta manera enseñar este metodo matricial para ecuaciones.

Este es mi Primer Codigo hecho en Matlab, es bastante sencillo no lo niego,pero es el inicio:

-----------------------------------------------------------------------------------------
var=1;
clc;
while var>0
disp(UV-PRACTICAS MATLAB-USO DE ESTRUCTURAS CONDICIONALES Y CICLICAS');
disp(' M e n u ');
disp('CALCULOS DE AREAS');
disp('1.- Rectangulo');
disp('2.- Triangulo Rectangulo');
disp('3.- Circulo'); disp('4.- Salir');
aux1=input('Elige el Numero de la Opcion Deseada:');
switch aux1
case 1,
clc;
disp('RECTANGULO');
base=input('Ingresa la Base:');
altura=input('Ingresa la Altura:');
area=base*altura;
phi=(1+sqrt(5))/2;
x = [0 phi phi 0 0];
y = [0 0 1 1 0];
u = [1 1];
v= [0 1];
plot(x,y,'b')
text(phi/2, 1.05,'base')
text(1+phi/2, -.05,'la base es')
text(-.05,.5,'altura')
text(.5,-.5,'altura')
axis equal
axis off
set(gcf, 'color','white')
disp('EL AREA DEL RECTANGULO ES:');
disp(area);
pause;
case 2,
clc;
disp('Elegiste el Triandulo.Procesando................');
base=input('Ingresa la Base:');
altura=input('Ingresa la Altura:');
area=(base*altura)/2;
clc;
disp(area);
pause;
case 3,
clc;
disp('Elegiste el Circulo,Espera un momento............');
base=input('Ingresa el RAdio:');
area=(3.1416)*(base.^2);
disp(area);
pause;
case 4,
clc;
break ;
end
clc;
end



AHI ESTA TODO EL CODIGO CHEQUENLO Y DEJEN SUS COMENTARIOS