Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
SYSTEM AND METHOD FOR PITCHED ROOF DESIGN AUTOMATION
Document Type and Number:
WIPO Patent Application WO/2023/111936
Kind Code:
A1
Abstract:
The present disclosure provides a system for pitched roof design automation that creates the 3D layout from the 2D boundary of a pitched roof and placing the panels in an optimized layout. The system suggests building-integrated system for use of PV tiles vs building applied systems with standard solar panels with structures. A computing device use combination of intersection of lines in 2D and finding the coordinates in 3D for a given area considering the tilt and azimuths of the roof and panel. Two lines for each row are created and intersection of those lines is determined by the boundary of the subarray and the obstacles. The panels are placed with inter-panel spacing in 2D. The 2D coordinates are then converted to 3D coordinates on which the panels are placed.

Inventors:
THAKUR UTKARSH SINGH (IN)
SAH NAVNEET ANAND (IN)
Application Number:
PCT/IB2022/062294
Publication Date:
June 22, 2023
Filing Date:
December 15, 2022
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
PANELSTACK INC (US)
International Classes:
H02S20/23; G06F30/13; G06F30/20; H01L31/042
Foreign References:
US20130246010A12013-09-19
US20110205245A12011-08-25
US20190384866A12019-12-19
US20160140282A12016-05-19
Attorney, Agent or Firm:
KHURANA & KHURANA, ADVOCATES & IP ATTORNEYS (US)
Download PDF:
Claims:
We Claim:

1. A system (100) for creating three-dimensional (3D) layout from two-dimensional (2D) boundary, the system comprising: a processor (202) operatively coupled to a memory (204), the memory (204) storing instructions executable by the processor to: receive a set of data of one or more obstacles and target surface; determine a combination of intersection of lines in the 2D coordinates for the one or more obstacles and the target surface, wherein at least two lines for each row of a plurality of rows of the target surface is created and the intersection of the at least two lines with the boundary of the target surface and the one or more obstacles are determined; determine the 3D coordinates for a given area of the target surface by considering the tilt and azimuth angle of the target surface and a plurality of solar panels; place the plurality of solar panels with inter-panel spacing in the 2D coordinates by performing iterations multiple times with a predefined offset in each iteration and select the iteration with maximum number of solar panels; and convert the 2D coordinates of the target surface into the 3D coordinates for the optimal placement of the plurality of solar panels on the target surface.

2. The system as claimed in claim 1, wherein the target surface is an irregular surface;

3. The system as claimed in claim 2, wherein the irregular surface is a pitched roof structure.

4. The system as claimed in claim 1 , wherein the set of data pertaining to shadow of the one or more obstacles, pitch of the roof, roof slope angle, faces of the roof, inner edges of the roof and various tilts of the roof and any combination thereof.

5. The system as claimed in claim 1 , wherein the processor (202) is configured to optimize the placement of the plurality of solar panels with respect to the shadow from the one or more obstacles.

6. The system as claimed in claim 1, wherein the processor (202) calculates the 3D coordinates by applying the layout algorithm to the set of data, the layout algorithm is selected from a variant of the straight skeleton algorithm.

7. The system as claimed in claim 1, wherein the processor (202) considers the layout conditions of the target surface and the plurality of the solar panel to compare and suggest different one or more installation types on the target surface after the placement of the plurality of solar panels, wherein the one or more installation types selected from traditional solar panels or integrated photo voltaic (PV) tiles.

8. The system as claimed in claim 1, wherein the processor (202) provides an automated location for a set of key components after the placement of the plurality of solar panels, wherein the set of key components is selected from power tiles, structure placement and any combination thereof.

9. The system as claimed in claim 1, wherein the processor (202) is configured to perform optimized placement of the plurality of solar panels for mixed orientation, wherein the mixed orientation is selected from landscape and portrait.

10. A method (500) for creating three-dimensional (3D) layout from two-dimensional (2D) boundary, the method comprising: receiving (502), at a processor, a set of data of one or more obstacles and target surface; determining (504), at the processor, a combination of intersection of lines in the 2D coordinates for the one or more obstacles and the target surface, wherein at least two lines for each row of a plurality of rows of the target surface is created and the intersection of the at least two lines with the boundary of the target surface and the one or more obstacles are determined; determining (506), at the processor, 3D coordinates for a given area of the target surface by considering the tilt and azimuth angle of the target surface and a plurality of solar panels; placing(508) the plurality of solar panels with inter-panel spacing in the 2D coordinates by performing iterations multiple times with a predefined offset in each iteration and select the iteration with maximum number of solar panels; and converting (510), at the processor, the 2D coordinates of the target surface into the 3D coordinates for the optimal placement of the plurality of solar panels on the target surface.

