Show Posts
Pages: [1] 2 3 ... 6
1  Community / Exhibition / Gallery / Re: Cheap-Thermocam V3 | A cheap thermographic camera for everyone ! on: May 23, 2014, 04:42:41 am
i see.
is possible #define what incluse, so we can leave out LCD and camera, and just use a pc to display data?

Thats the idead behind V1 smiley-wink You can always build it on your own, here you go: http://www.cheap-thermocam.net/downloads-v1/
2  Community / Exhibition / Gallery / Re: Cheap-Thermocam V3 | A cheap thermographic camera for everyone ! on: May 23, 2014, 04:25:17 am
UPDATE: Version 3 of Cheap-Thermocam is now available!
Unfortunately, for reasons of space and increased power requirements are no longer with an Arduino, but instead is a Teensy 3.1 are used. Hopefully the project is still for one or the other interesting smiley-wink

i would like to know what caused that hig requremnts.. seems like something get bloated

Some things have changed. I am using a 3.2 inch touch display, which would be hard to do with a standard arduino.
To reduce costs, I am utilizing a JPEG CMOS camera module and do real time conversion to BMP on the chip, in order to display it on the screen. Temperatures are running through a 2D gaussian filter algorithm to smooth the transitions, which is also very performance intensive. Flash space is also critical, fortunately the Teensy offers plenty of them (262kB).
3  Community / Exhibition / Gallery / Re: Cheap-Thermocam V3 | A cheap thermographic camera for everyone ! on: May 22, 2014, 05:41:33 pm
UPDATE: Version 3 of the Cheap-Thermocam is now available !
It does not use an arduino any more, instead I am relying on a Teensy 3.1 (ARM Cortex M3). But hopefully its still interesting for some people smiley-wink
4  Using Arduino / Sensors / Problem interfacing with VC0706 JPEG Serial Camera on: August 13, 2013, 05:03:59 pm
Problem interfacing with VC0706 JPEG Serial Camera

Hello guys,
I just received a couple of VC0706 JPEG Serial Cameras and want to interface with them. Here is the product link: http://www.aliexpress.com/item/Free-shipping-JPEG-Color-Camera-Infrared-232-Serial-Port-Camera-Module-XR-CP3-VIMICRO-VC0706-Full/783442600.html
For the first test, I want to connect this camera to my computer and read out some information / images with the enclosed CommTool.
I followed this instruction: http://learn.adafruit.com/ttl-serial-camera/using-comm-tool, wired the circuit up like on the image there and opened the Serial Port with a baud of 38400 (default speed for my unit).



But every time I click on "Get version", it says timeout.
I also tried the arduino library, but as expected, I does not work either.
What am I missing ?
My unit has the following specifications:
Baud Rate: 38400 bps
Picture: VGA
Electronic Level: COMS
Video Format: PAL(R5 NULL)
Power: DC 5V

Could the problem come from the electronical level ? This one uses CMOS, not TTL as the unit from Adafruit. If yes, is there a possibility to convert the signals to TTL ? (logical level is 3.3V)
Thanks for any kind of help, I am really stuck here  smiley-cry
5  Using Arduino / General Electronics / Problem interfacing with VC0706 JPEG Serial Camera on: August 13, 2013, 10:01:43 am
Hello guys,
I just received a couple of VC0706 JPEG Serial Cameras and want to interface with them. Here is the product link: http://www.aliexpress.com/item/Free-shipping-JPEG-Color-Camera-Infrared-232-Serial-Port-Camera-Module-XR-CP3-VIMICRO-VC0706-Full/783442600.html
For the first test, I want to connect this camera to my computer and read out some information / images with the enclosed CommTool.
I followed this instruction: http://learn.adafruit.com/ttl-serial-camera/using-comm-tool, wired the circuit up like on the image there and opened the Serial Port with a baud of 38400 (default speed for my unit).



But every time I click on "Get version", it says timeout.
I also tried the arduino library, but as expected, I does not work either.
What am I missing ?
My unit has the following specifications:
Baud Rate: 38400 bps
Picture: VGA
Electronic Level: COMS
Video Format: PAL(R5 NULL)
Power: DC 5V

Could the problem come from the electronical level ? This one uses CMOS, not TTL as the unit from Adafruit. If yes, is there a possibility to convert the signals to TTL ? (logical level is 3.3V)
Thanks for any kind of help, I am really stuck here  smiley-cry

