All of lore.kernel.org
 help / color / mirror / Atom feed
* [Xenomai-help] Realtime data processing + VGA display
@ 2009-09-23 11:56 Felipe Castro
  2009-09-23 17:52 ` Wolfgang Denk
  0 siblings, 1 reply; 6+ messages in thread
From: Felipe Castro @ 2009-09-23 11:56 UTC (permalink / raw)
  To: xenomai

[-- Attachment #1: Type: text/plain, Size: 655 bytes --]

Hi guys ,

I need some suggestion about how to deal with QT library, or another and
xenomai real time path.
What I'm working on, is a real time data processing and i need to show the
results in a VGA display.

I have my data processing routine running in real time kernel with a high
priority task, and now after 5ms i need to refresh all data in display.

I don't know how to handle it to get my realtime response shown in display
in a realtime too ...

I did some tests using a simple QT software but it appears to refresh to
slow. Is it possible to do ? another question is , is there another library
to handle VGA display tha you suggest me ?

Thanks

[-- Attachment #2: Type: text/html, Size: 714 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Xenomai-help] Realtime data processing + VGA display
  2009-09-23 11:56 [Xenomai-help] Realtime data processing + VGA display Felipe Castro
@ 2009-09-23 17:52 ` Wolfgang Denk
  2009-09-25 21:09   ` Flavio de Castro Alves Filho
  2009-09-25 22:12   ` Eric Noulard
  0 siblings, 2 replies; 6+ messages in thread
From: Wolfgang Denk @ 2009-09-23 17:52 UTC (permalink / raw)
  To: Felipe Castro; +Cc: xenomai

Dear Felipe Castro,

In message <7a15153d0909230456l1a094dc6g6bea8ba7f077e567@domain.hid> you wrote:
>
> I need some suggestion about how to deal with QT library, or another and
> xenomai real time path.
> What I'm working on, is a real time data processing and i need to show the
> results in a VGA display.
> 
> I have my data processing routine running in real time kernel with a high
> priority task, and now after 5ms i need to refresh all data in display.

What makes you think so? A refresh every 5 milliseconds means 200
frames per second. No human eye is fast enough to see that. Even if
you relax your timings by a factor of 10 (!) you get 20 frames per
second, which is faster than you can actually see.

> I don't know how to handle it to get my realtime response shown in display
> in a realtime too ...

You don't need that, and you don't want that. Instead,  you  want  to
split  your  design  into  a real-time part that does the data acqui-
sition  and  processing,  and  a  non-realtime  part  that  does  the
visualization.

There are few excations, like when you must control alarm signals;
but in this case you normally want to have hardware support for that,
i. e. separate alram lights, beepers etc.

> I did some tests using a simple QT software but it appears to refresh to
> slow. Is it possible to do ? another question is , is there another library
> to handle VGA display tha you suggest me ?

There are many options for the GUI, but you  should  not  attempt  to
select  these  for  their  real-time  capabilities.  If  you  need  a
RT-capable graphics environment, you can be  pretty  sure  that  your
system is misdesigned.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@domain.hid
C++ was an interesting and valuable experiment, but we've learned its
lessons and it's time to move on.
                            - Peter Curran in <DCqM4z.BxB@isgtec.com>


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Xenomai-help] Realtime data processing + VGA display
  2009-09-23 17:52 ` Wolfgang Denk
@ 2009-09-25 21:09   ` Flavio de Castro Alves Filho
  2009-09-30  8:46     ` Wolfgang Denk
  2009-09-25 22:12   ` Eric Noulard
  1 sibling, 1 reply; 6+ messages in thread
From: Flavio de Castro Alves Filho @ 2009-09-25 21:09 UTC (permalink / raw)
  To: xenomai

Hello,

In this case, which is a nice library for HMI to use with real-time
software?

I am not working right now with this at the moment, but I intend to work
with it soon. And, probably, I will face similar issues.

Best Regards,

Flavio
 

