octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: closed loop control GSoC Design Question


From: Michael Goffioul
Subject: Re: closed loop control GSoC Design Question
Date: Thu, 30 May 2013 09:50:21 -0400

On Thu, May 30, 2013 at 9:42 AM, Doug Stewart <address@hidden> wrote:
Hi. I am the mentor and Matheus is the Student.

In Matlab they have "sisotool", and this project is to make something similar for octave. Having used this tool many times with my students it is clear to me that we need this in octave, and now we have that opportunity!!! wow I am so happy about this project.

This tool is very graphical, which then begs the question of how to lay out the starting base, so that it can continue to grow even after this project is complete.

In octave now we have gnuplot and fltk to do our plotting, and  a gui front end has just been added.

So the design question is "how to incorporate this tool into Octave?"

1) I don't think gnuplot will work.
2) FLTK might be made to work.
3) use QT's gui tools and write it in QT.

If we go with 3) then it would not be available when using octave's cli mode (no gui )

Questions:

     What is octave's long range goals for graphics? Are we trying to stay with FLTK or are we going to move to graphics in Qt?

   Should this project be written in Qt with Qt graphics?

The main issue Is the mouse must be used to "grab" a pole or zero on a graph, and the move the point. This new point must then be fed back to "octave"  and a new Rlocus and Bode  and step response calculated and replotted in real time with a minimum amount of jerkiness.    


 Any suggestion on how to start this project, are most welcome and greatly desired.

IMO the best way to implement it would be to rely on uiXXX functions (uimenu, uicontrol, uitoolbar...), at least that's how I would do it. However, at the moment, these functions are only supported by QtHandles (FLTK only supports uimenu IIRC), which is not part of core octave.

Michael.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]