Hardware manual

US
7,915,570
B2
9
FIG.
5B).
The
one
or
more
image
buffers
722
may
be
a
part
of
an
FPGA/processing
unit
206.
The
data
from
the
image
buff
ers
may
then
be
used
by
a separate
processor,
such
as
the
processor
212
of FIG.
SE,
to
perform
an
algorithm/image
processing/machine
vision
application.
In
some
embodiments,
the
processing
unit
206
may
include
an
exposure
generation
unit
710
that
is
operable
to
generate
an
exposure
generation
signal
750.
The
exposure
generation
unit
710
may
generate
the
exposure
generation
signal
750
in
response
to
an
external
or
internal
trigger
input
758
(such
as
a
digital
input
or
crossing
of
an
analog
threshold),
as
well
as
from
a
software
generated
event.
The
trigger
input
758
may
immediately
trigger
an
exposure
generation
signal
750
or
a
strobe
generation
signal
752, or
there
may
be
a
built-in
delay
prior
to
the
exposure
signal
and/or
the
strobe
generation
sig
nal
752.
A
light
strobe
control
generation
unit
712
may
receive
the
exposure
generation
signal
750
and
generate
a
strobe
genera
tion
signal
752.
In
some
embodiments,
the
light
strobe
control
generation
unit
712
may
directly
receive
the
trigger
signal
758
instead
of
receiving the
exposure
generation
signal
750.
The
light
strobe
control
generation
unit
712
may
generate
the
strobe
generation
signal
752
to
turn
on
the
one
or
more
light
sources
606
for
the
exposure
time of
the
camera
(e.g.,
the
imager
282).
Since
it
is
desirable
for
the
light
(e.g.,
from
the
one
or
more
light
sources
606)
to
be
at
full
brightness
before
the
exposure
starts,
the
strobe
generation
signal
752
may
slightly
precede
the
actual
exposure.
The
strobe
generation
signal
752
may
start
activation
of
an
active
circuit
708.
The
active
circuit
may
be
operable
to
almost
instantaneously
activate
the
switching
power
supply
718
(which
may
be
a
part
of
the
active
circuit)
and
supply
a
control
and
power
pulse
(i.e.,
a current pulse)
770
to
the
one
or
more
light
sources
606.
As
mentioned
above,
the
lighting
current
controller
290
offers
the
advantage
of
minimiZing
power
and
current
usage,
and
thus
may
provide
suf?cient
power
to
the
one
or
more
light
sources
606
without
using
any
additional
external
power
supplies
and
with
suf?ciently
low
heat
dissipation.
In
some
embodiments,
the
active
circuit
708
may
contain
a
control
loop
compensation
network
730
that,
in
conjunction
with
the
power
supply
718,
is
able
to
almost
instantaneously
create
the current
pulse.
The
control
loop
compensation
net
work
730
may
be
necessary
to
supply
control
values
to
the
switching
power
supply
718.
In
some
embodiments
the
con
trol
loop
compensation
network
may
supply
the
control
val
ues
directly
to
the
switching
power
supply
718.
The
active
circuit
708
may
receive
a
pulse
width
modulated
(PWM)
signal
756
from
a
light
current
setpoint
generation
unit
720,
which
may
be
included
in
the
processing
unit/FPGA
206,
or
it
may
be
a separate
element
from
the
processing
unit.
The
PWM
signal
756
may
be
?ltered
and
eventually
trans
mitted
to
the
power
supply
718.
Since
the
power
supply
718
may
be
a
switching
power
supply,
it
may
use
the
PWM
signal
to
control
how much
current
to
supply
(as
a
percentage
of
full
scale).
Thus,
the ?ltered
PWM
signal
(see
FIGS.
7A-B)
may
be
received
by
the
power
supply
718,
which
then
generates
the
current
pulse
770
as
indicated.
The
PWM
signal
may
be
generated
from
the
processing
unit
206,
and
thus
may
be
user/
application
programmable
to
a
desired
output
current.
In
some
embodiments,
the
compensation
sample
control
generation
unit
714
may
generate
a
compensation
sample
signal
754
to
indicate
to
the
ADC
in
the
microcontroller
716
when
to
sample
the
voltage
in
the
compensation
network
73
0.
This
voltage
may
be
the
value
that
determines
where
the
control
loop
picks
up
the
next
time
that
the
output
(i.e.,
the
current
signal
770)
is
turned
on.
Without
the
sample
and
hold
20
25
30
35
40
45
50
55
60
65
10
circuit,
this
voltage
may
decay
with
time,
and
may
cause
an
incorrect
current
to
be
sent
through
the
light
source,
which
in
turn
may
cause
a
bad
exposure
and/or
damage
the
light
source
606.
Furthermore,
this
decay
may
result
in
an
unwanted
delayia
period
of
time
when
the
power
supply
718,
while
turned
on,
would
need
to
adjust
its
output
(i.e.,
the current
signal
770)
because
of
the
lost
charge.
Thus
the
microcon
troller’
s
716
ADC
may
sample
the
voltage,
such
as
instructed
by
the
FPGA
206
(e.g.,
using
the
sample
control
generation
signal
754).
The
PWM
output
of
the
microcontroller
716
may
be
operable
to
continually
refresh
the
value
(i.e.,
one
of
the
control
values
of
the
control
loop)
until
the
next
time
that
the
power
supply
718
may
need
to
turn
on,
such
as
when
the
next
strobe
generation
signal
752
arrives
at
the
active
circuit
708
from
the
processing
unit
206.
One way
to
implement
this
is
through
a
microcontroller
with
integrated
multichannel
ADC
and
PWM
DAC.
The
ADC
is
used
to
sample
these
voltages
when
turning
off the
light,
for
which
the
microcontroller
is
instructed
to
do
so.
The
PWM
DAC
may
be
used
to
create
a
replica
of
these
voltages
and
feed
reactive
components,
such
as
loop
capacitors,
to
keep
them
charged
at
the
desired
level.
Since
this
state
is
kept
by
using
active
circuitry,
the
loop
memory
can
be
maintained
for
an
arbitrarily
long
time
interval.
FIGS.
7A
and
7BiBlock
Diagrams
of
the
Lighting
current
controller
FIG.
7A
illustrates
some
embodiments
of
the
integrated
lighting
current
controller,
and
especially
the
control
loop.
It
should
be
noted
that
this
embodiment
is
meant
to
be
illustra
tive
only,
and
is
not intended
to
limit
the
architecture,
com
ponents,
or
form
of
the
lighting
current
controller.
The
active
circuit
708
may
use
a
control
loop,
as
mentioned
above,
to
properly
regulate the
switching
power
supply.
How
ever,
control
loops
may
take
signi?cant
time
to
establish
their
?nal
control
value
after
starting
from
their
initial
state;
in
other
words,
when
all
the
reactive
components
of
the
system
may
be
discharged.
Adjustments
to
some
of
the
one
or
more
control
variables
may
occur
faster
because
they
represent
a
smaller percent
variation
of
the
output
signal.
In
some
cases,
it
may
be
necessary
to
have
a
memory
of
the
state
of
the
control
loop
so
it
can
be
stopped
and
restarted
without
going
through
the
complete
establishment
time.
In
other
words,
the
values
of
the
one
or
more
control
variables
may
need
to
be
acquired
and
stored
for
future
use.
The
reactive
components
of
the
system
may
need
to
be
charged
to
a
given
energy
to
remember
the
last
control
loop
setting,
so the
control
loop
can
reach
the
?nal
value
in
the
minimum
amount
of
time
possible
after
an
arbitrarily
long
idle
time.
Lighting
current
controllers
for
a
smart
camera
can
be
built
using
switching
power
supplies,
which
may
be
used
as
an
implementation
of
a
control
loop.
In
some
embodiments,
a
switching
supply
with
a
single
inductor
buck-boost
topology
can be
used.
In
other
embodiments,
other
topologies
of
switching
supplies
may
be
used. In
order
to
adjust
the current
pulse
890
to
one
or
more
arbitrary
values,
the current
value
may
be
programmed
to
a
speci?c
intensity
level
(usually
by
setting
the
light
current).
Alternatively
the
power
supply
can
provide
continuous
power
to
the
light
sources.
Although
this
would
solve
any
settling
time
issues,
this
solution
has
drawbacks.
Many
light
sources
may
have
the
ability
to
be
overdriven
at
a
higher
strobing current
level.
The
strobing
current
level
may
be
higher
than
a
continuous
current
level,
most
likely
making
strobing current
levels
incompatible
with
continuous
current
levels.
The
use
of
a
switching
power
supply
(e.g.,
a current
regulator)
facilitates
overdriving
of
the
one
or
more
lighting