[Itifg-tech] Fw: Camera readout using itifg 8.4
Brought to you by:
mastein1
|
From: <M....@go...> - 2008-04-18 14:51:50
|
Hello Tim.
Tim van Werkhoven <T.I...@ph...> wrote on 17.04.2008
16:22:03:
> Hi Matthias,
>
>>...
>
> The driver appears to do what I want now, although I again have some
> questions.
>
> Again, I init my mmap with size 4*pagedsize. I configure the camera,
> start grabbing by calling lseek(fd, +LONG_MAX, SEEK_END), do some
> stuff and stop by calling lseek(fd, -LONG_MAX, SEEK_END). So far so
> good.
>
> When I try a lseek(fd, 0, SEEK_END), process image, lseek(fd,
> pagedsize, SEEK_CUR) cycle, everything works as expected. Select
> blocks until a new frame arrives, and the mmap'ed memory holds a new
> frame every time. I do this without using the return value of the
> lseek calls at all.
>
> What I find a little odd though, is that my new image is always at the
> beginning of my mmap'ed memory, and the rest of the buffer seems
> empty. Even if I do not call SEEK_CUR afterwards and thus not tell the
> driver that I'm ready, I do not see the buffer fill up.
>
> SEEK_END *does* return values that keep increasing, like 69632 the
> first time (pagedsize), 5849088 (84*pagedsize), etc. The image located
> at the beginning of the buffer is overwritten every time, but I do not
> see images in the rest of the buffer.
>
> Could you explain why every new image is at the beginning of the
> mmap'ed memory and why the rest remains empty? And do I need to use
> the output of the lseek() calls at all, or are these merely necessary
> to signal the driver I want to do something? It seems to me I can
> always use the data in the beginning of the buffer, and do not need to
> move my pointer at all.
Perhaps You don't have specified the O_APPEND flag to open(2)!? You can
also set it later by fcntl(2). If this flag isn't set, only one and the
same buffer is filled all the time. Sorry, I have forget to mention it.
> >
> > Please read the man/extime_itifg.txt manpage, it seems to be up-to-
> > date
> > an describes it a little bit. Further You should have a look at
> > conffiles/vossk-ccd1300b-12bpp-pcd.cam. The values into this file are
> > setup for a free running mode with fps = 1/121ms and an exposure time
> > of 40ms (readout is 80ms, safety is 1ms)
>
> Oh sorry, I overlooked that. It's a bit clearer, thanks. As for the
> vossk-ccd1300b-12bpp-pcd.cam
> file, I see that
> EXT_SYNC_PERIOD_TIME = 121000.000
> sets the complete cycle time, and that either
> EXSYNC_MIDPOINT_DELAY = 40000.000
> or
> PRI_MIDPOINT_DELAY = 40000.000
> set the exposure time (or both?), but I do not see the readout time of
> 80 ms anywhere. 2x40ms = 80ms, but I assume that the values that
> control the exposure time do not set the readout time. Could you
> explain this?
No no, EXSYNC and PRI are two independed outputs at the PCDig's connector.
Most times the camera only needs one input: EXSYNC. As far as I know, only
Dalsa's line scan cameras needs additional PRI Signal.
You don't see the 80ms readout not directy, You only see it indirectly:
120ms - 40ms = 80ms.
Means If You want 40ms Exposure and You know, that Your camera have a
readout of 80ms, You can't go with Your cycle time below 40ms + 80ms =
120ms.
Take care of a litte safety time of 1ms => 121ms.
REMARK: Recent cameras can expose a new image WHILE sending out the former
image. With this cameras You can shrinken the cycle time more and
more, till You reach the readout time.
matthias
> Thanks again for your time,
>
> Tim
_________________________________________________
Matthias Stein,
GOM Gesellschaft fuer Optische Messtechnik mbH,
Mittelweg 7-8, 38106 Braunschweig, Germany
E-mail: M....@go..., Internet: http://www.gom.com
Tel.: +49 (0)531 39029-0, Fax: +49 (0)531 39029-15
Amtsgericht Handelsregister Braunschweig, HRB-Nr.: 3131
Geschaeftsfuehrer: Dr.-Ing. K. Galanulis, Dr.-Ing. D. Winter
This e-mail is confidential. If you have received it in error, you are on
notice of its status.
Please notify us immediately by reply e-mail and delete this message from
your system.
Please do not copy it or use it for any purposes, or disclose its contents
to any other person;
to do so could be a breach of confidence.
Thank you for your co-operation.
|