Encerrado

plotting graphs from UART data on computer in real time

I am working on a personal project. I have an external source/ microcontroller that is spitting out data on the UART at a given baud rate. I need to collect the data fill a buffer in PC, do some processing and then plot the results on PC. I need some help in reading the data/ getting by the computer and fill a buffer. Once I have data in a buffer,

I have code for what I need to do on the buffer.

Once I generate the results in a buffer , I need to be able to plot it on my PC. I need a plotting tool that can take that and plot it. It needs to have some zoom ability and plot on log scales. I need some help in creating a plotting tool or interfacing with a free tool available. I should be able to have multiple plot windows open @ the same time.

The present system that I have has a lot of human intervention involved in terms of copying data etc. I need help to do that automatically

All calculations are floating point or double.

C/C++ will work better for me.

## Deliverables

Requirements:

A computer program to read data from UART serial port of PC and fill a buffer.

The data being sent is byte by byte higher byte first and then the lower byte. One data will be 2 bytes. 9600 baud rate is typical.

The data needs to be reconstructed and stored in a double precision buffer by proper typecasting.

The length of the buffer should be user configurable max 32767.

This buffer needs to be processed. (To be done by myself). Need to be able to call a function void process() from your code.

The results are upto 6 buffers each of max 32767 size. One denotes x co-ordinate. The others denote y coordinates of multiple plots.

x[] , y1[] ,y2[] and y3[] are the results.

So the output will be 3 plots preferably in a single window one below the other.

Some kind of access control from GUI is also needed in that sense. That we may need to start the process or stop the process at the press of a button on the screen.

The results need to be plotted graphically on the PC

The plot should be GUI controlled in the sense each axis label,

xmax, xmin, ymax ,ymin should be user definable and dynamically modifiable to allow zooming. Moving the cursor to any point in the plot should display the x and y coorindates.

The default values for max and min of each axis on the plot should be chosen based on the actual data automatically by the system. This will ensure that the data is automatically displayed without the user having to fool around with x and y coordinates.

Moreover user should be able to select linear or log10 scale for x axis.

Some free software available online is also acceptable provided it can be properly interfaced for the requirements above.

Habilidades: Engenharia, Linux, Microsoft, MySQL, PHP, Gestão de projetos, Arquitetura de software, Teste de Software, UNIX, Área de trabalho do Windows

Ver mais: uart plot windows, plot uart data, plotting data uart, uart data plot, uart plot, uart plot serial, plotting graphs uart, working graphs, stored program computer, human scale, graphs online, graphs computer, graphs c, graphs data, free project control online, computer graphs, c graphs, a graphs, online computer help, moving from, free computer software, computer program software, y3, scales, log

Acerca do Empregador:
( 0 comentários ) India

ID do Projeto: #3037890

9 freelancers estão ofertando em média $323 para este trabalho

Schura

See private message.

$68 USD in 14 dias
(96 Comentários)
5.7
qgrabber

See private message.

$140.25 USD in 14 dias
(46 Comentários)
5.2
quicols

See private message.

$1487.5 USD in 14 dias
(10 Comentários)
5.1
entacore

See private message.

$212.5 USD in 14 dias
(19 Comentários)
5.1
iconter

See private message.

$306 USD in 14 dias
(5 Comentários)
4.3
omairrk

See private message.

$170 USD in 14 dias
(4 Comentários)
3.4
awabid

See private message.

$136 USD in 14 dias
(5 Comentários)
3.4
ozmango

See private message.

$255 USD in 14 dias
(0 Comentários)
0.0
sachindhawad

See private message.

$127.5 USD in 14 dias
(0 Comentários)
0.0