Description:
SYSTEM AND METHOD FOR PITCHED ROOF DESIGN AUTOMATION

TECHNICAL FIELD

[0001] The present disclosure relates, in general, to therenewable power systems, andmore specifically, relates to asystem and method for pitched roof design automation.

BACKGROUND

[0002] Recently, the use of photovoltaic (PV) or solar panels for harnessing and applying the energy of the sun has greatly expanded. One aspect of this has been the use of PV modules consisting of a multitude of interconnected photovoltaic cells. Arrays of modules form panels, mounted on a support system usually referred to as a rack. This includes not only roofmounted systems but also commercial and large-scale ground-mounted utility plants designed to introduce the generated electrical power.New technologies have increased the versatility of solar panels, thus widening the scope of their application.

[0003] For example, solar panels are increasingly capable of powering devices such as vehicle battery chargers, radios, computers, and other personal electronic devices. Solar panels are frequently used in both stationary locations, such as the home or office and mobile locations, such as vehicles, trailers. They are utilized both indoors and outdoors.

[0004] The primary concern in utilizing solar panels, however, is the placement of the panel toreceive adequate sunlight. Optimal exposure may involve the movement of the panel to a sunny location. In this regard, it may be desirable to place the panel appropriately. Few existing technologies providesoftware for solar plant simulation. Software like Arora and Helioscope helps the designers to design the complete solar plant manually but requires a lot of inputs from the user and does not compare and suggest the different variations. Also, they do not optimize the panel layout, which reduces some solar potential of the rooftop.

[0005] The existing software ignores solar panel placement on the surface that are interfering with the obstacles. Most of the solutions provided by companies like Aurora, Helioscope or SolarEdge does not maximize the number of solar panels to be placed on the surface. Resulting in a less optimum panel placement layout. This reduces the overall solar rooftop potential of the plant.

[0006] As a result, it would be advantageous to provide a method or structure by which the panel can be easily and temporarily mounted to maintain optimal exposure. It would be advantageous if such mounting would be durable, such that it would not be readily damaged during normal usage. [0007] Therefore, there is a need in the art to provide a means thatenables placement of panels in optimized layout and automates complete solar panel design.

OBJECTS OF THE PRESENT DISCLOSURE

[0008] An object of the present disclosure relates, in general, to the renewable power systems, and more specifically, relates to a system and method for pitched roof design automation.

[0009] Another object of the present disclosure is to provide a system that enables optimum panel placement layout.

[0010] Another object of the present disclosure is to provide a system that improves the overall solar rooftop potential of the plant.

[0011] Another object of the present disclosure is to provide a system that automates complete solar panel design.

[0012] Yet another object of the present disclosure is to provide a system that enables efficient placing of panels to achieve the most number of placeable panels.

SUMMARY

[0013] The present disclosure relates, in general, to the renewable power systems, and more specifically, relates to a system and method for pitched roof design automation. The main objective of the present disclosure is to overcome the drawback, limitations, and shortcomings of the existing system and solution, by providing a system that creates the 3D layout from the 2D boundary. The solar panel placement needs to be optimized with respect to the shadow from obstacles. The system suggests the building integrated system for use of PV tiles vs building applied systems with standard solar panels with structures. In the case of PV tiles, the system also suggests the location of power tiles for easy access and maintenance. The system hence automates the complete solar plant design process on pitched roofs.

[0014] The present disclosure provides the system for pitched roof design automation that creates the 3D layout from the 2D boundary of the pitched roof and placing the panels in an optimized layout. The solar panel placement needs to be optimized concerning the shadow from obstacles. The system suggests the building-integrated system for use of PV tiles vs building- applied systems with standard solar panels with structures. In the case of PV tiles, the system also suggests the location of power tiles for easy access and maintenance. A computing device, for panel placement, usesa combination of the intersection of lines in 2D and finding the coordinates in 3D for a given area considering the tilt and azimuths of the roof and panel. Two lines for each row are created and the intersection of those lines is determined by the boundary of the subarray and the obstacles. The panels are placed with inter-panel spacing in 2D. The 2D coordinates are then converted to 3D coordinates on which the panels are placed. The system incorporates creating the pitched roof using a different algorithm and comparing different panel installations types post-panel placement for complete automation

