Method for determining and drawing projection of vertex of photovoltaic module string under arbitrary slope surface

By calculating the normal vector of the ground slope and the geometric relationship of the photovoltaic support, and combining the solar position formula, the projection of the vertex of the photovoltaic module string is automatically determined and the projection sector diagram is drawn. This solves the problems of large calculation errors and shadow shading in the design of mountain photovoltaic power stations, and improves the design efficiency and accuracy.

CN115631231BActive Publication Date: 2025-08-01POWERCHINA HUADONG ENG CORP LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211157146.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-09-21
Publication Date
2025-08-01
Estimated Expiration
2042-09-21

AI Technical Summary

Technical Problem

In the design of mountain photovoltaic power stations, traditional manual calculation methods are labor-intensive, prone to errors, difficult to meet construction schedule requirements, and difficult to effectively consider factors such as shading.

Method used

This paper provides a method for determining the vertex projection of photovoltaic module strings on arbitrary slopes at multiple times and in multiple seasons. By calculating the normal vector of the ground slope and the geometric relationship of the photovoltaic support, combined with the solar position formula, the vertex projection of the photovoltaic module strings is automatically determined, and the projection sector diagram is drawn using AutoCAD.

Benefits of technology

It improves the accuracy and design efficiency of photovoltaic array layout, reduces errors from manual calculations, and can automatically handle shading problems at multiple times and in multiple seasons.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115631231B_ABST
    Figure CN115631231B_ABST
Patent Text Reader

Abstract

The present invention provides a method for determining and drawing the vertex projection of a photovoltaic module string under any slope, which can provide a method for determining and drawing the vertex projection of a photovoltaic module string under any slope at multiple moments and in multiple seasons. By using programming languages such as Java, C++, C#, and Python and the AutoCAD ActiveX interface technology, the projection is automatically drawn on CAD, and this projection is used as the basis for processing the layout spacing of the components, improving the accuracy of the photovoltaic array layout and the design efficiency of mountain photovoltaic power generation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the field of photovoltaic technology, and relates to the determination and drawing of photovoltaic component projections and spacing measurement under arbitrary slopes, and in particular to a method for determining and drawing the vertex projections of photovoltaic component strings under arbitrary slopes. Background Art

[0002] In recent years, the construction of large-scale ground-mounted photovoltaic power stations has been ramping up across central, eastern, and southern China. However, favorable, open, and flat land with good sunlight is extremely scarce in these areas, making mountainous and hilly terrain a more common choice. Compared to photovoltaic power stations in plain areas, mountainous photovoltaic power stations must consider more factors, such as shadowing, placing higher demands on the refined design and construction of the power stations.

[0003] Because the mountainous terrain is complex and changeable, with various angles and directions, according to the requirements for the spacing of photovoltaic arrays in GB50797 "Design Specifications for Photovoltaic Power Stations", designers use traditional manual calculations, which are labor-intensive, error-prone, difficult to draw, and time-consuming, and cannot meet construction schedule requirements. Summary of the Invention

[0004] The first object of the present invention is to provide a method for determining the vertex projection of a photovoltaic component string on an arbitrary slope at multiple times and seasons, in response to the deficiencies in the prior art.

[0005] To this end, the above-mentioned purpose of the present invention is achieved through the following technical solutions:

[0006] A method for determining the vertex projection of a photovoltaic module string on an arbitrary slope, characterized in that the method comprises the following steps:

[0007] The three coordinate points (X1, Y1, Z1), (X2, Y2, Z2), and (X3, Y3, Z3) of a single-row component string on a mountain slope M1 are obtained from the topographic map using the following formula:

[0008] A=(Y2-Y1)*(Z3-Z1)-(Z2-Z1)*(Y3-Y1)

[0009] B=(Z2-Z1)*(X3-X1)-(X2-X1)*(Z3-Z1)

[0010] C=(X2-X1)*(Y3-Y1)-(Y2-Y1)*(X3-X1)

[0011] If C≤0

[0012] Then let A=-A,B=-B,C=-C

[0013] The calculated normal vector of the ground slope M1 is (A, B, C). Therefore, the equation of the ground slope M1 can be obtained as follows:

[0014] A*x + B*y + C*z + D = 0

[0015] where D = -A*X1 - B*Y1 - C*Z1

[0016] The photovoltaic support group has multiple columns, and all columns are perpendicular to the horizontal plane. Since the photovoltaic modules are installed southward following the slope, the lengths of the columns exposed above the ground are the same, and the plane formed by the columns is parallel to the east-west plane. The plane formed by the inclined beams and inclined braces is parallel to the north-south plane; it is known that the angle between the inclined beam and the horizontal plane is θ1, the height of the column exposed above the ground is H, and the coordinate point where the first column from west to east intersects the ground slope M1 is D0(X4, Y4, Z4), where X4 and Y4 can obtain the coordinates from the plan view, and Z4 = (-D - A*X4 - B*Y4) / C;

[0017] The angle between the straight line formed by the intersection of the ground slope M1 and any east-west plane (y = E, E is any value) and the x-axis is θ2;