Flavio de Castro Alves Filho
flavio.alves@domain.hid

Tel.: + 55 11 8494 5676
Embedded Software Services
www.phiinnovations.com	 	 


Escritórios:
São Paulo
Campinas

-----Original Message-----
From: xenomai-help-bounces@domain.hid [mailto:xenomai-help-bounces@domain.hid] On
Behalf Of Wolfgang Denk
Sent: quarta-feira, 23 de setembro de 2009 14:53
To: Felipe Castro
Cc: xenomai@xenomai.org
Subject: Re: [Xenomai-help] Realtime data processing + VGA display

Dear Felipe Castro,

In message <7a15153d0909230456l1a094dc6g6bea8ba7f077e567@domain.hid> you
wrote:
>
> I need some suggestion about how to deal with QT library, or another and
> xenomai real time path.
> What I'm working on, is a real time data processing and i need to show the
> results in a VGA display.
> 
> I have my data processing routine running in real time kernel with a high
> priority task, and now after 5ms i need to refresh all data in display.

What makes you think so? A refresh every 5 milliseconds means 200
frames per second. No human eye is fast enough to see that. Even if
you relax your timings by a factor of 10 (!) you get 20 frames per
second, which is faster than you can actually see.

> I don't know how to handle it to get my realtime response shown in display
> in a realtime too ...

You don't need that, and you don't want that. Instead,  you  want  to
split  your  design  into  a real-time part that does the data acqui-
sition  and  processing,  and  a  non-realtime  part  that  does  the
visualization.

There are few excations, like when you must control alarm signals;
but in this case you normally want to have hardware support for that,
i. e. separate alram lights, beepers etc.

> I did some tests using a simple QT software but it appears to refresh to
> slow. Is it possible to do ? another question is , is there another
library
> to handle VGA display tha you suggest me ?

There are many options for the GUI, but you  should  not  attempt  to
select  these  for  their  real-time  capabilities.  If  you  need  a
RT-capable graphics environment, you can be  pretty  sure  that  your
system is misdesigned.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@domain.hid
C++ was an interesting and valuable experiment, but we've learned its
lessons and it's time to move on.
                            - Peter Curran in <DCqM4z.BxB@isgtec.com>

_______________________________________________
Xenomai-help mailing list
Xenomai-help@domain.hid
https://mail.gna.org/listinfo/xenomai-help

No virus found in this incoming message.
Checked by AVG - www.avg.com 
Version: 8.5.409 / Virus Database: 270.13.112/2394 - Release Date: 09/25/09
05:51:00



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Xenomai-help] Realtime data processing + VGA display
  2009-09-23 17:52 ` Wolfgang Denk
  2009-09-25 21:09   ` Flavio de Castro Alves Filho
@ 2009-09-25 22:12   ` Eric Noulard
  2009-09-29 12:18     ` Felipe Castro
  1 sibling, 1 reply; 6+ messages in thread
From: Eric Noulard @ 2009-09-25 22:12 UTC (permalink / raw)
  To: Xenomai help

2009/9/23 Wolfgang Denk <wd@domain.hid>:
> Dear Felipe Castro,
>
> In message <7a15153d0909230456l1a094dc6g6bea8ba7f077e567@domain.hid> you wrote:
>>
>> I need some suggestion about how to deal with QT library, or another and
>> xenomai real time path.
>> What I'm working on, is a real time data processing and i need to show the
>> results in a VGA display.
>>
>> I have my data processing routine running in real time kernel with a high
>> priority task, and now after 5ms i need to refresh all data in display.
>
> What makes you think so? A refresh every 5 milliseconds means 200
> frames per second. No human eye is fast enough to see that.
> Even if you relax your timings by a factor of 10 (!) you get 20 frames per
> second, which is faster than you can actually see.

I don't know Felipe's test case but I know at least one application
which was a Star Sensor stimulator which needs higher refresh rate than
human eye, but not that high too (32..64Hz max).
The device looking at the screen was not a human in this case.