[0015] The present disclosure provides the system for creating a three-dimensional (3D) layout from a two-dimensional (2D) boundary, the system includes a processor operatively coupled to a memory, the memory storing instructions executable by the processor toreceive a set of data of one or more obstacles and the target surface. The set of data pertaining to the shadow of the one or more obstacles, pitch of the roof, roof slope angle, faces of the roof, inner edges of the roof and various tilts of the roof and any combination thereof. The processor can determine a combination of the intersection of lines in the 2D coordinates for one or more obstacles and the target surface, wherein at least two lines for each row of a plurality of rows of the target surface is created and the intersection of the at least two lines with the boundary of the target surface and the one or more obstacles are determined. The target surface is an irregular surface, where the irregular surface is a pitched roof structure.

[0016] The processor can determine the 3D coordinates for a given area of the target surface by considering the tilt and azimuth angle of the target surface and a plurality of solar panels. The processor can place the plurality of solar panels with inter-panel spacing in the 2D coordinates by performing iterations multiple times with a predefined offset in each iteration and selecting the iteration with a maximum number of solar panels and converting the 2D coordinates of the target surface into the 3D coordinates for the optimal placement of the plurality of solar panels on the target surface.

[0017] Accordingly, the processor is configured to optimize the placement of the plurality of solar panels with respect to the shadow from the one or more obstacles. The processor calculates the 3D coordinates by applying the layout algorithm to the set of data, the layout algorithm is selected from a variant of the straight skeleton algorithm. The processor considers the layout conditions of the target surface and the plurality of the solar panel to compare and suggest different one or more installation types on the target surface after the placement of the plurality of solar panels, the one or more installation types selected from traditional solar panels or integrated photo voltaic (PV) tiles. The processor provides the automated location for a set of key components after the placement of the plurality of solar panels, wherein the set of key components is selected from power tiles, structure placement and any combination thereof. Further, the processor is configured to perform optimized placement of the plurality of solar panels for mixed orientation, wherein the mixed orientation is selected from landscape and portrait.

[0018] Various objects, features, aspects, and advantages of the inventive subject matter will become more apparent from the following detailed description of preferred embodiments, along with the accompanying drawing figures in which like numerals represent like components.

BRIEF DESCRIPTION OF THE DRAWINGS

[0019] The following drawings form part of the present specification and are included to further illustrate aspects of the present disclosure. The disclosure may be better understood by reference to the drawings in combination with the detailed description of the specific embodiments presented herein.

[0020] FIG. 1A illustrates an exemplary representation of system for pitched roof design automation, according to an embodiment of the present disclosure.

[0021] FIG. IB illustrates an exemplary user interface of system, according to an embodiment of the present disclosure.

[0022] FIG. 2 illustrates an exemplary functional component of system, according to an embodiment of the present disclosure.

[0023] FIG. 3 illustrates an exemplary method for pitched roof design automation, according to an embodiment of the present disclosure.

[0024] FIG. 4 illustrates an exemplary computer system in which or with which embodiments of the present invention can be utilized in accordance with embodiments of the present disclosure.

[0025] FIG. 5 illustrates an exemplary method for creating three-dimensional (3D) layout from two-dimensional (2D) boundary, according to an embodiment of the present disclosure.

DETAILED DESCRIPTION

[0026] The following is a detailed description of embodiments of the disclosure depicted in the accompanying drawings. The embodiments are in such detail as to clearly communicate the disclosure. If the specification states a component or feature “may”, “can”, “could”, or “might” be included or have a characteristic, that particular component or feature is not required to be included or have the characteristic.

[0027] As used in the description herein and throughout the claims that follow, the meaning of “a,” “an,” and “the” includes plural reference unless the context clearly dictates otherwise. Also, as used in the description herein, the meaning of “in” includes “in” and “on” unless the context clearly dictates otherwise.

[0028] The present disclosure relates, in general, to the renewable power systems, and more specifically, relates to a system and method for pitched roof design automation. The present disclosure relates to creating the complete 3D layout using the 2D boundaries of the house and placing the panels in the optimized layout. Along with this, the potential comparison between the different PV installation types and finding the optimum layout of structures and PV tiles reduces the time and effort required to build the site. It incorporates creating the pitched roof using a different algorithm and comparing different panel installationtypes post-panel placement for complete automation.

