Archivo | Programación RSS feed for this section

Aprende a programar

15 Abr

http://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=592:ejemplo-de-codigo-java-basico-clases-con-campos-constructor-y-metodos-la-palabra-clave-this-cu00652b&catid=68:curso-aprender-programacion-java-desde-cero&Itemid=188

Anuncios

Arduino.- Sensor de temperatura

6 Jul

http://www.arduteka.com/2011/12/tutorial-arduino-0005-sensor-de-temperatura-ntc/

tutorial con Arduino desarrollando un sensor de temperatura. 

Arduino

7 Jun
Vídeo

Filtro de Kalman

9 Abr

El filtro de Kalman es un algoritmo desarrollado por Rudolf E. Kalman en 1960 que sirve para poder identificar el estado oculto (no medible) de un sistema dinámico lineal, al igual que el observador de Luenberger, pero sirve además cuando el sistema está sometido a ruido blanco aditivo.1 La diferencia entre ambos es que en el observador de Luenberger, la ganancia K de realimentación del error debe ser elegida “a mano”, mientras que el filtro de Kalman es capaz de escogerla de forma óptima cuando se conocen las varianzas de los ruidos que afectan al sistema.

Algoritmo del Filtro discreto de Kalman[editar]
El Filtro de Kalman es un algoritmo recursivo en el que el estado \quad x_k es considerado una variable aleatoria Gaussiana. El filtro de Kalman suele describirse en dos pasos: Predicción y Corrección.

Predición

Estimación a priori
\hat{\textbf{x}}_{k|k-1} = \mathbf{\Phi}_{k} \ \textbf{x}_{k-1|k-1}

Covarianza del error asociada a la estimación a priori

\textbf{P}_{k|k-1} = \mathbf{\Phi}_{k} \textbf{P}_{k-1|k-1} \mathbf{\Phi}_{k}^{\text{T}} + \textbf{Q}_{k}

Correción

Actualización de la medición

\tilde{\textbf{y}}_k = \textbf{z}_k – \textbf{H}_k\hat{\textbf{x}}_{k|k-1}

Ganancia de Kalman \textbf{K}_k = \textbf{P}_{k|k-1}\textbf{H}_k^\text{T}(\textbf{H}_k \textbf{P}_{k|k-1} \textbf{H}_k^\text{T} + \textbf{R}_k)^{-1}
Estimación a posteriori \hat{\textbf{x}}_{k|k} = \hat{\textbf{x}}_{k|k-1} + \textbf{K}_k\tilde{\textbf{y}}_k
Covarianza del error asociada a la estimación a posteriori \textbf{P}_{k|k} = (I – \textbf{K}_k \textbf{H}_k) \textbf{P}_{k|k-1}
donde:

\mathbf{\Phi}_{k}: Matriz de Transición de estados. Es la matriz que relaciona \textbf{x}_{k|k-1} con \textbf{x}_{k-1|k-1} en la ausencia de funciones forzantes (funciones que dependen únicamente del tiempo y ninguna otra variable).

\textbf{x}_{k|k-1}: El estimado apriori del vector de estados.

\textbf{P}_{k|k-1} : Covarianza del error asociada a la estimación a priori.

\textbf{z}_k : Vector de mediciones al momento k.

\textbf{H}_k : La matriz que indica la relación entre mediciones y el vector de estado al momento k en el supuesto ideal de que no hubiera ruido en las mediciones.

\textbf{R}_k : La matriz de covarianza del ruido de las mediciones (depende de la resolución de los sensores).

Programación en JAVA

4 May

Lenguajes_01 (2)

 

Interesante

Producto escalar entre 2 Vectores JAVA

18 Abr

import javax.swing.JOptionPane;

public class productoEscalar {
    static int v[], w[];
    static int tam;
     
    public static void main(String[] args) {
       
     tam = Integer.parseInt(JOptionPane.showInputDialog(null, "Ingrese tamaño de vectores: "));
     
     // Redimensionar vectores
     v = new int[tam];
     w = new int[tam];
     
     llenarVector();
      
     JOptionPane.showMessageDialog(null, "El producto escalar es: " + pEscalar());
   }
   
