RE<C: Heliostat Orientation Estimation Using a 3-Axis
Total Page:16
File Type:pdf, Size:1020Kb
RE<C: Heliostat Orientation Estimation Using a 3-Axis Accelerometer Design Goals Early Attempts and Ideas Feedback Control System Sensor Requirements Pitch-Roll Articulation Review Derivation of Reflector Basis Vectors and Pitch/Roll Angles Angle Estimation Accuracy Mirror Offset from Roll Axis Determining the Mirror Normal when Using an Angle Offset Mount Conclusion Design Goals The sensing and control strategy for our heliostats, described in the heliostat control and targeting overview, split the design of our control system into two parts: 1. Rough heliostat orientation using an accelerometer, and 2. Precise on-target control using cameras and photometry. After testing many different designs, we built a rough orientation control system using a 3-axis accelerometer, able to sense and direct mirror orientation with close to one degree of precision (20 milliradians) for the entire motion range of the mirror. This level of precision is required for orientation tasks such as stowing the mirror in high winds and bringing the light spot close enough to the target for capture by the precise on-target tracking system. Cost reduction was the central goal directing the design decisions for our heliostat sensors and control system. It was critical to keep individual heliostat sensing and control costs low, since our heliostat field design called for the construction of hundreds to possibly thousands of heliostats. This document describes our approach to creating our rough orientation sensing system, and our approach to keeping costs down while reducing computational complexity. Early Attempts and Ideas Conventional heliostat designs use dead reckoning to align the reflectors with the the heliostat target or tower. This approach counts stepper motor rotations from a known “home” position, and it requires a heliostat that is installed precisely set on a well-prepared foundation. Precise installation can add substantially to the cost of each heliostat installed in a heliostat field, so we wanted to measure the heliostat reflector’s orientation directly and avoid these installation costs. Despite our knowledge that an unprepared installation site would cause inaccuracy in a system based entirely on dead reckoning, the first rough orientation system we built used dead- reckoning. However, we discovered an unexpected source of inaccuracy from the cable- actuator motors we were using. In our frame design, heliostat mirrors were pulled into position using tension from cables wound on motorized spools. As the motor rotated, cables in the spool would criss-cross over each other in different ways, making the amount of cable played out or reeled in with each rotation different. After a few trials with dead-reckoning, we decided the imprecision was too high. We then tried designing a heliostat orientation system using cameras. Our first design used a field observation camera to estimate heliostat orientations. However, in a densely packed heliostat field, it’s difficult for a camera to see each individual heliostat in the field. Oftentimes, a heliostat closer to the camera would block the view of a heliostat further away. The next method we tried was to attach two sets of crosshairs mounted to the back of each heliostat. A camera looking at the back of the heliostat determined the heliostat’s orientation based on the alignment of the crosshairs. This method posed challenges with camera sensor resolution, since the image quality from the camera wasn’t good enough to resolve the crosshairs. The third approach used a cheap, cellphone-quality camera mounted on the back of each heliostat to estimate the heliostat orientation based on what it saw on the ground. This presented problems due to differences in ground terrain, grading and installation. We ultimately chose a design using a semiconductor 3-axis accelerometer, similar to mass- produced devices commonly found in smartphones. A 3-axis accelerometer can provide data on mirror module orientation regardless of motor settings, play in the articulation joints, or differences in installation. It provides mirror module orientation independent of imprecise heliostat orientation in pitch and roll. After deciding on an accelerometer as our heliostat sensor, we needed to build a feedback control system around it. Feedback Control System Sensor Requirements A feedback control system uses accelerometer data to help a heliostat accomplish an assigned “mission”. A mission is a set of instructions that allow the heliostat to perform a goal. A mission can range from stowing against high winds to orienting a heliostat mirror towards a target. In order for a feedback control system to properly perform a mission, it needs two pieces of data: 1. An estimate of the mirror normal, or the angle at which light is reflected off the mirror, is needed for the orientation control system to point light towards a desired direction. 2. The orientation of the reflector mount plate, expressed as a coordinate transformation matrix. This is needed by the kinematics and control calculations, discussed in the control systems design document. Pitch-Roll Articulation Review Many conventional heliostats use an azimuth mount in which the azimuth rotational axis moves with the elevation axis. With such azimuth/elevation articulation, the benefit of an accelerometer sensor attached to the mirror would be limited. Due to the rotational symmetry about the azimuth, an accelerometer mounted to such a heliostat reflector could only detect elevation and not azimuth. An azimuth mounted heliostat at the THÉMIS experimental station in France (Image courtesy of Wikipedia) Instead of using an azimuth mount, we chose a heliostat design that has a pitch axis that's horizontal (transverse to the frame), which rotates on a roll axis. Unlike the azimuth/elevation, this pitch/roll articulation does not have azimuthal symmetry. Using this, we can get complete mirror orientation information via a single reading from the 3-axis accelerometer. We mounted an accelerometer to the heliostat’s mirror mounting bracket to determine its orientation. The photograph below shows a 3-axis accelerometer mounted to the back of the mirror support, and notably, no angle sensors on the pitch/roll joint. Close-up of a prototype heliostat with a 3-axis accelerometer mounted (the small gray box). Note that this prototype does not have a mirror angle offset. We noticed that directing morning or evening sunlight on the target placed the mirrors in a near vertical stance, during which the roll axis would be near vertical. When the roll axis becomes vertical, the mathematical transformation from the accelerometer reading to the roll angle became unusable as it approaches infinity. In order to avoid this, in later prototypes we mounted the mirror at an extra offset angle to the bracket. This way for all practical orientations of the heliostat the roll axis would never become vertical, and this situation would be avoided. These issues are described in more detail in the next sections. The CAD drawing below shows a pitch-roll heliostat in orthogonal view. In this particular example, the pitch axis is the horizontal rod along the front, while the roll axis is located right behind the center of the mirror. Catapult-style version of a pitch/roll heliostat The cable actuators and tension cables are located on each side of the mirror. Roughly speaking, operating them in the same direction pitches the mirror forward or back, while differential action will roll or turn the mirror module. The early prototype illustrated above had its pitch axis near the ground, where the whole mirror assembly would levitate up with pitch rotation. This design version we humorously referred to as a “catapult” heliostat. The choice of articulation axes impacts the mathematics that describe the behavior of the heliostat. While there are many examples in the literature for mathematical derivations of azimuth/elevation heliostat kinematics, this is not the case for pitch/roll heliostats with this style of articulation. Derivation of Reflector Basis Vectors and Pitch/Roll Angles Given the coordinates of the vector G in the reflector system [x,y,z] we wanted to determine the pitch angle and the roll angle of the articulation system, and the unit vectors at the mirror attachment point. From this, kinematics computations done by the controller can determine the mirror center point and other heliostat features. Pitch and roll angle diagrams The diagram above shows the pitch angle (labeled in the side-view diagram) and the roll angle (the angle the z-vector makes with the pitch plane defined by the red lines). The reflector axes x, y, and z are aligned with the accelerometer axes. The accelerometer is depicted as a green box on the back of the mirror. G is the direction of gravity. For the purpose of simplicity, we assumed zero offset angle between the mirror and the mirror mount (e.g. the reflector coordinate system), which is located at the end of the U-joint articulator. With this choice the mirror coordinate system and the reflector coordinate system coincide. We will account for a non-zero offset angle later. The pitch and roll angles can be determined as follows: ● The dot product of unit vectors in the G and y directions is the cosine of ninety degrees plus the pitch angle. ● The vectors G and y lie in the pitch plane (the vertical plane which bisects the heliostat lengthwise), and so their normalized cross product (if they are not colinear) is a unit vector orthogonal to the pitch plane. The dot product of this unit vector with a unit vector in the z direction is the cosine of ninety degrees plus the roll angle. For this analysis, we assumed a heliostat perfectly oriented on the ground. Specifically, when the reflector (e.g. moving part of the U-joint) is horizontal, the reflector’s coordinate system is aligned with the base and field coordinate systems.