[0029] The present disclosure determines the intersection points of obstacles on the surface and efficiently placing panels to achieve the most number of placeable panels with a set rules to follow. This algorithm can further be used to optimize panel placement for mixed- orientation such as landscape and portraitor different types of panels such as traditional solar panels or building integrated PV tiles.

[0030] The present disclosure uses a combination of intersection of lines in 2D and then finding the coordinates in 3D for a given area considering the tilt and azimuths of roof and panel (if they are different). Two lines for each row are created and find the intersection of those lines with the boundary of the subarray (the area in which panels needs to be placed) and the obstacles. Then the panels are placed with inter-panel spacing in 2D. This process is iterated over many times with some offset in each iteration and the iteration with max number of panels is selected. The 2D coordinates are then converted to 3D coordinates on which the panels are placed. The present disclosure can be described in enabling detail in the following examples, which may represent more than one embodiment of the present disclosure.

[0031] FIG. 1A illustrates an exemplary representation of system for pitched roof design automation, according to an embodiment of the present disclosure.

[0032] Referring to FIG. 1A, a system 100 configured for pitched roof design automation bycreating the complete three-dimensional (3D) layout using two-dimensional (2D) boundaries of the house and placing the panels in the optimized layout. The system 100 can further be used to optimize panel placement for mixed-orientation such as landscape and portrait or different types of panels such as traditional solar panels or building-integrated photovoltaic (PV) tiles. The system 100 can maximize the number of solar panels to be placed on the surface. The potential comparison between the different PV installation types and finding the optimum layout of structures and PV tiles reduces the time and effort required to build the site. It incorporates creating the pitched roof using a different algorithm and comparing different panel installationtypes post-panel placement for complete automation.

[0033] Solar panels, also known as PV panels, may be installed as part of a system for capturing and storing energy from a light source using solar cells. Solar panel installations may include multiple different components, such as, for example, frames, inverters, batteries and the like. Solar panels encased in a frame may be attached using the hook and loop material directly to the roof system structure, or to an intermediate structure, which is in turn attached to the roof system surface.

[0034] The creation of solar plant design on the pitched roof is difficult due to the complexity involved in roof structure design and various obstacles on the rooftop. The proposed system creates the three-dimensional (3D) layout from the two-dimensional (2D) boundary. The solar panel placement needs to be optimized with respect to the shadow from obstacles. The system also suggests the building-integrated system for use of PV tiles vs building applied systems with standard solar panels with structures. In the case of PV tiles, the system also suggests the location of power tiles for easy access and maintenance. The system 100 hence automates the complete solar plant design process on pitched roofs.

[0035] For the creation of the pitched roof, a slightly different variation from straight skeleton method is proposed. The straight skeleton is a method of representing a polygon by a topological skeleton. It is similar in some ways to the medial axis but differs in that the skeleton is composed of straight-line segments, while the medial axis of a polygon may involve parabolic curves. However, both are homotopy-equivalent to the underlying polygon. After getting the straight skeleton, the 3D coordinates are calculated using the pitch of the roof. All faces of the roof can have different tilts, which is also considered.

[0036] The system 100 for creating the pitched roof includes a computing device 102 that computes 3D coordinates for the pitched roof which corresponds to the skeleton structure of the roof and displays the 3D coordinates for the pitched roof to the user. The system 100 creates the pitched roof using a different algorithm and compares different panel installation types post-panel placement for complete automation.

[0037] For panel placement, the computing devicel02 is configured to use a combination of the intersection of lines in 2Dand then finding the coordinates in 3D for a given area considering the tilt and azimuths of the roof and panel if they are different. Two lines for each row are created and the intersection of those lines is determinedby the boundary of the subarray (the area in which panels need to be placed) and the obstacles. Then the panels are placed with inter-panel spacing in 2D. This process is iterated over many times with some offset in each iteration and the iteration with the maximum number of panels is selected. The 2D coordinates are then converted to 3D coordinates on which the panels are placed.

[0038] Post panel placement, the system takes into consideration the roof conditions and the optimized panel layout to compare and suggest the different installation methods on the rooftop and provide an automated location for key components like power tiles or structure placement.