[0018] Substituting y = E, we get A*x + C*z = -D - BE. The intersection point of this straight line with the x-axis is (-D - BE) / A, and the intersection point with the z-axis is (-D - BE) / C. (-D - BE) / C / (-D - BE) / A = A / C, and we get θ2 = arctan(A / C),

[0019] The length of the component string is L, the width of the component string is W, and the distance from the west edge of the component string to the first column along the plane of the component string is L1. Then the length from the east edge of the component string to the first column is L - L1. Therefore, the coordinates of the vertex D1 of the component string are (X5, Y5, Z5) and the coordinates of the vertex D2 of the component string are (X6, Y6, Z6) are obtained through the following formula:

[0020] X5 = X4 - L1*cos(θ2)

[0021] Y5 = Y4 + 0.5*W*cos(θ1)

[0022] Z5 = Z4 + H + 0.5*W*sin(θ1) + L1*sin(θ2)

[0023] X6 = X4 + (L - L1)*cos(θ2)

[0024] Y6 = Y4 + 0.5*W*cos(θ1)

[0025] Z6 = Z4 + H + 0.5*W*sin(θ1) - (L - L1)*sin(θ2)

[0026] In the Northern Hemisphere, the plane corresponding to the maximum solar radiation reception is an inclined plane facing due south with an angle with the horizontal plane equal to the local latitude. Fixed-mounted photovoltaic modules should be installed at this optimal angle. After determining the array inclination angle, it is necessary to ensure a reasonable spacing between the front and rear arrays in the north-south direction to avoid shadow occlusion. According to the "Design Code for Photovoltaic Power Stations" (GB50797), the front-to-back spacing should be such that there is no shadow occlusion in the north-south direction between photovoltaic modules from 9:00 am to 3:00 pm on the winter solstice (the day with the longest shadow length of an object under the sun in a year). After the fixed array is installed, the inclination angle is no longer adjusted. The calculation formulas for each angle are as follows:

[0027] Formula for the solar altitude angle:

[0028] Formula for the solar azimuth angle: sin(β) = cos(δ)sin(ω) / cos(α)

[0029] In the formula:

[0030] α is the solar altitude angle; β is the solar azimuth angle; is the local latitude; δ is the solar declination. The solar declination on the winter solstice is -23.45°. For mountain photovoltaic power stations, due to the elevation difference between the front and rear rows and the potential left-right occlusion, it is also necessary to consider the solar declination angles on the summer solstice, vernal equinox, and autumnal equinox. The declination angle on the summer solstice is +23.45°, and the declination angles on the vernal equinox and autumnal equinox are 0°. ω is the hour angle, ω = (T - 12) * 15°, where T is the true solar time at a certain moment. The hour angle at 9:00 am is (9 - 12) * 15° = -45°, and the hour angle at 15:00 pm is (15 - 12) * 15° = 45°;

[0031] At time T, the direction vector of the ray L1 passing through point D1 is (E, F, G), where:

[0032] E = cos(α)sin(β)

[0033] F = cos(α)cos(β)

[0034] G = -sin(α)

[0035] Since L1 passes through D1(X5, Y5, Z5), the parametric equations of L1 can be obtained as follows:

[0036] x = X5 + k * E

[0037] y = Y5 + k * F

[0038] z = Z5 + k * G

[0039] After substituting into the ground slope surface M1 equation A * x + B * y + C * z + D = 0, we get:

[0040] k=-(A*X5+B*Y5+C*Z5+D) / (A*E+B*F+C*G)

[0041] Therefore, the latitude of the location is And at the true solar time T, the projection coordinates of point D1 (X5, Y5, Z5) on the ground slope M1 are:

[0042] X7=X5+k*E

[0043] Y7=Y5+k*F

[0044] Z7=Z5+k*G

[0045] Where k = -(A*X5+B*Y5+C*Z5+D) / (A*E+B*F+C*G)

[0046] Similarly, the projection coordinates of point D2 (X6, Y6, Z6) on the ground slope M1 are:

[0047] X8=X6+k*E

[0048] Y8=Y6+k*F

[0049] Z8=Z6+k*G

[0050] Among them, k=-(A*X6+B*Y6+C*Z6+D) / (A*E+B*F+C*G);

[0051] When considering the shadows between multiple rows of module strings, because the multiple rows of module strings are simultaneously elevated and installed, when calculating the shadow range, the projection plane actually considers the elevated plane M2 formed by the lower side of the module string. This plane is parallel to the ground slope M1 and is considered as the elevated slope. The formula is:

[0052] A*x+B*y+C*z+Dg=0

[0053] Because D3(X9,Y9,Z9) is on the raised slope,

[0054] in:

[0055] X9=X4

[0056] Y9=Y4-0.5*W*cos(θ1)

[0057] Z9=Z4+H-0.5*W*sin(θ1)

[0058] Therefore, the plane equation of the raised slope is:

[0059] A*x + B*y + C*z + Dg = 0, where Dg = -A*X9 - B*Y9 - C*Z9

[0060] Repeat the above steps. Similar to those on slope M1, obtain the projected coordinates of D1 and D2 on the elevated slope M2.

[0061] The second object of the present invention is to provide an automated determination method for the projection of the vertices of a photovoltaic module string under any slope.

[0062] To this end, the above object of the present invention is achieved by the following technical solutions:

[0063] An automated determination method for the projection of the vertices of a photovoltaic module string under any slope, characterized in that: the method is based on the method for determining the projection of the vertices of a photovoltaic module string under any slope described above, and includes the following steps:

[0064] Traverse by time using an object-oriented programming language to obtain the set of projected coordinate points of D1 and D2 at each moment;

[0065] Substitute the solar declinations at the four seasonal points into the direction vector of the ray L1 passing through point D1 to obtain the set of projected coordinate points at these four seasonal points.

[0066] The object-oriented programming language is java, C++, C#, python, etc.

[0067] Another object of the present invention is to provide a drawing method for the projection of the vertices of a photovoltaic module string under any slope.

[0068] To this end, the above object of the present invention is achieved by the following technical solutions:

[0069] A drawing method for the projection of the vertices of a photovoltaic module string under any slope, characterized in that: the method is based on the automated determination method for the projection of the vertices of a photovoltaic module string under any slope described above, and includes: calling AddPolyline in AutoCAD, and inputting the set of projected coordinate points of D1 and D2 at each moment as parameters into AddPolyline to draw a projected fan-shaped diagram of D1 and D2 in AutoCAD.

[0070] The present invention provides a method for determining and drawing the projection of the vertices of a photovoltaic module string under any slope, which can provide a method for determining and drawing the projection of the vertices of a photovoltaic module string under any slope at multiple moments and in multiple seasons. Using programming languages such as java, C++, C#, python, etc., and using the AutoCAD ActiveX interface technology, automatically draw the projection on CAD, and use this projection as the basis for processing the layout spacing of components, improving the accuracy of the photovoltaic array layout and the design efficiency of mountain photovoltaic. Brief Description of the Drawings

[0071] Figure 1 It is a schematic diagram of the layout of a single-row component string.

[0072] Figure 2 It is a schematic diagram of the solar incident angle.

[0073] Figure 3 It is a schematic diagram of the layout of multiple rows of component strings

[0074] Figure 4 It is a diagram of the layout of four groups of component strings in a certain mountain photovoltaic project.

[0075] Figure 5 It is a schematic diagram of the horizontal projection of point D1 on the ground slope M1 at the winter solstice, summer solstice, vernal equinox, and autumnal equinox.

[0076] Figure 6 It is a schematic diagram of the horizontal projection of points D1 and D2 drawn on the component string where D0 is located on the elevated slope M2 at the winter solstice, summer solstice, vernal equinox, and autumnal equinox. Detailed Description of the Invention

[0077] As Figure 1 shown, a single row of component strings is arranged on a ground slope M1 in a mountain area. Three coordinate points (X1, Y1, Z1), (X2, Y2, Z2), and (X3, Y3, Z3) of a certain ground slope M1 are obtained through a topographic map. Through the following formulas:

[0078] A = (Y2 - Y1) * (Z3 - Z1) - (Z2 - Z1) * (Y3 - Y1)

[0079] B = (Z2 - Z1) * (X3 - X1) - (X2 - X1) * (Z3 - Z1)

[0080] C = (X2 - X1) * (Y3 - Y1) - (Y2 - Y1) * (X3 - X1)

[0081] If C ≤ 0

[0082] Then let A = -A, B = -B, C = -C

[0083] The normal vector of the ground slope M1 is calculated as (A, B, C). Therefore, the equation of the ground slope M1 can be obtained as:

[0084] A * x + B * y + C * z + D = 0

[0085] where D = -A * X1 - B * Y1 - C * Z1

[0086] The photovoltaic support group has multiple columns, and all columns are perpendicular to the horizontal plane. Since the photovoltaic modules are installed southward following the slope, the lengths of the columns exposed above the ground are the same, and the plane formed by the columns is parallel to the east-west plane. The plane formed by the inclined beams and the inclined braces is parallel to the north-south plane. Given that the angle between the inclined beam and the horizontal plane is θ1, the height of the column exposed above the ground is H, and the coordinate point where the first column from west to east intersects the ground slope M1 is D0(X4, Y4, Z4), where X4 and Y4 can obtain the coordinates from the plan view, and Z4 = (-D - A*X4 - B*Y4) / C

[0087] The angle between the straight line where the ground slope M1 intersects any east-west plane (y = E, E is any value) and the x-axis is θ2;

[0088] Substituting y = E gives A*x + C*z = -D - BE. The intersection point of this straight line with the x-axis is (-D - BE) / A, and the intersection point with the z-axis is (-D - BE) / C. (-D - BE) / C / (-D - BE) / A = A / C, obtaining θ2 = arctan(A / C),

[0089] The length of the component string is L, the width of the component string is W, and the distance from the west edge of the component string to the first column along the plane of the component string is L1. Then the length from the east edge of the component string to the first column is L - L1. Therefore, the coordinates of the vertex D1 of this component string are (X5, Y5, Z5) obtained through the following formula, and the coordinates of the vertex D2 of this component string are (X6, Y6, Z6):

[0090] X5 = X4 - L1*cos(θ2)

[0091] Y5 = Y4 + 0.5*W*cos(θ1)

[0092] Z5 = Z4 + H + 0.5*W*sin(θ1) + L1*sin(θ2)

