第一篇:能量管理系統
微電網能量管理系統 微電網的典型結構
能量管理系統饋線AS3S4S5S6S2微型燃氣輪機光伏電池饋線BS1電網監控器S7S8S9S10S11大電網PCC饋線C蓄電池組微型燃氣輪機功率&電壓控制器隔離開關斷路器敏感負荷一般負荷電力傳輸線信息流線
圖1 微電網結構圖
圖1為微電網的結構圖[1][2],它通過隔離變壓器、靜態開關和大電網相連接。微電網中絕大部分的微電源都采用電力電子變換器和負載相連接,使其控制靈活。微電網內部有三條饋線,其中饋線A和B上連接有敏感負荷和一般負荷,根據用電負荷的不同需求情況,微電源安裝在饋線上的不同位置,而沒有集中安裝在公共饋線處,這種接入形式可以減少線路損耗和提供饋線末端電壓支撐。饋線C上接入一般負荷,沒有安裝專門的微電源,而直接由電網供電。每個微電源出口處都配有斷路器,同時具備功率和電壓控制器,在能量管理系統的控制下,調整各自功率輸出以調節饋線潮流。當監測到大電網出現電壓擾動等電能質量問題或供電中斷時,隔離開關S1動作,微電網轉入孤島運行模式,以保證微電網內重要敏感負荷的不間斷供電,同時各微電源在能量管理系統的的控制下,調整功率輸出,保證微電網正常運行。對于饋線A、B、C上的一般負荷,系統則會根據微電網功率平衡的需求,將其切除。負荷分類、要求及接入設備功能
2.1 負荷分類與要求 根據負荷對電力需求的特性可將負荷分為基本兩大類[3]:
敏感負荷:對這一級負荷斷電,將造成人身事故、設備損壞,將生產廢品,使生產秩序 長期不能恢復,人民生活發生紊亂等。這是這是敏感負荷中的重要負荷。由于供電中斷會造成大量減產、人民生活會受到較大影響的用戶負荷,這是敏感負荷中的比較重要的負荷。一般負荷(非敏感負荷):敏感負荷以外的屬于一般負荷。可視為一個可控的負荷參與微電網的能量調度,并且在適當的時候(孤網模式時)可中斷其供電,以此確保敏感負荷的正常供電。
要求:敏感負荷。保證不間斷供電以及較高的供電質量。并由獨立電源供電。
非敏感負荷 對供電方式無特殊要求。
2.2 負荷接入設備功能
(1)負荷通斷控制
在正常情況下,敏感負荷與一般負荷均應正常供電,當微電網系統因事故出現功率缺額或運行在孤島模式,應采取切斷一般負荷,確保敏感負荷的正常供電。(2)負荷保護
具有自動跳閘和電動合閘功能,可切斷故障電流,發揮保護作用。(3)微電網功率平衡控制-自動低頻減載[4]
當微電網系統因事故出現功率缺額時,其頻率將隨之急劇下降,自動低頻減載裝置的任務是迅速斷開相應數量的一般負荷,使系統頻率在不低于某一允許值的情況下,達到有功功率的平衡,以確保微電網系統安全運行。(4)負荷監測
提供微電網線路負荷的實時數據包括負荷功率,線路電流情況。對所有線路進行監控,對大負荷及超負荷提供預警和報警信號。微電源分類、特點、工作方式及接入設備功能
3.1 微電源分類與特點[5]
光伏電池無廢氣排放、無化石燃料消耗,采用與建筑物集成在一起的模塊可聯合生產低溫熱能為房間供暖。但輸出的功率由光能決定,因此是斷續的,不能與負荷完全匹配,因此常常需要蓄電池或其他輔助系統。一般光伏電池發電模塊擁有最大功率點跟蹤(MPPT)功能、電池板監測和保護功能、逆變并網等功能,以保證光伏電池能夠可靠、安全地運行。
微型燃氣輪機,具有體積小、質量輕、發電效率高、污染小、運行維護簡單可以統一調度。微型燃氣輪機模塊具有氣體溫度、壓力、流量測量、燃料供給、燃料注入控制、熱量處理、轉速監控,氣體污染物監測、功率調節及并網等功能。具有電力電子轉換和控制接口的微型燃氣輪機可跟隨電網的電壓和頻率變化,主要起負荷跟蹤和削峰填谷的作用。它的另一個作用是完成基本的有功功率控制的同時,可調節系統輸出的無功功率,實現電壓調節和功率因數的調整。因此是目前最成熟、最具有商業競爭力的分布式電源之一。
3.2 微電源典型工作方式
(1)光伏電池具有MPPT和定電壓兩種工作方式。
當工作在MPPT工作方式且無功功率可調時遵循Q-V下垂特性。當工作在定電壓工作方式時遵循P-f下垂特性。
(2)微型燃氣輪機可工作在功率可調的運行方式或定功率的運行方式。
當工作在功率可調的方式時遵循P-f下垂特性和Q-V下垂特性。在此工作方式下,微型燃氣輪機可作為具有自適應調節功能的調節電源,快速跟蹤負荷有功功率和無功功率的變化。
當工作在定功率的方式時按照設定值輸出有功功率和無功功率。
3.3 微電源接入設備功能
由于光伏電池電壓等級低,需采用DC-DC中的Boost電路升壓至合適的電壓等級,然后通過逆變把直流電變換為標準的交流電,供給負荷或并入電網。即經過DC-DC-AC變換接入微電網。并可根據系統穩定運行要求自動切換工作方式的功能。
微型燃氣輪機為不穩定的交流電源,需要先變為直流電,然后通過逆變技術變成標準的交流電,供給負荷或并入電網,即經過AC-DC-AC變換接入微電網。并可根據系統穩定運行要求自動切換工作方式的功能。
3.4 微電源控制功能
微電源的基本控制由微電源控制器完成,主要功能包括微電源自身的調節功能即微電源機組工作方式的切換。能量調節功能包括有功/無功控制、電壓/頻率調節、孤島模式下負荷分配/電壓、頻率調節等。
3.4.1 微電源工作方式的切換
根據微電網負荷用電需求并結合微電源控制策略切換微電源的工作方式。(1)對于光伏電池在MPPT和定電壓模式之間切換。
(2)微型燃氣輪機可工作在定功率與功率可調的模式兩種方式下。在功率可調時可工作低位運行和高位運行兩種方式下。
(3)儲能裝置根據蓄電池的荷電狀況以及此時的負荷是需求,蓄電池可工作在充電模式與放電模式。
3.4.2 能量調節功能
(1)有功功率調節
在并網運行模式時,系統的頻率是固定,微電源發送分配好的有功功率,在孤網運行模式下,通過快速的電力電子裝置,根據P-f下垂特性,調節微電源的輸出有功功率使功率輸出與負荷需求保持平衡。(2)無功功率調節
在并網運行模式下,能量控制器監測負荷和無功的變化,通過儲能裝置進行無功調節,并補償無功,維持系統功率平衡。
在孤網運行模式下,應具備三個功能⑴根據預先設定的Q-V特性阻止末端電壓偏壓;⑵參與特定負荷線路的電壓調整;⑶根據負荷設定的功率因數補償無功。
電壓調節:通過調節微電源電壓的幅值,相角,與系統要求相匹配,而且負荷和微電網的功率因數可得到控制。
功率因數調節:當電動機啟停時負載的功率因數是變化的,可以影響到微電網的電壓穩定。通過調節微電源無功輸出使負載的功率因數保持在預先設定的工作點。對分布式電源的控制除了滿足以上要求外,微電源自身還應具有以下功能:(1)通信功能
接受能量管理系統的調度,同時上傳自身的各種狀態信息。(2)輔助的電能質量改善功能
微電源在自身不對電網造成污染的前提下,能在一定程度上對電網進行諧波抑制和不平衡補償等。(3)保護功能
微電網內部有數量眾多的分布式電源,且它們之間的距離短,這就造成了短路電流的急劇增大,而傳統的繼電保護裝置因時效性難以起到應有的保護作用,嚴重威脅了電力電子設備的安全,所以分布式電源自身必須具備各種可靠的保護功能(如過壓、過流及故障等)。儲能裝置分類、特點、工作方式及接入設備功能 4.1 儲能裝置的分類與特點[5]
鉛酸蓄電池盡管能量密度小,但功率密度高、放電時間長、由于技術成熟性價比高,因此成為當今使用最為廣泛的蓄電池。當蓄電池作為調節電源時,每次調度之前應先檢查蓄電池的剩余容量,若負荷低谷時蓄電池容量已經達到90%以上,則不給蓄電池充電;若剩余容量低于20%則暫時不用蓄電池,將它作為負載進行充電(負荷高峰時不充電)一直到容量達到80%以上為止,否則作為電源參加經濟調度。
4.2 典型工作方式
蓄電池可工作在功率可調的運行方式或定功率的運行方式。當工作在功率可調的方式時遵循P-f下垂特性和Q-V下垂特性。在此工作方式下,蓄電池組可作為具有自適應調節功能的調節電源,快速跟蹤負荷有功功率和無功功率的變化。
當工作在定功率的方式時按照設定值輸出有功功率和無功功率。
4.3 裝置接入設備功能
蓄電池為直流電源,由于他們的電壓等級低,需采用DC-DC中的Boost電路升壓至合適的電壓等級,然后通過逆變把直流電變換為標準的交流電,供給負荷或并入電網。即經過DC-DC-AC變換接入微電網。
蓄電池控制器具有對蓄電池電壓、電流、儲能的監控功能,還有充放電功能和啟停限定功能。蓄電池充電時,能量管理系統主要監視蓄電池的充電狀態、綜合健康度和安全中斷標準。主要監測的參數有:電壓、電流和溫度。當對蓄電池的所有狀態檢查完成后。蓄電池的充電定時器開始啟動。如果檢測到蓄電池超過臨界安全值,則充電暫停,如果故障持續時間超過一定的值,則停止對蓄電池充電。并可根據系統穩定運行要求自動切換工作方式的功能。系統運行目標與策略
5.1 聯網模式下的運行目標與策略
在正常情況下,微電網并網運行,由大電網提供剛性的電壓和頻率支撐,內部微電源工作在電壓源或電流源狀態,在能量管理系統控制下,調整各自的功率輸出。微電網和大電網共同承擔內部負荷。
并網運行時,微電網能量管理的協調方案為:(1)光伏發電一直保持 MPPT模式;
(2)檢測儲能裝置的荷電狀況以確定是否充電。當檢測到蓄電池未充滿時應充電,若充滿就停止充電。能量控制器檢測負荷和無功的變化。在聯網模式時,蓄電池不參與供電。僅通過儲能裝置進行無功調節,并補償無功,維持功率平衡,維持系統穩定的作用。(3)微型燃氣輪機在聯網模式時不參與供電。
(4)微電網能量管理器將增加與各級微電源之間的通信協調工作。
并網運行發生故障時,由于微電源的分布式特性,可由微電源能量管理系統迅速定位故障點位置。當故障點在微電網內部時,由微電網能量管理控制器通過綜合各微電源的信息給出相應調整;當故障點在微電網外部時,通過主網調度中心與各高級調度中心相互通信以確定故障嚴重程度。如超出自身調節能力,相應微電網可選擇與主網斷開,進入孤島運行,這樣可同時保證主網與微電網的安全穩定運行。
5.2 孤島模式下的運行目標與策略[6] [7] [8]
當大電網出現電壓驟升、驟降、不平衡和諧波等電能質量問題或有計劃檢修時,微電網轉入孤島運行模式,此時的電壓和頻率由內部各微電源負責調節。負荷和微電源地投切常用來維持功率平衡以此確保微電網的電壓和相角的恒定。因此控制策略必須確保敏感負荷的正常供電。
微電網能量管理的協調方案為:⑴應切除可中斷負荷確保微電網對敏感負荷的可靠供 4 電,保證敏感負荷的正常工作;⑵光伏發電盡量一直保持MPPT模式(若需要可工作在電壓限制模式);⑶根據儲能裝置的運行狀況,管理微型燃氣輪機的投切和發電容量。當儲能裝置吸收部分能量時,切除部分微型燃氣輪機,當儲能裝置釋放能量時,投入部分微型燃氣輪機來供電;⑷能量控制器檢測負荷和無功的變化,通過微型燃氣輪機或儲能裝置進行P、Q調節,并無功補償,維持功率平衡,保證供電質量。在孤網模式下各微電源協調控制策略:
(1)光伏電池應保持 MPPT模式,當光伏電池輸出大于負荷消耗且蓄電池充滿時,應工作在定電壓模式。
(2)蓄電池儲能為0,光伏輸出持續增加但小于負荷消耗時,蓄電池停止運行。光伏輸出超過微電網負荷消耗,蓄電池未充滿。蓄電池充電。
光伏輸出小于負荷消耗時或光伏輸出為零,蓄電池有儲能,應工作在放電模式。
(3)當光伏輸出超過微電網負荷消耗,應工作在低輸出運行模式。當負荷需求持續增加,光伏電池和蓄電池已不能滿足負荷用電需求,微型燃氣輪機則增加輸出功率。光伏發電結束且儲能裝置儲能為零,則完全由微型燃機輪機供電。
5.3 PCC接入監控設備的功能與要求
微電網PCC的各種狀態信息包括系統電壓、電流、有功、無功、頻率、功率因數等參數以及各個微電源的狀態信息能上傳給能量管理系統,能量管理系統根據這些參數制定控制方案,發布命令。微電網能量管理系統的功能與實現方法
微電網能量管理系統具有數據綜合處理、方案制定、命令發布及與微電網并網功能,主要包括對微電源的控制、儲能裝置管理、負荷管理、來電自動并網、斷電或故障自動進入孤島運行的控制功能等[9]。(1)方案制定、命令發布
經過通信上傳的PCC點,各微電源控制器,斷路器,負荷節點的各種參數,經過綜合數據處理,制定微電源的投切、工作方式切換、功率輸出等調節,斷路器的通斷等控制策略。然后把這些設定值與控制命令發送各調節裝置。維持微電網的正常運行。(2)對微電源的控制功能
根據能量管理系統的控制命令改變微電源的工作方式,并且按照發送的設定值調節微電源的功率輸出。能量管理系統檢測調節電源的輸出特性。當負荷需求增大時,通知微電源增加輸出功率。當負荷需求減少且蓄電池充滿時,則通知微電源減少輸出功率或關閉某些微電源。
(3)儲能裝置的管理
蓄電池充放電與電壓、功率管理 可檢測蓄電的充放電狀態,并且根據系統需求對其進行充放電管理,并能控制儲能裝置的工作方式。以及輸出有功、無功功率,參與有/無功率調節。
(4)負荷管理
根據檢測到的負荷大小分配微電源的出力,保持微電源與負荷之間的平衡,在微電網孤網運行時,切除一般負荷,確保敏感負荷的正常供電。(5)模式切換與通斷控制
當檢測大電網來電時,能自動的將微電網由孤網運行模式過渡到并網運行模式下。當并網后發生故障且故障點在微電網外部時,通過主網與各微電網相互通信以確定故障嚴重程度。如超出自身調節能力,相應微電網可選擇與主網斷開,進入孤島運行。并可實現兩種運行模式的無縫轉換。并根據微電網的工作狀態發布微電源與斷路器邏輯控制控制命令。當滿 5 足投切條件時,能量管理系統通知微電源控制器和各斷路器動作,完成預定的投切操作,以減少或增加輸電線路的功率,確保微電網系統的功率平衡。微電網能量管理系統的組成結構與實現方案
7.1 建立模型
建立了典型的微電網模型,包括微電網的電壓等級、接線方式、運行方式、負荷模型、微電源類型、容量以及位置的確定并建立合適的微電源仿真模型。1.電壓等級:380V/220V 2.接線方式:微電網接線采用放射式接線。運行方式: 并網運行、孤島運行
3.負荷模型:采用恒功率靜態模型來表示饋線上各節點的負荷,同時假設負荷三相對稱。(1)負荷類型:敏感負荷 非敏感負荷(可中斷負荷)
(2)負荷大小 最大負荷:敏感負荷與一般負荷功率需求之和為最大負荷。
最小負荷:取最大負荷的30%為最小負荷。
4.微電源類型: 微型燃氣輪機、光伏電池、儲能裝置(鉛酸蓄電池)。
5.微電源發電容量確定:微電源的額定功率應該與敏感負荷峰值功率需求相匹配。6.微電源位置確定[10]:可選擇在線路中間偏末端的位置。
7.2 微電網能量管理
(1)微電源管理
根據微電網的拓撲結構制定相應的控制策略
在并網模式時,應預先確定微電源的功率輸出值,能量管理系統合理分配設定值給各個微電源。并監控PCC點的電量參數,當出現無功不平衡時,并確定無功補償量,分配這個值于儲能裝置,使儲能裝置發無功,維持系統功率平衡。并根據并網運行模式下微電源協調控制策略投切微電源。
在孤網模式運行時,根據負荷需求確定微電源的功率輸出值,能量管理系統合理分配設定值與各微電源。根據預先設定的VQ特性阻止末端電壓偏壓;參與特定負荷線路的電壓調整;根據負荷設定的功率因數補償無功。通過能量管理系統把這個這分配給調節微電源。維持電壓穩定。能量管理系統根據能量管理控制算法確定設定值,分配給各微電源參與系統的調節,以確保系統的穩定運行。(2)儲能裝置的充放電管理
能量管理系統主要監視蓄電池的充電狀態、綜合健康度和安全中斷標準。按照能量管理系統的控制指令充放電。(3)負荷管理
提供負荷跟跟隨功能,實時檢測負荷大小,在并網模式下,負荷的供電主要由大電網提供。在孤網模式運行時,一般負荷被切除,根據檢測到的負荷大小,分配微電源的出力,保持微電源與負荷之間的平衡。
7.3 能量管理系統通訊與控制功能
微電網能量管理系統具有數據綜合處理、方案制定、命令發布及與微電網并網功能,主要包括對微電源的管理、儲能裝置管理、負荷管理、斷網與并網的控制功能等。各控制器經過通訊線路上傳各自的狀態信息,包括的PCC點電網參數,各微電源輸出特性參數,斷路器通斷狀態,負荷的各種電量參數,經過能量管理系統的綜合數據處理,制定微電源的投切、工作方式切換、功率輸出等調節,斷路器的通斷等控制策略。然后把這些設定值與控制命令發送各調節裝置,維持微電網的正常運行。
7.3.1 上傳信息:(1)PCC點:通過大電網監控裝置上傳大電網的各種參數包括大電網的電壓、頻率、相位角等。在聯網運行模式下,將大電網電壓、頻率與微電網當前電壓和頻率做比較,分析是否同步,如果偏差超過允許范圍將調節儲能裝置和光伏電池的功率輸出,以盡快與大電網同步。
(2)光伏電池功率電壓控制器:上傳光伏電池的工作方式(MPPT/定電壓),輸出電壓、電流、頻率,有功功率、無功功率等參數值。(3)儲能裝置(蓄電池)功率電壓控制器:上傳儲能當前的工作方式、充放電的電壓、電流,輸出時有功功率、無功功率等參數值,荷電狀態等。
(4)微型燃氣輪機功率電壓控制器:上傳微型燃氣輪機的運行狀況(是否投入運行、低位運行、高位運行、)工作方式、輸出電壓、電流、頻率,有功功率、無功功率等參數值。(5)負荷參數:包括負荷的大小,電壓、電流,頻率,功率因數等。(6)各斷路器的通斷狀況。
7.3.2 發送命令:(1)PCC點的信息
在聯網運行模式下,將大電網電壓、頻率與微電網當前電壓和頻率做比較,分析是否同步,如果偏差超過允許范圍能量管理系統計算無功功率補償量,并把這個值傳送給儲能裝置。命令儲能裝置發送無功,維持系統平衡。
當監測到大電網出現電壓擾動等電能質量問題或供電中斷時,通知隔離開關S1動作,微電網轉入孤島運行模式。
當大電網來電時,檢測當前大電網與微電網的電壓、頻率、相位角,若微電網與電網不同步,能量管理系統計大電網與微電網的參數差額,計算出補償量,把這設定值通知給運行中的微電微電網。調節功率輸出,盡快與大電網的同步。(2)光伏電池
1)在聯網運行模式下:能量管理系統通知其一直工作在MPPT方式下。2)在孤網運行模式下:當光伏電池輸出大于負荷消耗且蓄電池充滿時并且儲能裝置充滿時,通知光伏電池控制器改變運行方式,工作在定電壓方式下,否則應一直保持工作在MPPT方式。當光伏電池輸出為0時,通知光伏電池控制器停止運行。(3)儲能裝置
根據負荷需求與荷電狀況確定其充放電與工作方式 1)聯網運行模式時:能量管理系統發送命令與儲能裝置,僅工作在充電的工作方式下,當檢測到儲能裝置未充滿時。蓄電池充電。若充滿,則停止充電。
2)孤網運行模式時:蓄電池儲能為0,光伏輸出持續增加但小于負荷消耗時,蓄電池停止運行。光伏輸出超過微電網負荷消耗,蓄電池未充滿。通知蓄電池控制器工作在充電方式。光伏輸出小于負荷消耗時或光伏輸出為零,并檢測到儲能裝置有儲能,通知儲能裝置放電。當儲能裝置輸出為0時,通知儲能裝置控制器停止運行。(4)微型燃氣輪機
1)在聯網運行模式時,能量管理系統通知微型燃氣輪機不投入運行。2)在孤網運行模式時,當光伏輸出超過微電網負荷消耗,通知微型燃氣輪機工作在低輸出運行模式。當負荷需求持續增加,光伏電池和蓄電池已不能滿足負荷用電需求,微型燃氣輪機則增加輸出功率。當儲能裝置與光伏電池輸出為零時,通知兩個微型燃氣輪機完全供電。
(5)各斷路器的通斷控制
1)在聯網運行模式時,應密切監視個斷路器的通斷,當某條支路或節點電壓、電流過高時,應迅速切斷該支路或節點的斷路器,并發送維修指令,通知維修人員快捷解除故障,7 保障負荷的正常供電。
2)在孤網運行模式時,通知隔離開關S1快速動作斷開與大電網的連接,微電網進入孤網運行模式。斷路器S3、S11動作切斷一般負荷的供電,確保敏感負荷的正常供電。當微電網供電仍不滿足敏感負荷需求時,應將敏感負荷中供電等級較低的較重要敏感負荷切除,通知斷路器S6或S10動作,確保重要敏感負荷的正常供電。(6)負荷的控制
在聯網模式是,確保所有負荷的正常供電。
在孤網模式時,首先將一般負荷切除,確保敏感負荷的供電。
當儲能裝置與光伏電池輸出均為0,且兩微型燃氣輪起完全供電,仍不能滿足負荷需求時,應考慮將敏感負荷中供電優先級較低的負荷切除,命令所在支路的斷路器斷開。保證重要敏感負荷的供電。若系統存在兩個或兩個以上供電等級相同的較重要敏感負荷時,能量管理系統應采集當前較敏感負荷的大小,并結合微電源的運行情況做出判斷,若將較小負荷切除時,不會造成系統的電壓頻率降低,可將較小負荷切除,若會出現電壓、頻率不穩定,須將較大負荷切除。
當某負荷節點的電壓超過允許范圍時,根據無功補償算法,制定無功補償量,并把這個設定值傳送送給調節電源,使其參與電壓調節。
7.4 微電網的突發事故的處理
聯網運行發生故障時,由于微電源的分布式特性,可由微電源能量管理系統迅速定位故障點位置。當故障點在微電網內部時,由微電網能量管理控制器通過綜合各微電源的信息給出相應調整;當故障點在微電網外部時,通過主網調度中心與各高級調度中心相互通信以確定故障嚴重程度。如超出自身調節能力,相應微電網可選擇與主網斷開,進入孤島運行,這樣可同時保證主網與微電網的安全穩定運行。
孤網運行發生故障時,由于微電源的分布式特性,可由微電源能量管理系統迅速定位故障點位置。當故障點在微電網內部時,由微電網能量管理控制器通過綜合各微電源的信息給出相應調整;如超出自身調節能力,相應微電源斷路器可選擇與微電網斷開,微電網相應的拓撲結構發生變化如下圖2。
能量管理系統饋線AS3S4S5S6S2微型燃氣輪機光伏電池饋線BS1電網監控器S7S8S9S10S11大電網PCC饋線C蓄電池組微型燃氣輪機功率&電壓控制器隔離開關斷路器敏感負荷一般負荷電力傳輸線信息流線
圖1 微電網結構圖
1)通知斷路器S2、S7開、S5、S9閉:微電網分割成兩個孤島區域,分別是饋線A中微型汽輪機和光伏電池并聯運行,饋線B中蓄電池組和微型燃氣輪機并聯運行。
2)通知斷路器S2、S7閉、S5、S9開:微電網分割成三個孤島區域,分別是饋線A中微型汽輪機和饋線B中蓄電池組并聯運行,饋線A中光伏電池和饋線B中微型燃氣輪機各自獨立運行,單獨為敏感負荷一對一供電。
3)通知斷路器S2、S7、S9閉、S5開:微電網分割成兩個孤島區域,分別是饋線A中微型汽輪機和饋線B中蓄電池組和微型燃氣輪機并聯運行,饋線A中光伏電池獨立運行,單獨為敏感負荷一對一供電。
4)通知斷路器S2、S5、S7閉、S9開:微電網分割成兩個孤島區域,分別是饋線A中微型汽輪機和光伏電池與饋線B中蓄電池組并聯運行,饋線B中微型燃氣輪機獨立運行,單獨為敏感負荷一對一供電。
5)通知斷路器S2、S5、S7、S9全開:微電網全部解列,4個微源分別獨立運行,單獨為各自的敏感負荷一對一供電。
幾種不同的孤島拓撲結構直接決定了微電網對微電源所采取的控制方法。能量管理系統根據其特定的拓撲結構制定控制策略,并發出警報信號,告知維修人員,盡快解決故障。保證系統安全穩定運行。
幾種不同的孤島拓撲結構直接決定了微電網對微電源所采取的控制方法。能量管理系統根據其特定的拓撲結構制定控制策略,并發出警報信號,告知維修人員,盡快解決故障。保證系統安全穩定運行。
參考文獻
[1] Lasster ,Akhil A , Mmarany C.White paper on integration of distributed energy resources —the CERTS microgrd concept.[2007206201]http://certs.lbl.gov/pdf/LBNL_50829.pdf [2] F.Katiraei, R.Iravani, N.Hatziargyriou, ―Microgrids management,‖ IEEE Power and Energy Magazine, vol.6, no.3, pp.54 –65, May-June 2008 [3] 于永源 楊綺雯.電力系統分析(第二版).北京:中國電力出版社,2004.[4] 楊冠城.電力系統自動裝置原理(第三版).北京:中國電力出版社,2005.[5] 殷桂梁,楊麗君,王珺.分布式發電技術.北京:機械工業出版社,2008.[6] 章健,艾芊,王新剛.多代理系統在微電網中的應用 電力系統及其自動化 2008,32(24).[7] J.P.Lopes,C.Moreira,and A.Madureira,―Defining control strategies for microgrids islanded operation,‖ IEEE Trans.Power System., vol.21, no.2, pp.916–924, May 2006.[8] F.Katiraei, ,M.R.Iravani,“Power Management Strategies for a Microgrid With Multiple Distributed Generation Units” Power Systems, IEEE Transactions on Volume 21, Issue 4, Nov.2006 Page(s):1821 – 1831 [9] D.Kueck, R.H.Staunton, S.D.Labinov, B.J.Kirby Microgrid Energy Management System.[10] 王志群,朱守真等.分布式發電接入位置和注入容量限制的研究 電力系統及其自動 化
學報 2005,17(1)
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄 編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營 郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄 編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營 郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄 編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營 郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄 編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營 郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄 編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
目錄
編者引言瞧,這個人
石滋宜序蒙牛:“心”的經營
郭振璽序“金身”牛根生
第二篇:PDS 6100微電網能量管理系統
國家能源局、國家電網考察PDS 6100
微電網能量管理系統
北極星電力信息化網2012-10-31 9:27:05我要投稿 關鍵詞: SCADA太陽能控制系統DCS 北極星電力軟件網訊:近日,國家能源局黨組成員、副局長劉琦,國家電網公司黨組成員、副總經理舒印彪一行到常州佳訊公司參觀微電網能量管理系統。該系統包括常州開發區2MW太陽能控制系統、天和工業園區10.72MW太陽能控制系統和中心調度控制系統,常州微電網能量管理系統采用了城鄉電網公司PDS6100微電網控制系統,利用就地安裝太陽能清潔能源,以多級微電網架構為支撐、能量管理系統為調度運行基礎,提高了系統的穩定性及運行效率,減少了對環境的污染,具有太陽能預測、負荷預測、微電網電力調度、SCADA監控、電費計量、電能質量監測、視頻監控、WEB發布等多方面功能。
城鄉電網公司總工程師王峰陪同參觀,介紹了本系統的系統架構、功能特點以及性能指標等,并且演示了江蘇省住建部網站如何監測該系統的發電情況。當介紹到國電南自要在該系統增加建設電能質量監測和治理系統時,舒印彪稱贊國電南自是負責任和有實力的公司,參觀的各位領導對該項目的實施表示肯定與欣喜,認為該系統進一步解決了太陽能發電實用性問題,提高了能源利用效率,有利于太陽能電站的運營和維護,為新能源的今后發展起了示范性作用,同時也對系統如何進一步提高能源利用效率提出了建議。
今年以來,城鄉電網公司全面調整專業結構,加大科技創新力度,促進了微電網專業和電能質量專業的迅速發展,為城鄉電網公司實現“雙提升,創一流”,為完成全年目標任務提供了保障。
第三篇:管理能量而非時間
管理能量,而非時間
忙!很多年輕的經理人喜歡把“忙”這個詞掛在嘴邊。如果看他們的時間表,看上去確實很忙——忙得不亦樂乎,加班是家常便飯,甚至損害了他們的健康。很多經理人往往會陷入“忙”的誤區,認為“忙”是事業成功的必要代價,甚至陷入一種“嗜忙”的狀態,一刻都閑不下來——這就是我們通常說的“工作狂”。然而,這種“忙”真的是有效率么?回答這個問題很簡單,把你一天處理的事情紀錄一下,看看那些事情是產生績效的,那么是沒有產生績效的。結果可能會嚇你一跳,很多所謂忙碌的事情,其實產生的績效很低,很多忙碌是沒有價值的。有時候的問題在于,你處理事情的效率太低了,因此只好依靠延長工作時間來解決問題。這兩個誤區沒處理好,就可能導致很多人忙碌不堪而沒有績效了。管理時間是每一個職場人士的必修課,可惜很多人都不及格。首先,管理自己的時間也要有戰略觀念,那就是:你的目標是什么?沒有清晰的目標,從技術層面去談時間管理,很容易滑落到有效率沒效果的誤區。所以,要管理好自己的時間,第一個要問的問題是:我要去往哪里?然后,你的所有時間都應該是為這個目標服務的,這樣的時間管里才有意義。在時間管理這個問題上,《哈佛商業評論》發表過很多時間管理方面的經典文章,其中最經典的兩篇是《誰背上了猴子》和《管理能量,而非時間》。這兩篇文章被重新印刷過很多次,值得每個經理人反復閱讀。看了這兩篇文章,你就知道如何利用好時間,把時間當作你的朋友,而不是把時間塞得滿滿的,把自己搞得筋疲力盡。
在《誰背上了猴子》一篇文章中,關鍵思想在于:你不要什么事情都要做!做那些你不得不做的事情,然后把其他事情更好的授權給他人來做。而在《管理能量,而非時間》一文中,則強調要調整自己的工作和生活習慣,在精力最旺盛的時候處理最重要的事情,保證自己最有工作效率,所謂的“要事第一”。處理好這兩件事情,你就不會覺得那么忙碌了。如何提高個人的工作效率?《哈佛商業評論》最近采訪了工作效能專家——戴維 艾倫和托尼 施瓦茨,他們都強調了提高專注力、排除各種干擾(尤其是電子郵件的干擾)對于提升工作效率的重要性。如何更合理地安排工作,提高工作效率,排遣精神壓力,是每位管理者和員工共同關心的話題。個體的工作效率會在未來影響整個團隊的績效和業績。戴維 艾倫發明了“GTD工作法”——先列出工作清單,逐項推進的效能管理方法。戴維 艾倫認為,影響工作效率的最大阻礙是,人們既沒有明確工作事項,也沒有具體落實,事情就一直縈繞在心頭,造成了巨大的精神壓力,卻沒有進展。因此,最好用記錄的方式,將頭腦中的任務移出來,安排好每一步行動,做到心無掛念,集中精力做好手頭的事情。托尼 施瓦茨則認為,人的能量包括四個基本層面——身體、情緒、思維、精神。他建議人們合理管理自己的能量,在一段時間的高度專注之后,要適當休息,做到能量的平衡。在他看來,工作應當是一段一段的“短跑”,而不是馬拉松似的“長跑”,在緊張工作90分鐘后稍事休息,就能恢復能量,從而保持最佳狀態。
第四篇:養老院管理系統
養老院管理系統一、系統概述
太和養老院管理系統軟件是太和盛世科技有限公司專門針對養老院管理而開發的專業的養老院管理軟件產品,集入住及協議管理、收費管理、生活照料及護理服務管理、老人檔案管理、倉庫管理、人事管理、考勤管理、工資管理、財務管理、辦公自動化、統計分析等管理組件為一體。
通過該系統,養老院可將各職能部門、服務單元以及外部市場連成一個有機整體,進
行快速、高效的信息收集和業務處理,為養老機構的管理和服務提供適時、準確、可靠的決策依據,提高經營管理效能,增強養老機構的核心競爭力。
二、系統功能視圖
三、功能模塊
(一)、基本信息(主要提供系統的基本信息的設定及系統初始化操作、功能主要包括收費類型、民族、學歷、婚姻狀況、護理級別、系統初始化)
(二)、床位管理(主要登記養老院的床位信息、大的方面從那座樓哪個樓層、哪個房間到、哪個床位、主要包括樓房資料、房間資料、床位統計三部分)
1、樓房資料(主要記錄養老院內住房的信息)
2、房間資料,記錄住房的房間信息,包括床位信息
3、床位統計,對床位信息進行統計
(三)倉庫管理,主要對貨品的出入庫進行細致化的管理,主要包括貨品信息,貨品入庫,貨品出庫,貨品庫存,期間入庫統計,期間出庫統計
1、貨品信息,登記貨品的基本信息
2、貨品入庫,登記貨品的入庫信息
3、貨品出庫,記錄貨品的出庫信息
4、貨品庫存,記錄貨品的庫存信息
5、期間入庫統計,對貨品的期間入庫信息進行統計
6、期間出庫統計,對貨品的期間出庫信息進行統計
(四)人事管理,主要對養老院內的人事進行管理,主要功能包括員工信息,員工調動,員工離職,員工請假
(五)老人管理,從老人的入住到,老人退房離開,全面的對老人進行信息管理,主要功能包括老人資料,入住登記,床位安排,轉房登記,外出登記,退房登記
1、老人資料,記錄老人的詳細資料
2、入住登記,對老人的入住情況進行詳細的登記
3、床位安排,對老人的床位進行安排
4、轉房登記,對老人需要轉房的進行登記
5、外出登記,記錄老人的外出情況
6、退房登記,老人退房的記錄情況
(六)費用管理,主要對養老院的財務情況進行登記,系統進行自動扣費用,記錄只需要記錄老人繳費的流水賬,功能主要包括老人財務托管,預交費登記,其它費用,費用支出,員工工資,員工護理統計,期間財務統計,和試住期提醒,交費提醒
(七)接待管理,主要記錄養老院的接待情況,主要功能包括來訪登記,接待登記,老人信息查詢,房間查詢,員工信息查詢
四、系統維護
1、數據備份:通過sqlserver企業管理器,可隨時對當前的數據進行備份操作。
2、數據還原:可選擇以往備份的數據進行還原操作,通過此操作數據將被還原到所備份時期的狀態。
3、修改登錄密碼:當前登錄軟件的用戶可通過此功能修改自己的登錄密碼。管理員可以修改任何用戶的登錄密碼及功能訪問權限。
4、可通過視圖背景設置功能設置自己喜歡的圖片。
五、應用價值
建立一個計費收費管理、接待咨詢管理、老人檔案、人事管理、倉庫管理、統計分析全面
集成、資源共享的信息化管理系統,全面提高經營管理水平。
規范收費管理,實現精準、迅捷的電腦自動化計費、結賬,提高收費工作效率,提升財務
管理質量。加強老人檔案資料和服務項目的管理,提供多角度的在住老人情況分析功能,輔助管理層隨時全方位掌握老人信息,提升服務質量。提高倉庫物品周轉效率,規范倉庫管理運作,降低庫存和運營成本;通過系統的實時的數據統計分析,給管理人員提供全面、準確的、科學的決策依據。
六、適用范圍
養老院管理系統適用于養老院、老年福利院、老年公寓、敬老院、老年康復中心、大型
養老社區等養老機構。
七、系統特點
操作簡單,界面友好:滿足客戶已有的操作習慣;
開放性和擴展性:系統具備很好的靈活性、開放性、擴展性和完備的二次開發能力,以適
應該系統升級和功能擴充維護,便于系統容量的增加、支撐功能的增強以及和其它系統的兼容;
使用可靠:系統核心部件穩定可靠,客戶應用界面采用瀏覽器BS模式,全面提高了系統使用的方便性、可靠性和穩定性;
適用范圍廣,可移植性強:適用于養老院、居家養老、福利院等所有產品系列,而且可以輕松移植到其它產品系列;
強大的統計分析:本系統為軟件系統,可以方便統計服務過程中產生的各種數據,以便進行各種報表分析,為管理者提供便利,為決策者提供依據。
八、選擇太和養老院管理系統軟件的8大理由
1)全流程系統的數據管理
2)十年的行業經驗,最貼近你的需求
3)強大的技術團隊保障業務的定制和開發
4)北京本地化的實施和支持維護
5)詳盡的報表和圖表分析,讓管理者一目了然
6)可選的增強手機APP應用,隨時隨地管理和掌握老人的情況和系統的資料。
7)專業工程師團隊,造就安全、穩定的管理系統
8)支持遠程跨地域管理模式,解決異地管理問題
第五篇:通訊錄管理系統
課 程 設 計 任 務 書
題
目
C語言課程設計
系
(部)
專
業
班
級
學生姓名
學
號
06 月
信息科學與電氣工程學院
計算機科學與技術
計職141
王雪
140819139 日至
07 月
04 日
共
周 指導教師
院
長
2015 年 6月 23日
一、課程設計目的
將理論教學中涉及到的知識點貫穿起來,對不同的數據類型、程序控制結構、數據結構作一比較和總結,結合設計題目進行綜合性應用,對所學知識達到融會貫通的程度。通過課程設計,學生在下述各方面的能力應該得到鍛煉:
(1)進一步鞏固、加深學生所學專業課程《C++程序設計語言》的基本理論知識,理論聯系實際,進一步培養學生綜合分析問題,解決問題的能力。
(2)全面考核學生所掌握的基本理論知識及其實際業務能力,從而達到提高學生素質的最終目的。
(3)利用所學知識,開發小型應用系統,掌握運用C++語言編寫調試應用系統程序,訓練獨立開發應用系統,進行數據處理的綜合能力。
(4)對于給定的設計題目,如何進行分析,理清思路,并給出相應的數學模型。
(5)掌握結構化程序設計方法,熟悉面向對象程序設計方法。(6)熟練掌握C++語言的基本語法,靈活運用各種數據類型。(7)進一步掌握在集成環境下如何調試程序和修改程序。設計功能
錄入聯系人信息(包括姓名、電話號碼、地址等信息);通訊錄管理系統要求實現以下功能:
1、輸入每一位聯系人記錄,將其信息存入文件中。
2、查詢所有聯系人的信息,并按可選的自定義規則進行排序;
3、記錄修改,將修改的記錄信息保存于文件中。設計要求
1、設一個通信錄由以下幾項數據信息構成: 數據項 類型
姓名 字符串
地址 字符串
郵政編碼 字符串
電話號碼 字符串
試為通信錄數據定義類型和定義通信錄變量,實現功能:存取、顯示、刪除記錄、查詢記錄等功能。
2、要求:界面友好,易于操作 總體設計 系統功能模塊圖:
添加:可以添加通訊錄記錄,依次輸入編號、姓名、年齡、電話號碼、通訊地址、電子郵箱等后,會提示是否繼續添加。
顯示:可以以表格形式輸出所有通訊錄里的記錄
刪除:輸入欲刪除的那個人的名字后,會自動刪除他(她)的記錄內容 查詢:可以選擇用姓名、電話、地址三種方式查詢
修改:輸入欲修改的那個人的名字后,再依次輸入編號、姓名、年齡、電話號碼、通訊地址、電子郵箱即可完成修改
保存:,輸入文件名(帶后綴名)后,即可將通訊錄信息保存到文件
課程設計名稱及內容
課程設計名稱:單項選擇題標準化考試系統
設計內容:設計并實現一個單項選擇題標準化考試系統。該系統可以完成試題錄入、試題抽取、自動判卷等功能。
任務和要求
功能要求:
(1)用文件保存試題庫。(每個試題包括題干、4個備選答案、標準答案)(2)試題錄入:可隨時增加試題到試題庫中
(3)試題抽取:每次從試題庫中可以隨機抽出N道題(N由鍵盤輸入)(4)答題:用戶可實現輸入自己的答案
(5)自動判卷:系統可根據用戶答案與標準答案的對比實現判卷并給出成績。
(二)其它要求:
(1)只能使用C/C++語言,源程序要有適當的注釋,使程序容易閱讀(2)至少采用文本菜單界面(如果能采用圖形菜單界面更好)(3)學生可自動增加新功能模塊(視情況可另外加分)
主要知識點
l 面向對象程序設計方法
l 界面制作,switch的應用。l 類和對象。l 動態數組(鏈表)類模板。l 文件的讀寫。
五、其他
程序設計可在Microsoft VC++6.0、Borland C++ Builder環境下進行。
六、參考資料
【1】《C語言程序設計》,譚浩強編,清華大學出版社,2008年 出版 【2】《C語言程序設計》,吳明發編,北京理工大學出版社,2007年出版 【3】《C語言參考手冊》邱仲潘 機械工業出版社,2004年出版
【4】《C語言課程設計案例精編》 姜靈之 清華大學出版社 2008年出版
詳細設計(1).通訊錄: 主要代碼
#include
//結構體 {
};class inter { private: student st[35];char no[13];char name[20];char address[100];char tel_no[12];char post_code[7];char e_mail[40];public: void add(char no[13],char name[20],char address[100],char tel_no[12],char post_code[7],char e_mail[40]);
void del(char name[20]);void find1(char no[13]);void find2(char name[20]);void list1();void list2();int correct(char name[20]);void read();void write();void format();int back(){
cout<<“
返回還是回到主菜單(T為退出,R為回到主菜單,不計大小寫):
”;
} void print(int i){
cout<<“學號:”<
};
} cout<<“電話號碼:”< inter a;a.format();char select1;cout< 計職141 ” < <<“tt★★★★★★★★★★★★★★★★★★★★★★★★★★” < ※” < 通 迅 錄 ※” < ※” < ※” < ※” < ※” < <<“tt ”< <<“ttt選擇 :”;cin>>select1; switch(select1){ case '1':cout<<“ (1)添加:”< cout<<“ (2)刪除:”< (3)修改:”< 請選擇:”< 輸入添加的資料:”< char name[20]; char address[100]; char tel_no[12]; char post_code[7]; char e_mail[40]; cout<<“ 輸入學號:”< 輸入姓名:”< 輸入地址:”< 輸入電話號碼:”< 輸入郵編:”< cout<<“ 輸入E_mail:”< cout<<“ 返回還是回到主菜單(T為退出,R為回到主菜單,不計大小寫): ”; char back_add;cin>>back_add;if(back_add=='R'||back_add=='r')goto top;else goto bottom;break;case '2':cout<<“ 輸入要刪除人的姓名:”< char name2[20];cin>>name2;a.del(name2); cout<<“ 返回還是回到主菜單(T為退出,R為回到主菜單,不計大小寫): ”; char back_del;cin>>back_del;if(back_del=='R'||back_del=='r')goto top;else goto bottom;break;case '3':cout<<“ 輸入需要修改人的姓名:”< char name3[20];cin>>name3;if(a.correct(name3)) } goto top;else goto bottom;break;break;case '2':cout<<“ (1)根據姓名查找”< cout<<“ (2)根據學號查找”< 請選擇: ”;cin>>select3;switch(select3){ case '1':char name4[20]; cout<<“ 輸入姓名: ”;cin>>name4;a.find2(name4); cout<<“ 返回還是回到主菜單(T為退出,R為回到主菜單,不計大小寫): ”; char back_f1;cin>>back_f1;if(back_f1=='R'||back_f1=='r')goto top;else goto bottom;break;case '2':char no4[13];cout<<“ 輸入學號: ”;cin>>no4; a.find1(no4); cout<<“ 返回還是回到主菜單(T為退出,R為回到主菜單,不計大小寫): ”; } break;char back_f2;cin>>back_f2;if(back_f2=='R'||back_f2=='r')goto top;else goto bottom;break;case '3':a.write();cout<<“ 返回還是回到主菜單(T為退出,R為回到主菜單,不計大小寫): ”; char back_w;cin>>back_w;if(back_w=='R'||back_w=='r')goto top;else goto bottom;break;case '4':cout<<“ (1)按學號排序:”< cout<<“ (2)按姓名排序:”< 請選擇:”;char select4;cin>>select4;switch(select4){ case '1':a.list1(); cout<<“ 返回還是回到主菜單(T為退出,R為回到主菜單,不計大小寫): ”; char back;cin>>back;if(back=='R'||back=='r')goto top;else goto bottom;break;case '2':a.list2(); cout<<“ 返回還是回到主菜單(T為退出,R為回到主菜單,不計大小寫): ”; } break;char back1;cin>>back1;if(back1=='R'||back1=='r')goto top;else goto bottom;break;case '5':a.read();cout<<“ 返回還是回到主菜單(T為退出,R為回到主菜單,不計大小寫): ”; char back_r;cin>>back_r;if(back_r=='R'||back_r=='r') goto top;else goto bottom;break;case '6':cout<<“ 請確認刪除所有資料!(Y/N) ”; char select5;cin>>select5;if(select5=='Y'||select5=='y')a.format();cout<<“ 返回還是回到主菜單(T為退出,R為回到主菜單,不計大小寫): ”; } char back_f;cin>>back_f;if(back_f=='R'||back_f=='r')goto top;else goto bottom;break;bottom:cout<<“ ★★★★★★★★★★★★歡迎使用本軟件!★★★★★★★★★★★ ”< void inter::add(char no[13],char name[20],char address[100],char tel_no[12],char post_code[7],char e_mail[40]){ int x=1;for(int i=0;i<35;i++)return 0; } { } if(!strcmp(st[i].no,“0”)){ } if(x==0)break;strcpy(st[i].address,address);strcpy(st[i].e_mail,e_mail);strcpy(st[i].name,name);strcpy(st[i].no,no);strcpy(st[i].post_code,post_code);strcpy(st[i].tel_no,tel_no);x=0;//刪除聯系人 void inter::del(char name[20]){ int x=1;for(int i=0;i<35;i++){ if(!strcmp(st[i].name,name)){ strcpy(st[i].address,“0”); strcpy(st[i].e_mail,“0”);strcpy(st[i].name,“0”);strcpy(st[i].no,“0”);strcpy(st[i].post_code,“0”);strcpy(st[i].tel_no,“0”); } } } else x=0;if(x==0)cout<<“ error:輸入姓名錯誤!”< int inter::correct(char name[30]){ int x;for(int i=0;i<35;i++){ } char select;cout<<“ (1)修改姓名:”< (2)修改學號:”< (3)修改地址:”< (4)修改郵編:”< (5)修改電話號碼:”< (6)修改E_MAIL:”< 請選擇:”;cin>>select;switch(select){ case '1':cout<<“ 輸入要修改的姓名:”;char name1[30];if(!strcmp(st[i].name,name))x=i; cin>>name1;strcpy(st[x].name,name1);cout<<“ 修改成功!”< 輸入要修改的學號:”; char no1[13];cin>>no1;strcpy(st[i].no,no1);cout<<“ 修改成功!”< 輸入要修改的地址:”; char address1[100];cin>>address1;strcpy(st[x].address,address1);cout<<“ 修改成功!”< 輸入要修改的郵編:”; char post_code1[7];cin>>post_code1;strcpy(st[x].post_code,post_code1);cout<<“ 修改成功!”< 輸入要修改的電話號碼:”;char tel_no1[12]; cin>>tel_no1;strcpy(st[x].tel_no,tel_no1);cout<<“ 修改成功!”< 輸入要修改的E_MAIL:”; char e_mail1[40]; cin>>e_mail1; strcpy(st[x].e_mail,e_mail1); cout<<“ 修改成功!”< return back(); break;} } //按學號查詢聯系人 void inter::find1(char no[13]){ int x,y=1,z=1;for(int i=0;i<35;i++){ if(!strcmp(st[i].no,no)) { x=i; z=0; } else y=0; if(z==0)break; } if(y==0)cout<<“ 輸入的學號查找不到!!”< print(x);} //按姓名查詢聯系人 void inter::find2(char name[20]){ } //讀取文件 void inter::read(){ int x,y=1,z=1;for(int i=0;i<35;i++){ } if(y==0)cout<<“ 輸入的姓名查找不到!!”< } else y=0;if(z==0)break;x=i;z=0; print(x); char name1[20];cout<<“ 輸入你要導入的文件名: ”;cin>>name1;strcat(name1,“.txt”);ifstream file(name1);char line[120];char no[120];char name[120];char address[120];char post_code[120];char tel_no[120];char e_mail[120];int time=0;file.getline(line,120);while(!file.eof()){ for(int k=0;k<35;k++){ if(time==0){ strcpy(no,line);time=1;for(int i=0;i<120;i++){ if(no[i]==':'){ i++;for(int j=0;j<13;j++) } } { } st[k].no[j]=no[i];i++;file.getline(line,120,'n');} if(time==1){ } if(time== 2){ strcpy(name,line);time=2; for(int i=0;i<120;i++){ } file.getline(line,120,'n');if(name[i]==':'){ } i++;for(int j=0;j<20;j++){ } st[k].name[j]=name[i];i++; } strcpy(address,line);time=3;for(int i=0;i<120;i++){ } file.getline(line,120,'n');if(address[i]==':'){ } i++;for(int j=0;j<100;j++){ } st[k].address[j]=address[i];i++;if(time==3){ strcpy(tel_no,line);time=4;for(int i=0;i<120;i++){ if(tel_no[i]==':'){ i++;for(int j=0;j<12;j++){ st[k].tel_no[j]=tel_no[i]; } } } } i++;file.getline(line,120,'n'); if(time==4){ } if(time==5){ strcpy(e_mail,line);strcpy(post_code,line);time=5;for(int i=0;i<120;i++){ } file.getline(line,120,'n');if(post_code[i]==':'){ } i++;for(int j=0;j<7;j++){ } st[k].post_code[j]=post_code[i];i++; } } } } time=0;for(int i=0;i<120;i++){ } file.getline(line,120,'n');if(e_mail[i]==':'){ } i++;for(int j=0;j<40;j++){ } st[k].e_mail[j]=e_mail[i];i++; file.close();//寫入文件 void inter::write(){ char name[20];cout<<“ 輸入要保存的文件名 ”;cin>>name;strcat(name,“.txt”);ofstream savefile(name);for(int i=0;i<35;i++) } { } savefile.close();savefile << “學號:”< savefile << “姓名:”< savefile << “地址:”< savefile << “電話號碼:”< savefile << “郵編:”< savefile << “E_MAIL:”< strcpy(no,st[j].no);strcpy(st[j].no,st[j+1].no);for(int i=0;i<34;i++){ for(int j=0;j<35-i;j++){ if(strcmp(st[j].no,st[j+1].no)>0){ char no[13]; char name[20]; char address[100]; char tel_no[12]; char post_code[7]; char e_mail[40]; strcpy(st[j+1].no,no); strcpy(name,st[j].name);strcpy(st[j].name,st[j+1].name);strcpy(st[j+1].name,name); strcpy(address,st[j].address); } for(int k=0;k<35;k++){ int x=0;if(strcmp(st[k].no,“0”)) } } strcpy(st[j].address,st[j+1].address);strcpy(st[j+1].address,address); strcpy(tel_no,st[j].tel_no);strcpy(st[j].tel_no,st[j+1].tel_no);strcpy(st[j+1].tel_no,tel_no); strcpy(post_code,st[j].post_code);strcpy(st[j].post_code,st[j+1].post_code);strcpy(st[j+1].post_code,post_code); strcpy(e_mail,st[j].e_mail);strcpy(st[j].e_mail,st[j+1].e_mail);strcpy(st[j+1].e_mail,e_mail); { } if(x==1){ cout< } } } //按姓名排序 void inter::list2(){ for(int i=0;i<34;i++){ for(int j=0;j<35-i;j++){ if(strcmp(st[j].name,st[j+1].name)>0){ char no[13]; char name[20]; char address[100]; char tel_no[12]; char post_code[7]; char e_mail[40]; strcpy(no,st[j].no);strcpy(st[j].no,st[j+1].no);strcpy(st[j+1].no,no); strcpy(name,st[j].name);strcpy(st[j].name,st[j+1].name);strcpy(st[j+1].name,name); strcpy(address,st[j].address); } for(int k=0;k<35;k++){ } } strcpy(st[j].address,st[j+1].address);strcpy(st[j+1].address,address); strcpy(tel_no,st[j].tel_no);strcpy(st[j].tel_no,st[j+1].tel_no);strcpy(st[j+1].tel_no,tel_no); strcpy(post_code,st[j].post_code);strcpy(st[j].post_code,st[j+1].post_code);strcpy(st[j+1].post_code,post_code); strcpy(e_mail,st[j].e_mail);strcpy(st[j].e_mail,st[j+1].e_mail);strcpy(st[j+1].e_mail,e_mail); } } int x=0;if(strcmp(st[k].no,“0”)){ } if(x==1){ } cout< void inter::format(){ } for(int i=0;i<35;i++){ } strcpy(st[i].address,“0”);strcpy(st[i].e_mail,“0”);strcpy(st[i].name,“0”);strcpy(st[i].no,“0”);strcpy(st[i].post_code,“0”);strcpy(st[i].tel_no,“0”); (2).工作流程圖: 1.通訊錄主界面 2.添加:添加通訊錄記錄 3.顯示:查詢通訊錄記錄 4.刪除:刪除通訊錄記錄 5.修改:修改通訊錄記錄 小結(收獲和建議)這次的程序實設計實驗是對我們進入大學以來學習程序設計語言結果的一次大檢驗,面對許多不懂得知識,通過他人的幫助,以及參考他人的成果,自己動手嘗試,修改等,才完成。這個課程設計,花費了我近兩個星期的時間,這也是因為書本不熟悉。通過這次設計,使我對《C語言》這門課程有了更深一步的了解。它不僅是計算機程序設計的重要理論技術基礎,也在我們電子與信息專業的學習中占據著十分重要的地位。同時也使我們知道,要學好這門課程,僅學習書本上的知識是不夠的,還要有較強的實踐能力。因為我們學習知識就是為了實踐。而只有多實踐,多編寫程序,才能更好的理解與掌握書本上的東西。利用計算機來編寫程序,也讓我感受到了編程的樂趣,極大的激發了我的興趣。