Heliostat localization in camera field-of-view with induced motion
11262103 · 2022-03-01
Assignee
Inventors
Cpc classification
F24S40/90
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F24S2020/10
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
G06T7/80
PHYSICS
Y02E10/47
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
F24S50/80
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F24S2020/23
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F24S50/20
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F24S2050/25
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
International classification
F24S20/20
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F24S50/20
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F24S50/80
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F24S40/90
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
Abstract
A system and method for localization and calibration of a heliostat is disclosed. The system comprises a controller and a camera configured to acquire images of a plurality of heliostats. The controller and camera are configured to acquire a first image of the plurality of heliostats, move one of the plurality of heliostats, acquire a second image of the plurality of heliostats, generate a difference image by subtracting the second image from the first image, identify the heliostat that was moved based on the difference image, and calibrate the position or orientation of the heliostat based on the difference image. The difference image is generated by pixel-wise subtraction of the second image from the first image. The pixel-wise subtraction exposes the heliostat and enables the calibration of the position and/or orientation of known heliostat positions.
Claims
1. A system for localization of a first heliostat in a heliostat field, the system comprising: a camera configured to acquire images of a plurality of heliostats including the first heliostat; a controller configured to: a) acquire a first image of the plurality of heliostats with the camera; b) move the first heliostat; c) acquire a second image of the plurality of heliostats with the camera; d) generate a difference image by subtracting the second image from the first image, or by subtracting the first image from the second image; e) identify the first heliostat based on the difference image; and f) calibrate the position of the first heliostat based on the difference image.
2. The system in claim 1, wherein the difference image is generated by pixel-wise subtraction of the second image from the first image.
3. The system in claim 1, wherein the first heliostat comprises a mirror, wherein movement the first heliostat comprises rotation of the mirror.
4. The system in claim 3, wherein rotation of the mirror comprises rotation of the mirror about an azimuth angle or elevation angle.
5. The system in claim 4, wherein the second image is acquired after rotation of the mirror.
6. The system in claim 4, wherein the second image is acquired during rotation of the mirror.
7. The system in claim 1, wherein the first heliostat is characterized by a mirror normal vector orientated toward the camera in the first image and substantially perpendicular to the camera in the second image.
8. The system in claim 1, wherein the first heliostat comprises a mirror oriented to reflect a portion of relatively bright sky in the first image and reflect a portion of relatively dark in the second image.
9. A method for localization of a heliostat in a heliostat field, the method comprising: a) acquiring a first image of the plurality of heliostats; b) moving a first heliostat after acquiring the first image; c) acquiring a second image of the plurality of heliostats; d) generating a difference image by subtracting the second image from the first image; e) identifying the first heliostat based on the difference image; and f) calibrating the position of the first heliostat based on the difference image.
10. The method in claim 9, wherein the first heliostat is characterized by a normal vector orientated toward the camera in the first image and substantially perpendicular to the camera in the second image.
11. The method in claim 9, wherein the first heliostat comprises a mirror configured to reflect a portion of bright sky in the first image and reflect a portion of dark sky in the second image.
12. A system for calibrating positions of heliostats, the system comprising: a camera configured to acquire a plurality of images, each image comprising a plurality of heliostats; a controller configured to localize each of the plurality of heliostats, wherein the controller is configured to: a) for each of the plurality of heliostats: acquire a first image of the plurality of heliostats with the camera; move one heliostat of the plurality of heliostats; acquire a second image of the plurality of heliostats with the camera; generate a difference image by subtracting the second image from the first image; generate an observed position of the one heliostat based on the difference image; and generate a known position of the one heliostat; and b) generate a cost function, wherein the cost function is based on a distance between the observed position and known position of each of the plurality of heliostats; c) for one or more of the plurality of heliostats, generate an estimated position that minimizes the cost function; and d) for one or more of the plurality of heliostats, update the known position based on the estimated position that minimizes the cost function.
13. The system of claim 12, wherein the cost function comprises a sum of squares, each square comprising a distance between a centroid of an observed mirror profile and a centroid of a known mirror profile, for each of the plurality of heliostats.
14. The system of claim 13, wherein the controller is further configured to calibrate an orientation angle for one or more cameras, wherein the controller is configured to: e) generate the cost function based, in part, on an angle corresponding to the orientation angle of one or more cameras; f) for the one or more cameras, generate an estimated orientation angle that minimizes the cost function; and g) for the one or more cameras, update a known orientation angle based on the estimated orientation angle that minimizes the cost function.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) The present invention is illustrated by way of example and not limitation in the figures of the accompanying drawings, and in which:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
(9) The invention in the preferred embodiment features a localization technique for determining the precise position and physical profile of heliostats and/or the orientation of tracking cameras. Using the present invention, the location of heliostats in a field of identical solar trackers can be quickly determined and the heliostat positions and camera orientations calibrated. Although the preferred embodiment includes a heliostat with a mirror, the present invention may be employed with photovoltaic panels as well as other solar trackers.
(10) Referring to
(11) In some solar power plants, the digital cameras 124 are mounted on the receiver tower 120 around the periphery of the aperture where they have a view of the heliostats 110 that direct light to the receiver tower on which they are mounted. The field of view (FOV) of each tracking camera 124 may include a large number of heliostats including heliostats that direct light to the same receiver tower as well as heliostats that direct light to other receiver towers. Resolving any single heliostat can be extremely challenging, especially in view of the fact that the heliostats in front block the view of heliostats further away, resulting in partial views of nearly all the heliostats.
(12) To improve the identification and resolution of each heliostat, the solar thermal power plant in the preferred embodiment employs a localization controller or processor 130 to find the precise location of each heliostat, specifically the mirror of each heliostat, and/or the position and orientation of the cameras 124. The localization controller 130 is coupled to the plurality of cameras 124 and the heliostat motor controllers 132 that determine the orientation of each of the heliostat mirrors. During a localization routine, the localization controller 130 is configured to induce a motion in each heliostat mirror, preferably one heliostat at a time, and determine the location of that heliostat mirror in each camera's FOV. In the preferred embodiment, a heliostat mirror is made to rotate about its azimuth angle using a carousel 134 configured to turn, rotate, or spin the associated mirror 112 about a partial or full revolution. In this manner, the location in the digital image of every heliostat 110 can be quickly and accurately determined. Thereafter, the tracking algorithm can look to this particular portion of the FOV for purposes of calibrating the position and/or orientation of that heliostat. The precise positions and/or orientations of the heliostats are used to refine the model of the heliostat field, thereby improving the accuracy with which they direct sunlight to the receiver aperture 122.
(13) As illustrated in
(14) During or after this motion is induced, the cameras 124 acquire at least a second image, as illustrated in
(15) Referring to
(16) The localization controller 130 performs calibration in order to update a 3D model representing the position of the heliostat mirror based on observational data indicating where the heliostat mirror is actually located in 3D space. The known position of the heliostat mirror is represented by pixel profile 410, while the observed position of the heliostat mirror is represented by the pixel profile 400. The centroid of the profile 410 of the known position is represented by point 412, and the centroid of the profile 400 of the observed position is represented by point 402. The difference between the known position and observed position of the heliostat mirror can be characterized by a distance between (i) the centroid 412 of the pixel profile 410 derived from the 3D model and (ii) the centroid 402 of the pixel profile 400 derived from the difference image. This distance between centroids is then used to compute and minimize a cost function, as described below.
(17) The difference image in
(18) Illustrated in
(19) Next, the localization controller 130 induces 520 motion in the heliostat being localized (or in a subset of heliostats being localized). Motion may include rotation of the heliostat mirror 212 about an azimuth angle and/or rotation of the heliostat mirror about an elevation angle. After rotation, the heliostat 212 being localized is characterized by a second pose. The camera 124 then acquires 530 a second image of the heliostat field after the intended motion has been completed. In some embodiments, the camera 124 acquires 530 the second image, or a set images, of the heliostat field while the heliostat of interest is actually in motion.
(20) Thereafter, the localization controller 130 determines the difference 540 between the first and second images resulting from the heliostat motion using, for example, a predetermined threshold. Assuming all the neighbor heliostats remain stationary, the only change in the image is associated with the one heliostat 212 that was moved. The difference image therefore produces the pixel profile 400 representing the portion of the camera FOV occupied by the heliostat 212. This heliostat profile 400 is then associated with the one heliostat mirror 212.
(21) The “observed” position of the heliostat mirror 212 is estimated 550 based on it's pixel profile 400. In the preferred embodiment, the position is characterized by the centroid 402 of its pixel profile, although the position of the heliostat mirror may be characterized by other variables in different references frames, depending on the preference of one skilled in the art.
(22) Next, the “known” position of the heliostat mirror 212 is estimated 560 based on the 3D analytic model of the heliostat field. This model is maintained by the localization controller 130 and includes a mathematical representation of all the heliostats, all the cameras, and their respective location and orientation in 3D space. In the preferred embodiment, three position measurements (X.sub.i, Y.sub.i, Z.sub.i) and three orientation measurements are used to represent some or all of the components of the heliostat field. The model may be derived from construction plans or a survey of the field after construction. This model can then be used to determine the relative distance and orientation between any two components as well as the “appearance” of any component as view from another component.
(23) In the preferred embodiment, the known position of the heliostat mirror 212 is characterized by the centroid of the pixel profile 410, which is generated from the 3D analytical model. This pixel profile 410 represents an estimate of what the heliostat mirror 212 should look like if it were captured in an image acquired by camera 724, assuming the physical layout of the heliostat field as modeled, the size and shape of the heliostats, as well as the orientation of those heliostats. As shown in
(24) This process above is repeated until the centroid of the observed centroid and known centroid have been determined for all the heliostat mirrors associated with the particular receiver tower. Upon completion, the decision block 570 is answered in the negative.
(25) After all the centroids are determined, the localization controller 130 generates 580 a cost function based on the error between (i) each heliostat mirror position, as determined from the difference images in step 550, and (ii) the corresponding heliostat mirror location, as determined from the analytical model in step 560. In the preferred embodiment, the cost function is the sum of the squares of the errors as measured for each of the sample measurements. For purposes of estimating the error associated with a heliostat mirror, a sample is a measure of the displacement of the centroid as observed. That is, the error associated with this sample is the distance between the “observed” centroid and the “known” centroid as calculated from the analytical model. In some embodiments, the orientation of the heliostat as well as the position and/or orientation of the cameras 124 may also be included in the cost function by extension of the sum of the squares of those samples.
(26) The localization controller 130 then applies 590 a nonlinear minimizer algorithm to minimize the cost function and simultaneously solve for the three dimensional position coordinates of the heliostat mirrors, namely (X.sub.i, Y.sub.i, Z.sub.i) for each heliostat mirror i. If the vertical height coordinates, Z.sub.i, are known, the localization controller 130 may be configured to solve for two heliostat position coordinates—namely (X.sub.i, Y.sub.i)—and the camera angle. If solving for the vertical height coordinate, Z.sub.i, the number of parameters solved for is 3*(N.sub.h+N.sub.c) where N.sub.h is the number of heliostats and N is the number of cameras. In general, the number of constraints is 2*N.sub.h*N.sub.c, requiring N.sub.h to be greater than or equal to 3*N.sub.c/(2*N.sub.c−3). In addition, the more cameras there are and the more spatially separated they are, the better solving for heliostat locations will be constrained.
(27) In the preferred embodiment, the nonlinear minimizer algorithm employed by the localization controller 130 is the Nelder-Mead Simplex, which minimizes the cost function representing the estimated heliostat positions and camera angles, for example.
(28) In the preferred embodiment, the error function is given by the sum of square distances between the centroid of a sample and the projection into image pixel space using the camera projection model of the corresponding 3D coordinate. In other embodiments, the nonlinear minimizer is based on the Levenberg-Marquardt technique, Constrained optimization by linear approximation (COBYLA) technique, Limited-memory BFGS (L-BF GS or LM-BFGS) technique, or comparable algorithm.
(29) Upon completion of the nonlinear minimizer algorithm 590, the localization controller 130 has effectively solved for the heliostat mirror positions and/or camera orientations that minimize the cost function. The heliostat mirror positions and/or camera orientations are then used to update, i.e., calibrate, the known positions and orientations as represented in the analytical model of the heliostat field. Thereafter, heliostats can be configured with the information needed to more accurately aim reflected sunlight into the receiver aperture 122. The improved accuracy translates into an increase in solar energy captured and overall improvement in efficiency of the solar power plant.
(30) In some embodiments, the first image is acquired with the heliostat's pose oriented such that the vector normal to the mirror is directed substantially toward the camera or substantially away from the camera. For the second pose, the heliostat is rotated until the mirror normal vector is facing 90 degrees from camera and the mirror seen edge-on, thereby maximizing the contrast between the first image and second image.
(31) In another embodiment, for the first image, the heliostat mirror is made to reflect a bright section of sky to the camera. For the second image, the heliostat is moved so that the mirror reflects a dark section of sky to the camera. The actual brightness and darkness is not relevant so long as these images of sky are bright and dark relative to each other to maximize the contrast between the first and second images. In yet another embodiment, the second image or set of images is acquired while the heliostat is spinning or otherwise being moved. The difference between the first and second images are then determined and the heliostat localized in the camera FOV based on the non-zero pixel values.
(32) One or more embodiments of the present invention may be implemented with one or more computer readable media, wherein each medium may be configured to include thereon data or computer executable instructions for manipulating data. The computer executable instructions include data structures, objects, programs, routines, or other program modules that may be accessed by a processing system, such as one associated with a general-purpose computer, processor, or controller capable of performing various different functions or one associated with a special-purpose computer capable of performing a limited number of functions. Computer executable instructions cause the processing system to perform a particular function or group of functions and are examples of program code means for implementing steps for methods disclosed herein. Furthermore, a particular sequence of the executable instructions provides an example of corresponding acts that may be used to implement such steps. Examples of computer readable media include random-access memory (“RAM”), read-only memory (“ROM”), programmable read-only memory (“PROM”), erasable programmable read-only memory (“EPROM”), electrically erasable programmable read-only memory (“EEPROM”), compact disk read-only memory (“CD-ROM”), or any other device or component that is capable of providing data or executable instructions that may be accessed by a processing system. Examples of mass storage devices incorporating computer readable media include hard disk drives, magnetic disk drives, tape drives, optical disk drives, and solid state memory chips, for example. The term processor as used herein refers to a number of processing devices including personal computing devices, servers, general purpose computers, special purpose computers, application-specific integrated circuit (ASIC), and digital/analog circuits with discrete components, for example.
(33) Although the description above contains many specifications, these should not be construed as limiting the scope of the invention but as merely providing illustrations of some of the presently preferred embodiments of this invention.
(34) Therefore, the invention has been disclosed by way of example and not limitation, and reference should be made to the following claims to determine the scope of the present invention.