这几天wwwwww.017e.comecom不稳定老是出错了

谢邀。其实刚开始邀请我回答这种冷门问题,我是拒绝的。&br&和高大上的互联网金融法律医学比起来,电气这一块在知乎基本属于冷门无人问津的话题。只有勤勤恳恳的 &a data-hash=&becffad2d6bf& href=&//www.zhihu.com/people/becffad2d6bf& class=&member_mention& data-editable=&true& data-title=&@Patrick Zhang& data-tip=&p$b$becffad2d6bf& data-hovercard=&p$b$becffad2d6bf&&@Patrick Zhang&/a&前辈一直在默默耕耘着。张前辈辛苦写下大段大段的普及文字,赞数可能还没卖个鸡汤,秀个恩爱的零头多,可发一叹。&br&&br&但吾辈,以输出干货为己任。让赞和粉都作浮云去吧~&br&&br&好,言归正传开始答题。&br&智能电网这个概念,其实很早就提出来了,别说欧美,就连国内也早早就将智能电网定为电网发展的目标和方向。2009年5月,国家电网公司在“2009特高压输电技术国际会议”上就提出了名为“坚强智能电网”的发展规划。&br&&br&至于什么是智能电网,先看看无聊的定义。&br&&br&美国人是这样定义的:&br&&b&美国能源部《Grid 2030》:一个完全自动化的电力传输网络,能够监视和控制每个用户和电网节点,保证从电厂到终端用户整个输配电过程中所有节点之间的信息和电能的双向流动。&/b&&br&&br&&br&我国是这样定义的:&br&&b&国家电网中国电力科学研究院:以物理电网为基础(中国的智能电网是以特高压电网为骨干网架、各电压等级电网协调发展的坚强电网为基础),将现代先进的传感测量技术、通讯技术、信息技术、计算机技术和控制技术与物理电网高度集成而形成的新型电网。它以充分满足用户对电力的需求和优化资源配置、确保电力供应的安全性、可靠性和经济性、满足环保约束、保证电能质量、适应电力市场化发展等为目的,实现对用户可靠、经济、清洁、互动的电力供应和增值服务。&/b&&br&&br&&br&是不是枯燥又乏味?别说非专业人士,就连专业人士也没太多看下去的兴趣。&br&这时候就需要我出马了,我会尽可能用通俗易懂的语言来解释这些枯燥冷门的内容。&br&&br&既然说到智能电网,就先来看看电网到底是指什么。&br&&br&&b&所谓电网,一般是指排除发电侧之外的,由变电装置和输配电线组成的整体。&/b&&br&中高压变电装置一般都会配套建有专门的变电站,低压变电装置小区里也随处可见。&br&&br&对,你们平时马路边看到的电线杆。。&br&&figure&&img src=&https://pic3.zhimg.com/f3b9dff0bc2f0ba5d017a_b.jpg& data-rawwidth=&1024& data-rawheight=&768& class=&origin_image zh-lightbox-thumb& width=&1024& data-original=&https://pic3.zhimg.com/f3b9dff0bc2f0ba5d017a_r.jpg&&&/figure&&br&城乡结合部看到的高压电杆塔。。&br&&figure&&img src=&https://pic1.zhimg.com/df72cc0c360caed_b.jpg& data-rawwidth=&800& data-rawheight=&557& class=&origin_image zh-lightbox-thumb& width=&800& data-original=&https://pic1.zhimg.com/df72cc0c360caed_r.jpg&&&/figure&&br&小区里不知是啥玩意儿的变电箱。。&br&&figure&&img src=&https://pic2.zhimg.com/133e8fa48ea267e54cd5_b.png& data-rawwidth=&982& data-rawheight=&667& class=&origin_image zh-lightbox-thumb& width=&982& data-original=&https://pic2.zhimg.com/133e8fa48ea267e54cd5_r.png&&&/figure&&br&还有躲在犄角旮旯里的变电站。。&br&&figure&&img src=&https://pic1.zhimg.com/c3fc8ffaa9acc86e47dc8f8_b.jpg& data-rawwidth=&500& data-rawheight=&333& class=&origin_image zh-lightbox-thumb& width=&500& data-original=&https://pic1.zhimg.com/c3fc8ffaa9acc86e47dc8f8_r.jpg&&&/figure&&br&它们。。都是电网的组成部分。电网包含变电、输电、配电三个环节。&br&&b&变电(power transforming),是指通过变电设备将电压由低等级转变为高等级(升压),或由高等级转变为低等级(降压)的环节。&/b&&br&&b&输电(power transmission),是指通过输电线路,将电能进行传输的环节。&/b&&br&&b&配电(power distribution),是指通过配电变压,将电能从高压输电线路分配给用户的环节。&/b&&br&&br&电能从发电厂制造出来,通过变电升压,进入高压输电线路,再经过变电降压,配电给各个用户。&br&其中高压输电的部分又称为主网,低压配电的部分又称为配(电)网。&br&&figure&&img src=&https://pic4.zhimg.com/ce6badf94423_b.png& data-rawwidth=&602& data-rawheight=&257& class=&origin_image zh-lightbox-thumb& width=&602& data-original=&https://pic4.zhimg.com/ce6badf94423_r.png&&&/figure&&br&此外,我们刚刚提到的发电机、变电箱、高压电线,包括线路中的各种“开关”——断路器、接触器、隔离开关、刀闸等,&b&都是直接用于生产和传输电能的,被称为“一次设备”(Primary equipment)。&/b&&br&&br&可能有人要问了,我平时就看到这些啊,难道电网里还存在什么其他的隐秘的部分吗?&br&&br&没错,那就是所谓的“二次设备”。&b&所谓二次设备(Secondary equipment)&/b&&b&,是指对电网内一次设备进行监察,测量,控制,保护,调节的辅助设备。&/b&&br&二次设备包括电表、监控装置、继电保护装置、录波器、直流源等。&br&&figure&&img src=&https://pic2.zhimg.com/779ea554b9afd21a29acd581_b.png& data-rawwidth=&492& data-rawheight=&254& class=&origin_image zh-lightbox-thumb& width=&492& data-original=&https://pic2.zhimg.com/779ea554b9afd21a29acd581_r.png&&&/figure&&br&可以想象一下发射火箭。那么火箭本身就可以视为类似的“一次设备”,而监控火箭的轨道、速度、各种参数的装置,就可以视为类似的“二次设备”。&br&&br&======智能的分割线============&br&&br&好了,简单介绍了一下电网,那么让我们来看看这智能电网到底“智能”在什么方面吧。&br&&br&&b&一。用户互动,电网透明化。&/b&&br&&br&怎么理解这个用户互动呢?在过去,用户对于电网来说,能做的几乎就只有一个选项:按时交电费。哦,也许还有一个,就是用户可以自个儿看一看电表,这个月走了几度电。(之所以用“走”,是因为大部分老式电表都是机械式的铝盘电度表。)除此以外,似乎真的没有什么能做的了。&br&&br&老式电表和智能电表对比:&br&&figure&&img src=&https://pic3.zhimg.com/d0ec39b1af89f50afa7e2be_b.jpg& data-rawwidth=&600& data-rawheight=&337& class=&origin_image zh-lightbox-thumb& width=&600& data-original=&https://pic3.zhimg.com/d0ec39b1af89f50afa7e2be_r.jpg&&&/figure&&br&那么智能电网呢?&b&用户将是电力系统不可分割的一部分。鼓励和促进用户参与自身运行和管理,是智能电网一大重要特征。&/b&&br&&br&对供电公司而言,掌握了用户的需求,也就可以更好地衡量供求关系。通过统计用户的用电信息,供电公司可以从数据分析中了解一个区域内的用电规律,譬如什么时段用电多,什么时段用电少,进而相应地制定各个区域内,经济节能的发电和输配电的方案。&br&&br&此外,通过调节用户的用电时间,便可有效提高电网终端用电效率,削峰填谷,平滑电网负荷曲线,减轻电网负荷压力。这样做的好处是,减少或转移用电高峰时的电力需求,使电力公司尽量减少资本开支和营运开支。电力成本减少了,电价自然也会下调。(好吧,只能说理论上是这样的。。&br&&br&而对于用户来说,电力消费成为和手机话费一样,可以选择性的消费。用户可以选择不同的方案来购买电能、选择用电。譬如用户可以随时查询到,高峰时段电价高,那么我就尽量少用;低谷时段电价便宜,就配合智能化电器定时操作或远程控制,选择在低电价的时段用电。&br&&br&位于天津中新生态城的国家电网智能营业厅(这是学中国移动、中国电信吗。。)&br&&figure&&img src=&https://pic2.zhimg.com/f2bc1b9cc95e07a083d9fbcbfdc80b11_b.jpg& data-rawwidth=&350& data-rawheight=&260& class=&content_image& width=&350&&&/figure&&br&&br&想要做到这一点,&b&就需要供电公司和用户建立的双向实时的通信系统(网络渠道),供电公司可以实时通知用户其电力消费的成本、实时电价、电网的状况、计划停电信息以及其他一些服务的信息等等,实现透明化。&/b&与此同时,用户也可以根据这些信息制定合适的用电方案。我所在的北美,这种用电方案已经逐渐成熟,可以通过选择适合自己的用电方案,如同订套餐一样选择用电。&br&&br&============================&br&&br&&b&二。智能设备,实现物联网。&/b&&br&&p&就像上文提到的,智能家电、智能控制设备等智能终端,将在智能电网中占据很重要的地位。通过在手机上安装的用电APP,就能远程遥控电热水器、空调、冰箱、电热水壶等电器,可以轻松实现在电价便宜的时候用电。&/p&&br&&p&不妨设想一下好了,当冬天外出,回家之前通过APP提前打开空调,开门就能触摸温暖。想在早晨6点之前用半价电烧一壶水,但又不想那么早起床操作,可以借助APP定时功能,确保6点前自动完成烧水……通过APP,还能如同查询手机流量一样,随时了解某个电器设备在某一段时间内的耗电量,使用户对于自己的用电账本一目了然。&/p&&br&&p&一幅全景式的智能电网家庭用户示意图(建议点开放大):&figure&&img src=&https://pic2.zhimg.com/d180df4c02c21_b.jpg& data-rawwidth=&572& data-rawheight=&368& class=&origin_image zh-lightbox-thumb& width=&572& data-original=&https://pic2.zhimg.com/d180df4c02c21_r.jpg&&&/figure&&/p&&p&而智能电网中的配变电量采集箱,也不单单只是过去的单向采集功能了,它们会自带WIFI和网络功能,将用户的用电信息、数据收集之后,通过网络发送到供电公司的数据终端。供电公司将对这些数据进行归类、对比分析,再根据用户用电的实际情况,为其量身定制用电方案,并通过手机短信等形式发送告知。&br&&/p&&br&举个例子,用户通过查询高能耗电器的实时使用数据,便可以随时了解自己家中的哪些电器存在浪费。譬如电视开着却没有看,家里没人却开着空调等等现象就可以避免。&br&&br&&p&从电厂到用户的智能电网全景图展示。&/p&&figure&&img src=&https://pic4.zhimg.com/92da4d2e3805eae10a19b52222abdd97_b.png& data-rawwidth=&567& data-rawheight=&264& class=&origin_image zh-lightbox-thumb& width=&567& data-original=&https://pic4.zhimg.com/92da4d2e3805eae10a19b52222abdd97_r.png&&&/figure&&br&&br&&p&============================&br&&/p&&br&&p&&b&三。测量升级,大数据时代。&/b&&/p&&p&上文里提到的老式机械电表,既不精确也容易被盗电。在智能电网时代,它们不仅仅将被数字化电表所取代,而且采集的时间间隔将大幅缩小。譬如目前常见的智能电表可能要15分钟才采集一次数据,而理想状态下的智能电网,采集数据的间隔可能短至1秒钟,甚至更短。&/p&&br&&p&同样的,在输电网,采集各种开关信号量、遥测信息(电压、电流、相位、相角、有功功率、无功功率乃至变压器油温等等),也将做到实时更新,刷新的速率也将达到至少每秒一次。这样精确的数据量,将大大提高电网的可靠性,也可以有效进行故障预判和快速调整。&/p&&br&&p&电力系统的各种响应时间一览。&/p&&figure&&img src=&https://pic1.zhimg.com/6cc671aafd481b071a9fdc_b.jpg& data-rawwidth=&548& data-rawheight=&295& class=&origin_image zh-lightbox-thumb& width=&548& data-original=&https://pic1.zhimg.com/6cc671aafd481b071a9fdc_r.jpg&&&/figure&&br&&br&&p&&b&而如此一来,所形成数据量也将是极为可观的,是实实在在的洋量“大数据”。&/b&比如智能电表的采集量从15分钟缩短到1秒,1万台智能电表采集的用电信息的数据就会从32.61GB提高到114.6TB。而这数据量对于一个大国高度发达的智能电网来说,只是沧海一粟罢了。&/p&&br&&p&&b&所以现在国内现在新兴的电网海量实时数据系统,其核心数据库大都采用了Hadoop的HDFS系统,通过使用分布式数据存储和MapReduce运算模型,来实时存储如此巨大的数据。&/b&这和淘宝网的数据库是相似的。(国内很多做电网实时数据平台的公司,都会派技术人员去阿里巴巴取经。。我也因此有幸见过马云一面。。扯远了。。)&/p&&br&&p&忘了补充一点,除了Hadoop的No-SQL数据库,普通的关系数据库也是必不可少的,起到辅助作用。&/p&&br&&p&北京的电网数据分布系统(局部)。&/p&&figure&&img src=&https://pic4.zhimg.com/ef234dee485f99e0878ffef_b.jpg& data-rawwidth=&520& data-rawheight=&390& class=&origin_image zh-lightbox-thumb& width=&520& data-original=&https://pic4.zhimg.com/ef234dee485f99e0878ffef_r.jpg&&&/figure&&br&&p&============================&/p&&br&&p&&b&四。自我预测、自我修复、自我调节&/b&&/p&&p&大数据当然自有它的好处。通过大数据平台搭配云计算技术,技术人员可实时观察到全网范围内的电能流动状态、电能负载热区、设备故障高发区和客户集中区等数据,实现更加智能化的电网。具体的新概念和新技术包括以下这些:(这一块和用户基本没什么关联,是针对电力系统人员的,如果没有兴趣可以跳过。。)&/p&&figure&&img src=&https://pic1.zhimg.com/dca807fbc8dc7f62c90fc27dd5c2b340_b.png& data-rawwidth=&745& data-rawheight=&573& class=&origin_image zh-lightbox-thumb& width=&745& data-original=&https://pic1.zhimg.com/dca807fbc8dc7f62c90fc27dd5c2b340_r.png&&&/figure&&p&&b&1。电网数据可视化&/b&&/p&&p&在智能电网中,通过分析包括调度、输配电、发电和用户信息等大数据(这些数据大都是实时并且高度信息化集成的),通过软件实现实时可视化运算分析,可以全面完整地展示电网运行状态中每一个细节,为管理层提供辅助决策支持和依据。&br&&/p&&br&&p&&b&2。电网负载趋势预测&/b&&/p&&p&不仅如此,通过大数据分析电网负载的历史数据和实时数据,展示全网实时负载状态,可以预测电网负载变化趋势。并通过综合性的管理,提高设备的使用率,降低电能损耗,使得电网运行更加经济和高效。&br&&/p&&br&&p&&b&3。设备故障趋势预测&/b&&/p&&p&通过大数据分析电网中故障设备的故障类型、历史状态和运行参数之间的相关性,预测电网故障发生的规律,评估电网运行风险,可以实现实时预警,让技术人员提前做好设备维护和检查工作。&br&&/p&&br&&p&&b&4。电网实现自我修复&/b&&/p&&p&在智能电网中,将电网中的故障设备,以最快的速度从电网系统中隔离出来,并且在几乎自动化的状态下(很少或不用人为干预)实现系统自我恢复到正常运行状态,从而做到几乎不中断对用户的供电服务。我们可以类比一下人体的免疫系统,这和智能电网的自我修复很类似。结合上两条的预测,电网系统可以进行持续自我预测,当发现已经存在或可能出现的故障时,立即采取措施加以控制或纠正。&br&&/p&&br&&b&5。二次设备独立通信&/b&&br&在现有的电网系统中,二次设备的通信往往要通过总线和专用通信设备来实现。这种设备用内部的话说叫做”总控单元“(国外一般称为RTU)。而在智能电网中,监控、保护等二次设备都将配有自适应和自我交互信息的模块,能够自适应地相互通信。这种的灵活性和自适应能力,将极大地提高可靠性,就好比让设备实现”自治“。如此一来,即使部分系统出现了故障,其他设备仍然能够稳定工作。&br&&br&============================&br&&br&&br&&b&五。新能源无缝接入,即插即用。&/b&&br&我们传统的发电一般都是火力发电和水力发电,现在核电也在逐步发展中。而光伏发电、风电、地热发电等新能源发电,过去都很难和传统电网相连接。而智能电网将改变这一现状。&br&&br&智能电网会简化新能源发电入电网的过程,通过改进的互联标准将使各种各样的发电和储能系统容易接入。做到“无缝接入、即插即用”。从小到大各种不同容量的发电和储能设备,在所有的电压等级上都可以实现互联(包括光伏发电、风电、电池系统、即插式混合动力汽车和燃料电池等)。未来,用户甚至可以安装自己的发电设备,实现自产自销。&br&&br&位于广西的超大规模光伏发电系统:&br&&figure&&img src=&https://pic4.zhimg.com/da42fd69ee0073add49eb9cf_b.jpg& data-rawwidth=&550& data-rawheight=&363& class=&origin_image zh-lightbox-thumb& width=&550& data-original=&https://pic4.zhimg.com/da42fd69ee0073add49eb9cf_r.jpg&&&/figure&&br&位于甘肃的风能及光伏发电系统:&br&&figure&&img src=&https://pic4.zhimg.com/a89d6f7bd0ae24d66acd6ca91b77ae77_b.jpg& data-rawwidth=&400& data-rawheight=&286& class=&content_image& width=&400&&&/figure&&br&&br&位于青岛的风力发电机组(话说去青岛时看到海边超多。。):&br&&figure&&img src=&https://pic1.zhimg.com/af2f8c0ea84_b.jpg& data-rawwidth=&3000& data-rawheight=&1943& class=&origin_image zh-lightbox-thumb& width=&3000& data-original=&https://pic1.zhimg.com/af2f8c0ea84_r.jpg&&&/figure&&br&&br&在2015电力行业信息化技术创新大会上,中国工程院院士、国网电力科学研究院副院长薛禹胜院士(额。。他以前住我家楼上。。)指出:&br&&blockquote&随着太阳能、风能等再生电力资源越来越多地被应用,电网必须考虑如何确保太阳能、风能这类“间断性能源”安全进入电网。薛禹胜说,眼下新能源接入电网的比例只有7%—10%,未来大规模接入会有很多问题产生,这需要大幅度提高信息化水平,运用大数据技术,进行智能化分析。&br&&/blockquote&&br&============================&br&&br&&b&六。储能技术、电动汽车。&/b&&br&在过去,电能的生产是一次性的,生产出来就必须立刻用掉,很难实现大容量储存。而智能电网中的储能技术将是重头戏。无论是集中式的大容量的储能电站,还是分布式的小容量的储能电站,甚至小到电动汽车电池的储能作用,乃至太阳能路灯的储能电池等等。都是智能电网中的各种储能形式。而这其中,电动汽车对于普通用户来说,距离最近也最容易实现,可以由此预见,电动汽车的发展将是不可阻挡的。&br&&br&而储能技术,主要分为物理储能( 譬如抽水蓄能、压缩空气储能、飞轮储能等),化学储能( 譬如各类蓄电池、可再生燃料电池、液流电池、超级电容器等)和电气储能( 譬如超导电磁储能等)。在储能技术发展上,德国发展得非常快,他们的储能电池研发是世界领先的。&br&&br&位于山东枣庄的光伏发电和储能电池系统:&br&&figure&&img src=&https://pic2.zhimg.com/bd5d65f75c7f9b_b.jpg& data-rawwidth=&824& data-rawheight=&585& class=&origin_image zh-lightbox-thumb& width=&824& data-original=&https://pic2.zhimg.com/bd5d65f75c7f9b_r.jpg&&&/figure&&br&未来,用户都将拥有自己的发电和储能设施,在自给自足的同时,还可能倒送给电网以实现相互调剂。譬如,在我家的用电低谷时,电网供应的能量用不完,就可以先储存起来,以备自己或邻居在用电高峰时进行支援,而当我家用电出现高峰,用上自己储存的电能都供应不足时,通过邻居储存的电能,就可以立即补足我的用电需求。&br&&br&在2013第三届北京国际储能大会上,中国科学院院士周孝信透露:目前储能技术已是智能电网、可再生能源接入、分布式电源、微型电网、电动汽车等产业发展必不可少的支撑技术,是新能源领域投资的热点。&br&&br&国家电网公司的风能发电充电站(中石油中石化未来最可怕的对手):&br&&figure&&img src=&https://pic1.zhimg.com/a5fe9e09e83ea3bda09c_b.jpg& data-rawwidth=&500& data-rawheight=&295& class=&origin_image zh-lightbox-thumb& width=&500& data-original=&https://pic1.zhimg.com/a5fe9e09e83ea3bda09c_r.jpg&&&/figure&&br&&br&============================&br&&br&&b&七。防御恐怖袭击。&/b&&br&在当前世界反恐的大环境下,智能电网作为一个国家的命脉产业,提升自我防御能力当然是不可或缺的。这就要求电网安全性可以达到很高的水准。&br&&figure&&img src=&https://pic2.zhimg.com/05d633a3181c2fae7bd2fd_b.jpg& data-rawwidth=&430& data-rawheight=&228& class=&origin_image zh-lightbox-thumb& width=&430& data-original=&https://pic2.zhimg.com/05d633a3181c2fae7bd2fd_r.jpg&&&/figure&&br&当出现恐怖袭击后,运用上面第四点所提到的自我修复的解决方案,使得被攻击的位置可以实现快速恢复。不仅如此,从智能电网的设计和运行的环节,都将加入反恐考量,尽可能阻止攻击,最大限度地降低破坏造成的损失。&br&&br&智能电网的安全策略将包含威慑、预防、检测、反应等等,以尽量减少和减轻恐怖袭击对电网和经济发展的影响。值得一提的是,无论是物理攻击还是网络攻击,都是需要的防御的。智能电网的内部通信系统,将实现和外网完全隔离,独立运行,每个节点都实现自主化,目前国内的话,主要搞这个的是华为和中兴。&br&&br&&br&洋洋洒洒写了这么多。。不知道对题主有帮助没。。不会没看完就弃了吧。。&br&看完的话。。就赏个赞吧。。知乎干货党留。。
谢邀。其实刚开始邀请我回答这种冷门问题,我是拒绝的。 和高大上的互联网金融法律医学比起来,电气这一块在知乎基本属于冷门无人问津的话题。只有勤勤恳恳的 前辈一直在默默耕耘着。张前辈辛苦写下大段大段的普及文字,赞数可能还没卖个鸡汤…
&figure&&img src=&https://pic1.zhimg.com/6afae0f764cabbb64d42d0_b.jpg& data-rawwidth=&506& data-rawheight=&407& class=&origin_image zh-lightbox-thumb& width=&506& data-original=&https://pic1.zhimg.com/6afae0f764cabbb64d42d0_r.jpg&&&/figure&马里奥碰到花朵就变身。&br&&br&什么是马里奥?一个装着 16 × 32 个小色块的长方形,其中一些色块填着颜色,另一些没有。什么是花?一个 16 × 16 的正方形。什么是「变身」?把马里奥这个方块里面代表衣服的褐色变成红色,代表背带裤的红色变成白色。什么是褐色?暂且说它是 0x887000 这个数字。什么是「碰到」?马里奥的长方形与花朵的正方形有所重叠。什么是「重叠」?假设马里奥的这个方块占据屏幕(什么是屏幕?一个能装下 256 × 240 个小色块的矩形)中 X 方向 101 到 116、Y 方向 21 到 52 之间的区域,那么只要这个区域内有一点或更多点也被花朵所占据(比如花朵处在 X 116 到 131、Y 21 到 36 之间的区域内),我们就认为两者有所重叠。&br&&br&若给定以八个数值代表的两个矩形区域,请写出判断两个区域是否有重叠的 C 语言程序。如果你能写出来,那么祝贺你,如果有朝一日你想自己用 C 做一遍 NES 版本的《超级马里奥》,你至少知道让他变身需要做什么了。&br&&br&是的,C 语言也许「只能」做数学题。可是,绝大多数游戏的运行过程就是不停地做数学题,而所谓编写游戏,也就是把游戏的规则和游戏的效果转化为数学题而已。其中不少题目电脑都已经知道怎么解——是别的程序员事先告诉它的——比如「求一堆散落在三维直角座标系之中的多面体在 8(x-3)-10(y+1)-11(z-1)=0 这个平面上一个给定范围内的投影」或者「给定一些彼此相连的顶点,求任意两点之间的最短路径」之类的数学题,它只需要千万分之一秒就能给你解好。这种能力有什么用?电脑上 FPS 游戏的本质活动就是不停地求三维座标系下的多面体经过变换之后在二维平面上的投影,不停地判断两个多面体是否彼此重叠,以及不停地寻找两个顶点之间的最短路径,最终达到让怪物冲到你面前咬你一口的目的。不止游戏如此,其他软件也都差不多,每一个细节都是某种数学题——比如知乎页面顶端的蓝色导航条背景,就是 CSS 描述的一个浅蓝到深蓝的渐变——渐变是怎么回事呢?给出两个数字分别代表两种颜色,以及第三个数字代表一段距离,求一系列颜色的数值以及次序,使得这段距离中两种相邻颜色之间的变化最小。数学题。别说 C 语言,一切编程语言最终都只能做数学题,根据给定的数据,算出另一些数据,算出更多的数据,然后存贮、发送或者呈现算出的数据。&br&&br&不过我能理解你的困惑。投入大量时间看完教程,结果只能在黑框里输出一串数字。这是在学编程还是在向七十年代致敬?编程是这样无法给人成就感的活动吗?是,也不是。看你的表述,应该不是小孩子了,因为小孩子不会因为初学编程能做的事情很少而没有成就感,或者说,觉得这样做没有成就感的小孩子根本不会继续学下去。最初学编程的成就感单纯来自于「我居然可以指挥机器做一些事」,至少我小时候用中华学习机编一个程序帮我算暑假作业上的四则运算题时是这样感觉的。写出这些程序并用它解题虽然远比自己动笔去把题目算出来费时,却让人乐此不疲。那时候我还不知道马里奥碰到花会变身这种事情其实也是靠编程编出来,所以我也不会去想学编程「并&b&不能&/b&做什么」。&br&&br&无奈大多数人过了一定年纪就很难再靠「我能指挥机器」这种简单原始的快乐来驱动自己学编程。见过世面,听过传言,欲望和野心变得复杂而庞大,你想要图形界面,音乐音效,人工智能,云端同步,可是你闷头学了几堂课,还是只学会在黑框里显示一串数字。你怀疑这是学 C 语言的错,于是你到知乎上来问了这个问题。&br&&br&你的疑惑是有道理的。&br&&br&如果能把编程学下去,日后你就会明白,任何程序都是一座冰山,最终用户能看到的界面和使用的功能,只是程序浮在水面上的十分之一。知乎这个网站其实也是个运行在某台电脑上的程序,你能看到的十分之一是用什么编写的呢?HTML,CSS,JavaScript,或者 Objective-C。而你看不到的那十分之九是用什么编写的呢?Python。这些你无法直接观测到的 Python 程序运行在世界某个角落的某些计算机上,隔着光缆、双绞线和无线基站,为你面前或掌上的用户界面注入生命。&br&&br&&figure&&img src=&https://pic2.zhimg.com/4e6cabdb54c15_b.jpg& data-rawwidth=&518& data-rawheight=&588& class=&origin_image zh-lightbox-thumb& width=&518& data-original=&https://pic2.zhimg.com/4e6cabdb54c15_r.jpg&&&/figure&( &a href=&//link.zhihu.com/?target=http%3A//xkcd.com/353/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&xkcd: Python&/a& )&br&&br&……可是 Python 是用什么编写的呢?C 语言(当然,这么说并不严谨,Python 理论上可以用任何其他语言实现,实际上也已经被用很多其他语言实现了,不过这并不是重点)。任何编程语言都是实现某个功能的工具,Python 实现了知乎这个网站的大部分功能,而 C 实现了「用 Python 写程序」这个功能。为什么是 C?&br&&br&&blockquote&C 很别扭又缺陷重重,却异常成功。固然有历史的巧合推波助澜,可也的确是因为它能满足对于这样一种系统实现语言的需要:既有相当的效率来取代汇编语言,且又足够地抽象而流畅,能够用于描述各种各样的环境之下的算法与交互。&br&&i&C is quirky, flawed, and an enormous success. Although accidents of history surely helped, it evidently satisfied a need for a system implementation language efficient enough to displace assembly language, yet sufficiently abstract and fluent to describe algorithms and interactions in a wide variety of environments.&/i&&br&——C 语言之父,Dennis M. Ritchie&/blockquote&&br&C 是初代程序员所使用的语言,那时候硬件很贵,软件必须高效;而计算机的用户都是职业程序员,对于硬件有足够的理解。C 贴近硬件,就意味着它容易译成机器能懂的语言,而它的设计者也并不需要操心普通人学起来可能会比较困难——而且,说真的,其实也不很难。但是,这么多年过去之后,软件规模变得越来越大,C 就像锤子和手锯,修小木屋得心应手,造摩天楼就比较力不从心;但 C 语言可以用来造出其他更适合建造摩天楼的工具,乃至组成摩天楼的预制件,就好比用锤子和手锯造出挖掘机和吊车、混凝土板和一体门窗一样(当然,这个类比并不十分贴切。可是没有什么类比能贴切地描述软件工程,因为软件工程像许多东西,却又什么东西都不像)。&br&&br&所以,回到你的问题上来,是的,学会 C 计算机语言真的可以开发出很多东西,但除非内力深厚,场合适当,并且闲得蛋疼,大多数人不会拿 C 或者只拿 C 来开发太大的东西。如果你只是想要一门能够让你「编辑出一个啥子游戏或者软件出来」的语言,而且你用 Windows,那建议你转去学学 C#。它长得和 C 挺像,但却能迅速地写出至少是带有图形界面的程序,用起来也很方便,鼠标点一点就能让你对自己的程序看起来什么样有个比较直观的印象。还有,在国内,C# 的教材也相当容易找到。当然 Python 也是一个很好的选择。&br&&br&&figure&&img src=&https://pic4.zhimg.com/601cf5b6adc3d883a8cc9e_b.jpg& data-rawwidth=&640& data-rawheight=&429& class=&origin_image zh-lightbox-thumb& width=&640& data-original=&https://pic4.zhimg.com/601cf5b6adc3d883a8cc9e_r.jpg&&&/figure&&br&另外,还有一件事你必须弄明白:现代的所谓编程这一活动,其实大部分时候是在「合理地堆砌别人已经实现的功能来实现新的功能」,C 语言莫不如是,比如 printf 这个东西,是别人做出来的「把一些数据按照指定格式输出到屏幕上」这一功能。而别人还做出来许多其他功能,比如「在发现用户短时间内连续两次按下鼠标又松开的时候调用你写好的一个函数」。学会怎样在 C 或者其他任何程序语言中使用这些既有功能,也是学习编程的一门重头戏。等你弄明白这一点,你也就找到了你问题的答案。&br&&br&尾注1:题图画错了。马里奥身宽应为 16 像素,我画成了 17。&br&尾注2:NES 上的超级玛利奥使用 6502 汇编完成,并不是 C,碰撞检测也不是像素级的。&br&尾注3:我不是易语言发明者。
马里奥碰到花朵就变身。 什么是马里奥?一个装着 16 × 32 个小色块的长方形,其中一些色块填着颜色,另一些没有。什么是花?一个 16 × 16 的正方形。什么是「变身」?把马里奥这个方块里面代表衣服的褐色变成红色,代表背带裤的红色变成白色。什么是褐色…
神经网络很萌的!&br&&br&&b&0. 分类&/b&&br&神经网络最重要的用途是分类,为了让大家对分类有个直观的认识,咱们先看几个例子:&br&&ul&&li&垃圾邮件识别:现在有一封电子邮件,把出现在里面的所有词汇提取出来,送进一个机器里,机器需要判断这封邮件是否是垃圾邮件。&/li&&li&疾病判断:病人到医院去做了一大堆肝功、尿检测验,把测验结果送进一个机器里,机器需要判断这个病人是否得病,得的什么病。&/li&&li&猫狗分类:有一大堆猫、狗照片,把每一张照片送进一个机器里,机器需要判断这幅照片里的东西是猫还是狗。&/li&&/ul&这种能自动对输入的东西进行分类的机器,就叫做分类器。&br&&br&分类器的输入是一个数值向量,叫做特征(向量)。在第一个例子里,分类器的输入是一堆0、1值,表示字典里的每一个词是否在邮件中出现,比如向量(1,1,0,0,0......)就表示这封邮件里只出现了两个词abandon和abnormal;第二个例子里,分类器的输入是一堆化验指标;第三个例子里,分类器的输入是照片,假如每一张照片都是320*240像素的红绿蓝三通道彩色照片,那么分类器的输入就是一个长度为320*240*3=230400的向量。&br&&br&分类器的输出也是数值。第一个例子中,输出1表示邮件是垃圾邮件,输出0则说明邮件是正常邮件;第二个例子中,输出0表示健康,输出1表示有甲肝,输出2表示有乙肝,输出3表示有饼干等等;第三个例子中,输出0表示图片中是狗,输出1表示是猫。&br&&br&分类器的目标就是让正确分类的比例尽可能高。一般我们需要首先收集一些样本,人为标记上正确分类结果,然后用这些标记好的数据训练分类器,训练好的分类器就可以在新来的特征向量上工作了。&br&&br&&b&1. 神经元&/b&&br&咱们假设分类器的输入是通过某种途径获得的两个值,输出是0和1,比如分别代表猫和狗。现在有一些样本:&br&&figure&&img src=&https://pic3.zhimg.com/6ecf14a96fc508a0ce2c8c9f77a89662_b.jpg& data-rawwidth=&420& data-rawheight=&315& class=&content_image& width=&420&&&/figure&大家想想,最简单地把这两组特征向量分开的方法是啥?当然是在两组数据中间画一条竖直线,直线左边是狗,右边是猫,分类器就完成了。以后来了新的向量,凡是落在直线左边的都是狗,落在右边的都是猫。&br&&br&一条直线把平面一分为二,一个平面把三维空间一分为二,一个n-1维超平面把n维空间一分为二,两边分属不同的两类,这种分类器就叫做神经元。&br&&br&大家都知道平面上的直线方程是&img src=&//www.zhihu.com/equation?tex=ax%2Bby%2Bc%3D0& alt=&ax+by+c=0& eeimg=&1&&,等式左边大于零和小于零分别表示点&img src=&//www.zhihu.com/equation?tex=%28x%2Cy%29& alt=&(x,y)& eeimg=&1&&在直线的一侧还是另一侧,把这个式子推广到n维空间里,直线的高维形式称为超平面,它的方程是:&br&&img src=&//www.zhihu.com/equation?tex=h+%3D+a_1x_1%2Ba_2+x_2%2B...%2Ba_nx_n%2Ba_0%3D0& alt=&h = a_1x_1+a_2 x_2+...+a_nx_n+a_0=0& eeimg=&1&&&br&神经元就是当h大于0时输出1,h小于0时输出0这么一个模型,它的实质就是&b&把特征空间一切两半,认为两瓣分别属两个类&/b&。你恐怕再也想不到比这更简单的分类器了,它是McCulloch和Pitts在1943年想出来了。&br&&br&这个模型有点像人脑中的神经元:从多个感受器接受电信号&img src=&//www.zhihu.com/equation?tex=x_1%2C+x_2%2C...%2Cx_n& alt=&x_1, x_2,...,x_n& eeimg=&1&&,进行处理(加权相加再偏移一点,即判断输入是否在某条直线&img src=&//www.zhihu.com/equation?tex=h%3D0& alt=&h=0& eeimg=&1&&的一侧),发出电信号(在正确的那侧发出1,否则不发信号,可以认为是发出0),这就是它叫神经元的原因。&br&&br&当然,上面那幅图我们是开了上帝视角才知道“一条竖直线能分开两类”,在实际训练神经元时,我们并不知道特征是怎么抱团的。神经元模型的一种学习方法称为Hebb算法:&br&&br&先随机选一条直线/平面/超平面,然后把样本一个个拿过来,如果这条直线分错了,说明这个点&b&分错边了&/b&,就稍微把直线移动一点,让它靠近这个样本,争取跨过这个样本,让它跑到直线正确的一侧;如果直线分对了,它就暂时停下不动。因此训练神经元的过程就是这条直线不断在跳舞,最终跳到两个类之间的竖直线位置。&br&&br&&b&2. 神经网络&/b&&br&MP神经元有几个显著缺点。首先它把直线一侧变为0,另一侧变为1,这东西不可微,不利于数学分析。人们用一个和0-1阶跃函数类似但是更平滑的函数Sigmoid函数来代替它(Sigmoid函数自带一个尺度参数,可以控制神经元对离超平面距离不同的点的响应,这里忽略它),从此神经网络的训练就可以用梯度下降法来构造了,这就是有名的反向传播算法。&br&&br&神经元的另一个缺点是:它只能切一刀!你给我说说一刀怎么能把下面这两类分开吧。&br&&figure&&img src=&https://pic3.zhimg.com/28cd0deae5b9f80de4e4a_b.jpg& data-rawwidth=&420& data-rawheight=&315& class=&content_image& width=&420&&&/figure&解决办法是多层神经网络,底层神经元的输出是高层神经元的输入。我们可以在中间横着砍一刀,竖着砍一刀,然后把左上和右下的部分合在一起,与右上的左下部分分开;也可以围着左上角的边沿砍10刀把这一部分先挖出来,然后和右下角合并。&br&&br&&b&每砍一刀,其实就是使用了一个神经元&/b&,把不同砍下的半平面做交、并等运算,就是把这些神经元的输出当作输入,后面再连接一个神经元。这个例子中特征的形状称为异或,这种情况一个神经元搞不定,但是两层神经元就能正确对其进行分类。&br&&br&只要你能砍足够多刀,把结果拼在一起,什么奇怪形状的边界神经网络都能够表示,所以说神经网络&b&在理论上&/b&可以表示很复杂的函数/空间分布。但是真实的神经网络是否能摆动到正确的位置还要看网络初始值设置、样本容量和分布。&br&&br&神经网络神奇的地方在于它的每一个组件非常简单——把空间切一刀+某种激活函数(0-1阶跃、sigmoid、max-pooling),但是可以一层一层级联。输入向量连到许多神经元上,这些神经元的输出又连到一堆神经元上,这一过程可以重复很多次。这和人脑中的神经元很相似:每一个神经元都有一些神经元作为其输入,又是另一些神经元的输入,数值向量就像是电信号,在不同神经元之间传导,每一个神经元只有满足了某种条件才会发射信号到下一层神经元。当然,人脑比神经网络模型复杂很多:人工神经网络一般不存在环状结构;人脑神经元的电信号不仅有强弱,还有时间缓急之分,就像莫尔斯电码,在人工神经网络里没有这种复杂的信号模式。&br&&br&&figure&&img src=&https://pic2.zhimg.com/df53fac99fc53ba5a90666abcca25e6d_b.jpg& data-rawwidth=&300& data-rawheight=&225& class=&content_image& width=&300&&&/figure&&br&&br&神经网络的训练依靠反向传播算法:最开始输入层输入特征向量,网络层层计算获得输出,输出层发现输出和正确的类号不一样,这时它就让最后一层神经元进行参数调整,最后一层神经元不仅自己调整参数,还会勒令连接它的倒数第二层神经元调整,层层往回退着调整。经过调整的网络会在样本上继续测试,如果输出还是老分错,继续来一轮回退调整,直到网络输出满意为止。这很像中国的文艺体制,武媚娘传奇剧组就是网络中的一个神经元,最近刚刚调整了参数。&br&&br&&b&3. 大型神经网络&/b&&br&&br&我们不禁要想了,假如我们的这个网络有10层神经元,第8层第2015个神经元,它有什么含义呢?我们知道它把第七层的一大堆神经元的输出作为输入,第七层的神经元又是以第六层的一大堆神经元做为输入,那么这个特殊第八层的神经元,它会不会代表了某种抽象的概念?&br&&br&就好比你的大脑里有一大堆负责处理声音、视觉、触觉信号的神经元,它们对于不同的信息会发出不同的信号,那么会不会有这么一个神经元(或者神经元小集团),它收集这些信号,分析其是否符合某个抽象的概念,和其他负责更具体和更抽象概念的神经元进行交互。&br&&br&2012年多伦多大学的Krizhevsky等人构造了一个超大型&a href=&//link.zhihu.com/?target=http%3A//www.cs.toronto.edu/%7Efritz/absps/imagenet.pdf& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&卷积神经网络&/a&[1],有9层,共65万个神经元,6千万个参数。网络的输入是图片,输出是1000个类,比如小虫、美洲豹、救生船等等。这个模型的训练需要海量图片,它的分类准确率也完爆先前&b&所有&/b&分类器。纽约大学的&a href=&//link.zhihu.com/?target=http%3A//web.engr.illinois.edu/%7Eslazebni/spring14/lec24_cnn.pdf& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Zeiler和Fergusi&/a&[2]把这个网络中某些神经元挑出来,把在其上响应特别大的那些输入图像放在一起,看它们有什么共同点。他们发现中间层的神经元响应了某些十分抽象的特征。&br&&br&第一层神经元主要负责识别颜色和简单纹理&br&&figure&&img src=&https://pic4.zhimg.com/cbd8eee22dca8b0e67f84b3_b.jpg& data-rawwidth=&779& data-rawheight=&422& class=&origin_image zh-lightbox-thumb& width=&779& data-original=&https://pic4.zhimg.com/cbd8eee22dca8b0e67f84b3_r.jpg&&&/figure&&br&第二层的一些神经元可以识别更加细化的纹理,比如布纹、刻度、叶纹。&br&&figure&&img src=&https://pic4.zhimg.com/78fd60058ceabf34d8c77_b.jpg& data-rawwidth=&1060& data-rawheight=&531& class=&origin_image zh-lightbox-thumb& width=&1060& data-original=&https://pic4.zhimg.com/78fd60058ceabf34d8c77_r.jpg&&&/figure&&br&&br&第三层的一些神经元负责感受黑夜里的黄色烛光、鸡蛋黄、高光。&br&&figure&&img src=&https://pic3.zhimg.com/aae832d13b33f15ba97c358fdf7319d2_b.jpg& data-rawwidth=&1058& data-rawheight=&537& class=&origin_image zh-lightbox-thumb& width=&1058& data-original=&https://pic3.zhimg.com/aae832d13b33f15ba97c358fdf7319d2_r.jpg&&&/figure&&br&第四层的一些神经元负责识别萌狗的脸、七星瓢虫和一堆圆形物体的存在。&br&&figure&&img src=&https://pic4.zhimg.com/d456b0fda993b_b.jpg& data-rawwidth=&1058& data-rawheight=&489& class=&origin_image zh-lightbox-thumb& width=&1058& data-original=&https://pic4.zhimg.com/d456b0fda993b_r.jpg&&&/figure&&br&第五层的一些神经元可以识别出花、圆形屋顶、键盘、鸟、黑眼圈动物。&br&&figure&&img src=&https://pic3.zhimg.com/abff15f9ddb3eb716c7da6_b.jpg& data-rawwidth=&1060& data-rawheight=&601& class=&origin_image zh-lightbox-thumb& width=&1060& data-original=&https://pic3.zhimg.com/abff15f9ddb3eb716c7da6_r.jpg&&&/figure&&br&&br&这里面的概念并不是整个网络的输出,是网络中间层神经元的偏好,它们为后面的神经元服务。虽然每一个神经元都傻不拉几的(只会切一刀),但是65万个神经元能学到的东西还真是深邃呢。&br&&br&[1] Krizhevsky, A., Sutskever, I., & Hinton, G. E. (2012). Imagenet classification with deep convolutional neural networks. In &i&Advances in neural information processing systems&/i& (pp. ).&br&[2] Zeiler, M. D., & Fergus, R. (2013). Visualizing and understanding convolutional neural networks. &i&arXiv preprint arXiv:&/i&.
神经网络很萌的! 0. 分类 神经网络最重要的用途是分类,为了让大家对分类有个直观的认识,咱们先看几个例子: 垃圾邮件识别:现在有一封电子邮件,把出现在里面的所有词汇提取出来,送进一个机器里,机器需要判断这封邮件是否是垃圾邮件。疾病判断:病人到…
呃,邀请对人了。 &br&&br&很基本的问题,哈? &br&&br&要解释清楚这个问题,先要解释二极管是怎么回事。&br&要解释二极管是怎么回事,先让我们了解下硅。 ----半导体产业也被成为硅产业。&br&&br&一&br&为什么是硅?&br&&br&自然界里面存在大量的硅。沙子,玻璃都是硅或者是二氧化硅。&br&在元素周期表里面,硅在碳的正下方。是四价的物质。&br&如果你还记得金刚石的结构,一个碳原子跟旁边四个碳原子相连,构成了一种稳定的结构。那么你也可以想象在纯净的硅晶体里面,原子是怎么相连的。&br&&br&就是下图这个样子。&br&&figure&&img src=&https://pic3.zhimg.com/de11b9a89717d6_b.png& data-rawwidth=&543& data-rawheight=&257& class=&origin_image zh-lightbox-thumb& width=&543& data-original=&https://pic3.zhimg.com/de11b9a89717d6_r.png&&&/figure&&br&&br&为什么是这样子的稳定结构?&br&硅是四价的物质,就意味着在它的最外层,有四个电子。&br&可是其实它的最外层可以容纳的电子数量是八个。 所以它告诉旁边的四个原子:&br&我有一个电子,你有一个电子,我们两都把电子拿出来,这样我们就都有两个电子,这样好吧?&br&简直是瞌睡遇到枕头,旁边的原子也正有此意。于是它一共拿了四个电子出来,跟四个硅原子分享,一共得到了八个电子。这样所有的原子大家都happy,沉浸在一种满足的喜悦当中。&br&&br&所以其实纯净的硅是不导电的。因为你看,没东西可以导电。原子和原子通过电子紧密相连,顺便也把这些电子绑得严严实实。我们知道,电子的移动产生了电流。如果没有电子可以移动,电流也就无从产生。&br&&br&那我们那这么一坨不能导电的东西有什么鸟用?&br&&br&二&br&P型半导体和N型半导体&br&&br&纯净的硅确实没有多大的用处。但是,假如我们想一想办法,就能赋予硅奇妙的性质。这种办法就是参杂。&br&&br&试想一下,要是我们用一种五价的原子,来代替上图中某一个硅原子的位置,会发生什么。&br&&br&五价的原子周围一共有5个电子。可是它的周围只有四个硅原子。它们只需要它的四个电子。&br&这下惨了。这些电子就像玩抢板凳的游戏一样,五个电子,总共只有四个板凳。&br&于是多了一个电子出来,没地方去,尴尬地站在黑板那儿。觉得世界那么大,但哪儿都不属于我。&br&&figure&&img src=&https://pic4.zhimg.com/4dab6ca343ac22d48905b_b.png& data-rawwidth=&540& data-rawheight=&402& class=&origin_image zh-lightbox-thumb& width=&540& data-original=&https://pic4.zhimg.com/4dab6ca343ac22d48905b_r.png&&&/figure&&br&&br&于是这颗电子失去了键力的约束,内心的疯狂渐渐滋长。到最后他就到处游荡起来。我们叫这颗电子自由电子,它可以在器件内部到处跑来跑去。&br&&br&掺了五价原子的硅于是就具有了导电性。我们称这种半导体为N型半导体。&br&&br&那假如我们掺杂掺成三价的原子,又怎么样呢?&br&&br&就多了一根板凳。&br&&br&现在设想一下,有人家里结婚了,请了20桌亲朋好友来吃婚宴,每桌可以坐八个人。可是现在第一桌只来了七个人。&br&&br&第二桌的一个人看见第一桌空了一个位置,说:我来坐这里。&br&然后第二桌就空了一个位置。&br&第三桌过来一个人又把第二桌的空位坐了&br&……&br&&br&这样,虽然是人在从一个位置挪到另外一个位置,可是看起来却像是位置从第一桌挪到第二桌,然后不断挪动一样。&br&&br&这些吃饭的人就好比电子,位置就好比空穴。&br&&br&这样,空穴的移动(当然,其实也是电子的移动),也使得掺了三价物质的硅变成了导体。 &br&我们把掺三价物质的硅叫做P型半导体。&br&&br&&figure&&img src=&https://pic1.zhimg.com/dcb26a2f0cd2e39e78fab7ab02fbb3dc_b.png& data-rawwidth=&640& data-rawheight=&341& class=&origin_image zh-lightbox-thumb& width=&640& data-original=&https://pic1.zhimg.com/dcb26a2f0cd2e39e78fab7ab02fbb3dc_r.png&&&/figure&&br&&br&&br&三&br&把P型半导体和N型半导体放到一起&br&&br&如果把一块P型硅和一块N型硅放到一起,会怎么样呢?&br&&br&N型硅里的电子表示这辈子从来没看到过这么多妹子,阿不,空穴。&br&&br&于是它们就会朝着P型搬到体内部扩散。 一个电子只要看到一个空穴,就把这个位置占了。然后后面的电子再跑过来,继续朝前扩散。自由电子嘛,就像发疯的野马一样,天花板上都有它们的脚印。 &br&&br&哟,那这样一来,会不会N型半导体里的电子都跑到P型半导体里面,把空位都占了,这不是又让这个东西变成跟从前没掺杂时候一样了吗?&br&&br&多虑了。这个事情是不可能发生的。&br&五价的原子虽然多出来了一个电子,可是这个电子不是白白都出来的。当这个电子远离了生他养他的故乡,它留下的不只是一个传说……它还留下了一个带正电荷的,孤零零的五价原子——它现在只有四个电子在身边了。&br&&br&同样的道理,P型硅里的空穴要是被电子占据,也不是白白被占据的。因为P型硅里面掺的三价原子旁边本生只有三个电子,现在无缘无故地多了一个出来,它们总的电荷量就变成了负电荷。&br&&br&在N型硅和P型硅交界的地方,从N型硅里跑出来的电子跑到了P型硅里,在N型硅里留下一个正电荷,在P型硅里产生一个负电荷。 于是电场就产生了。这个电场从N型硅指向P型硅。阻止电子继续从N型硅跑过来。&br&我们把这种因为电子和空穴的思乡之情而产生的电场叫做内建电场。&br&&br&因为内建电场的存在,这块半导体内部的电子和空穴的移动达到了宏观上的平衡。所以也就没有电流的流动。&br&&br&只是,在PN结(引入这个词表示P型半导体和N型半导体的接触面)附近,大概几百纳米的范围内,有一片奇怪的区域,在这片区域内,电子和空穴不再单身,而是进去夫妻双双把家还的模式。基本上找不到自由电子或者是自由空穴的存在了,我们叫他耗尽区。(一个有意思的冷知识:硅原子大小大概是0.5nm,也就是说,耗尽区大概是几百个硅原子厚度)&br&&br&&figure&&img src=&https://pic4.zhimg.com/d2cd54f6cd76fd3f4ed529f_b.png& data-rawwidth=&203& data-rawheight=&158& class=&content_image& width=&203&&&/figure&&br&四&br&上面说到的PN结,就是我们常常说到的二极管。&br&&br&二极管有什么特性呢? 电流只能从一边流到另一边。 反方向不行。&br&&br&说一说这是为什么:&br&&br&假如我们从P端向N端施加一个正向的电压,会发生什么事情呢? &br&P型半导体内部的空穴,都有一股朝着N型半导体内移动的冲动。它们移动到靠近PN结附近,把原先在耗尽区以外的空穴朝耗尽区以内挤。于是结果是耗尽区变薄了。&br&&br&这下好了,耗尽区变薄了,再也没有足够的电场强度维持之前的平衡了。现在更多的电子可以从N型硅通过扩散移动到P型硅。也有更多的空穴可以从P型硅扩散到N型硅。这些扩散的电子和空穴形成了一股电流。这就是PN结正向导通的时候形成的电流。&br&&br&那么假如加上的电压是从N端向P端的,会发生什么事情呢?&br&由上文的推理可知,这次PN结的宽度会增加。但是增加的PN结宽度没什么用。如果说在不施加电的状态下的平衡,是通过反向电场把扩散过来的电子再给推回去的的话,现在增加的PN结宽度,只是把这堵墙修得更高。 却不会带来电子或是空穴的流动了。&br&&br&所以PN结反偏的时候不导电。&br&&br&五&br&&br&回到问题。&br&&br&题主的问题是说,假如我们现在有一个NMOS导电,在线性区的时候容易理解,因为这个时候NMOS下面的反型层刚好可以把源漏的N型半导体联通在一起。&br&可是假如是工作在饱和区。从我们看到的示意图来说,沟道和漏端之间似乎根本没有联通。那么这个时候,电流是如何从沟道跑到漏极去的呢? 它们飞过去的吗?&br&&br&我们来理一理&br&&br&NMOS下面的反型层,是N型的。所以反型层里面自由移动的都是电子。&br&&br&现在这些电子移动到夹断区附近。那里是一个反偏的PN结。在这个PN结里面,电场的方向是从漏极指向源极的。电子刚刚靠近这个结,立刻就会被这个结中的电场俘获,并且扫走。最终抵达漏极形成电流。&br&&br&六&br&其他干货时间&br&&br&1. PN结反偏电压可以一直增加吗?&br& 不可以。 我们刚才看到,PN结中虽然看上去没有电子了,但是其实这是一种抽象的假设。耗尽区中是有电子的。只是电子的密度会随着耗尽区按照指数减小。减小得很快。&br&这些电子虽然不多,但是也会在反向电场的作用下被加速,产生微小的电流。&br&假如反向电压比较小,问题不大。&br&可是一旦反向电压够高,电子就会在电场里面被加速得很快。当它们快到一定程度,就会把之前好好呆在空穴里的电子轰出来。被轰出来的这个电子又被加速,轰出另外一个电子。就这样子子孙孙无穷尽也,耗尽区里就形成了极多的电子空穴对,变成了导体。 这就是击穿。&br&&br&2. 电流总是从漏流向源吗?&br&在漏极电压比较低的情况下,大多数电流都是从漏极流向源的。&br&但是如果漏极电压比较高,电子通过耗尽区的时候会有一定的概率再撞出一个电子和空穴。电子会继续朝着漏极运动,而空穴将被电场扫到P型的衬底。变成衬底电流。
呃,邀请对人了。 很基本的问题,哈? 要解释清楚这个问题,先要解释二极管是怎么回事。 要解释二极管是怎么回事,先让我们了解下硅。 ----半导体产业也被成为硅产业。 一 为什么是硅? 自然界里面存在大量的硅。沙子,玻璃都是硅或者是二氧化硅。 在元素周…
XY~&br&硕士读的是电力电子与电力传动专业,硕士毕业去了上海航天技术研究院下属的上海空间电源研究所(内部称「811」)工作了一段时间,具体的工作就是做航天飞行器电源的设计,下面结合自己以前学习与工作的一些经验与体会谈谈题主的问题。&br&&b&(1)关于「开关电源工程师需要哪些知识」&/b&&br&以一个简单的Buck变换器的设计为例进行说明。&br&&figure&&img src=&https://pic4.zhimg.com/4c716b633b2f4d5cb70e93_b.jpg& data-rawwidth=&328& data-rawheight=&230& class=&content_image& width=&328&&&/figure&[图片来自:Erickson R W, Maksimovic D. Fundamentals of power electronics[M]. Springer, 2001]&br&设计如图所示的这样一个Buck变换器,需要如下知识:&br&&b&①电路拓扑的原理与设计&/b&&br&电源设计的第一步就是拓扑选型及方案设计&br&&ul&&li&清楚不同变换器所能实现的功能,根据设计要求选取合适的拓扑;&br&&/li&&li&熟知变换器的工作状态,能对变换器进行稳态分析和交流小信号分析;&br&&/li&&li&熟悉变换器的数学模型,能获取变换器稳态输入输出关系和传递函数;&br&&/li&&li&根据变换器的传函,能对变换器进行环路设计;&br&&/li&&li&在环路设计的基础上,分析系统的稳定性(伯德图等);&/li&&li&熟悉变换器的损耗计算(导通损耗、开关损耗)。&br&&/li&&/ul&&b&②仿真分析&/b&&br&电源设计方案确定之后,可以对其进行仿真分析,已验证设计方案的准确性和可行性。&br&在进行开关电源设计时,常用的仿真软件有&br&&ul&&li&PSIM/Pspice(电力电子建模);&/li&&li&Saber(数模混合建模);&br&&/li&&li&Matlab/Simulink。&br&&/li&&/ul&&p&因为上述这些仿真软件各有特色,我的使用习惯是根据仿真需要,选择使用。&/p&&p&&b&③元器件知识&/b&&br&&/p&&p&完成了方案设计、仿真分析之后,就要进行硬件设计,首当其冲的是元器件的选型问题。&/p&&ul&&li&熟悉功率元器件(IGBT、MOSFET等)的特性及使用方法;&br&&/li&&li&熟悉RLC等一般元器件的使用;&br&&/li&&li&熟悉变压器或电感的设计方法;&br&&/li&&li&熟悉滤波器的设计方法。&br&&/li&&/ul&&b&④PCB绘图与制版&/b&&br&&ul&&li&元器件选型确定之后,就是要制版了,这时会用到Protel或Altium designer。&br&&/li&&li&根据设计方案,绘制电源的原理图&br&&/li&&li&根据元器件选型,制作其封装库(有些需要自己制作);&br&&/li&&li&PCB板布线(需考虑接地、EMC等问题);&br&&/li&&li&将PCB图交厂家生产。&br&&/li&&/ul&&b&⑤数字控制器的使用&/b&&br&&ul&&li&开关器件的开关信号可由模拟电路产生也可由数字控制器产生,当使用数字控制器时,就需要熟悉其原理及使用方法,常用的有DSP、FPGA等。&br&&/li&&li&熟悉数字控制器的原理&br&&/li&&li&熟悉数字控制器外围电路的设计&br&&/li&&li&熟悉数字控制器的编程语言&br&&/li&&li&能根据相应的调制方式产生开关器件的开关信号。&/li&&/ul&&b&⑥EMC设计&/b&&br&EMC设计贯穿电源设计的始终,涉及到屏蔽、滤波、接地、PCB 设计等层面,对于开关电源的设计非常重要。&br&&b&(2)关于「怎样进行学习」&/b&&br&&b&①基本理论的学习&/b&&br&千里之行始于足下,没有扎实的理论基础,就无法出色地设计一个开关电源。&br&推荐几本自己用过的专业书籍:&br&&ul&&li&Erickson R W, Maksimovic D. Fundamentals of power electronics[M]. Springer, 2001&br&&/li&&/ul&★★★★★内容丰富、讲解详细,体系有条理、逻辑很清晰&br&&ul&&li&徐德鸿. 电力电子系统建模及控制[M]. 机械工业出版社, 2006.&br&&/li&&/ul&★★★★内容类似与第一本书,只不过内容偏少&br&&ul&&li&Maniktala S.精通开关电源设计[M]. 人民邮电出版社, 2008.&br&&/li&&/ul&★★★★与工程实践相结合,很具有指导意义&br&&b&②在实践中学习&/b&&br&在实践中检验所学,在实践中深入学习。&br&当你把一个电路调通,输出符合设计的目标时,那种喜悦是别人无法体会的。&br&不怕出问题,就怕不出问题。在电路的设计、仿真和硬件的制作过程中,每出现的一个问题都是学习的对象,知识的运用与积累也是建立在这样的一个个问题之中。&br&在实践中学习最能提高一个电源设计师的水平。
XY~ 硕士读的是电力电子与电力传动专业,硕士毕业去了上海航天技术研究院下属的上海空间电源研究所(内部称「811」)工作了一段时间,具体的工作就是做航天飞行器电源的设计,下面结合自己以前学习与工作的一些经验与体会谈谈题主的问题。 (1)关于「开关…
谢邀 &a data-hash=&1992cdeae42bdf6& href=&//www.zhihu.com/people/1992cdeae42bdf6& class=&member_mention& data-editable=&true& data-title=&@崔凯枫& data-hovercard=&p$b$1992cdeae42bdf6&&@崔凯枫&/a& ^^&br&==============&b&变压器啸叫&/b&的原理======================&br&&p&变压器的啸叫声主要是由于变压器的激磁成分中含有&b&低频&/b&&b&振荡&/b&,使得磁芯的磁分子在这个低频磁场下运动,产生机械振动,从而引起周围空气的振动。由于人耳的可闻频率大约在20Hz到20kHz,如果这个空气的振动在此范围内,最终传到人耳朵而被听见。&/p&&p&&figure&&img src=&https://pic1.zhimg.com/f6e08dd12c_b.jpg& data-rawwidth=&251& data-rawheight=&201& class=&content_image& width=&251&&&/figure&「图片来自网络」 &br&&/p&&p&==============&b&变压器啸叫&/b&的原因======================&/p&&p&开关电源变压器发生啸叫的原因主要有四个方面:变压器的工艺问题、变压器的环路问题、变压器的铁心问题以及开关电源的负载问题,下面一一分析。&/p&&p&&u&&b&(1)变压器的工艺问题&/b&&/u&&/p&&p&①浸漆烘干不到位,导致磁芯不牢固引起机械振动而发出响声;&/p&&p&②气隙的长度不适合,导致变压器的工作状态不稳定而发出响声;&/p&&p&③线包没有绕紧也可能导致响声;&/p&&p&④磁芯组合有气隙存在,高频时引起空气振动而发出响声(变压器如果经过真空全浸,一般不会发声)。&/p&&p&&b&&u&(2)变压器的环路问题&/u&&/b&&/p&&p&变压器的环路问题即指变压器的环路发生振荡从而引起变压器发生啸叫。&/p&&p&①电路板布线不当,从而造成干扰引发振荡,导致响声;&/p&&p&②反馈回路参数设置不当,导致环路不稳定以致产生振荡而发出响声;&/p&&p&③环路中元器件的质量问题,如输入滤波电容容量不足,输出整流快恢复二极管质量不好,功率MOS管质量不好,RCD反冲吸收回路的高压电容或二极管质量不好等等,这些问题都有可能导致震荡而引起响声。&/p&&p&&b&&u&(3)变压器的铁心问题&/u&&/b&&/p&&p&变压器铁心发生饱和时,线圈中电流增大,变压器发热并产生自激震荡,线圈的振荡引起周围空气的振动从而发出响声。&/p&&p&&b&&u&(4)开关电源的负载问题&/u&&/b&&/p&&p&①开关电源在空载或轻载的情况下,在某些工作点处会发生振荡现象,表现为变压器的啸叫和输出的不稳定。&/p&&p&发生这种现象是由于空载/轻载时,开关瞬时开通时间过大从而造成输出能量太大,进而电压过冲也很大,需要较长的时间去恢复到正常电压,因此开关需停止工作一段时间,这样开关就工作于间歇性工作模式,使变压器发生较低频率(有规律的间歇性全截止周期或占空比剧烈变化的频率)的振动。&/p&&p&②变压器工作在严重的超载状态,时刻都有烧毁的可能——这就是许多电源烧毁前“惨叫”的由来。&/p&&br&&p&====================================================&/p&&p&参考文献:&/p&&p&①Maniktala S, 王志强. 精通开关电源设计[M]. 人民邮电出版社, 2008.&/p&&p&②&a href=&//link.zhihu.com/?target=http%3A//bbs.21dianyuan.com/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&最专业的、极具人气的电源论坛、电子论坛&/a&&/p&
^^ ==============变压器啸叫的原理====================== 变压器的啸叫声主要是由于变压器的激磁成分中含有低频振荡,使得磁芯的磁分子在这个低频磁场下运动,产生机械振动,从而引起周围空气的振动。由于人耳的可闻频率大约在20Hz到20kHz,…
谢邀,抱歉这么久回复。看了 &a data-hash=&8df633ee98c506fb65f5bcc842bff5bd& href=&//www.zhihu.com/people/8df633ee98c506fb65f5bcc842bff5bd& class=&member_mention& data-editable=&true& data-title=&@future energy& data-hovercard=&p$b$8df633ee98c506fb65f5bcc842bff5bd&&@future energy&/a&和 &a data-hash=&c06486fcde3fdec1d67c1& href=&//www.zhihu.com/people/c06486fcde3fdec1d67c1& class=&member_mention& data-editable=&true& data-title=&@Yike& data-hovercard=&p$b$c06486fcde3fdec1d67c1&&@Yike&/a&的回复,受益匪浅,答案很赞,future energy基础之扎实让人羡慕呀。我对最后两点发表点意见。&br&首先,是最后一个问题,数字控制的延迟,如何思考这个问题,这是一个很经典的BUCK数字控制闭环。&br&&figure&&img src=&https://pic4.zhimg.com/dd03f212d99a0b_b.jpg& data-rawwidth=&954& data-rawheight=&324& class=&origin_image zh-lightbox-thumb& width=&954& data-original=&https://pic4.zhimg.com/dd03f212d99a0b_r.jpg&&&/figure&&br&举一个一拍滞后的例子来讲,首先一拍滞后的概念就是PWM更新比起模拟调制滞后了一个开关周期,Hc这个环节是用来模拟ADC转换时间和中断计算时间带来的延迟Td,在下图示中,Td=1/2Ts,所以引入了半拍滞后。&br&&figure&&img src=&https://pic3.zhimg.com/f12f82b44a612eaa73dc4f503bfb8d1e_b.jpg& data-rawwidth=&1316& data-rawheight=&426& class=&origin_image zh-lightbox-thumb& width=&1316& data-original=&https://pic3.zhimg.com/f12f82b44a612eaa73dc4f503bfb8d1e_r.jpg&&&/figure&那么另外的半拍的滞后怎么来的,首先假设ADC是个理想采样,采样周期为Ts,PWM模块是一个具有保持器功能的模块,用来触发ADC模块的启动,ADC模块的来触发PI计算程序的中断,这样ADC模块和PWM模块共同组成一个采样保持器,这个效应可以 用下图说明。所以说反馈回来的信号在每个Ts间隔被采样,然后在通过这个采样保持器重建。然后发现这个通过采样保持重建的信号与原信号居然有延迟。延迟多少呢,以这个例子来说就是180f/fs。f是你感兴趣的频率,比如控制带宽处的频率,fs是开关频率。这个效应可以用一个零阶效应保持器来表示。&br&&figure&&img src=&https://pic3.zhimg.com/8dbf02cbcfd5e_b.jpg& data-rawwidth=&1236& data-rawheight=&493& class=&origin_image zh-lightbox-thumb& width=&1236& data-original=&https://pic3.zhimg.com/8dbf02cbcfd5e_r.jpg&&&/figure&以上两个环节均可以在S域模型里建模:&br&Hc的s域模型为:
&img src=&//www.zhihu.com/equation?tex=Hc%28s%29%3De%5E%7B-sTd%7D+& alt=&Hc(s)=e^{-sTd} & eeimg=&1&&&br&ZOH的s域模型为:&img src=&//www.zhihu.com/equation?tex=SH%28s%29%3D%281-e%5E%7B-sTs%7D+%29%2Fs& alt=&SH(s)=(1-e^{-sTs} )/s& eeimg=&1&&&br&所以和模拟控制的区别,主要体现在这两个环节。在我还是本科的时候对这个问题很感兴趣,因为那时候没什么人能讲清这个问题,而且根本对PI环参数在数字控制如何设计没有头绪,我一直以为这是个新问题,立志解决,哈哈。最后发现其实早有人研究了,而且非常清楚。关于如何进行数字控制的PI参数设计,我这里可以介绍一种非常简单的方法给新手,独家秘诀。&br&首先所有研究都在s域研究,先对变换器建模,和模拟设计没有区别,建模完成后,我们可以将s域表达式转化到Z域,然后在Z域设计控制器。下面我简单的给出我在matlab的一个例子。&br&&p&&i&Vin=60.0;Vo=28;Io=3.57;Kd=1/14;L=210e-6;C=660e-6;Rc=98e-3;RL=Vo/Io;fs=100.0e3;Ts=1/Td=0.5*T;&/i&&/p&&p&&i&num_Gps=Vin*[Rc*C1];denom_Gps=[L*C*(1+Rc/RL)(L/RL+Rc*C)
1];&/i&&/p&&p&&i&Gps_dly=tf(num_Gps,denom_Gps,'inputdelay',Td);%s-domainplantwithcomputationdelayTd%&/i&&/p&&p&&i&Gpz=c2d(Gps_dly*Kd,Ts,'zoh');%DiscreteplantwithZOH,KdandTd%&/i&&/p&&p&一般变换器都是单输入单输出,建议大家使用一个matlab里边的一个工具sisotool。这个工具就是专门用来为单输入单输出系统来设计控制系统的,而且直接是在Z域下。下图是一个BUCK开环传递函数,用sisotool可以看他的根轨迹和系统的零极点,是不是太强大了。&/p&&figure&&img src=&https://pic2.zhimg.com/5c7b79dcec52aec0b3ed1aedba6c8af9_b.jpg& data-rawwidth=&455& data-rawheight=&388& class=&origin_image zh-lightbox-thumb& width=&455& data-original=&https://pic2.zhimg.com/5c7b79dcec52aec0b3ed1aedba6c8af9_r.jpg&&&/figure&&p&然后最强大的部分来了,你可以在这个波特图上直接添加零极点来改善系统特性。。。。然后经过我随手几下补偿(1个低频极点,2个谐振处的零点,1个高频零点),然后相位裕度就补偿变成66°了。&/p&&p&&figure&&img src=&https://pic4.zhimg.com/67d4c5ba_b.jpg& data-rawwidth=&490& data-rawheight=&429& class=&origin_image zh-lightbox-thumb& width=&490& data-original=&https://pic4.zhimg.com/67d4c5ba_r.jpg&&&/figure&最后这个工具把你随便点的那几下帮你转换成Z域表达式了!!!太牛逼了,我自己都膜拜了,这自己还要干啥!有了Z域方程,如何转变成差分方程,就自己查查书吧。这套数字设计方法,就算拿到公司我觉得先基本可以秒杀大部分电源公司的设计方法。&/p&&p&&figure&&img src=&https://pic3.zhimg.com/6eccdafed38da_b.jpg& data-rawwidth=&500& data-rawheight=&346& class=&origin_image zh-lightbox-thumb& width=&500& data-original=&https://pic3.zhimg.com/6eccdafed38da_r.jpg&&&/figure&倒数第二个问题,小信号模型建模的线性化与准确度限制,带宽过大时会引起系统不稳定。这个问题我只评论一下,其实精确建模方法早就有了,离散迭代建模(时域模型),可以参考下科罗拉多大学的研究成果,这个方法可以十分精确的模拟到开关瞬间,如果你计算机牛逼,不忽略任何高次项,模型建立出来的结果就和仿真软件一样。一些专家根据这些模型可以推出一个变换器和一个特定的控制器下的稳定边界,和实际实验非常吻合。但是缺陷在于无法指导控制器设计,只能用来在控制器已经设计的条件下来确定稳定边界。我觉得这也是一个很有前途的研究方向,如何让这些复杂的建模方法不只只是重复模拟开关现象,而是来指导控制器设计(和传统小信号模型建模)。我听一个学控制的人讲,搞电力电子建模的人(精确模型貌似现在多在时域)都是采用了流体动力学那一套数学理论,所以这个领域如果数学上没什么建树,很难想象有什么突破。&/p&
谢邀,抱歉这么久回复。看了 和 的回复,受益匪浅,答案很赞,future energy基础之扎实让人羡慕呀。我对最后两点发表点意见。 首先,是最后一个问题,数字控制的延迟,如何思考这个问题,这是一个很经典的BUCK数字控制闭环。 举一个一拍…
&p&谢邀, &a data-hash=&84abd692& href=&//www.zhihu.com/people/84abd692& class=&member_mention& data-tip=&p$b$84abd692& data-hovercard=&p$b$84abd692&&@张珅华&/a&&/p&&p&这个问题是很专业的问题,因此我这个答案注定也是专业而非科普的答案,非电力电子专业的小伙伴看不懂很正常。而且如果不搞这行的话,私下觉得其实也完全没有搞懂这个的必要(我能说其实就算搞这行的懂变换器的建模和控制的也是凤毛麟角么。。。)。&/p&&p&逐一回答题主的问题。&/p&&br&&p&&b&1、
香农采样定理&/b&&/p&&p&看到这个定理,估计第一反应就是联想到信号与系统、数字信号处理、ADC采样blabla,但绝对联想到不到电力电子变换器,香农采样定理和电力电子变换器扯上关系又是什么鬼?且听我细细道来。&/p&&p&对于电力电子变换器来说,占空比是最终的控制信号。而调制波和载波交截确定了占空比,那么占空比是由调制波确定的,这句话对么?Not exactly,精准的说法是,调制波与载波的&b&交截点&/b&确定了占空比。&/p&&p&&b&请和我一起大声念三遍:交截点!交截点!交截点!&/b&&/p&&p&如图1,两个调制波显然是不一样的,但是他们和载波的交截点一样,那么占空比就一样,最终的控制效果就一样,由于PWM环节的存在,两个调制波的差异信息仿佛丢失了一般。看出点什么了没?这其实不就是&b&采样&/b&么?采样的特点是什么?就是只能得到采样时刻的信息,而两次采样之间的信息是丢失的,这也不正是PWM环节的特点么?&b&所以电力电子变换器本质上是一个离散采样系统。&/b&&/p&&figure&&img src=&https://pic1.zhimg.com/4a4a126f767e637dd70aad201cad9a40_b.jpg& data-rawwidth=&407& data-rawheight=&347& class=&content_image& width=&407&&&/figure&&p&图1&/p&&p&由于是采样,那么自然有香农采样定理,香农采样定理告诉我们,电力电子变换器输出电压的频率是有上限的,理论上最高是开关频率(载波频率)的一半。其实想想现实中存在的变换器,是不是恍然大悟了?一个开关频率为100kHz的变换器,你可以让他输出直流(0频率),输出50Hz(并网逆变器),400Hz(航空变流器),但有没有听说一个开关频率为100kHz的变换器能输出可控的100kHz的正弦波的?没有吧(如果有,我们实验室做ET电源的那位美女师姐和帅哥师弟要开心死了。。。)。这其实和环路截止频率为开关频率的1/5~1/10没啥关系,哪怕你环路截止频率再高,也不可能输出开关频率一半频率以上的电压,这是由采样系统本质决定的。&/p&&p&(注:上述讨论的是最简单最普遍的变换器,不考虑多电平、载波移相、MMC等结构,那些拓扑结构是有可能使得输出电压的频率极大地逼近开关频率,但这些结构的本质和我上面说的完全不是一回事,不影响我上面分析的正确性,这个展开来说就太多了,这里懒得写了,懂的自然懂)&/p&&br&&p&&b&2、
调制波与载波多次相交&/b&&/p&&p&这个叫斜坡匹配原则。&/p&&p&正常情况下调制波和载波应该这样:&/p&&figure&&img src=&https://pic2.zhimg.com/4dcea514f04f5_b.jpg& data-rawwidth=&407& data-rawheight=&193& class=&content_image& width=&407&&&/figure&&p&图2&/p&&p&而当调制波上升的斜率超过载波上升斜率时,就会进入不正常的状态,比如这样(即题主所说的多次交截):&/p&&figure&&img src=&https://pic4.zhimg.com/a88222dbeb83bdae787a3_b.jpg& data-rawwidth=&407& data-rawheight=&193& class=&content_image& width=&407&&&/figure&&p& 图3&/p&&p&所以说,要降低环路的截止频率,使其能够很好地抑制开关次的纹波,使得调制波的上升斜率不超过载波的上升斜率,这确实是可以算模拟控制中环路截止频率为开关频率的1/5~1/10的原因之一。&/p&&p&但数字控制不存在这个问题,数字控制由于零阶保持器的存在,调制波在一个周期内是保持不变的,斜率恒为0,如图4,不存在斜率匹配的要求&/p&&figure&&img src=&https://pic1.zhimg.com/9e1ba5ecd62ef9d4b44f45c_b.jpg& data-rawwidth=&553& data-rawheight=&170& class=&origin_image zh-lightbox-thumb& width=&553& data-original=&https://pic1.zhimg.com/9e1ba5ecd62ef9d4b44f45c_r.jpg&&&/figure&&br&&p&图4&/p&&br&&p&&b&3、
小信号模型的准确性&/b&&/p&&p&这个问题很关键,其实准确的说法是,状态空间平均法的准确性。&/p&&p&我们来看下状态空间平均法对PWM环节的处理。&/p&&figure&&img src=&https://pic4.zhimg.com/539c25fbeaf190c71e806f_b.jpg& data-rawwidth=&357& data-rawheight=&179& class=&content_image& width=&357&&&/figure&&br&&p&图5&/p&&p&假设一个电力电子变换器开关频率为100k,调制波频率为10k,那么经过PWM环节得到占空比,&b&状态空间平均法认为得到的占空比也是一个&/b&&b&10k&/b&&b&的交流信号(&/b&&b&如图5&/b&&b&所示的红线)&/b&&b&,即PWM&/b&&b&环节等效为一个比例环节。&/b&但实际上不完全是这样的,对占空比做傅里叶分析,可以知道占空比中除了10k的分量外,还有90K,110K,190K……的分量,那么状态空间平均法的准确度就依赖于这些非基波分量的抑制程度,显然,带宽越低,对这些非基波频率的分量抑制能力越强,状态空间平均法得到的模型就越准确。这是电力电子变换器环路截止频率为开关频率的1/5~1/10的重要原因之一,我实验室有个同学就做这方面研究的,他告诉我,&b&当环路截止频率超过开关频率的&/b&&b&1/5&/b&&b&以后,用状态空间平均法得出的模型就和实际模型差距比较大了。&/b&&/p&&p&当然,也有考虑边带频率来建模的,这就是多频率模型,当然该模型的复杂程度是远远大于状态空间平均法得到的模型了。但该模型也有实际的应用场合,比如在VRM中,要求变换器动态响应非常快,那么往往就需要环路截止频率为开关频率的1/3甚至更高,这时候状态空间平均法完全无法指导设计了,必须要用多频域模型。&/p&&p&贴一张CPES关于多频率模型的研究成果,可以看到随着带宽提高,状态空间平均法和实际模型差距越来越大。&/p&&figure&&img src=&https://pic1.zhimg.com/3dc89c9a05d8dab0712a4_b.jpg& data-rawwidth=&436& data-rawheight=&409& class=&origin_image zh-lightbox-thumb& width=&436& data-original=&https://pic1.zhimg.com/3dc89c9a05d8dab0712a4_r.jpg&&&/figure&&figure&&img src=&https://pic1.zhimg.com/9ba1d6a791d395f80e11f27b4b93fcb8_b.jpg& data-rawwidth=&456& data-rawheight=&452& class=&origin_image zh-lightbox-thumb& width=&456& data-original=&https://pic1.zhimg.com/9ba1d6a791d395f80e11f27b4b93fcb8_r.jpg&&&/figure&&p&图6&/p&&p&当然我们实验室专门研究建模的同学(我们都喊他教授)有更准确的模型,但是还没有publish出来,所以我这里不能提供啦。&/p&&br&&p&&b&4、
数字控制的延时问题&/b&&/p&&p&这个问题也很重要,不同于模拟控制,数字控制由于存在零阶保持器和一拍滞后,总共会在环路中引入1.5拍滞后,如图7所示。&/p&&figure&&img src=&https://pic2.zhimg.com/0e69eb8c3def54fa4d9131_b.jpg& data-rawwidth=&462& data-rawheight=&502& class=&origin_image zh-lightbox-thumb& width=&462& data-original=&https://pic2.zhimg.com/0e69eb8c3def54fa4d9131_r.jpg&&&/figure&&br&&p&图7&/p&&p&1.5拍滞后是什么概念呢?就是如果采样频率等于开关频率,在环路中会引入540*f/fs的相位滞后,也就是说,在开关频率处会引入540度的相位滞后!即使截止频率是开关频率的1/10,光是数字控制在截止频率处也会引入54度的相位滞后,其实也很难补偿回来了。所以说,在数字控制下,为了保持控制系统有足够的相角裕度,其截止频率会更低一些,从而减小数字控制引入的相角滞后的影响。当然还有一种办法是提高采样频率,现在我们做逆变器一般采样频率是开关频率的两倍。这也是为了减小数字控制造成的延迟。&/p&&p&就写这么多,其实我在我们实验室不算控制最精通的,不过那位专门搞控制的教授估计不上知乎,所以大家就随便看看我写的好啦:)&/p&&p&请同行指正 &a data-hash=&c06486fcde3fdec1d67c1& href=&//www.zhihu.com/people/c06486fcde3fdec1d67c1& class=&member_mention& data-tip=&p$t$c06486fcde3fdec1d67c1& data-hovercard=&p$b$c06486fcde3fdec1d67c1&&@Yike&/a&&a data-hash=&df5ad462ac4d4e9d1baae32137e0debc& href=&//www.zhihu.com/people/df5ad462ac4d4e9d1baae32137e0debc& class=&member_mention& data-tip=&p$b$df5ad462ac4d4e9d1baae32137e0debc& data-hovercard=&p$b$df5ad462ac4d4e9d1baae32137e0debc&&@FrancisQu&/a&&a data-hash=&dffd1568acbaf& href=&//www.zhihu.com/people/dffd1568acbaf& class=&member_mention& data-tip=&p$b$dffd1568acbaf& data-hovercard=&p$b$dffd1568acbaf&&@evans Joe&/a&&a data-hash=&f782fdc530efa& href=&//www.zhihu.com/people/f782fdc530efa& class=&member_mention& data-tip=&p$b$f782fdc530efa& data-hovercard=&p$b$f782fdc530efa&&@沈志远&/a&&/p&&br&&p&评论区干货更多,而且大神出没@张轩&/p&
谢邀, 这个问题是很专业的问题,因此我这个答案注定也是专业而非科普的答案,非电力电子专业的小伙伴看不懂很正常。而且如果不搞这行的话,私下觉得其实也完全没有搞懂这个的必要(我能说其实就算搞这行的懂变换器的建模和控制的也是凤毛麟角么。。…
&b&由于PID属于无模型控制,调节三个环节的参数会产生什么影响根据控制对象的不同也会有很大差别。你提到的这些结论其实都是根据经验总结出来的。&/b&&br&既然你说是从来没有接触过PID,那我就举例尽量说明一下PID控制是怎么一回事。&br&&br&1)假设我们面对的系统是一个简单的水箱的液位,要从空箱开始注水直到达到某个高度,而你能控制的变量是注水笼头的开关大小。那么这个简单的数学模型就是&br&&br&&img src=&//www.zhihu.com/equation?tex=dx%3Du& alt=&dx=u& eeimg=&1&&&br&&br&对于这个简单的系统,我们甚至只需要一个&b&比例环节&/b&&br&&br&&br&&img src=&//www.zhihu.com/equation?tex=u%3Dk_%7Bp%7D+e+& alt=&u=k_{p} e & eeimg=&1&&&br&&br&&br&就能将其控制住。&br&说白了,也就是水箱液位离预定高度远的时候就开大点,离的近的时候就开小点,随着液位逐步接近预定高度逐渐关掉水龙头。&br&&br&此时,&img src=&//www.zhihu.com/equation?tex=k_%7Bp%7D+& alt=&k_{p} & eeimg=&1&&的大小代表了水龙头的粗细(即出水量大小对液位误差的敏感程度,假设水龙头开度与误差正比关系),越粗调的越快,也就是所谓的&&b&增大比例系数一般会加快系统响应&&/b&。如下图:&br&&figure&&img src=&https://pic2.zhimg.com/1bf36a354dc1_b.jpg& data-rawheight=&420& data-rawwidth=&561& class=&origin_image zh-lightbox-thumb& width=&561& data-original=&https://pic2.zhimg.com/1bf36a354dc1_r.jpg&&&/figure&&br&2)假设咱们这个水箱不仅仅是装水的容器了,还需要持续稳定的给用户供水。&br&那这个系统的数学模型就需要增加一项:&br&&br&&img src=&//www.zhihu.com/equation?tex=dx%3Du-c& alt=&dx=u-c& eeimg=&1&&,这里这个&img src=&//www.zhihu.com/equation?tex=c& alt=&c& eeimg=&1&&是个正的常数。&br&&br&这时候我们发现如果控制器只有一个比例环节,那么当系统稳定,也就是&img src=&//www.zhihu.com/equation?tex=dx%3D0& alt=&dx=0& eeimg=&1&&的时候,恰好&img src=&//www.zhihu.com/equation?tex=e%3D%5Cfrac%7Bc%7D%7Bk_%7Bp%7D%7D+& alt=&e=\frac{c}{k_{p}} & eeimg=&1&&。&img src=&//www.zhihu.com/equation?tex=e& alt=&e& eeimg=&1&&在系统稳定时不为0,液位离我们想要的高度总是差那么一点,这也就是所谓的稳态误差,或者叫静差。&br&这时候&img src=&//www.zhihu.com/equation?tex=c& alt=&c& eeimg=&1&&是固定的,那么当然&img src=&//www.zhihu.com/equation?tex=k_%7Bp%7D+& alt=&k_{p} & eeimg=&1&&越大,&img src=&//www.zhihu.com/equation?tex=e& alt=&e& eeimg=&1&&就越小。这也就是所谓的&b&增大比例系数P在有静差的情况下有利于减小静差。&/b&如下图:&br&&figure&&img src=&https://pic2.zhimg.com/a51fc3baa4344afdf95c6c9_b.jpg& data-rawheight=&420& data-rawwidth=&561& class=&origin_image zh-lightbox-thumb& width=&561& data-original=&https://pic2.zhimg.com/a51fc3baa4344afdf95c6c9_r.jpg&&&/figure&&br&&br&3) 从上面的式子&img src=&//www.zhihu.com/equation?tex=e%3D%5Cfrac%7Bc%7D%7Bk_%7Bp%7D%7D+& alt=&e=\frac{c}{k_{p}} & eeimg=&1&&大家可以看出来,&img src=&//www.zhihu.com/equation?tex=k_%7Bp%7D+& alt=&k_{p} & eeimg=&1&&再大那也只是个分母,不可能把&img src=&//www.zhihu.com/equation?tex=e& alt=&e& eeimg=&1&&变成0的。老是调不到预定位置老板是会骂人的,这可咋办?&br&&br&然后有人就想到,第二小节里头那个水箱跟第一小节的相比,不就是多了一个漏水的窟窿么。它漏多少我给它补多少,那不就成了第一小节里的简单系统了么。靠谁补呢?积分环节这时候就派上用场了。&br&我们把之前的控制器变成&b&比例环节+积分环节:&img src=&//www.zhihu.com/equation?tex=u%3Dk_%7Bp%7D+e+%2Bk_%7Bi%7D%5Cint_%7B0%7D%5E%7Bt%7D+edt& alt=&u=k_{p} e +k_{i}\int_{0}^{t} edt& eeimg=&1&&&br&&/b&&br&积分环节的意义就相当于你增加了一个水龙头,这个水龙头的开关规则是水位比预定高度低就一直往大了拧,比预定高度高就往小了拧。如果漏水速度不变,那么总有一天这个水龙头出水的速度恰好跟漏水的速度相等了,系统就和第一小节的那个一样了。那时,静差就没有了。这就是所谓的&b&积分环节可以消除系统静差。&/b&&br&&br&4)啥叫&b&积分时间常数&/b&呢?一般PID控制里,表示积分环节敏感度的那个系数&img src=&//www.zhihu.com/equation?tex=k_%7Bi%7D%3D%5Cfrac%7Bk_%7Bp%7D+%7D%7BT_%7Bi%7D%7D++& alt=&k_{i}=\frac{k_{p} }{T_{i}}
& eeimg=&1&&, 这个&img src=&//www.zhihu.com/equation?tex=T_%7Bi%7D& alt=&T_{i}& eeimg=&1&&就是积分时间常数。从这个式子我们可以看出,积分时间常数越大,积分环节系数就越小,积分环节就越不敏感(也就是第二个水龙头越细)。&br&&br&当咱们只有一个比例环节的水龙头注水的时候,是不会注水注多的,因为离得越近水龙头关的越小啊。&br&但是当咱们用俩水龙头注水的时候,在没到预定高度前第二个积分环节的水龙头可以一直在往大了拧的,那当到达预定高度的时候它恰好拧到最大,自然而然就会注水注多了。而多出去的这部分水就叫做“&b&超调&/b&”。第二个水龙头越粗,多注的水就会越多,它调到恰好等于漏水速度的时间就会越快,但同时会多更多波折。&br&于是,老师告诉我们&b&增大积分时间I有利于减小超调,减小振荡,使系统的稳定性增加,但是系统静差消除时间变长。&/b&如下图:&br&&br&&figure&&img src=&https://pic4.zhimg.com/7d20a7bb08b55a6e4003011ecde23623_b.jpg& data-rawheight=&420& data-rawwidth=&561& class=&origin_image zh-lightbox-thumb& width=&561& data-original=&https://pic4.zhimg.com/7d20a7bb08b55a6e4003011ecde23623_r.jpg&&&/figure&&br&5)接下来我们来看点有意思的东西。还是上面这个系统,假如我们选用相同的积分时间常数,但是选择不同的比例系数会如何呢?&br&&br&&figure&&img src=&https://pic1.zhimg.com/acbca84abe8_b.jpg& data-rawheight=&420& data-rawwidth=&561& class=&origin_image zh-lightbox-thum

我要回帖

更多关于 017ee.com 的文章

 

随机推荐