   // Metodo para llenar ambos vectores
   static void llenarVector(){
     JOptionPane.showMessageDialog(null, "Llenar vector v[ ]");
     for(int i = 0; i < v.length; i++){
         v[i] = Integer.parseInt(JOptionPane.showInputDialog("Ingrese dato v["+i+"]"));
     }
     
     JOptionPane.showMessageDialog(null, "Llenar vector w[ ]");
     for(int j = 0; j < w.length; j++){
         w[j] = Integer.parseInt(JOptionPane.showInputDialog("Ingrese dato w["+j+"]"));
     }
  }
  
  // Metodo para hallar el producto escalar
  static double pEscalar(){
   int xEscalar = 0;
   
   for(int i = 0; i < v.length; i++){
    xEscalar = xEscalar + (v[i] * w[i]);
   }
   
   return xEscalar;
  }
}

COMPILAR EN JAVA

18 Abr

1) Configuración de Windows.
Para poder interpretar o compilar programas Java desde la consola de windows es necesario comprobar esta configuración en las Propiedades del Sistema.

1.- Ir a Inicio dar clic derecho sobre Equipo clic en Propiedades ir a Configuración Avanzada del Sistema. (Configuración para Windows Vista y Windows 7).

2.- Nos abrirá una nueva ventanilla damos clic sobre Variables de Entorno.

3.- Comprobamos si existe el Valor ‘C:\Program Files\Java\jdk.1.6.0_25\bin’ en la variable PATH (Puede variar la versión del JDK)

4.- En caso de que no se encuentre el mismo valor que en la imagen de arriba hacemos lo sig.

  1. Clic en Nueva o Editar.. Y agregamos el siguiente valor y por último damos clic en Aceptar.

5.- Ahora abrimos la Consola de Windows (Símbolo del Sistema) InicioTodos los programas > Accesorios > Símbolo del Sistema.


6.- Dentro de la consola escribimos Javac si todo lo hicimos correctamente, saldrá esta información.

CMD -Javac

7.- Para compilar un programa, primero debemos tener el archivo .java (ej HolaMundo.java) Para poder compilar el programa debemos ubicar el archivo desde la consola, supongamos que lo tenemos guardado en el escritorio.
Tan solo podemos utilizar el comando Dir para ver los directorios y archivos en la carpeta y con el comando cd para poder navegar en ellos.

Ejemplo, ejecutamos este comando desde la misma consola: cd desktop

Y para compilar el archivo ejecutamos javac nombre_del_archivo.java (ej: javac HolaMundo.java). Si todo salio correcto nos debe salir algo así:

Microsoft Windows [Versión 6.1.7600]
Copyright (c) 2009 Microsoft Corporation. Reservados todos los derechos.

C:\Users\Overnet>cd desktop

C:\Users\Overnet\Desktop>javac HolaMundo.java

C:\Users\Overnet\Desktop>

Y en la carpeta donde teníamos el programa se creo la clase ‘HolaMundo.class’

8.- Para ejecutar el programa escribimos allí mismo en la consola: java HolaMundo

Programa HolaMundo compilado e interpretado desde la consola de Windows
Psyche's Circuitry

Thoughts on growing up and growing old in the digital age

digiphile

We're already living in the future. It's just not evenly distrbuted yet.

TED Blog

The TED Blog shares interesting news about TED, TED Talks video, the TED Prize and more.

Why? Because Science.

Combating Stupidity Since 2012

TechCrunch

Startup and Technology News

Skeptical Software Tools

Applying the power of the programmable web to the purposes of skepticism.

CNNEspañol.com

Ultimas Noticias de Estados Unidos, Latinoamérica y el Mundo, Opinión y Videos

Negocios, Mujer y Tecnología

Desde una perspectiva diferente

MSexcel

Un pequeño aporte para todos :)

Omar Barrera

whats are you doing?

Era 2.0

Mi rincón sobre marketing y nuevas tecnologías

Desarrollo e ingeniería

Desarrollo de soluciones en informática