[0039] The system 100 may be implemented as an application on a server 106, it may be understood that the system 100 may be accessed by multiple users through computing devices 102, such as a laptop computer, a desktop computer, a notebook, a workstation and the like. A software tool residing in the computing device 102 having a user interface for designing and selecting solar panel layouts. The associated user interfaces may be provided for creating solar panel layouts on pitched roofs, land and/or physical structures at a location. The user interfaces as illustrated in FIG. IB potentially may be provided including a graphical representation of the location and any structures at the location, and including multiple user options for designing the solar panel layouts at the location based on the retrieved information and other factors.

[0040] The user interface can display the representation of the physical structure at the location and provide through the user interface user options for designing the solar panel layout for the physical structure, where the user options are based on the retrieved information corresponding to the physical structure at the location. Determining solar panel placement enables sales representatives and homeowners to modify a solar power system by adding solar panels or arrays of solar panels, or changing module type. The user may view the corresponding solar energy production update instantlyin the user interface. Determining solar panel placement includes receiving data corresponding to an installation location.

[0041] The system 100 may have a processor 202 for controlling overall operation of server and its associated components, including random access memory (RAM), read-only memory (ROM), input/output (VO) module and memory 204 as illustrated in FIG. 2. Server may be configured to communicate with the computing device 102, for example, by providing software services e.g., including user interfaces and receiving and processing the instructions received/entered by the users.

[0042] In an embodiment, I/O module may include a microphone, mouse, keypad, touch screen, scanner, optical reader, and/or stylus (or other input device(s)) through which a user of computing device may provide input, and may also include one or more of a speaker for providing audio output and a video display device for providing textual, audio visual, and/or graphical output. Software may be stored within memory and/or other storage to provide instructions to processor for enabling computing device to perform various functions. For example, memory may store software used by the computing device, such as an operating system, application programs, and an associated database. Alternatively, some or all of the computer executable instructions for computing device may be embodied in hardware or firmware.