[0093] X6 = X4 + (L - L1)*cos(θ2)

[0094] Y6 = Y4 + 0.5*W*cos(θ1)

[0095] Z6 = Z4 + H + 0.5*W*sin(θ1) - (L - L1)*sin(θ2)

[0096] In the Northern Hemisphere, the plane corresponding to the maximum solar radiation reception is an inclined plane facing due south, with an angle with the horizontal plane equal to the local latitude. Fixed-mounted photovoltaic modules should be installed at this optimal angle. After determining the array tilt angle, pay attention to leaving a reasonable spacing between the front and rear arrays in the north-south direction to avoid shadow occlusion. According to GB50797 "Design Code for Photovoltaic Power Stations", the front-to-back spacing is: from 9:00 am to 3:00 pm on the winter solstice (the day with the longest shadow length of an object under the sun in a year), there is no shadow occlusion in the north-south direction between photovoltaic modules. After the fixed array is installed, the tilt angle is no longer adjusted. According to Figure 2 the solar incident angles shown, the calculation formulas for each angle are as follows:

[0097] Formula for the solar altitude angle:

[0098] Formula for the solar azimuth angle: sin(β) = cos(δ)sin(ω) / cos(α)

[0099] In the formula:

[0100] α is the solar altitude angle (as shown in Figure 2 ); β is the solar azimuth angle (as shown in Figure 2 ); is the local latitude; δ is the solar declination. The solar declination on the winter solstice is -23.45°. For mountain photovoltaic power stations, due to the elevation difference between the front and rear rows and the potential left-right occlusion, it is also necessary to consider the solar declination angles on the summer solstice, vernal equinox, and autumnal equinox. The declination angle on the summer solstice is +23.45°, and the declination angles on the vernal equinox and autumnal equinox are 0°. ω is the hour angle, ω = (T - 12)*15°, T is the true solar time at a certain moment. The hour angle at 9:00 am is (9 - 12)*15° = -45°; the hour angle at 15:00 pm is (15 - 12)*15° = 45°.

[0101] At time T, the direction vector of the ray L1 passing through point D1 is (E, F, G), where:

[0102] E = cos(α)sin(β)

[0103] F = cos(α)cos(β)

[0104] G = -sin(α)

[0105] L1 passes through D1(X5, Y5, Z5), and the parametric equation of L1 can be obtained as follows:

[0106] x = X5 + k*E

[0107] y = Y5 + k*F

[0108] z = ZS + k*G

[0109] After substituting into the equation of the ground slope M1: A*x + B*y + C*z + D = 0, we get:

[0110] k = -(A*X5 + B*Y5 + C*Z5 + D) / (A*E + B*F + C*G)

[0111] Therefore, the latitude of the location can be obtained as And at the true solar time T, the projection coordinate point TY1(X7, Y7, Z7) of point D1(X5, Y5, Z5) on the ground slope M1 is:

[0112] X7 = X5 + k*E

[0113] Y7 = Y5 + k*F

[0114] Z7 = Z5 + k*G

[0115] where k = -(A*X5 + B*Y5 + C*Z5 + D) / (A*E + B*F + C*G).

[0116] Similarly, the projection coordinate point TY2(X8, Y8, Z8) of point D2(X6, Y6, Z6) on the ground slope M1 is:

[0117] X8 = X6 + k*E

[0118] Y8 = Y6 + k*F

[0119] Z8 = Z6 + k*G

[0120] where k = -(A*X6 + B*Y6 + C*Z6 + D) / (A*E + B*F + C*G).

[0121] The above process can be coded using object-oriented programming languages such as Java, C++, C#, Python, etc. The pseudocode is as follows:

[0122] #1. Obtain the normal vector (A, B, C) of the ground slope M1:

[0123] Input:

[0124] (X1, Y1, Z1), (X2, Y2, Z2), (X3, Y3, Z3)

[0125] Output:

[0126] A = (Y2 - Y1)*(Z3 - Z1) - (Z2 - Z1)*(Y3 - Y1)

[0127] B = (Z2 - Z1)*(X3 - X1) - (X2 - X1)*(Z3 - Z1)

[0128] C = (X2 - X1) * (Y3 - Y1) - (Y2 - Y1) * (X3 - X1)

[0129] if C ≤ 0 then A = -A, B = -B, C = -C

[0130] #2. Obtain the vertex coordinates D1 and D2 of the component string:

[0131] Input:

[0132] θ1, (X4, Y4, Z4), L, W, L1

[0133] Output:

[0134] θ2 = arctan(A / C) —> The coordinates of D1 are (X5, Y5, Z5)

[0135] X5 = X4 - L1 * cos(θ2)

[0136] Y5 = Y4 + 0.5 * W * cos(θ1)

[0137] Z5 = Z4 + H + 0.5 * W * sin(θ1) + L1 * sin(θ2)

[0138] —> The coordinates of D2 are (X6, Y6, Z6)

[0139] X6 = X4 + (L - L1) * cos(θ2)

[0140] Y6 = Y4 + 0.5 * W * cos(θ1)

