Show Posts
Pages: 1 [2] 3
16  International / Hardware / Re: ayuda para montar camara termografica con arduino on: January 09, 2013, 02:09:07 am
Si tengo que probar a dividir el problema para ver lo que funciona y lo que no funciona....

Pero tengo otro problema, en mi esquema aparecen 2 resistencias, de ahi se hacen conexiones analogicas,pero el sensor melexis no funciona, no hace nada....no quiero freirlo....

Pongo los esquemas, el mio primero espero que este bien hecho...



El original, que mezcla un poco las conexiones y me pierdo....no quiero dar mas voltaje del necesario porque sino frio los componentes y no quiero...  GRACIAS

17  International / Hardware / Re: ayuda para montar camara termografica con arduino on: January 07, 2013, 02:54:31 pm
Este es el esquema de como he montado mi arduino.Pero en el esquema que he puesto en el post aparece de otra forma.

http://www.4shared.com/folder/GOvSbx3M/cheap-thermocam.html

Lo he creado con el software Fritzing, pero el problema es que los servos, no van, no se mueven.

Pongo el esquema
http://imageshack.us/photo/my-images/11/cheapthermocam2012bbs.jpg/
o mas grande
http://imageshack.us/photo/my-images/41/cheapthermocam2012bb.jpg/

¿Que se debe cargar primero el config en el arduino y luego el sketch?

Pongo el config

http://cheap-thermocam.bplaced.net/software/Thermocam-Config-103.zip

Pongo el sketch

http://cheap-thermocam.bplaced.net/software/Thermocam-Sketch-100412.zip

Gracias
18  International / Hardware / ayuda para montar camara termografica con arduino on: January 07, 2013, 01:10:36 pm
Tengo un arduino uno, tengo todos los componentes para montar una camara termografica.

Segun el proyecto www.cheap-thermocam.tk

He montado los servos y el sensor pero no me funciona, pongo el esquema de conexion.

http://cheap-thermocam.bplaced.net/images/Schematic.png

¿Alguien me puede ayudar?

Gracias

Jose
19  Community / Exhibition / Gallery / Re: Cheap-Thermocam | A cheap thermographic camera for everyone ! on: December 31, 2012, 11:04:53 am
Here is my circuit.

http://www.4shared.com/folder/GOvSbx3M/cheap-thermocam.html

You can open with Fritzing software.
Thanks for the help.

Happy new year 2013.

Regards

Jose
20  Community / Exhibition / Gallery / Re: Cheap-Thermocam | A cheap thermographic camera for everyone ! on: December 31, 2012, 10:54:40 am
Anyone can share the wire connection of the servo?

I have two  9g a0090
wire black- connected to gnd
wire red- connected to 5v
wire white- connected to d9 or d8

about melexis
i have
gnd-to gnd
3.3v-to red 3.3v
scl-line to 3.3v between a resistor of 4.7ohm then the wire and another wire to a5
sda-line to 3.3v between a resistor of 4.7ohm then the wire and another wire to a4

anyone can share the schematic with images? it's possible to create a manual of how to build the thermocam?

Thanks a lot.

Jose
21  International / Hardware / Re: Electrónica CNC/impresora 3D (driver, shields y placa) on: December 21, 2012, 06:21:25 pm
No quería despedir el año sin presentaros una de las mejores electrónicas que hay para controlar motores paso a paso. La evolución de la familia ELFDRV ahora tiene a en sus familia uno de los controladores más competitivos de todos el ELFDRV3 Next Gen.

Por lo tanto, aquí os dejo las familia de placas con el nuevo ELFDRV3 -NG:
  • 2.5A por fase - con disipador ventilación forzada, 1.25A al aire
  • 1/32 micro-steps -> es decir, 4266 pasos por mm para varilla M10, resolución 234nm
  • Rectificación síncrona
  • Completamente compatible con el SW CNC controller que ya conocéis.
  • Más pequeño: 27mm x 27mm

Funciona simplemente de película.
¿Te puedo preguntar cuanto cuesta mas o menos?