[0043] The computing device 102is coupled to the server 106 through a network 104. The network 104 can be a wireless network, a wired network or a combination thereof. The network 104 can be implemented as one of the different types of networks, such as intranet, local area network (LAN), wide area network (WAN), the internet, and the like. Further, the network may either be a dedicated network or a shared network. The shared network represents an association of the different types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), Wireless Application Protocol (WAP), and the like, to communicate with one another. Further the network can include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, and the like. In another implementation the network can be cellular network or mobile communication network based on various technologies, including but not limited to, Global System for Mobile (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Long Term Evolution (LTE), WiMAX, and the like.

[0044] The system can be used in a wide range of applications that are as follows:

• Mobile application for solar site survey: The mobile application for complete PV system design using satellite data. This is useful for sales executives for giving demos for more accurate estimates of savings and generation from a potential solar plant on the go.

• Simulations for microinverter, stringing inverter and central inverter combined: Current systems do not do simulations for systems with different types of inverters in a single site. The proposed system provides flexibility to design a site using different types of inverters and can analyze the performance of each one of them. This can be modelled into a recommendation system that recommends the type of inverter and their comparison on economical and power generation terms or a hybrid combination of different systems. This may be useful with sites with partial shading on some parts of the surface.

• Battery size estimation based on demographic and solar plant size: An estimate of battery size required for a site based on their demographic e.g., a house with a family of 4 members, shopping mall, school building and the like is provided, and the solar plant size can be planned based on the self-sufficiency and grid reliability requirements.

[0045] The embodiments of the present disclosure described above provide several advantages. The one or more of the embodiments provides a method for optimum panel placement layout and improves the overall solar rooftop potential of the solar plant. The present disclosure provides the system that automates the complete solar panel design process on pitched roofs.

[0046] FIG. 2 illustrates an exemplary functional component of the system, according to an embodiment of the present disclosure.

[0047] In an aspect, the system 100 may comprise one or more processor(s) 202. The one or more processor(s) 202 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, logic circuitries, and/or any devices that manipulate data based on operational instructions. Among other capabilities, the one or more processor(s) 202 are configured to fetch and execute computer-readable instructions stored in a memory 204 of the system 100. The memory 204 may store one or more computer-readable instructions or routines, which may be fetched and executed to create or share the data units over a network service. The memory 204 may comprise any non-transitory storage device including, for example, volatile memory such as RAM, or non-volatile memory such as EPROM, flash memory, and the like.

[0048] The system 100 may also comprise an interface(s) 206. The interface(s) 206 may comprise a variety of interfaces, for example, interfaces for data input and output devices, referred to as VO devices, storage devices, and the like. The interface(s) 206 may facilitate communication of system 100. The interface(s) 206 may also provide a communication pathway for one or more components of the system 100. Examples of such components include, but are not limited to, processing engine(s) 208 and database 210. [0049] The processing engine(s) 208 may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processing engine(s) 208. In examples described herein, such combinations of hardware and programming may be implemented in several different ways. For example, the programming for the processing engine(s) 208 may be processor executable instructions stored on a non-transitory machine-readable storage medium and the hardware for the processing engine(s) 208 may comprise a processing resource (for example, one or more processors), to execute such instructions. In the present examples, the machine -readable storage medium may store instructions that, when executed by the processing resource, implement the processing engine(s) 208. In such examples, the system 100 may comprise the machine-readable storage medium storing the instructions and the processing resource to execute the instructions, or the machine-readable storage medium may be separate but accessible to system 100 and the processing resource. In other examples, the processing engine(s) 208 may be implemented by electronic circuitry. The processing engine(s) 208 may include a creation engine 212.

[0050] The database 210 may comprise data that is either stored or generated as a result of functionalities implemented by any of the components of the processing engine(s) 208 or the system 100.

[0051] FIG. 3 illustrates an exemplary method for pitched roof design automation, according to an embodiment of the present disclosure.

[0052] Referring the FIG. 3, the method 300 can be implemented using the computing device 102, which can include one or more processors and user interface. The proposed system creates the three-dimensional (3D) layout from the two-dimensional (2D) boundary. The solar panel placement needs to be optimized with respect to the shadow from obstacles. The system also suggests the building-integrated system for use of PV tiles vs building applied systems with standard solar panels with structures. In the case of PV tiles, the system also suggests the location of power tiles for easy access and maintenance. The system 100 hence automates the complete solar plant design process on pitched roofs.

[0053] The method 300 incudes, at block 302, the computing device 102 can use a combination of line of intersection of lines in two-dimensional (2D).

[0054] At block 304, the computing device 102 can then determine the coordinates in three-dimensional (3D) for a given area considering the tilt and azimuths of roof and panel.

[0055] At block 306, the computing device 102 can create two lines for each row and find the intersection of those lines with the boundary of the subarray and the obstacles. [0056] At block 308, the computing device 102 can place the panels with inter panel spacing in 2D. At block 310, the computing device 102 can perform iterations many times with some offset in each iteration and select iteration with a maximum number of panels.

[0057] At block 312, the computing device can convert 2D coordinates to 3D coordinates on which the panels are placed. Post panel placement, the system takes into consideration the roof conditions and the optimized panel layout to compare and suggest the different installation methods on the rooftop and provide an automated location for key components like power tiles or structure placement.

[0058] FIG. 4 illustrates an exemplary computer system in which or with which embodiments of the present invention can be utilized in accordance with embodiments of the present disclosure.

[0059] As shown in FIG. 4, computer system 400 includes an external storage device 410, a bus 420, a main memory 430, a read only memory 440, a mass storage device 450, communication port 460, and a processor 470. A person skilled in the art will appreciate that computer system may include more than one processor and communication ports. Examples of processor 470 include, but are not limited to, an Intel® Itanium® or Itanium 2 processor(s), or AMD® Opteron® or Athlon MP® processor(s), Motorola® lines of processors, FortiSOC™ system on a chip processors or other future processors. Processor 470 may include various units associated with embodiments of the present invention. Communication port 460 can be any of an RS -232 port for use with a modem-based dialup connection, a 10/100 Ethernet port, a Gigabit or 10 Gigabit port using copper or fibre, a serial port, a parallel port, or other existing or future ports. Communication port 460 may be chosen depending on a network, such a Local Area Network (LAN), Wide Area Network (WAN), or any network to which computer system connects.

[0060] Memory 430 can be Random Access Memory (RAM), or any other dynamic storage device commonly known in the art. Read only memory 440 can be any static storage device(s) e.g., but not limited to, a Programmable Read Only Memory (PROM) chips for storing static information e.g., start-up or BIOS instructions for processor 470. Mass storage 450 may be any current or future mass storage solution, which can be used to store information and/or instructions. Exemplary mass storage solutions include, but are not limited to, Parallel Advanced Technology Attachment (PATA) or Serial Advanced Technology Attachment (SATA) hard disk drives or solid-state drives (internal or external, e.g., having Universal Serial Bus (USB) and/or Firewire interfaces), e.g. those available from Seagate (e.g., the Seagate Barracuda 7200 family) or Hitachi (e.g., the Hitachi Deskstar 7K1000), one or more optical discs, Redundant Array of Independent Disks (RAID) storage, e.g. an array of disks (e.g., SATA arrays), available from various vendors including Dot Hill Systems Corp., LaCie, Nexsan Technologies, Inc. and Enhance Technology, Inc.

[0061] Bus 420 communicatively couples processor(s) 470 with the other memory, storage, and communication blocks. Bus 420 can be, e.g. a Peripheral Component Interconnect (PCI) / PCI Extended (PCI-X) bus, Small Computer System Interface (SCSI), USB or the like, for connecting expansion cards, drives and other subsystems as well as other buses, such a front side bus (FSB), which connects processor 470 to software system.

[0062] Optionally, operator and administrative interfaces, e.g. a display, keyboard, and a cursor control device, may also be coupled to bus 420 to support direct operator interaction with computer system. Other operator and administrative interfaces can be provided through network connections connected through communication port 460. External storage device 410 can be any kind of external hard-drives, floppy drives, IOMEGA® Zip Drives, Compact Disc - Read Only Memory (CD-ROM), Compact Disc - Re -Writable (CD-RW), Digital Video Disk - Read Only Memory (DVD-ROM). Components described above are meant only to exemplify various possibilities. In no way should the aforementioned exemplary computer system limit the scope of the present disclosure.

[0063] As described above in relation to FIGS. IB, the user interface for optimizing solar panel placement according to one or more aspects of the exemplary disclosures. The user interface can include a selected solar panel, an array of solar panels, solar panel type and the likes. The user interface may allow the user to modify the solar panel configuration, as well as adding one or more additional sets of solar panels on the image. The user interface may also allow the user to save, reopen, modify, and delete previously created solar panel layout designs. Additionally, after the user has completed the solar panel layout, the user interface may allow the user to submit the completed layout to the server, and retrieve and print any applicable forms.

[0064] FIG. 5 illustrates an exemplary method for creating three-dimensional (3D) layout from two-dimensional (2D) boundary, according to an embodiment of the present disclosure.

[0065] Referring to FIG.5, the method 500 at block 502, the processor can receive a set of data of one or more obstacles and target surface. At block 504, the processor can determine a combination of the intersection of lines in the 2D coordinates for one or more obstacles and the target surface, wherein at least two lines for each row of a plurality of rows of the target surface is created and the intersection of the at least two lines with the boundary of the target surface and the one or more obstacles are determined.

[0066] At block 506, the processor can determine 3D coordinates for a given area of the target surface by considering the tilt and azimuth angle of the target surface and a plurality of solar panels. At block 508, the processor can place the plurality of solar panels with interpanel spacing in the 2D coordinates by performing iterations multiple times with a predefined offset in each iteration and select the iteration with maximum number of solar panels.

[0067] At block 510, the processor can convert the 2D coordinates of the target surface into the 3D coordinates for the optimal placement of the plurality of solar panels on the target surface.

[0068] According to one or more aspects, a satellite image may be retrieved for the location from a database and used in the user interface to allow users to design the solar panel layout on the land and/or physical structures at the location. The satellite image may be directionally oriented and/or labeled within the user interface to allow users to take sun angles and other directional factors into consideration.

[0069] Exemplary embodiments will now be described more fully hereinafter with reference to the accompanying drawings, in which exemplary embodiments are shown. These exemplary embodiments are provided only for illustrative purposes and so that this disclosure will be thorough and complete and will fully convey the scope of the invention to those of ordinary skill in the art. The invention disclosed may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Various modifications will be readily apparent to persons skilled in the art. The general principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the invention. Moreover, all statements herein reciting embodiments of the invention, as well as specific examples thereof, are intended to encompass both structural and functional equivalents thereof. Additionally, it is intended that such equivalents include both currently known equivalents as well as equivalents developed in the future (i.e., any elements developed that perform the same function, regardless of structure). Also, the terminology and phraseology used is for the purpose of describing exemplary embodiments and should not be considered limiting. Thus, the present invention is to be accorded the widest scope encompassing numerous alternatives, modifications and equivalents consistent with the principles and features disclosed. For purpose of clarity, details relating to technical material that is known in the technical fields related to the invention have not been described in detail so as not to unnecessarily obscure the present invention.

[0070] Thus, for example, it will be appreciated by those of ordinary skill in the art that the diagrams, schematics, illustrations, and the like represent conceptual views or processes illustrating systems and methods embodying this invention. The functions of the various elements shown in the figures may be provided through the use of dedicated hardware as well as hardware capable of executing associated software. Similarly, any switches shown in the figures are conceptual only. Their function may be carried out through the operation of program logic, through dedicated logic, through the interaction of program control and dedicated logic, or even manually, the particular technique being selectable by the entity implementing this invention. Those of ordinary skill in the art further understand that the exemplary hardware, software, processes, methods, and/or operating systems described herein are for illustrative purposes and, thus, are not intended to be limited to any particular named element.

[0071] Embodiments of the present invention may be provided as a computer program product, which may include a machine-readable storage medium tangibly embodying thereon instructions, which may be used to program a computer (or other electronic devices) to perform a process. The term “machine-readable storage medium” or “computer-readable storage medium” includes, but is not limited to, fixed (hard) drives, magnetic tape, floppy diskettes, optical disks, compact disc read-only memories (CD-ROMs), and magneto-optical disks, semiconductor memories, such as ROMs, PROMs, random access memories (RAMs), programmable read-only memories (PROMs), erasable PROMs (EPROMs), electrically erasable PROMs (EEPROMs), flash memory, magnetic or optical cards, or other type of media/machine-readable medium suitable for storing electronic instructions (e.g., computer programming code, such as software or firmware). A machine-readable medium may include a non-transitory medium in which data may be stored and that does not include carrier waves and/or transitory electronic signals propagating wirelessly or over wired connections. Examples of a non-transitory medium may include, but are not limited to, a magnetic disk or tape, optical storage media such as compact disk (CD) or digital versatile disk (DVD), flash memory, memory or memory devices. A computer-program product may include code and/or machine-executable instructions that may represent a procedure, a function, a subprogram, a program, a routine, a subroutine, a module, a software package, a class, or any combination of instructions, data structures, or program statements. A code segment may be coupled to another code segment or a hardware circuit by passing and/or receiving information, data, arguments, parameters, or memory contents. Information, arguments, parameters, data, etc. may be passed, forwarded, or transmitted via any suitable means including memory sharing, message passing, token passing, network transmission, etc.

[0072] Furthermore, embodiments may be implemented by hardware, software, firmware, middleware, microcode, hardware description languages, or any combination thereof. When implemented in software, firmware, middleware or microcode, the program code or code segments to perform the necessary tasks (e.g., a computer-program product) may be stored in a machine -readable medium. A processor(s) may perform the necessary tasks.

[0073] Systems depicted in some of the figures may be provided in various configurations. In some embodiments, the systems may be configured as a distributed system where one or more components of the system are distributed across one or more networks in a cloud computing system.

[0074] It should be apparent to those skilled in the art that many more modifications besides those already described are possible without departing from the inventive concepts herein. The inventive subject matter, therefore, is not to be restricted except in the spirit of the appended claims. Moreover, in interpreting both the specification and the claims, all terms should be interpreted in the broadest possible manner consistent with the context. In particular, the terms “comprises” and “comprising” should be interpreted as referring to elements, components, or steps in a non-exclusive manner, indicating that the referenced elements, components, or steps may be present, or utilized, or combined with other elements, components, or steps that are not expressly referenced. Where the specification claims refer to at least one of something selected from the group consisting of A, B, C . . . . and N, the text should be interpreted as requiring only one element from the group, not A plus N, or B plus N, etc.

[0075] It will be apparent to those skilled in the art that the system 100 of the disclosure may be provided using some or all the mentioned features and components without departing from the scope of the present disclosure. While various embodiments of the present disclosure have been illustrated and described herein, it will be clear that the disclosure is not limited to these embodiments only. Numerous modifications, changes, variations, substitutions, and equivalents will be apparent to those skilled in the art, without departing from the spirit and scope of the disclosure, as described in the claims. ADVANTAGES OF THE PRESENT DISCLOSURE

[0076] The present disclosure provides a system that enables optimum panel placement layout.

[0077] The present disclosure provides a system that improves the overall solar rooftop potential of the plant.

[0078] The present disclosure provides a system that enables efficient placing of panels to achieve the most number of placeable panels.

[0079] The present disclosure provides a system that automates complete solar panel design process on pitched roofs.