Economic Dispatch of Combined-Cycle Generators May06-07 Client: MidAmerican Energy Company Alan Oneal Faculty Advisors: Dr. John Lamont Students: Matthew Ellis, EE Noraima Fernandez, EE Jeremy Hamilton, EE Robert Walter, EE Presentation Overview Background Material Previous Teams’ Contributions Project Team Goals Main Menu Overall Structure Unit Commitment Output Data Time Permitting Work Conclusion/Questions Usability Acknowledgements The senior design project team would like to acknowledge: Alan Oneal of MidAmerican Energy as our client contact for the project Dr. Lamont for advising and overseeing the project Overall Project Idea To incorporate combined-cycle generator units into the current power system to meet peak load emergency To solve for economic dispatch of monotonic and non-monotonic units, providing the least cost solution Monotonic(MU)→ ←Non-Monotonic (NMU) General Problem Statement The project involves: modification of an algorithm incorporated into Microsoft Excel macros offering a low-cost and time efficient solution in meeting power demand use of monotonic and non-monotonic generation systems to provide more cost effective generation dispatch combinations Initial Project Work 1/5 What’s already been accomplished by prior teams…. Overview Data Loading and Verification User specified Excel fields are read into a corresponding VB data array Data is checked to assure it’s in the correct format and none is missing If data is incorrect an error window pops into the screen and a log is produced Initial Project Work 2/5 Algorithm (How does it work?) 1. MW vs. IHR and I/O are used to calculate A, B, and C coefficients relating each generator’s power and cost Fuel = Ax2 + Bx + C x = Power (MW) dF/dX = IHR = 2Ax + B Initial Project Work 2. 3/5 Monotonic vs. Non-Monotonic? i. 3. A < 0 = Non-Monotonic! If NMU i. ii. iii. 4. Determines 7th order coefficients that relates CT to HRSG output Uses regression and Solver add-in to solve for each coefficient Makes a NMU table relating power to cost for every NMU generator If MU i. Makes a MU table relating power to cost for every MU generator Initial Project Work 5. 4/5 Consolidation i. ii. iii. 6. Reads in Unit Commitment Table For every hour all dispatchable NMU generators are consolidated into a master NMU power vs. cost table For every hour all dispatchable MU generators are consolidated into a master MU power vs. cost table Solution i. ii. For a desired power output, the program loops through the master MU and NMU tables and finds the least cost solution Goes into each MU and NMU table and loads each individual power and cost given the master’s power and cost Initial Project Work 5/5 Client’s Conclusion The algorithm and program are working correctly and efficiently; however, are extremely confusing to use. General Solution Approach The project team will modify the existing software to increase the usability in 4 main areas Main Menu Overall Structure Unit Commitment Output Main Menu Prior Groups’ Main Menu 1/6 Main Menu 2/6 Client’s Comments on Existing Menu Extremely Confusing Didn’t understand what output options meant Didn’t understand what format data outside the menu had to be in Couldn’t find the appropriate places in the workbook to input data Main Menu 3/6 New Main Menu Step by Step like a brief instruction manual Every User Specified Worksheet (data the user can change) will have a step dedicated to it. Each step will include: Output Options Description of the worksheet How to change the data Acceptable data/data format A hyperlink to the appropriate worksheet A hyperlink to more detail instructions if desired Each option will have brief description Scroll Down Lists Visually Appealing Format Troubleshooting Links Main Menu Structure 4/6 Main Menu 5/? Overall Code Structure 1/5 Client Requests Have the ability to enter a start and end hour (1-168) Find solutions for only a range of hours specified Overall Code Structure 2/5 Dispatching only a range of hours Code must be completely ran once Visual Basic Modifications: A completely different set of modules will be written (many won’t have to change168) Any data set that doesn’t change will not be re-read in (stored in memory) Unit-Commitment and Gen Limits will only be read in for user specified hours Algorithm will only dispatch user specified hours Overall Code Structure 3/5 Secondary Menu Will mimic the Main Menu; however common instructions are more vague Increased Number of User Options Start/Stop Hours in Scroll Down lists Unit Commitment, Gen Limits, CT vs. HRSG, etc. data changed? Set existing unit commitment to default? Opposite Color Scheme Main Menu 6/? Main Menu 6/? Unit Commitment Page 1/9 Client’s Comments on Unit Commitment page Should have statistics on top of page Doesn’t allow changes in current configuration Should be able to reset to default commitment pattern Should consider a number < 0 or a blank to mean the unit is not available Should check any changes made to ensure that generators up and down times are not violated Unit Commitment Page 2/9 Existing Unit Commitment Page will updated to include the following features: Calculate the following statistics per hour for a given unit commitment pattern: Maximum generation capability Reserve Generation requirement Foot room Minimum generation requirement Unit Commitment Page 3/9 Definitions… Maximum generation capability = The sum of all committed units’ maximum generation capability Reserve = The maximum generation capability minus the load requirement Generation requirement = The total required load Foot room = The generation requirement minus the minimum generation capability Minimum generation capability = The sum of all committed units’ minimum generation capability Unit Commitment Page 4/9 The calculations for the statistics will be made by the following: IF statements will be used within the Excel worksheet The IF statement checks the status of each generator for the given hour If the generator has a blank or zero, the generator is considered off/unavailable If the generator has a one then it is considered on/available and ready for dispatch The IF statement then calculates the statistics based on the status of the generators Unit Commitment Page 5/9 The Updated Unit Commitment Page Unit Commitment Page 6/9 If < 0 or a blank treat as a zero (i.e. not available) The above change will be made within the visual basic code that loads in the unit commitment data Master reset button, that loads the default unit commitment pattern from a separate worksheet The reset button is written in a separate macro which allows a reset of the Unit Commitment table at any given time Unit Commitment Page 7/9 Unit Commitment Page 8/9 A up and down time checker for any given Unit Commitment pattern The unit commitment checker will be written in a separate visual basic macro The macro can be ran after each change made to the unit commitment pattern Any violations of up or down times for the generators will be noted within the unit commitment table in orange Unit Commitment Page 9/9 Output Page 1/5 Output Page 2/5 Client’s Comments on Existing Output Sheet Move statistical data to top of output Separate output tables Replace zeros with blanks Remove units that are not committed Insert linear hour Output Page 3/5 Output Page 4/5 Output Page 5/5 Time Permitting/Future Work Graphs consisting of the following data: Weekly loading, weekly generation per generator and weekly generation for the entire system Weekly fuel usage for each generator and fuel usage for the entire system Weekly cost of operation for each generator and cost of operation for the entire system Possible implementation of a faster solution algorithm Conclusion The project team will modify a software application that will seek to produce the most economical power distribution, with quick solution times, between monotonically and nonmonotonically increasing generators. Questions? Excel
© Copyright 2026 Paperzz