Gracias
[/quote
¿Es dificil montar todo el tema para 3d o para cnc?Gracias
22  Community / Exhibition / Gallery / Re: Cheap-Thermocam | A cheap thermographic camera for everyone ! on: December 17, 2012, 09:37:29 am
anyone know how i must use resistance of 4,7k ohm?
I'm a little bit lost with the schematic, i need to know how i must connect the wires.

Anyone can help me?

Thanks

Jose
23  Using Arduino / Sensors / Re: wind sensor on: November 15, 2012, 01:32:12 pm
thanks
24  Community / Exhibition / Gallery / Re: Cheap-Thermocam | A cheap thermographic camera for everyone ! on: November 15, 2012, 01:12:48 pm
It seems that these array sensors are listed as dual use products in Switzerland, so you cant import one without a ton of paperwork.

 smiley-sad
where can i buy these sensors at switzerland?

Thanks
25  Community / Exhibition / Gallery / Re: Arduino and MLX90620 16X4 pixel IR thermal array on: October 10, 2012, 06:38:33 am
Hello guys,
I want to share with you the code and wiring circuit to get the new MLX90620 working with the arduino. Like the well-known MLX90614, the sensor detects thermal radiation and measures temperatures without making contact with the object. The advantage of this sensor is that it can read 64 pixels at the same time VERY fast and accurate. For the price and size, it is a great thermal sensor.

Specifications of the sensor:
- Small size, cost effective 16X4 pixel, thermal array
- Active thermopile pixel technology for fast readout Easy to integrate
- Factory calibrated in wide temperature range: -40 to 85 °C for sensor temperature and -20 to 300 °C for object temperature. 2 Field Of View options: 60X15degrees or 40X10degrees
- High speed I2C digital interface for fast data transfer
- Programmable frame rate 0.5 to 64Hz.

Price: 75$ for the 60° version -> http://www.futureelectronics.com/en/technologies/semiconductors/analog/sensors/temperature/Pages/5020660-MLX90620ESF-BAB-000-TU.aspx?IM=0 (not at stock at the moment..)

Circuit diagram:


Source Code:
Code:
#include <i2cmaster.h>

int IRDATA[64];
word EEPROM_DATA[256];
byte CFG_LSB, CFG_MSB, PTAT_LSB, PTAT_MSB, CPIX_LSB, CPIX_MSB, PIX_LSB, PIX_MSB, EEDATA2;
int PIX, CPIX, PTAT, CFG;
double ta, to;
double temperatures[64];

void config_MLX90620_16Hz(){ //Sets the To-Refresh rate to 16Hz
  i2c_start_wait(0xC0);
  i2c_write(0x03);    
  i2c_write(0xB5);
  i2c_write(0x0A);  
  i2c_write(0x1F);  
  i2c_write(0x74);  
  i2c_stop();
}

void config_MLX90620_8Hz(){ //Sets the To-Refresh rate to 8Hz
  i2c_start_wait(0xC0);
  i2c_write(0x03);    
  i2c_write(0xB6);
  i2c_write(0x0B);  
  i2c_write(0x1F);  
  i2c_write(0x74);  
  i2c_stop();
}

void read_EEPROM_MLX90620(){
  i2c_start_wait(0xA0);    
  i2c_write(0x00);
  i2c_rep_start(0xA1);
  int i;
  for(i=0;i<=255;i++){
    EEPROM_DATA[i] = i2c_readAck();
  }
  i2c_stop();
}

void calculate_TA(){
  double v_th, k_t1, k_t2;
  v_th = (double) (256 * EEPROM_DATA[219]) + EEPROM_DATA[218];
  if(v_th > 32767){
    v_th = v_th - 65536;
  }
  k_t1 = (double) ((256 * EEPROM_DATA[221]) + EEPROM_DATA[220])/1024;
  if(k_t1 > 32767){
    k_t1 = k_t1 - 65536;
  }
  k_t2 = (double) ((256 * EEPROM_DATA[223]) + EEPROM_DATA[222])/1048576;
  if(k_t2 > 32767){
    k_t2 = k_t2 - 65536;
  }
  ta = (double) (-k_t1 + sqrt(square(k_t1) - (4 * k_t2 * (v_th - PTAT))))/(2*k_t2) + 25;
  Serial.println(ta);
}

void calculate_TO(){
  double v_ir_off_comp, v_ir_tgc_comp, v_ir_comp, v_cp_off_comp, emissivity, alpha_ij;
  int a_cp, b_cp, a_ij, b_ij, tgc;
  for(int i=0;i<=63;i++){
    if(IRDATA[i] > 32767){
      IRDATA[i] = IRDATA[i] - 65536;
    }
    a_cp = EEPROM_DATA[212];
    if(a_cp > 127){
      a_cp = a_cp - 256;
    }
    b_cp = EEPROM_DATA[213];
    if(b_cp > 127){
      b_cp = b_cp - 256;
    }
    v_cp_off_comp = (double) CPIX - (a_cp + (b_cp/pow(2,EEPROM_DATA[217])) * (ta - 25));
    a_ij = EEPROM_DATA[i];
    if(a_ij > 127){
      a_ij = a_ij - 256;
    }
    b_ij = EEPROM_DATA[64+i];
    if(b_ij > 127){
      b_ij = b_ij - 256;
    }
    v_ir_off_comp = (double) IRDATA[i] - (a_ij + (b_ij/pow(2,EEPROM_DATA[217])) * (ta - 25));
    tgc = EEPROM_DATA[216];
    if(tgc > 127){
      tgc = tgc - 256;
    }
    v_ir_tgc_comp = (double) v_ir_off_comp - ((tgc/32)*v_cp_off_comp);
    emissivity = (double) ((256*EEPROM_DATA[229]) + EEPROM_DATA[228])/32768;
    v_ir_comp = (double) v_ir_tgc_comp / emissivity;
    alpha_ij = 0.0000000232776;
    temperatures[i] = (double) sqrt(sqrt((v_ir_comp/alpha_ij) + pow((ta + 273.15),4))) - 273.15;
  }
}

void read_IR_ALL_MLX90620(){
  i2c_start_wait(0xC0);
  i2c_write(0x02);      
  i2c_write(0x00);    
  i2c_write(0x01);      
  i2c_write(0x40);      
  i2c_rep_start(0xC1);
  int i;
  for(int i;i<=63;i++){
    PIX_LSB = i2c_readAck();
    PIX_MSB = i2c_readAck();
    IRDATA[i] = (PIX_MSB << 8) + PIX_LSB;
  }
  i2c_stop();
}

void read_PTAT_Reg_MLX90620(){
  i2c_start_wait(0xC0);
  i2c_write(0x02);
  i2c_write(0x90);
  i2c_write(0x00);
  i2c_write(0x01);
  i2c_rep_start(0xC1);
  PTAT_LSB = i2c_readAck();
  PTAT_MSB = i2c_readAck();
  i2c_stop();
  PTAT = (PTAT_MSB << 8) + PTAT_LSB;
}

void read_CPIX_Reg_MLX90620(){
  i2c_start_wait(0xC0);
  i2c_write(0x02);
  i2c_write(0x91);
  i2c_write(0x00);
  i2c_write(0x01);
  i2c_rep_start(0xC1);
  CPIX_LSB = i2c_readAck();
  CPIX_MSB = i2c_readAck();
  i2c_stop();
  CPIX = (CPIX_MSB << 8) + CPIX_LSB;
  if(CPIX > 32767){
    CPIX = CPIX - 65536;
  }
}

void read_Config_Reg_MLX90620(){
  i2c_start_wait(0xC0);
  i2c_write(0x02);
  i2c_write(0x92);
  i2c_write(0x00);
  i2c_write(0x01);
  i2c_rep_start(0xC1);
  CFG_LSB = i2c_readAck();
  CFG_MSB = i2c_readAck();
  i2c_stop();
}

void check_Config_Reg_MLX90620(){
  read_Config_Reg_MLX90620();
  if ((CFG_MSB & 0x40) == 0){
    config_MLX90620_8Hz;
  }
}

void Temperatures_Serial_Transmit(){
  for(int i=0;i<=63;i++){
    Serial.println(temperatures[i]);
  }
}

void setup(){
  Serial.begin(115200);
  i2c_init();
  PORTC = (1 << PORTC4) | (1 << PORTC5);
  config_MLX90620_8Hz();
  //config_MLX90620_16Hz();
  read_EEPROM_MLX90620();
}

void loop(){
  read_PTAT_Reg_MLX90620();
  read_CPIX_Reg_MLX90620();
  read_IR_ALL_MLX90620();
  calculate_TA();
  calculate_TO();
  Temperatures_Serial_Transmit();
  check_Config_Reg_MLX90620();
  delay(500); //For 8Hz, the fastest refresh is 125ms, for 16Hz 65ms
}

You also need the I2CMaster library from here: http://www.cheap-thermocam.bplaced.net/software/I2Cmaster.rar
This sketch transfers all 64 pixels to the computer over the serial window. For information about which pixel correspond to which position, check out the MLX90620 datasheet: http://www.melexis.com/Asset/Datasheet-IR-thermometer-16X4-sensor-array-MLX90620-DownloadLink-6099.aspx

I originally intended to integrate this sensor into my Cheap-Thermocam project (www.cheap-thermocam.tk), but I have no time to finish it at the moment..
Maybe for somebody it is useful smiley-wink

Can you share sample of images? how fast does it do images? need computer or not?

Thanks a lot.

Jose
26  Community / Exhibition / Gallery / Re: Cheap-Thermocam | A cheap thermographic camera for everyone ! on: October 10, 2012, 06:27:26 am
Anyone can share sample of images of the thermocam they have?

Also it's possible to see difference between dci or bci version?

Thanks a lot.

Jose
27  Community / Exhibition / Gallery / Re: Cheap-Thermocam | A cheap thermographic camera for everyone ! on: September 19, 2012, 12:04:38 pm
Update: All parts for the new version are here - MLX90620 sensor is coming on Monday.



Trying to create the menu for the display now with touch implementation and sd store function  smiley
Can you share with us the part list of the new version?Nice image

Thanks a lot for your great camera.
28  International / Hardware / arduino y Raspberry Pi on: September 13, 2012, 09:41:40 am
Interesante proyecto de arduino y raspberry pi....

http://www.radikaldesig.com/2012/05/18/raspberry-pi-arduino-un-nuevo-ecosistema/

29  International / Hardware / Re: arduino serpiente on: September 13, 2012, 05:49:24 am
Las baterias van a estar al final de uno de los extremos.Con lo cual es no es un problema de peso.

En la punta quizas ponga un servo y una camara

Algo como esto.

http://www.radikaldesig.com/2012/05/18/raspberry-pi-arduino-un-nuevo-ecosistema/
30  International / Hardware / arduino serpiente on: September 13, 2012, 05:41:27 am
Suena extraño, pero quiero montar un arduino serpiente....

¿Como?¿Que es eso?.Sencillo quiero montar una tuberia flexible que cada x centimetros tenga un servo motor controlable de tal manera que puedo dirigirlo remotamente
 

¿Se puede hacer algo asi?

Gracias

Jose
Pages: 1 [2] 3