220 likes | 363 Views
Team # 6 December 03, 2009. Solar Power Plant Real Time Simulation/ Visualization (sponsored by tietronix software inc.). Mentors: Michel Izygon - Michel.Izygon@tietronix.com Peter Armstrong - Peter.Armstrong-1@tietronix.com Insia Iftiqhar - Insia.Iftiqhar@tietronix.com
E N D
Team # 6 December 03, 2009 Solar Power Plant Real Time Simulation/ Visualization(sponsored by tietronix software inc.)
Mentors: • Michel Izygon - Michel.Izygon@tietronix.com • Peter Armstrong - Peter.Armstrong-1@tietronix.com • InsiaIftiqhar - Insia.Iftiqhar@tietronix.com • Claus Nilsson - Claus.Nilsson@tietronix.com • Team members: • Ngoc Vu - vnngoc156@yahoo.com • Hai Tran - tranh67276@uhcl.edu • Hai Nguyen - nngochai@yahoo.com • Tuan Le - hoangdieu_vietnam@yahoo.com Capstone Project Fall 2009 - Team 6 Mentors AND TEAM INFORMATION
Introduction • Project Requirements • Applied Technologies • Current Results • Future Works • Program Demo • References Capstone Project Fall 2009 - Team 6 Table of Contents
Capstone Project Fall 2009 - Team 6 PROJECT Introduction Solar Power Thermal Plant
Develop a photo-realistic 3D simulation of a solar power plant Render shadows of heliostats and towers Viewable from any perspectives Accurately model the motion of the sun and heliostats Update simulation faster than in real-time Capstone Project Fall 2009 - Team 6 RequirementS
The sunlight to a heliostat is blocked by front heliostats. Capstone Project Fall 2009 - Team 6 shading
OpenGL • Open Graphics Library • Support rendering 3D simulation • CUDA • General purpose parallel computing architecture developed by NVIDIA • Improve program performance Capstone Project Fall 2009 - Team 6 Applied Technologies
Mathematical mechanism • Specifies all the vertices of the shadow area • Requires much of GPU computations • Stencil Shadow Volume • Not specifies the vertices of the shadow area • Requires less computations on GPU • Making use of OpenGL Capstone Project Fall 2009 - Team 6 Applied Mechanisms for shading
Capstone Project Fall 2009 - Team 6 SIMPLE PROGRAM FLOW Heliostats' center coordinate Render heliostats (4 vertices) Calculate vertices Thermal Plant Configuration • Tower location • Time and date • Heliostat’s width and height • … CUDA OPENGL Render shadows Shadow Volume
Capstone Project Fall 2009 - Team 6 OpenGL Thermal Plant Configuration Heliostat 1 V1 V2 V3 V4 • Tower location • Time and date • Heliostat’s width and height • … Heliostat 2 V1 V2 V3 V4 Heliostat 3 Heliostats’ center coordinate OPENGL V1 V2 V3 V4 …. …. Heliostat n V1 V2 V3 V4
Capstone Project Fall 2009 - Team 6 CUDA Thermal Plant Configuration Heliostat 1 V1 V2 V3 V4 Thread 1 • Tower location • Time and date • Heliostat’s width and height • … Heliostat 2 V1 V2 V3 V4 Thread 2 Heliostat 3 OPENGL V1 V2 V3 V4 Heliostats’ center coordinate Thread 3 …. …. Heliostat n V1 V2 V3 V4 Thread n CUDA
Capstone Project Fall 2009 - Team 6 Stencil shadow volume
Capstone Project Fall 2009 - Team 6 Stencil Shadow volume (cont.)
Capstone Project Fall 2009 - Team 6 Program flow
Capstone Project Fall 2009 - Team 6 PROGRAM Demo
Inaccurate sun position calculation • Difficulties in implementation of shadow casting • Complex shading and blocking computation • Inaccurate shadow mapping technique • Shadow volume technique itself Capstone Project Fall 2009 - Team 6 Difficulties encountered
Rendering heliostats, tower and receiver Shadows of basic objects such as heliostats, tower, and receiver Flexible camera position Parameter customization Frame rate: 14 ~ 17 fps Simulation clock with highest visualization speed of 32x Capstone Project Fall 2009 - Team 6 Current results
Apply texture on ground Render sky dome Render blocking Environment reflection on heliostats Performance improvement Apply mathematical computation of shading and blocking Capstone Project Fall 2009 - Team 6 Future Works
OpenGL SuperBible, 4th Edition (Addison Wesley, 2007) OpenGL Programming Guide. The Official Guide to Learning OpenGL Version 2.1. 6th edition (2007) An Introduction to Graphics Programming with OpenGL (Toby Howard) NVIDIA CUDA Programming Guide 2.3 Capstone Project Fall 2009 - Team 6 References
General purpose parallel computing architecture developed by NVIDIA Capstone Project Fall 2009 - Team 6 CUDA (Compute Unified Device Architecture)