What language - platform use to data acquisiton/numerical work?

Chris Liechti cliechti at gmx.net
Thu Jun 13 20:19:49 CEST 2002

mdtorre at freemail.it (Matteo) wrote in 
news:1c849ea9.0206130130.6cdaa36f at posting.google.com:

> I'm a programmer, I've worked with C, Java, Perl, Matlab, PHP, and a
> bit of almost every widespread language. I love OO programming. I have
> recently doscovered Python thanks to the great enthusuasm of its
> supporters. I love Java for its elegance and OO-ness, and Perl for its
> raw power. I don't like C++ for its long developng time and complexity
> and hate Visual C++ for being the worst (most complex, most slow, most
> ... ugly) develop environment on the earth.
> I have to do (from scratch and alone) a work without any language
> restriction. The system will have to work under MSWin2000 and maybe
> that, for stability, we will port it to unix-likes.
> The work involve:
> - a system of data acquisition (and control) from (of) a PLC via
> serial port. The data acquisition is in real time with low frequency
> (about 1 - 2 hz)
> - a big system of data analisys, pattern recognition, data
> visualization and heavy user interaction mostly for experiment with
> algorithms and for diagnostics
> - a end user system, mostly a wrapping of siplified GUI to the
> previous two subsystems.
> I think Python would be suitable for my work. What do you think?

of course. python is suitable for almost anything

> I think I will handle serial port comm vith small C libraries, I don't
> know if Python is suited to the problem.

or you could use my lib: http://pyserial.sf.net it runs on windows and 
posix systems. i use it to program microprocessors.

> Having the base drivers should not be a problem ro realize the data
> acquisition system in Python Or not?

easy. from the serial port you get strings, working on binary data is easy 
as there is the struct package and the array module.

> The data analisys numerical procedures have to be done in matlab due
> to their complexity and specialization, and I fear even the plotting
> will have to be done in Matlab. I have seen there are some bridges
> from Phyton to Matlab, how they are?

there are some modules but there are better solutions. e.g. Numpy is very 
powerful for work with vectors and matrices (it has some sililaities with 
matlab). SciPy and ScientificPython give additional toolboxes. (you should 
find them easily using google.com)

> My problem here is where to start developing in Pyyhon and where to
> stop in ML. ML has a very simple and good sistem of building GUIs, how
> is Pithon?

you have many choices. Tk is supplied, wxWindows, pyQT and pyGTK are often 
used ones. (or try anygui if you don't want to decide :-)

> Finallly I hope to develop the wrapping GUI layer in Phyton. Again,
> has Python some simple and good GUI support? I've seen that the most
> widely used GUI module is something in tcl/tk (which I don't know at
> all). Considering that I don't know python nor tcl/tk, how is the
> learnig and developing curve?

getting started with tkinter should be easy. i often use wxWindows which is  
nastier to debug but good looking with nice license.
you might be able to find a visualisation component (SciPy and co deliver 
some tools i think) if you find such a component you might want to choose 
the toolkit the component uses :-)


Chris <cliechti at gmx.net>

More information about the Python-list mailing list