In the human case I agree even if you still need a smooth/regular refresh rate
if you do visualize animated 3D scene which pictures your data.
Some explanation here:
http://www.100fps.com/how_many_frames_can_humans_see.htm

>> I don't know how to handle it to get my realtime response shown in display
>> in a realtime too ...
>
> You don't need that, and you don't want that. Instead,  you  want  to
> split  your  design  into  a real-time part that does the data acqui-
> sition  and  processing,  and  a  non-realtime  part  that  does  the
> visualization.

Nevertheless I agree with that, even if you need high refresh rate display
you'll certainly want to decouple display from hard RT data processing.

>> I did some tests using a simple QT software but it appears to refresh to
>> slow. Is it possible to do ? another question is , is there another library
>> to handle VGA display tha you suggest me ?
>
> There are many options for the GUI, but you  should  not  attempt  to
> select  these  for  their  real-time  capabilities.  If  you  need  a
> RT-capable graphics environment, you can be  pretty  sure  that  your
> system is misdesigned.

I 'm not sure to understand what you say Wolfgang, but I think
that high refresh rate display should certainly be realized using
specialized shader languages (http://en.wikipedia.org/wiki/Shader_language)
this must be done in user land (may be non RT) tasks taking their data
from RT ones.

For 2D images may writing directly to some framebuffer
(http://en.wikipedia.org/wiki/Linux_framebuffer)
may be a solution.

I did never mix Xenomai with such solution, my experience was with
"classical" linux SCHED_FIFO processes reading some serial port
at most at 32Hz with no HARD jitter requirement.
Thus I don't know the possible "interaction" off an hard RT xenomai process
with some fancy graphic driver.

What is your precise graphic display need?

Do you want to display animated 3D scene built from RT data?
2D image??


-- 
Erk
Membre de l'April - « promouvoir et défendre le logiciel libre » -
http://www.april.org


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Xenomai-help] Realtime data processing + VGA display
  2009-09-25 22:12   ` Eric Noulard
@ 2009-09-29 12:18     ` Felipe Castro
  0 siblings, 0 replies; 6+ messages in thread
From: Felipe Castro @ 2009-09-29 12:18 UTC (permalink / raw)
  To: Xenomai help

[-- Attachment #1: Type: text/plain, Size: 4024 bytes --]

I was doing a mistake actually. For me 20fps is more than enough

In my application i need to draw some graphics after the signal processing.
Now I'm trying to use QT library, but unsuccessfully.

In fact i can draw in VGA display and so on, but a simple hello world with
is unsing 97% of my processor .... i need to study a little bit more about
QT .....

Another option that i found is minigui lib, but i didn't try yet.

Felipe

On Fri, Sep 25, 2009 at 7:12 PM, Eric Noulard <eric.noulard@domain.hid>wrote:

> 2009/9/23 Wolfgang Denk <wd@domain.hid>:
> > Dear Felipe Castro,
> >
> > In message <7a15153d0909230456l1a094dc6g6bea8ba7f077e567@domain.hid>
> you wrote:
> >>
> >> I need some suggestion about how to deal with QT library, or another and
> >> xenomai real time path.
> >> What I'm working on, is a real time data processing and i need to show
> the
> >> results in a VGA display.
> >>
> >> I have my data processing routine running in real time kernel with a
> high
> >> priority task, and now after 5ms i need to refresh all data in display.
> >
> > What makes you think so? A refresh every 5 milliseconds means 200
> > frames per second. No human eye is fast enough to see that.
> > Even if you relax your timings by a factor of 10 (!) you get 20 frames
> per
> > second, which is faster than you can actually see.
>
> I don't know Felipe's test case but I know at least one application
> which was a Star Sensor stimulator which needs higher refresh rate than
> human eye, but not that high too (32..64Hz max).
> The device looking at the screen was not a human in this case.
>
> In the human case I agree even if you still need a smooth/regular refresh
> rate
> if you do visualize animated 3D scene which pictures your data.
> Some explanation here:
> http://www.100fps.com/how_many_frames_can_humans_see.htm
>
> >> I don't know how to handle it to get my realtime response shown in
> display
> >> in a realtime too ...
> >
> > You don't need that, and you don't want that. Instead,  you  want  to
> > split  your  design  into  a real-time part that does the data acqui-
> > sition  and  processing,  and  a  non-realtime  part  that  does  the
> > visualization.
>
> Nevertheless I agree with that, even if you need high refresh rate display
> you'll certainly want to decouple display from hard RT data processing.
>
> >> I did some tests using a simple QT software but it appears to refresh to
> >> slow. Is it possible to do ? another question is , is there another
> library
> >> to handle VGA display tha you suggest me ?
> >
> > There are many options for the GUI, but you  should  not  attempt  to
> > select  these  for  their  real-time  capabilities.  If  you  need  a
> > RT-capable graphics environment, you can be  pretty  sure  that  your
> > system is misdesigned.
>
> I 'm not sure to understand what you say Wolfgang, but I think
> that high refresh rate display should certainly be realized using
> specialized shader languages (http://en.wikipedia.org/wiki/Shader_language
> )
> this must be done in user land (may be non RT) tasks taking their data
> from RT ones.
>
> For 2D images may writing directly to some framebuffer
> (http://en.wikipedia.org/wiki/Linux_framebuffer)
> may be a solution.
>
> I did never mix Xenomai with such solution, my experience was with
> "classical" linux SCHED_FIFO processes reading some serial port
> at most at 32Hz with no HARD jitter requirement.
> Thus I don't know the possible "interaction" off an hard RT xenomai process
> with some fancy graphic driver.
>
> What is your precise graphic display need?
>
> Do you want to display animated 3D scene built from RT data?
> 2D image??
>
>
> --
> Erk
> Membre de l'April - « promouvoir et défendre le logiciel libre » -
> http://www.april.org
>
> _______________________________________________
> Xenomai-help mailing list
> Xenomai-help@domain.hid
> https://mail.gna.org/listinfo/xenomai-help
>

[-- Attachment #2: Type: text/html, Size: 5197 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Xenomai-help] Realtime data processing + VGA display
  2009-09-25 21:09   ` Flavio de Castro Alves Filho
@ 2009-09-30  8:46     ` Wolfgang Denk
  0 siblings, 0 replies; 6+ messages in thread
From: Wolfgang Denk @ 2009-09-30  8:46 UTC (permalink / raw)
  To: Flavio de Castro Alves Filho; +Cc: xenomai

Dear "Flavio de Castro Alves Filho",

In message <!&!AAAAAAAAAAAYAAAAAAAAACaegimMCbhAp3tFUXd5zLjCgAAAEAAAAPOW/cf+tUNCgHMr877hPbMBAAAAAA==@phiinnovations.com> you wrote:
> 
> In this case, which is a nice library for HMI to use with real-time
> software?

Obviously this depends on your requirements, and available system
resources. If you are running a full-fledged x86/x86_64 system with
CPU clocks of N GHz and gigabytes of RAM and big external storage you
can use any solution you like - Qt, Gnome, GTK, ...

If you are on an embedded system with restricted CPU performance
and/or RAM size you may find X11 based solutions to be too fat, so
you might want to look into QtCore, DirectFB/GTK, or maybe even
Nano-X. But there are tons of other solutions for more specialized
applications, so you really have to check your requirements.


Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@domain.hid
What the gods would destroy they first submit to  an  IEEE  standards
committee.


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2009-09-30  8:46 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-09-23 11:56 [Xenomai-help] Realtime data processing + VGA display Felipe Castro
2009-09-23 17:52 ` Wolfgang Denk
2009-09-25 21:09   ` Flavio de Castro Alves Filho
2009-09-30  8:46     ` Wolfgang Denk
2009-09-25 22:12   ` Eric Noulard
2009-09-29 12:18     ` Felipe Castro

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.