Labwindows Project run under QNX

Hallo,
i have a little problem with a Labwindows/CVI Project.
Under win nt 4.0 would i measure a puls width and need a sample rate from 1
MHZ (minimal) .
my question is , what solution with qnx haved.

excuse me for my bad english

daniel
a german user

Daniel,
to sample your signal continuously to determine the pulse width in software
would go to the limits of the system. Consider a PC with 1GHz clock rate,
then you would have only 1000 clocks per sample (this includes context
switches, interrupt handling, etc.). Might be possible, but would slow down
your QNX system extremely.

I consider it a better solution to have a little external circuit that does
the pulse width measurement. Like a counter that has a 1MHz clock and is
triggered by your pulse. Then, you could use an I/O board to read in the
counter value into your program. But I’d need more information about the
specifics of your application.

For some drivers for I/O boards please check our http://qrts.com

If I understand correctly, you are using Windows NT right now? How do you do
it under Windows NT.

I you want, write me a personal e-mail in German…
Markus
another german user

“Daniel Radeck” <cadex@t-online.de> wrote in message
news:9bkfhj$9d0$1@inn.qnx.com

Hallo,
i have a little problem with a Labwindows/CVI Project.
Under win nt 4.0 would i measure a puls width and need a sample rate from
1
MHZ (minimal) .
my question is , what solution with qnx haved.

excuse me for my bad english

daniel
a german user

Another approach would be to use one of the digital I/O boards that give
interrupts on state change (Keithley PIO_INT, Sensoray 621). At each interrupt,
your ISR determines/saves whether rise or fall and saves the pentium cycle
count. Later, your process can determine pulse width, duty factor, etc. by (64
bit) arithmetic on cycle counts.

Markus Loffler wrote:

Daniel,
to sample your signal continuously to determine the pulse width in software
would go to the limits of the system. Consider a PC with 1GHz clock rate,
then you would have only 1000 clocks per sample (this includes context
switches, interrupt handling, etc.). Might be possible, but would slow down
your QNX system extremely.

I consider it a better solution to have a little external circuit that does
the pulse width measurement. Like a counter that has a 1MHz clock and is
triggered by your pulse. Then, you could use an I/O board to read in the
counter value into your program. But I’d need more information about the
specifics of your application.

For some drivers for I/O boards please check our > http://qrts.com

If I understand correctly, you are using Windows NT right now? How do you do
it under Windows NT.

I you want, write me a personal e-mail in German…
Markus
another german user

“Daniel Radeck” <> cadex@t-online.de> > wrote in message
news:9bkfhj$9d0$> 1@inn.qnx.com> …
Hallo,
i have a little problem with a Labwindows/CVI Project.
Under win nt 4.0 would i measure a puls width and need a sample rate from
1
MHZ (minimal) .
my question is , what solution with qnx haved.

excuse me for my bad english

daniel
a german user

Hallo ,
Thank you for your answer,
i use the follow components a National Instrumenst PC-1200, (DIO,ADC;DAC and
a TIMER -CHIP 8253)
and LABWINDOWS/CVI and WIN NT 4.0
my programm is scripted in ansi c,
with my configuration i can capture max. signal frequency with 1 kHZ,
My question is? what i have of solution too optimizing my system
and when will i used the qnx , what are the programm the i need.

Daniel

Hi Daniel,

Since I have used some National Instruments hardware and software recently
for a project, my opinion is that only National knows the hardware well
enough (proprietary, you know) to write drivers for it.
As far as I know, they have not written any software for QNX (any version)
and you should probably ask National which of the OSes they support will
give you the best real-time performance.
(It couldn’t hurt to urge them to support QNX, but I doubt that it would
have any real effect)

Regards,
Stephen Munnings
Corman Technologies Inc.


Daniel Radeck <cadex@t-online.de> wrote in message
news:9bn6tg$4m0$1@inn.qnx.com

Hallo ,
Thank you for your answer,
i use the follow components a National Instrumenst PC-1200, (DIO,ADC;DAC
and
a TIMER -CHIP 8253)
and LABWINDOWS/CVI and WIN NT 4.0
my programm is scripted in ansi c,
with my configuration i can capture max. signal frequency with 1 kHZ,
My question is? what i have of solution too optimizing my system
and when will i used the qnx , what are the programm the i need.

Daniel

Can you please again state your exact objective?
You where measuring a pulse width under windows max 1KHz, and now you try to
do 1 MHz?
Markus

“Daniel Radeck” <cadex@t-online.de> wrote in message
news:9bn6tg$4m0$1@inn.qnx.com

Hallo ,
Thank you for your answer,
i use the follow components a National Instrumenst PC-1200, (DIO,ADC;DAC
and
a TIMER -CHIP 8253)
and LABWINDOWS/CVI and WIN NT 4.0
my programm is scripted in ansi c,
with my configuration i can capture max. signal frequency with 1 kHZ,
My question is? what i have of solution too optimizing my system
and when will i used the qnx , what are the programm the i need.

Daniel

Hallo,

Yes i would measure a frequency with 0.2 MHZ and with Shannon i would
measure ca. 0.5-1MHz.

i would measure a STEPPER-MOTOR with a 18000 inkrematal-sensor and i would
have all of the 18000 inkremnatal , why i would measure the dynamic stepping
motor .

My question is what i have of alternative and is this with QNX possible and
with QNX-Programm can i compile my c-script.

Thank you ,
Daniel

So, are we trying to measure revolutions per minute of a stepper motor with, for
example, one degree steps and maximum speed of 3000 RPM, that is, 18,000 pulses
per second? And is the present approach based on sampling so the sample rate
needs to exceed the motor’s stepping rate by the Nyquist (not Shannon) limit of
at least two?

If so, I would recommend against a sampling approach in the first place. A
QNX[46] based computer should be able to handle 18,000 interrupts per second OK
with a reasonable CPU. With a plug-in digital I/O board that can interrupt on
state change (Keithley PIO-INT, Sensoray 621/721), the computer can be
interrupted on each rise of the pulse train. Then, the interrupt service
routine can use the pentium clock to timestamp successive rises and save in a
FIFO. A process can use FIFO data to determine frequency by averaging over
several cycles.

Daniel Radeck wrote:

Hallo,

Yes i would measure a frequency with 0.2 MHZ and with Shannon i would
measure ca. 0.5-1MHz.

i would measure a STEPPER-MOTOR with a 18000 inkrematal-sensor and i would
have all of the 18000 inkremnatal , why i would measure the dynamic stepping
motor .

My question is what i have of alternative and is this with QNX possible and
with QNX-Programm can i compile my c-script.

Thank you ,
Daniel

Previously, Steve Munnings, Corman Technologies wrote in qdn.public.qnxrtp.applications:

Hi Daniel,

Since I have used some National Instruments hardware and software recently
for a project, my opinion is that only National knows the hardware well
enough (proprietary, you know) to write drivers for it.
As far as I know, they have not written any software for QNX (any version)
and you should probably ask National which of the OSes they support will
give you the best real-time performance.
(It couldn’t hurt to urge them to support QNX, but I doubt that it would
have any real effect)

We have written drivers in QNX4 for one of National’s AD/DA ISA boards
just from the docs and sample code. It’s really not that difficult
(though admittedly we did not try to support every feature). Most of
their boards work pretty much the same way. You should be able to
program the board to interrupt on the rising and falling edge of your
pulse, and then compute the intervening time from the nanosecond clock
(on a Pentium). Or maybe this is a function of the card? It has been
a while.

Andrew