6  Using Arduino / Storage / Re: Issue with creating bmp file on SD card on: July 14, 2013, 10:26:34 am
Found the solution  smiley I forgot to shift the High Byte right by 8-bit ^^
Now it works and I can even create bmp image with 640x480 on the sd card.
They can than be viewed later on a LCD Display with the bmp print function of the UTFT lib.
Awesome !
7  Using Arduino / Storage / Issue with creating bmp file on SD card on: July 14, 2013, 09:24:18 am
Hello together !
For my newest project, I want to create a bmp file on an SD card to store measured temperatures from an IR sensor converted to RGB colors inside (thermal image).
For unknown reason, it does not work as I do expect. The arduino creates the bmp file, but instead of the Red Color I want to write in for test purposes, the whole image is black.
So I think the RGB conversion from RGB888 to RGB565 and then from RGB 565 to RGB555 seems to have an issue.

Code:
#include <SD.h>

//Refer to http://www.fastgraph.com/help/bmp_header_format.html
const char bmp_header[54]=
{
      0x42, 0x4D, 0x36, 0x58, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0x00, 0x00, 0x00, 0x28, 0x00,
      0x00, 0x00, 0x40, 0x01, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x00, 0x01, 0x00, 0x10, 0x00, 0x00, 0x00,
      0x00, 0x00, 0x00, 0x58, 0x02, 0x00, 0xC4, 0x0E, 0x00, 0x00, 0xC4, 0x0E, 0x00, 0x00, 0x00, 0x00,
      0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
  
#define SD_CS 10

void setup()
{
  Serial.begin(9600);
  //Initialize SD Card
  if (!SD.begin(SD_CS))
  {
    while (1); //If failed, stop here
  }
  char str[] = "TEST.BMP";
  GrabImage(str);
}

void GrabImage(char* str)
{
  File outFile;
  byte VH,VL;
  int i,j = 0;
  
  //Create the File
  outFile = SD.open(str,FILE_WRITE);
  if (! outFile) return;

  //Write the BMP header
  for( i = 0; i < 54; i++)
  {
    char ch = bmp_header[i];
    outFile.write((uint8_t*)&ch,1);
  }
  
  //Test color, Red in RGB888
  byte r = 255;
  byte g = 0;
  byte b = 0;
  //Convert RGB888 to RGB565
  unsigned short rgb =  ((((r>>3)<<11) | ((g>>2)<<5) | (b>>3))) ;

  //Write 320x240x2 byte to the File
  for(i = 0; i < 240; i++){
    for(j = 0; j < 320; j++){
      VH = rgb & 0xFF00; //Mask the High Byte
      VL = rgb & 0x00FF; //Mask the Low Byte
      //RGB565 to RGB555 Conversion
      VL = (VH << 7) | ((VL & 0xC0) >> 1) | (VL & 0x1f);
      VH = VH >> 1;
      //Write image data to file, low byte first
      outFile.write(VL);
      outFile.write(VH);
  }
  }
  //Close the file  
  outFile.close();
  return;
}

void loop()
{
}



I would be very happy about any kind of help !
Thanks,
Max
8  Community / Exhibition / Gallery / Re: Cheap-Thermocam V2 | A cheap thermographic camera for everyone ! on: May 20, 2013, 12:44:12 pm
Thanks for the help but the sensor is still silent.



When I change the place of SDA and SCL I get a response
bient temperature: -273.16
Object temperature: -273.16
Ambient temperature: -273.16
Object temperature: -273.16
Ambient temperature: -273.16
I get the same thing when there is no sensor.
Maybe there is still what the realties ideas?
If you'd buy a new sensor. Just here in Ukraine they are at $ 120 )))



Thats shit. Sorry, but currently I have no idea what could be the reason smiley-sad
From where did you order the sensor ? If it is not working, you should ask for a new one there.
However, I can order a MLX90614-DCI for you too. I get it for 30€ including taxes and shipping.
9  Using Arduino / Storage / Re: Read float from SD card with Fat16 Lib on: May 20, 2013, 12:41:01 pm
store float values (temperatures) to a SD Card. One per line and with 2 fractional digits.
Now I want to read them out again

Code:
/*
  Serial.println();
  // copy file to serial port
 /code]

So how can I convert the uint8_t Array to a float variable ?

[/quote]

Why is there an array? You should be able to simply write the floats to the card and then read them straight back.

[code]//  Read temps off SD.
 
#include <SD.h>
File myFile;

void setup()
{
  Serial.begin(9600);
  Serial.print("Initializing SD card...");
   pinMode(53, OUTPUT);// pin 10 on Uno
   
  if (!SD.begin(4)) {
    Serial.print("initialization failed!");
    return;
  }
  Serial.println(" done.");

  myFile = SD.open("log.txt", FILE_WRITE);
  if (myFile) {
    Serial.print("Checking the file, no write...");
    myFile.close();
    Serial.println("done.");
  } else {
    Serial.println("error opening");
  }
 
  myFile = SD.open("log.txt");// re-open the file for reading:
  if (myFile) {
    Serial.println("log.txt:");   
    while (myFile.available()) {// read until EOF
    Serial.write(myFile.read());
    }
    myFile.close();
  } else {
    Serial.println("error opening log.txt");
  }
}

void loop()
{
}
[/code]

Thanks Nick_Pyner, but I finally managed it on my own.
Just a single conversion to double was required. I am not using the official SD lib because the Fat16lib is much smaller and for my Project, code size is a very important aspect.

Code:
while((file.read(buf, sizeof(buf)) >0) && (count <= 3071)){
    double temp = atof((char*)buf);
  }   
10  Using Arduino / Storage / Read float from SD card with Fat16 Lib on: May 19, 2013, 05:36:04 pm
Hello guys, I Need your help !
I use the fat16 lib to store float values (temperatures) to a SD Card. One per line and with 2 fractional digits.
Now I want to read them out again and store them into float variables.
I use this code to read out data in general:

Code:
/*
 * This sketch reads and prints the file
 * PRINT00.TXT created by fat16print.pde or
 * WRITE00.TXT created by fat16write.pde
 */
#include <Fat16.h>
#include <Fat16util.h> // use functions to print strings from flash memory

SdCard card;
Fat16 file;

// store error strings in flash to save RAM
#define error(s) error_P(PSTR(s))

void error_P(const char*  str) {
  PgmPrint("error: ");
  SerialPrintln_P(str);
  if (card.errorCode) {
    PgmPrint("SD error: ");
    Serial.println(card.errorCode, HEX);
  }
  while(1);
}

void setup(void) {
  Serial.begin(9600);
  Serial.println();
  PgmPrintln("type any character to start");
  while (!Serial.available());
  Serial.println();
 
  // initialize the SD card
  if (!card.init()) error("card.init");
 
  // initialize a FAT16 volume
  if (!Fat16::init(&card)) error("Fat16::init");
 
  // open a file
  if (file.open("PRINT00.TXT", O_READ)) {
    PgmPrintln("Opened PRINT00.TXT");
  } else if (file.open("WRITE00.TXT", O_READ)) {
    PgmPrintln("Opened WRITE00.TXT");   
  } else{
    error("file.open");
  }
  Serial.println();
 
  // copy file to serial port
  int16_t n;
  uint8_t buf[7];// nothing special about 7, just a lucky number.
  while ((n = file.read(buf, sizeof(buf))) > 0) {
    for (uint8_t i = 0; i < n; i++) Serial.write(buf[i]);
  }
   PgmPrintln("\nDone");
}

void loop(void) {}

So how can I convert the uint8_t Array to a float variable ?
Thanks for your help smiley
11  Community / Exhibition / Gallery / Re: Cheap-Thermocam V2 | A cheap thermographic camera for everyone ! on: May 17, 2013, 09:10:06 am
I have not worked sensor ((tried everything that you can!
There is some way to test it on the performance?
My board  Arduino Mega 2560
When I look through a serial port of the sensor is silent. White screen and all.
 smiley-sad smiley-sad

I have not worked sensor ((tried everything that you can!
There is some way to test it on the performance?
My board  Arduino Mega 2560
When I look through a serial port of the sensor is silent. White screen and all.
 smiley-sad smiley-sad

Try this code: http://cheap-thermocam.bplaced.net/MLX90614_new.zip
It is a re-implementation of the code with a new I2C library.
Take care that the Pins for I2C are different on the arduino mega. They are located on digital pin 20 (SDA) and 21 (SCL).
12  Community / Exhibition / Gallery / Re: Cheap-Thermocam V2 | A cheap thermographic camera for everyone ! on: April 15, 2013, 09:17:15 am
maxbot, fyi, trend 'worry free' anti virus blocks me going to your website, it's marked as malicious

Thanks for for reporting me that situation. Of course, my website does not contain any kind of malicious software. I have no idea how Trend Micro comes to their block..
I requested a reclassification on their website and hope they fix that soon.
13  Community / Exhibition / Gallery / Re: Cheap-Thermocam V2 | A cheap thermographic camera for everyone ! on: April 14, 2013, 12:07:12 pm
The website has been updated and version 2 is now finally there smiley
14  Community / Exhibition / Gallery / Re: Cheap-Thermocam | A cheap thermographic camera for everyone ! on: February 19, 2013, 09:54:42 am
Great project!! Just finished building mine for a school project (research lab wouldn't loan me the FLIR camera). Max I noticed you removed the pull-up resistor note on your website - don't know if this was on purpose, but I connected the sensor directly to A4 & A5 and it's working without a problem.

I used the EEPROM update, it too worked without any problems. The surface temperatures I am getting seem accurate. This sketch is also a good way to be sure that you have the sensor connected properly - If it doesn't read the inital values, check your connections. Just unplug the 'duino before uploading the new values if you don't want them.

In reference to dvernor's question, I was having some trouble with the Java software too. I could get it to calibrate but when I started the scan, the program would hang. Uninstalling 64-bit Java and using 32-bit fixed it; working great now.

Other troubleshooting item - when I started the Java program for the first time, to calibrate, the arrow buttons didn't respond - I found that it was just out of range, if you press a button in the same direction for long enough the servos eventually respond...

Thank you for sharing all of your hard work on this!

Thanks for your feedback smiley Yes I removed the resistors in the schematic because I noticed they are not required to get the sensor to work. Unfortunately, the rxtx and civil lib do not work with 64 bit systems so a 32bit java is necessary at least.. The thing with servos is a bit confusing because the arduino sketch has standard values for the servos in it (in case you start the program first time) and those should be definitely in the servo's range. I hope this is a one time error and it works now for you smiley-wink
15  Community / Exhibition / Gallery / Re: Cheap-Thermocam | A cheap thermographic camera for everyone ! on: February 18, 2013, 01:28:27 am
Hello,
Great project .
Can I get the source code of the arduino. i would like to make some experiments, and learn how the program works.

Avinoam

The source code is available for download at the website www.cheap-thermocam.tk
If anyone can help me I would greatly appreciate it, I am having trouble getting the Java application to open.  When I run the cmd prompt it returns the following

java.lang.UnsatisfiedLinkError: C:\Documents and Settings\Kenny\Desktop\JAVA\lib\win32-x86\rxtxSerial.dll: The specified procedure could not be found thrown while loading gnu.io.RXTXCommDriver
Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\Documents and Settings\Kenny\Desktop\JAVA\lib\win32-86\rxtxSerial.dll: The specified procedure could not be found
     at java.lang.ClassLoader$NativeLibrary.load(Native Method)
     at java.lang.ClassLoader.loadLibrary1(Unknown Source)
     at java.lang.ClassLoader.loadLibrary0(Unknown Source)
     at java.lang.ClassLoader.loadLibrary(Unknown Source)
     at java.lang.Runtime.loadLibrary0(Unknown Source)
     at java.lang.System.loadLibrary(Unknown Source)
     at gnu.io.CommPortIdentifier.<clinit>(CommPortIdentifier.java:123)
     at com.centralnexus.thermal.StartMenu.findCOMPorts(StartMenu.java:280)
     at com.centralnexus.thermal.StartMenu.<init>(StartMenu.java:124)
     at com.centralnexus.thermal.StartMenu.main(StartMenu.java:467)

Any help would be greatly appreciated!!!!  Thanks!
 

Not quite sure about this... What OS are you using ? Have you installed the 32-bit version of java and uninstalled any 64 bit version ?

Hello

what is the usage of laser in the thermal camera.

The laser is needed to match the sensors position with the optical image and to show you the current area measured
Pages: [1] 2 3 ... 6