第一篇:能量管理系统
微电网能量管理系统 微电网的典型结构
能量管理系统馈线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语言》这门课程有了更深一步的了解。它不仅是计算机程序设计的重要理论技术基础,也在我们电子与信息专业的学习中占据着十分重要的地位。同时也使我们知道,要学好这门课程,仅学习书本上的知识是不够的,还要有较强的实践能力。因为我们学习知识就是为了实践。而只有多实践,多编写程序,才能更好的理解与掌握书本上的东西。利用计算机来编写程序,也让我感受到了编程的乐趣,极大的激发了我的兴趣。