[0141] Z6 = Z4 + H + 0.5 * W * sin((θ1) - (L - L1) * sin((θ2)

[0142] #3. Obtain the direction vector (E, F, G) of the ray L1 passing through point D1 at time T, and the projection coordinate points of points D1(X5, Y5, Z5) and D2(X6, Y6, Z6) on the ground slope M1:

[0143] Input:

[0144] δ, T

[0145] Output:

[0146] ω = (T - 12) * 15°

[0147]

[0148] α = arcsin(sin(α))

[0149] sin(β) = cos(δ)sin(ω) / cos(α)

[0150] β = arcsin(sin(β))

[0151] E = cos(α)sin(β)

[0152] F = cos(α)cos(β)

[0153] G = -sin(α)

[0154] —> At time T, the direction vector of ray L1 passing through point D1 is (E, F, G)

[0155] k = -(A*X5 + B*Y5 + C*Z5 + D) / (A*E + B*F + C*G)

[0156] X7 = X5 + k*E

[0157] Y7 = Y5 + k*F

[0158] Z7 = Z5 + k*G

[0159] —> At time T, the projection coordinate point TY1(X7, Y7, Z7) of point D1(X5, Y5, Z5) on the ground slope M1

[0160] k = -(A*X6 + B*Y6 + C*Z6 + D) / (A*E + B*F + C*G)

[0161] X8 = X6 + k*E

[0162] Y8 = Y6 + k*F

[0163] Z8 = Z6 + k*G

[0164] —> At time T, the projection coordinate point TY2(X8, Y8, Z8) of point D2(X6, Y6, Z6) on the ground slope M1

[0165] #4. Assume T_J = [T1, T2, T3..Tn], and traverse the values of T in set J from T1 to Tn in #3 to obtain the set of projection coordinate points D1_J[] and D2_J[] at each moment.

[0166] Input:

[0167] T_J = [T1, T2, T3..Tn]

[0168] D1_J[(X5, Y5, Z5)]

[0169] D1_J[(X6, Y6, Z6)]

[0170] Output:

[0171] for T from T1 to Tn do

[0172] The code in #3

[0173] Add TY1(X7, Y7, Z7) to the set D1_J

[0174] Add TY2(X8, Y8, Z8) to the set D2_J

[0175] end

[0176] —>D1_J[(X7, Y7, Z7) Tn , , T2 , Figure 3 , Tn , , T2 , , , , , , , ,

[0176] , T3 , T1 ,

[0175] , T3 , T1 ,

[0179] ,

[0173] ,

[0180] ,

[0174] ,

[0177] ,

[0178] ,

[0172] ,(X7, Y7, Z7) T2 ,(X7, Y7, Z7) T3 ....(X7, Y7, Z7) Tn )

[0177] —>D2_J[(X8, Y8, Z8) T1 ,(X8, Y8, Z8) T2 ,(X8, Y8, Z8) T3 ....(X8, Y8, Z8) Tn )

[0178] Substitute δ solar declination δ = -23.45° (winter solstice), δ = 0° (vernal equinox and autumnal equinox), δ = +23.45° (summer solstice) respectively, and the projection coordinate point sets D1_J[] and D2_J[] at these 4 seasonal points can be obtained.

[0179] AutoCAD ActiveX provides a mechanism, or rather a method, for developers to manipulate AutoCAD through programming means. ActiveX is composed of a series of objects in a certain hierarchical structure, and each object represents a specific function in AutoCAD. Each object itself contains its own properties and methods, and through methods, some operations of the object can be achieved, such as controlling the startup of CAD, opening a document, and generating a straight line. In this step, by calling the AddPolyline method in the program and taking the sets D1_J[] and D2_J[] as parameters and inputting them into the AddPolyline method, the projection fan diagrams of D1 and D2 can be automatically drawn in Autocad by running the program.

[0180] When considering the shadow occlusion between multiple rows of component strings, since multiple rows of component strings are all installed at the same elevation, when calculating the shadow range, in fact, the projection plane considers the elevated plane M2 formed by the lower edge of the component string, as Figure 3As shown, this plane is parallel to the ground slope M1. This plane is regarded as the elevated slope, and its formula is:

[0181] A*x + B*y + C*z + Dg = 0

[0182] Since D3(X9, Y9, Z9) is on the elevated slope,

[0183] Where:

[0184] X9 = X4

[0185] Y9 = Y4 - 0.5*W*cos(θ1)

[0186] Z9 = Z4 + H - 0.5*W*sin(θ1)

[0187] Therefore, the plane equation of the elevated slope can be obtained as:

[0188] A*x + B*y + C*z + Dg = 0, where Dg = -A*X9 - B*Y9 - C*Z9

[0189] Repeat the above steps, and the projected coordinate point sets D1_J[] and D2_J[] of D1 and D2 on the elevated slope M2 can be obtained. Then, draw the projected fan diagrams of D1 and D2 in Autocad. Generally, it is judged whether there is shadow occlusion between the component strings through the projection on the elevated slope M2.

[0190] The present invention will be further described below in conjunction with the accompanying drawings and embodiments, but it is not used as a basis for limiting the present invention.

[0191] Figure 4 It is a layout diagram of four groups of component strings in a certain mountain photovoltaic project, where the component strings A1, A2, A3, and D0 are considered to be arranged on the same ground slope M1.

[0192] Through the CAD data extraction function, it is obtained that:

[0193] A1(370901.6545, 2643421.5908, 1781.10)

[0194] A2(370918.7905, 2643421.5908, 1779.64)

[0195] A3(370918.7905, 2643414.4908, 1777.34)

[0196] From this, the normal vector of the ground slope M1 is calculated as (10.366, -39.4128, 121.6656)

[0197] The equation of the ground slope is:

[0198] 10.366x-39.4128y+121.6656z+100123181.3231=0

[0199] The results of the bracket design scheme for this project are as follows: Figure 1 Annotation in:

[0200] L1=1.5m

[0201] L=16.1m

[0202] W=4.6m

[0203] H=3.1m

[0204] The angle between the inclined beam and the horizontal plane is θ1 = 20°

[0205] Now extract D0(X4,Y4,Z4),

[0206] X4=370901.6545Y4=2643414.4908

[0207] Z4=Z4=(-DA*X4-B*Y4) / C=1778.800043

[0208] The coordinates of point D0 are (370901.6545, 2643414.4908, 1778.800043)

[0209] The angle θ2 formed by the ground slope M1 and the east-west plane is arctan(A / C) = 0.0852, so θ2 = 4.87°

[0210] The coordinates of the vertex D1 of the component string are calculated to be (X5, Y5, Z5)

[0211] X5=X4-L1*cos(θ2)=370900.1594

[0212] Y5=Y4+0.5*W*cos(θ1)=2643416.652

[0213] Z5=Z4+H+0.5*W*sin(θ1)+L1*sin(θ2)=1782.813646

[0214] The coordinates of the vertex D2 of the component string are calculated to be (X6, Y6, Z6)

[0215] X6=X4+(L-L1)*cos(θ2)=370916.2013

[0216] Y6=Y4+0.5*W*cos(θ1)=2643416.652

[0217] Z6 = Z4 + H + 0.5 * W * sin(θ1) - (L - L1) * sin(θ2) = 1781.446866

[0218] Consult Google Maps to obtain the dimensions of this project Take the declination angle of the winter solstice δ = -23.45°

[0219] Take the hour angle ω at 9:00 am, ω = (9 - 12) * 15° = -45° = -0.7853981633974483 (radian value)

[0220]

[0221] α = arcsin(sin(α)) = 0.44713124299027707 (radian value)

[0222] sin(β) = cos(δ)sin(ω) / cos(α)

[0223] β = arcsin(sin(β)) = -0.802983709027915 (radian value)

[0224] E = cos(α)sin(β) = -0.6487052053284295

[0225] F = cos(α)cos(β) = 0.6262815558978796

[0226] G = -sin(α) = -0.43238058388638506

[0227] Calculate the projection point of D1 at this moment:

[0228] TY1(X7,Y7,Z7)

[0229] k = -(A * X5 + B * Y5 + C * Z5 + D) / (A * E + B * F + C * G) = 4.614001021685862

[0230] X7 = X5 + k * E = 370897.16627351986

[0231] Y7 = Y5 + k * F = 2643419.5416637384

[0232] Z7 = Z5 + k * G = 1780.818595544191

[0233] Calculate the projection point of D2 at this moment:

[0234] TY2(X8, Y8, Z8)

[0235] k = -(A * X6 + B * Y6 + C * Z6 + D) / (A * E + B * F + C * G) = 4.614024630462415

[0236] X8 = X6 + k * E = 370913.2078582047

[0237] Y8 = Y6 + k * F = 2643419.541678524

[0238] Z8 = Z6 + k * G = 1779.4518453362145

[0239] Calculate respectively again:

[0240] For the hour angles ω at the time points of 9:30, 10:00, 10:30, 11:00, 11:30, 12:00, 12:30, 13:00, 13:30, 14:00, 14:30, 15:00, repeat the above steps, and the projection points TY1(X7, Y7, Z7), TY2(X8, Y8, Z8) at the above time points can be obtained, and the sets of projection points D1_J[(X7, Y7, Z7) T1 , (X7, Y7, Z7) T2 , (X7, Y7, Z7) T3 ....(X7, Y7, Z7) T12 )、D2_J[(X8, Y8, Z8) T1 , (X8, Y8, Z8) T2 , (X8, Y8, Z8) T3 ....(X8, Y8, Z8) T12 )

[0241] Substitute δ = -23.45° (winter solstice), δ = 0° (vernal equinox and autumnal equinox), δ = +23.45° (summer solstice) into the solar declination δ respectively, and the sets of projection coordinate points D1_J[] and D2_J[] at these 4 seasonal points can be obtained.

[0242] AutoCAD ActiveX provides a mechanism, or rather a method, for developers to manipulate AutoCAD programmatically. ActiveX consists of a series of objects organized in a certain hierarchical structure, and each object represents a specific function in AutoCAD. Each object itself contains its own properties and methods, and through the methods, some operations of the object can be achieved, such as controlling the startup of CAD, opening a document, and generating a straight line. In this step, by calling the AddPolyline method and inputting the sets D1_J and D2_J as parameters into the AddPolyline method, the projection fan diagrams of D1 and D2 can be automatically drawn in Autocad by running the program. Figure 5 Schematic diagram of the horizontal projection of point D1 on the ground slope M1 at the winter solstice, summer solstice, vernal equinox, and autumnal equinox.

[0243] When considering the shadow occlusion between multiple rows of component strings, since multiple rows of component strings are all installed elevated at the same time, when calculating the shadow range, in fact, the projection plane considers the elevated plane M2 formed by the lower edge of the component string, as shown in the appendix Figure 3 - Schematic diagram of the layout of multiple rows of component strings. This plane is parallel to the ground slope M1 and is regarded as the elevated slope. Its formula is:

[0244] A*x + B*y + C*z + Dg = 0

[0245] Since D3(X9, Y9, Z9) is on the elevated slope, where:

[0246] X9 = X4 = 370901.6545

[0247] Y9 = Y4 - 0.5*W*cos(θ1) = 2643412.329

[0248] Z9 = Z4 + H - 0.5*W*sin(θ1) = 1781.113779

[0249] Therefore, the plane equation of the elevated slope M2 can be obtained as:

[0250] A*x + B*y + C*z + Dg = 0, where Dg = -A*X9 - B*Y9 - C*Z9 = 100122814.6

[0251] Repeating the above steps, the sets of projection coordinate points D1_J[] and D2_J[] of D1 and D2 on the elevated slope M2 can be obtained, and then the projection fan diagrams of D1 and D2 can be drawn in Autocad. Generally, the shadow occlusion between component strings is judged by the projection on the elevated slope M2. As Figure 6As shown in the figure, during the winter solstice, the component string where D0 is located has a certain shading effect on the component strings where A1 and A2 are located. The spacing can be appropriately adjusted to avoid this situation.

[0252] In the project, after the design institute completes the pile layout drawing, each group of supports is numbered. The coordinate points of the first pile position of each group of supports are extracted through CAD. We approximately consider that several adjacent groups of supports are on the same slope surface. Calculate the coordinates of the two edge points at the top of the component, divide the time points at a certain step length, and calculate the corresponding slope projection points at each moment, and put them into the projection point set. The projection points are input into CAD using the AutoCAD ActiveX mechanism, and the shadow area at all times can be obtained. By checking and adjusting the component spacing, the unobstructed component layout drawing can be obtained. By changing the declination angle, the shadow areas during the winter solstice, summer solstice, spring equinox, and autumn equinox can also be obtained.

[0253] The above specific implementation manners are used to explain and illustrate the present invention, which are only the preferred embodiments of the present invention, rather than limiting the present invention. Any modifications, equivalent replacements, improvements, etc. made within the spirit and scope of the claims of the present invention fall within the protection scope of the present invention.

Claims

1. A method for determining the vertex projection of a photovoltaic module string under any slope surface, characterized in that: The method includes the following steps: Obtain three coordinate points (X1, Y1, Z1), (X2, Y2, Z2), and (X3, Y3, Z3) of a single-row component string on a ground slope M1 of a mountain through a topographic map. Through the following formula: A = (Y2 - Y1) * (Z3 - Z1) - (Z2 - Z1) * (Y3 - Y1) B = (Z2 - Z1) * (X3 - X1) - (X2 - X1) * (Z3 - Z1) C = (X2 - X1) * (Y3 - Y1) - (Y2 - Y1) * (X3 - X1) If C ≤ 0 Then let A = -A, B = -B, C = -C Calculate the normal vector of the ground slope M1 to be (A, B, C). Therefore, the equation of the ground slope M1 is: A * x + B * y + C * z + D = 0 Where D = -A * X1 - B * Y1 - C * Z1 The photovoltaic support group has multiple columns, and all columns are perpendicular to the horizontal plane. Since the photovoltaic modules are installed southward following the slope, the lengths of the columns exposed above the ground are the same, and the plane formed by the columns is parallel to the east-west plane. The plane formed by the diagonal beams and diagonal braces is parallel to the north-south plane; it is known that the angle between the diagonal beam and the horizontal plane is θ1, the height of the column exposed above the ground is H, and the coordinate point where the first column from west to east intersects the ground slope M1 is D0(X4, Y4, Z4), where X4 and Y4 can obtain coordinates from the plan view, and Z4 = (-D - A * X4 - B * Y4) / C; The angle between the straight line where the ground slope M1 intersects any east-west plane and the x-axis is θ2; Substitute y = E to get A * x + C * z = -D - BE. The intersection point of this straight line with the x-axis is (-D - BE) / A, and the intersection point with the z-axis is (-D - BE) / C. (-D - BE) / C / (-D - BE) / A = A / C, and θ2 = arctan(A / C) is obtained. The length of the component string is L, the width of the component string is W, and the distance from the west edge of the component string to the first column along the plane of the component string is L1. Then the length from the east edge of the component string to the first column is L - L1. Therefore, the coordinates of the vertex D1 of the component string are (X5, Y5, Z5) through the following formula, and the coordinates of the vertex D2 of the component string are (X6, Y6, Z6): X5 = X4 - L1 * cos(θ2) Y5 = Y4 + 0.5 * W * cos(θ1) Z5 = Z4 + H + 0.5 * W * sin(θ1) + L1 * sin(θ2) X6 = X4 + (L - L1) * cos(θ2) Y6 = Y4 + 0.5 * W * cos(θ1) Z6 = Z4 + H + 0.5 * W * sin(θ1) - (L - L1) * sin(θ2) In the Northern Hemisphere, the plane corresponding to the maximum solar radiation reception is an inclined plane facing due south, with an inclination angle to the horizontal plane equivalent to the local latitude. Fixed-mounted photovoltaic modules should be installed at this optimal angle. After determining the array inclination angle, it is necessary to ensure a reasonable spacing between the front and rear arrays in the north-south direction to avoid shadow occlusion. According to GB50797 "Design Code for Photovoltaic Power Stations", the front-to-back spacing is as follows: from 9:00 am to 3:00 pm on the winter solstice, there should be no shadow occlusion in the north-south direction between photovoltaic modules; after the fixed array is installed, the inclination angle is no longer adjusted. The calculation formulas for each angle are as follows: Formula for solar altitude angle: Formula for solar azimuth angle: sin(β) = cos(δ)sin(ω) / cos(α) Where: α is the solar altitude angle; β is the solar azimuth angle; is the local latitude; δ is the solar declination. The solar declination on the winter solstice is -23.45°. For mountain photovoltaic power generation, due to the elevation difference between the front and rear rows and the left and right shading, it is also necessary to consider the solar declination angles on the summer solstice, vernal equinox, and autumnal equinox. The declination angle on the summer solstice is +23.45°, and the declination angles on the vernal equinox and autumnal equinox are 0°; ω is the hour angle, ω = (T - 12) * 15°, where T is the true solar time at a certain moment. The hour angle at 9:00 am is (9 - 12) * 15° = -45°, and the hour angle at 15:00 pm is (15 - 12) * 15° = 45°; At time T, the direction vector of ray L1 passing through point D1 is (E, F, G), where: E = cos(α)sin(β) F = cos(α)cos(β) G = -sin(α) L1 passes through D1(X5, Y5, Z5), and the parametric equation of L1 is as follows: x = X5 + k*E y = Y5 + k*F z = Z5 + k*G Substituting into the ground slope M1 equation A*x + B*y + C*z + D = 0 gives: k = -(A*X5 + B*Y5 + C*Z5 + D) / (A*E + B*F + C*G) Therefore, the obtained latitude of the location is , and the projected coordinate point TY1(X7, Y7, Z7) of point D1(X5, Y5, Z5) on the ground slope M1 at the true solar time T is: X7 = X5 + k*E Y7 = Y5 + k*F Z7 = Z5 + k*G Where k = -(A*X5 + B*Y5 + C*Z5 + D) / (A*E + B*F + C*G) Similarly, the projection coordinate point TY2(X8, Y8, Z8) of point D2(X6, Y6, Z6) on the ground slope M1 is: X8 = X6 + k*E Y8 = Y6 + k*F Z8 = Z6 + k*G Where k = -(A*X6 + B*Y6 + C*Z6 + D) / (A*E + B*F + C*G); When considering the shadow occlusion between multiple rows of module strings, since multiple rows of module strings are all installed at the same elevated level, when calculating the shadow range, in fact, the projection plane considers the elevated plane M2 formed by the lower edge of the module string. This plane is parallel to the ground slope M1 and is regarded as an elevated slope. Its formula is: A*x + B*y + C*z + Dg = 0 D3(X9, Y9, Z9) is on the elevated slope, Where: X9 = X4 Y9 = Y4 - 0.5*W*cos(θ1) Z9 = Z4 + H - 0.5*W*sin(θ1) Therefore, the plane equation of the elevated slope is obtained as: A*x + B*y + C*z + Dg = 0, where Dg = -A*X9 - B*Y9 - C*Z9 Repeating the above steps, similar to those on slope M1, the projection coordinates of D1 and D2 on the elevated slope M2 are obtained.

2. An automated determination method for the vertex projection of a photovoltaic module string under any slope surface, characterized in that: The method is based on the method for determining the projection of the vertex of a photovoltaic module string under any slope described in claim 1 and includes the following steps: Traversing by time through an object-oriented programming language to obtain the set of projection coordinate points of D1 and D2 at each moment; Substituting the solar declinations at the four seasonal points into the direction vector of ray L1 passing through point D1 to obtain the set of projection coordinate points at these four seasonal points.

3. The automated determination method for the vertex projection of a photovoltaic module string under any slope according to claim 2, wherein: The object-oriented programming languages are Java, C++, C#, and Python.

4. A method for drawing the vertex projection of a photovoltaic module string under an arbitrary slope surface, characterized in that: The method is based on the automated determination method for the vertex projection of a photovoltaic module string under any slope surface described in claim 2, and includes: calling AddPolyline in AutoCAD, and inputting the set of projection coordinate points of D1 and D2 at each moment as parameters into AddPolyline to draw the projection fan diagrams of D1 and D2 in AutoCAD.

Citation Information

Patent Citations

  • Photovoltaic component installation design method for non-due-south slope

    CN106452301A

  • Photovoltaic array shadow computation method base on Arcgis

    CN106777634A