domingo, 25 de diciembre de 2016

Programado con arduino - 3 leds y potenciometro

Al girar el potenciometro en un sentido, se encienden los leds uno a uno, y cuando se gira en sentido contrario se van apagando los leds uno a uno. Haga click en imagen para agrandarla y observar las conexiones.





Programación en Arduino

const int led1 = 4; //Led conectado al pin4
const int led2 = 3; //Led conectado al pin3
const int led3 = 2; //Led conectado al pin2
const int pot = 0; // el pot está conectado al pinA0

int brillo=0; // variable para el brillo
int xtemp=0;
int xop=1;


void setup() {
  Serial.begin(9600);
  pinMode(led1, OUTPUT); // declaramos el led como salida
  pinMode(led2, OUTPUT); // declaramos el led como salida
  pinMode(led3, OUTPUT); // declaramos el led como salida
  /* Los pin analógicos  declaran como entrada automáticamente */
}

void loop() {
  /* Leemos el valor del potenciometro divididos entre 4 ya que 
  solo se pueden usar valores entre 0 y 255 en analog Write  */
  brillo = analogRead(pot)/4;
  /*AnalagoWrite recibe dos valores, el pin a usar y la intensidad del voltaje los valores de 
  voltaje van de 0  a 255 */
  Serial.println(brillo);
  Serial.println(xop);
  Serial.println(xtemp);

  if (xtemp<=brillo)
  {
      xop=1; //incrementa
  }
  else
  {
    xop=2; //decrementa
  }

  xtemp= brillo;

  if (xop==1){

      if (brillo>0 && brillo<100){    
          digitalWrite(led1,1);
      }
      else if (brillo>=100 && brillo<200)  
      {
          digitalWrite(led2,1);
      }
      else if (brillo>=200)  
      {
          digitalWrite(led3,1);  
      }

  }else{          
 
      if (brillo>=0 && brillo<100){      
         digitalWrite(led1,0);
         digitalWrite(led2,0);      
      }
      else if (brillo>=100 && brillo<200)  
      {
        digitalWrite(led2,0);
        digitalWrite(led3,0);      
      }
      else if (brillo<=225)  
      {
        digitalWrite(led3,0);              
      }  
  }

}

lunes, 19 de diciembre de 2016

Programando con arduino - 2 botones y un ServoMotor


Diseñando el proyecto con Circuits.io de AutoDesk



Usando la tarjeta Arduino, 2 push button (botones), servoMotor, cables, hélice y cable USB



(Haga clic en cada imagen para agrandarla)

Programación del proyecto

#include <Servo.h> // Librería

Servo myservo;

//Definición de variables
int pos=0;
int adelante=0;
int atras=0;

void setup() {

  Serial.begin(9600);
  myservo.attach(9);

  // Inicializa pin
  pinMode(3, INPUT);
  pinMode(5, INPUT);
}

void loop() {
  // Lee entrada de pulsación de los botones
  adelante = digitalRead(5);
  atras = digitalRead(3);
  
  if (adelante == 1){
     pos = pos+1;
     if (pos>=180){
         pos=180;
    }  
  }

  if (atras == 1){
    pos=pos-1;
    if (pos<=0){
       pos=0;
    }   
  }
  myservo.write(pos);
  delay(15);
}

lunes, 21 de noviembre de 2016

Seleccionar fila de un Jtable

El objeto JTable tiene el método getSelectedRow() que permite obtener datos de una fila. Considerando el nombre del JTable como tbDis y 2 cajas de texto txtNom (Nombre de Distrito), y txtCod (Código postal).

private void btnEditarActionPerformed (java.awt.event.ActionEvent evt) {                                    
   
     int fila;

     try{
   
         fila= tbDis.getSelectedRow(); //Selecciona la fila
       
         if (fila == -1){   // En el caso que no seleccione alguna fila
       
             JOptionPane.showMessageDialog(null, "Seleccione fila");

         }else{

             DefaultTableModel modelo=(DefaultTableModel) tbDis.getModel();
         
             String distrito = (String) modelo.getValueAt(fila, 0);
             String cpdPostal= (String) modelo.getValueAt(fila, 1);
       
             txtNom.setText(distrito);
             txtCod.setText(codPostal);

          }

       }catch (Exeption ex){

             JOptionPane.showMessageDialog(null, "Intente nuevamente");

       }  
     
     
}

martes, 15 de noviembre de 2016

Evento keyPressed en java


Haga clic derecho sobre el objeto JTextbox ubicado en JFrame, seleccione Events, luego Key y enseguida KeyPressed.










Al presionar la tecla Enter, focaliza otro objeto del formulario.

private void txtNomKeyPressed(java.awt.event.KeyEvent evt) {                                          

        if (evt.getKeyChar() == KeyEvent.VK_ENTER)
              // Focaliza el botón Guardar
              this.btnGuardar.requestFocus();

}

Llamar a un formulario JFrame con java

Si se desea mostrar un Jframe FrmPrincipal, debe instanciarlo y aplicar su visibilidad, como sigue:

FrmPrincipal ventana = new FrmPrincipal();
ventana.setVisible(true);

sábado, 12 de noviembre de 2016

Color de fondo del JFrame Formulario en java

Para aplicar un color de fondo del JFrame Formulario en java, utilice la siguiente instrucción:

   this.getContentPane().setBackground(Color.orange);

Colocar imagen en JLabel.

Para color una imagen un Jlabel, debe tener una imagen en una carpeta, y luego observar el resultado. Teniendo una carpeta demo y  una imagen login.jpg.

   ImageIcon foto = new ImageIcon("C:/demo/login.jpg");

   Icon icono = new ImageIcon(foto.getImage().getScaledInstance(jLabel4.getWidth(),       jLabel4.getHeight(), Image.SCALE_DEFAULT));

  jLabel4.setIcon(icono);
  this.repaint();

Color de fondo de JPanel

Para aplicar color de fondo a un Jpanel, utilice la siguiente instrucción.

          jPanel1.setBackground(Color.blue);

Centrar JFrame en Java

Para centrar un JFrame , utilice la siguiente instrucción :

        this.setLocationRelativeTo(null);

jueves, 10 de noviembre de 2016

Programación Java con NetBeans

Se mostrará ejemplos básicos de las estructura de programación del lenguaje Java, utilizando el IDE Netbeans.

Ejemplo 1: Uso de la estructura condicional - if



















Ejemplo 2 : Uso de la estructura de Selección múltiple - switch


























Ejemplo 3: Uso de la estructura repetitiva - for













Ejemplo 4: Uso de la estructura repetitiva - for each


Ejemplo 5 : Uso de la estructura repetitiva - while