1
$\begingroup$

After a lot of learning, I'm launching a reballing business and I feel the need to have a realtime plot of the temperatures involved (ideally 3 or 4) and I have an arduino uno and a few K type thermocouples, I was researching the subject and saw a lot of different approachs, most of them use arduinos to send serial data to a pc port, then from there they process it with phyton, other guys matlab, some use ms excel plus a free add on in vb for apps. etcetera, and now after some reading I feel overwhelmed by all the different methods, so I wonder, perhaps I'm already losing perspective here? may be there is a simple method I can use and KISS way of get it done? thank you.

$\endgroup$
  • $\begingroup$ I don't think this question is concerned with robotics... :) It is about programming/electronics $\endgroup$ – Ugo Pattacini Dec 30 '14 at 15:49
0
$\begingroup$

Looking for a open (free) source alternative is it normal to feel overwhelmed since the programs, that you can use, are really many.

Personally when I need to plot soma data coming from Arduino or Teensy on my PC I go through one of those ways:

  1. If I want to use a programming tool Processing could be really easily implemented to show what you want. It has the same language as Arduino and the same environment. Take a look in the examples. There you can find a program that suits your needs. Since the language is the same as Arduino you have a very high portability and reconfigurability;

  2. If I don't want to program anything, but just plot some values without loosing time, then I use Scilab. You don't need a license like Matlab, and fr plotting you have a lot of tools. This could be the way you want to go. In the Scilab package configuration there is package that listens to the serial port. You just need to write a small script to save in a array and then plot them. To open a serial port you need just three functions, really strightforward. I used it for controlling a robotic arm. I've formatted my PC due to a hardware failure, so I m sorry I cannot send you an already created script made by myself;

  3. There are other options like gplot, octave or exceel. But if you don't want to spend more time and need a very fast solution I would go for the step #2;

Regards

| improve this answer | |
$\endgroup$
0
$\begingroup$

Do you need to use the Arduino? Because if all I wanted to do was get temperature readings on the computer, I would use an off-the-shelf data acquisition device. For example LabJack, Phidgets, something from National Instruments, or any number of others. There also seems to be a large number of dedicated USB temperature sensors that are not too expensive.

These may be more expensive than something completely custom with an Arduino, but will be the simplest and most straight forward. (Because you don't have to write code in 2 places.) That is unless you are already very comfortable with the Arduino.

On the PC side, there are probably almost as many ways to accomplish this as there are languages. It is hard to give advice without more background info on your requirements and personal capabilities. (Windows or Linux, do you want a nice GUI or bare bones, do you want to store historical data, do you want it to be a desktop widget or regular application, what level of programmer are you, etc.)

You should use the tools you are most comfortable with. For example i know people who would do this on Linux in a few lines of bash script with gnuplot. And others who would use matlab on Windows. Personally, I'd probably go with Python and matplotlib.

| improve this answer | |
$\endgroup$
  • $\begingroup$ lol, bash script and gnuplot? not yet at that level, just a power user of both worlds so far, I'm ok with arduino, not very comfortable yet, and those usb gadgets seem a nice way to do it, however, I forgot to mention some spending restraints at work here, I'm trying Dave advice and some personal juice now, still your answer does provide some more insight, a light at the end of the tunnel, for that, thanks! $\endgroup$ – ortegacomputacion Dec 14 '14 at 22:23
  • $\begingroup$ I forgot to mention, I'm familiar with atmel micros, unfamiliar with processing language, and I have some know how about atmel instruction sets, just never had the need to plot anything in my life, and now I have three projects with the same requirements. lol. I appreciate all insights you all brain peoples out there can give. $\endgroup$ – ortegacomputacion Dec 14 '14 at 22:27
0
$\begingroup$

Pyqtgraph for python is made with OpenGl and its blazing fast compare to Mathplotlib or other that are using processor to draw... I was really happy with Pyqtgraph, and it is made for ploting real time plots.

| improve this answer | |
$\endgroup$
0
$\begingroup$

DatPlot is an absolutely fantastic tool for plotting data and browsing through it, and I use it heavily when I want to quickly visualise and browse some data. I think it perfectly fills in a gap that exists between spreadsheets (such as excel) and general purpose computing packages (such as MATLAB, Scilab etc), in that it's great for exploring the data (zooming in and out, panning, selecting - which is something that spreadsheets utterly lack in my experience), and at the same time very simple and dedicated to one task (unlike MATLAB, scilab) and hence is quick to download install and use.

DatPlot

Obviously, you're still going to have to get the temperature data into your PC. If you have an off the shelf data logger, then great. Otherwise, in my opinion, an Arduino (or other microcontroller) would be a very simple solution - just get it to regularly sample your sensor and then send temperature (and optionally time) via the serial port. You can then use a program such as RealTerm (don't be overwhelmed by the UI) to automatically capture what's being sent via the serial port and save it to a file that you can then directly open in DatPlot. In RealTerm, the Capture tab allows you to just dump whatever is coming from the serial port directly to a file.

RealTerm

| improve this answer | |
$\endgroup$

Not the answer you're looking for? Browse other questions tagged or ask your own question.