当前位置:文档之家› PostgreSQL8.1中文(8)IV客户端接口

PostgreSQL8.1中文(8)IV客户端接口

PostgreSQL8.1中文(8)IV客户端接口
PostgreSQL8.1中文(8)IV客户端接口

IV.客户端接口

这部分描述和P ostgreSQL一起发布的客户端编程接口。这里的每一章都可以独立阅读。请注意还有许多用于客户端程序的编程接口是独立发布的,它们包含自己的文档(Appendix H列出了一些比较流行的)。这部分的读者应该熟悉使用SQL命令操作和查询数据库(参阅P art II),并且当然也得熟悉接口使用的编程语言。

Table of Contents

28.libpq-C库

28.1.数据库联接函数

28.2.连接状态函数

28.3.命令执行函数

28.4.异步命令处理

28.5.取消正在处理的查询

28.6.捷径接口

28.7.异步通知

28.8.与COPY命令相关的函数

28.9.控制函数

28.10.注意信息处理

28.11.环境变量

28.12.口令文件

28.13.SSL支持

28.14.在多线程程序里的行为

28.15.制作libpq程序

28.16.例子程序

29.大对象

29.1.历史

29.2.实现特点

29.3.客户端接口

29.4.服务器端函数

29.5.例子程序

30.ecpg-在C里嵌入SQL

30.1.概念

30.2.与数据库服务器连接

30.3.关闭连接

30.4.运行SQL命令

30.5.选取一个连接

30.6.使用宿主变量

30.7.动态SQL

30.8.使用SQL描述符范围

30.9.错误处理

30.10.头文件

30.11.处理嵌入的SQL程序

30.12.库函数

30.13.内部

31.信息模式

31.1.关于这个模式

31.2.数据类型

https://www.doczj.com/doc/8d4622142.html,rmation_schema_catalog_name

31.4.applicable_roles

31.5.check_constraints

31.6.column_domain_usage

31.7.column_privileges

31.8.column_udt_usage

31.9.columns

31.10.constraint_column_usage

31.11.constraint_table_usage

31.12.data_type_privileges

31.13.domain_constraints

31.14.domain_udt_usage

31.15.domains

31.16.element_types

31.17.enabled_roles

31.18.key_column_usage

31.19.parameters

31.20.referential_constraints

31.21.role_column_grants

31.22.role_routine_grants

31.23.role_table_grants

31.24.role_usage_grants

31.25.routine_privileges

31.26.routines

31.27.schemata

31.28.sql_features

31.29.sql_implementation_info

31.30.sql_languages

31.31.sql_packages

31.32.sql_sizing

31.33.sql_sizing_profiles

31.34.table_constraints

31.35.table_privileges

31.36.tables

31.37.triggers

https://www.doczj.com/doc/8d4622142.html,age_privileges

31.39.view_column_usage

31.40.view_table_usage

31.41.view s

Chapter28.libpq-C库

Table of Contents

28.1.数据库联接函数

28.2.连接状态函数

28.3.命令执行函数

28.3.1.主函数

28.3.2.检索查询结果信息

28.3.3.检索其它命令的结果信息

28.3.4.逃逸包含在SQL命令中的字串

28.3.5.逃逸包含在SQL命令中的二进制字串

28.4.异步命令处理

28.5.取消正在处理的查询

28.6.捷径接口

28.7.异步通知

28.8.与COPY命令相关的函数

28.8.1.用于发送COPY数据的函数

28.8.2.用于接收COPY数据的函数

28.8.3.用于COPY的废弃的函数

28.9.控制函数

28.10.注意信息处理

28.11.环境变量

28.12.口令文件

28.13.SSL支持

28.14.在多线程程序里的行为

28.15.制作libpq程序

28.16.例子程序

libpq是P ostgreSQL的C应用程序接口。libpq是一套允许客户程序向P ostgreSQL服务器服务进程发送查询并且获得查询返回的库函数。

libpq同时也是其他几个P ostgreSQL应用接口下面的引擎,包括C++,P erl,Python,Tcl和ECPG。所以如果你使用这些软件包,libpq某些方面的特性会对你非常重要。特别是Section28.11,Section28.12和Section28.13描述了任何使用libpq的应用的用户可见的行为。

本章末尾有三个小程序显示如何利用libpq书写程序。(Section28.16)在源代码发布的src/test/examples目录里面有几个完整的libpq应用的例子。

使用libpq的前端程序必须包括头文件libpq-fe.h并且必须与libpq库链接。

28.1.数据库联接函数

下面的函数处理与P ostgreSQL服务器服务器联接的事情。一个应用程序一次可以与多个服务器建立联接。(这么做的原因之一是访问多于一个数据库。)每个连接都是用一个从函数PQconnectdb()或PQsetdbLogin()获得的PGconn对象表示。注意,这些函数总是返回一个非空的对象指针,除非存储器

少得连个PGconn对象都分配不出来。在把查询发送给联接对象之前,可以调用PQstatus函数来检查一下联接是否成功。

PQconnectdb

与服务器数据库服务器建立一个新的联接。

PGconn*PQconnectdb(const char

*conninfo);

这个函数用从一个字符串conninfo来的参数与数据库打开一个新的联接。与下面的PQsetdbLogin()不同的是,我们可以不必更换函数签名(名字)就可以扩展参数集,所以我们建议应用程序中使用这个函数(或者是它的类似的非阻塞的变种PQconnectStart和PQconnectP oll)。

传入的参数可以为空,表明使用所有缺省的参数,或者可以包含一个或更多个用空白间隔的参数设置。每个参数以关键字=数值的形式设置。等号周围的空白是可选的。要写一个空值或者一个包含空白的值,你可以用一对单引号包围它们,例如,keyw ord='a value'。数值内部的单引号和反斜杠必须用一个反斜杠逃逸,比如,\'或\\。

目前可识别的参数键字是:

host

要联接的主机名。如果主机名以斜杠开头,则它声明使用Unix域套接字通讯而不是TCP/IP通讯;该值就是套接字文件所存储的目录。如果没有声明host,那么缺省时是与位于/tmp目录(或者制作P ostgreSQL的时候声明的套接字目录)里面的Unix-域套接字联接。在没有Unix域套接字的机器上,缺省是与localhost连接。

hostaddr

与之联接的主机的IP地址。这个应该是标准的IPv4地址格式,比如,172.28.40.9。如果你的机器支持IPv6,那么你也可以使用IPv6的地址。如果声明了一个非空的字符串,那么使用TCP/IP通讯机制。

使用hostaddr取代host可以让应用避免一次主机名查找,这一点对于那些有时间约束的应用来说可能是非常重要的。不过,K erberos认证系统要求主机(host)名。因此,应用下面的规则:如果声明了不带hostaddr的host那么就强制进行主机名查找。如果声明中没有host,hostaddr的值给出远端的地址;如果使用了K erberos,将导致一次反向名字查询。如果同时声明了host和hostaddr,除非使用了K erberos,否则将使用hostaddr的值作为远端地址;host的值将被忽略,如果使用了K erberos,host的值用于K erberos认证。(要注意如果传递给libpq的主机名(host)不是地址hostaddr处的机器名,那么认证很有可能失败。)同样,在~/.pgpass(参阅Section28.12)中是使用host而不是hostaddr来标识连接。

如果主机名(host)和主机地址都没有,那么libpq将使用一个本地的Unix域套接字进行通讯;或者是在没有Unix域套接字的机器上,它将尝试与localhost连接。

port

主机服务器的端口号,或者在Unix域套接字联接时的套接字扩展文件名。

dbname

数据库名。缺省和用户名相同。

user

要联接的P ostgreSQL用户名。缺省是与运行该应用的用户操作系统名同名的用户。

passw ord

如果服务器要求口令认证,所用的口令。

connect_timeout

连接的最大等待时间,以秒计(用十进制整数字串书写)。零或者不声明表示无穷。我们不建议把连接超时的值设置得小于2秒。

options

发送给服务器的命令行选项。

tty

忽略(以前,这个选项声明服务器日志的输出方向)。

sslmode

这个选项决定是否需要和服务器协商一个SSL连接,以及以什么样的优先级与服务器进行SSL连接。有四种模式可供选择:disable将只进行一个没有加密的非SSL连接;allow将和服务器进行协商,首先尝试一个非SSL连接,如果失败,尝试一个SSL连接;prefer(缺省)将进行协商,首先尝试SSL连接,如果失败,尝试一个正常的非SSL连接;require将只进行SSL连接。

如果P ostgreSQL编译时没有打开SSL支持,那么使用require将导致一个错误,而libpq将接受allow 和prefer,但是它实际上不会企图进行SSL连接。

requiressl

这个选项因为有了sslmode设置之后已经废弃了。

如果设为1,则要求与服务器进行SSL联接(等效于sslmode require)。如果服务器不支持SSL,那么libpq将马上拒绝联接。设置为0(缺省)与服务器进行协商连接类型(等效于sslmode prefer)。这个选项只有在编译P ostgreSQL时打开了SSL支持才有效。

krbsrvname

在用K erberos5认证使用的K erberos服务名。这个名字必须和服务器给K erberos认证配置的服务名相同,才能认证成功。(又见Section20.2.3。)

service

用于额外参数的服务名。它在pg_service.conf里面声明一个服务名,这个配置文件保存额外的连接参数。这样就允许应用应用只声明一个服务名,而连接参数就可以在一个地方维护了。参阅安装目录中的share/pg_service.conf.sample获取如何设置这个文件的信息。

如果有任何没有声明的参数,那么将检查对应的环境变量(参阅Section28.11小节)。如果环境变量也没有设置,那么使用编译时的指明的内置缺省。

PQsetdbLogin

与服务器数据库服务器建立一个新的联接。

PGconn*PQsetdbLogin(const char

*pghost,

const char*pgport,

const char*pgoptions,

const char*pgtty,

const char*dbName,

const char*login,

const char*pw d);

这个函数是PQconnectdb前身,它有固定个数的参数。它有相同的功能,只是在调用中那些它缺少的参数总是用缺省值。如果么给任意的固定参数设置缺省值,那么写一个NULL或者一个空字串给它们。

PQsetdb

与服务器数据库服务器建立一个新的联接。

PGconn*PQsetdb(char*pghost,

char*pgport,

char*pgoptions,

char*pgtty,

char*dbName);

这是一个调用PQsetdbLogin()的宏,只是login和pw d参数用空(null)代替。提供这个函数是为了与非常老版本的程序兼容。

PQconnectStart

PQconnectPoll

与数据库服务器建立一次非阻塞的联接。

PGconn*PQconnectStart(const char

*conninfo);

PostgreSQLPollingStatusType

PQconnectPoll(PGconn*conn);

这两个函数用于打开一个与数据库服务器之间的非阻塞的联接:你的应用的执行线索在执行它的时候不会因远端的I/O而阻塞。这个方法的要点是等待I/O结束可以发生在应用的主循环里,而不是在PQconnectdb里,这样应用可以把这件事与其它操作并发起来一起执行。

数据库联接是用从conninfo字符串里取得的参数传递给PQconnectStart进行的。这个字符串的格式与上面PQconnectdb里描述的一样。

PQconnectStart和PQconnectP oll都不会阻塞(进程),不过有一些条件:

必须正确提供hostaddr和host参数以确保不会发生正向或者反向的名字查找。参阅上面PQconnectdb 里的这些参数的文档获取细节。

如果你调用了PQtrace,确保你跟踪进入的流对象不会阻塞。

你必须在调用PQconnectP oll之前确保socket处于正确的状态,象下面描述的那样。

要开始一次非阻塞连接请求,调用conn=PQconnectStart("connection_info_string")。如果conn是空,表明libpq无法分配一个新的PGconn结构。否则,返回一个有效的PGconn指针(尽管还不一定代表一个与数据库有效联接)。PQconnectStart一返回,调用status=PQstatus(conn)。如果status等于CONNECTION_BAD,PQconnectStart失败。

如果PQconnectStart成功了,下一个阶段是轮询libpq,这样它就可以继续连接序列动作。使用PQsocket(conn)获取数据库链接下层的套接字描述符。象这样循环:如果PQconnectP oll(conn)的最后一个返回是PGRES_POLLING_READING,那么就等到套接字准备好被读取了的时候(就像系统函数select(),poll(),或者类似的系统调用声明的那样)。然后再次调用PQconnectP oll(conn)。同样,如果PQconnectP oll(conn)最后返回PGRES_POLLING_W RITING,那么就等到套接字准备好可以写了,然后再次调用PQconnectP oll(conn)。如果你还没调用PQconnectP oll,比如,刚刚调用完PQconnectStart,那么按照它刚返回PGRES_POLLING_W RITING的原则行动。继续这个循环直到PQconnectP oll(conn)返回PGRES_POLLING_FAILED,表明连接失败,或者PGRES_POLLING_OK,表明连接成功建立。

在联接的任意时刻,我们都可以通过调用PQstatus来检查联接的状态。如果这是CONNECTION_BAD,那么联接过程失败;如果是CONNECTION_OK,那么联接已经做好。这两种状态同样也可以从上面的PQconnectP oll的返回值里检测到。其他状态可能(也只能)在一次异步联接过程中发生。这些标识联接过程的当前状态,因而可能对给用户提供反馈有帮助。这些状态可能包括:

CONNECTION_STAR TED

等待进行联接。

CONNECTION_M ADE

联接成功;等待发送。

CONNECTION_AW AITING_RESPONSE

等待来自服务器的响应。

CONNECTION_AUTH_OK

已收到认证;等待联接启动继续进行。

CONNECTION_SSL_STARTUP

协商SSL加密。

CONNECTION_SETENV

协商环境驱动的参数设置。

注意,尽管这些常量将保持下去(为了维持兼容性),应用决不应该依赖于这些常量以某种特定顺序出现,或者是根本不应依赖于这些常量,或者是不应该依赖于这些状态总是某个文档声明的值。一个应用可能象象下面这样:

sw itch(PQstatus(conn))

{

case CONNECTION_STARTED:

feedback="正在连接...";

break;

case CONNECTION_M ADE:

feedback="与服务器连接已建立...";

break;

.

.

.

default:

feedback="正在连接...";

}

在使用PQconnectP oll的时候,连接参数connect_timeout将被忽略;判断是否超时是应用的责任。否则,后面跟着一个PQconnectP oll循环的PQconnectStart等效于PQconnectdb。

要注意如果PQconnectStart返回一个非空的指针,你必须在使用完它(指针)之后调用PQfinish,以处理那些结构和所有相关的存储块。甚至调用PQconnectStart或者PQconnectP oll失败时也要这样处理。

PQconndefaults

返回缺省的联接选项。

PQconninfoOption*PQconndefaults(void);

typedef struct PQconninfoOption

{

char*keyw ord;/*选项的键字

*/

char*envvar;/*退守的环境变

量名*/

char*compiled;/*退守的编译时

缺省值*/

char*val;/*选项的当前

值,或者NULL*/

char*label;/*连接对话里字

段的标识*/

char*dispchar;/*在连接对话里

为此字段显示的字符。

数值有:

""原样现实输入的数值

"*"口令字段-隐藏

数值

"D"调试选项-缺省

的时候不显示*/

int dispsize;/*对话中字段的以

字符计的大小*/

}PQconninfoOption;

返回一个连接选项数组。可以用于获取所有可能的PQconnectdb选项和它们的当前缺省值。返回值指向一个PQconninfoOption结构的数组,该数组以一个有NULL keyw ord指针的条目结束。如果无法分配内存,则返回空指针。注意缺省值(val域)将依赖于环境变量和其他环境。调用者必须把连接选项当作只读对待。

在处理完选项数组后,把数组交给PQconninfoFree()释放。如果没有这么做,每次调用PQconndefaults()都会有一小部分内存泄漏。

PQfinish

关闭与服务器的连接。同时释放被PGconn对象使用的存储器。

void PQfinish(PGconn*conn);

注意,即使与服务器的连接尝试失败(可由PQstatus判断),应用也要调用PQfinish释放被PGconn对象使用的存储器。不应该在调用PQfinish后再使用PGconn指针。

PQreset

重置与服务器的通讯端口。

void PQreset(PGconn*conn);

此函数将关闭与服务器的连接并且试图与同一个服务器重建新的连接,使用所有前面使用过的参数。这在失去工作连接后进行故障恢复时很有用。

PQresetStart

PQresetPoll

以非阻塞模式重置与服务器的通讯端口。

int PQresetStart(PGconn*conn);

PostgreSQLPollingStatusType

PQresetPoll(PGconn*conn);

此函数将关闭与服务器的连接并且试图与同一个服务器重建新的连接,使用所有前面使用过的参数。这在失去工作连接后进行故障恢复时很有用。它们和上面的PQreset的区别是它们工作在非阻塞模式。这些函数的使用有与上面PQconnectStart和PQconnectP oll一样的限制。

要发起一次连接重置,调用PQresetStart。如果它返回0,那么重置失败。如果返回1,用与使用PQconnectP oll建立连接的同样的方法使用PQresetPoll重置连接。

28.2.连接状态函数

这些函数可以用于询问现存数据库连接对象的状态。

Tip:libpq应用程序员应该仔细维护PGconn结构。使用下面的访问函数来获取PGconn的内容。避免直接引用PGconn结构里的字段,因为这些字段在今后可能被改变。(从P ostgreSQL版本 6.4开始,类型struct PGconn后面的定义甚至都没有放在libpq-fe.h里。如果你有一些直接访问PGconn数据域的旧代码,你可以通过包含libpq-int.h来访问它们,但我们鼓励你赶快修改那些代码。)

下面的函数返回连接建立时的参数。这些参数在PGconn对象的生命期期间是固定的。

PQdb

返回连接的数据库名。

char*PQdb(const PGconn*conn); PQuser

返回连接的用户名。

char*PQuser(const PGconn*conn); PQpass

返回连接的口令。

char*PQpass(const PGconn*conn);

PQhost

返回连接的服务器主机名。

char*PQhost(const PGconn*conn); PQport

返回连接的端口号。

char*PQport(const PGconn*conn); PQtty

返回连接的调试控制台TTY。(这个已经过时了,因为服务器不再注意TTY设置,这个函数存在是为了向下兼容。)

char*PQtty(const PGconn*conn); PQoptions

PQoptions返回连接请求中传递的命令行选项。

char*PQoptions(const PGconn*conn);

下面的函数返回那些在对PGconn对象进行操作的过程中可能变化的状态数据。

PQstatus

返回连接的状态。

ConnStatusType PQstatus(const PGconn

*conn);

这个状态可以是一系列值之一。不过,我们在一个异步连接过程外面只能看到其中的两个:CONNECTION_OK或CONNECTION_BAD。一个与数据库的成功的连接返回状态CONNECTION_OK。一次失败的企图用状态CONNECTION_BAD标识。通常,一个OK状态将保持到PQfinish,但是一个通讯失败可能会导致状态过早地改变为CONNECTION_BAD。这时应用可以试着调用PQreset来恢复。

参阅PQconnectStart和PQconnectP oll条目看看可能出现的其他的状态码。

PQtransactionStatus

返回当前服务器的事务内状态。

PGTransactionStatusType

PQtransactionStatus(const PGconn*conn);

状态可以是PQTRANS_IDLE(当前空闲),PQTRANS_ACTIVE(正在处理一个命令),PQTRANS_INTRANS(空闲,在一个合法的事务块内),或者PQTRANS_INERROR(空闲,在一个失败的事务块内)。如果连接有问题,则返回PQTRANS_UNKNOW N。只有在一个查询发送给了服务器并且还没有完成的时候才返回PQTRANS_ACTIVE。

Caution

如果使用一个支持autocommit参数,并且设置为关闭的P ostgreSQL7.3版本的服务器,那么PQtransactionStatus将给出不正确的结果。服务器端的autocommit(自动提交)特性已经废

弃了,在将来的版本的服务器中不再存在。

PQparameterStatus

查找服务器的一个当前参数设置。

const char*PQparameterStatus(const

PGconn*conn,const char*paramName);

有些参数在建立连接或者它们的值改变的时候会由服务器自动报告。PQparameterStatus可以用于查询这些设置。如果它认识这些参数,那么它返回当前值,否则返回NULL。

当前版本报告的参数有server_version,server_encoding,client_encoding,session_authorization,DateStyle,TimeZone,integer_datetimes和standard_conforming_strings。(版本8.0之前没有报告server_encoding,TimeZone和integer_datetimes。standard_conforming_strings在版本8.1之前没有报告。)请注意server_version,server_encoding和integer_datetimes不能在启动后修改。

协议版本 3.0之前的服务器不会报告参数设置,但是libpq里包含一些逻辑用于获取server_version和client_encoding的数值。我们鼓励应用里面使用PQparameterStatus,而不是使用特殊的代码来检测这些值。(不过要注意,在 3.0之前的连接协议里,启动后通过SET改变了client_encoding将不会被PQparameterStatus反映出来。)对于server_version,又见PQserverVersion,它返回数值形式,更容易进行比较。

如果没有为standard_conforming_strings报告数值,应用可以假设它是false,也就是说,在字串文本里,把反斜扛当作逃逸。同样,如果出现了这个参数,就可以当作一个标志,表示接受逃逸字串(E'...')的语法。

尽管返回的指针声明为const,它实际上指向一个和PGconn结构关联的可变的存储区。因此假设这个指针跨查询保持有效是不明智的。

PQprotocolVersion

查询所使用的前/后端协议。

int PQprotocolVersion(const PGconn

*conn);

应用可能希望使用这个函数来判断某种特性是否被支持。目前,可能的数值是2(2.0版本的协议),3(3.0版本的协议),或者零(连接错误)。在连接启动完成之后,这个数值将不会改变,但是在连接重置的过程中,理论上是可能改变的。3.0协议通常将用于与P ostgreSQL7.4或者更新版本的服务器通讯;7.4以前的版本只支持2.0版本的协议。(1.0版本的协议已经过时了,不再被libpq支持。)

PQserverVersion

Returns an integer representing the backend version.

int PQserverV ersion(const PGconn*conn);

应用可以使用这个函数判断它们连接的数据库服务器的版本。数字是通过把主、次、以及发布版本好转换成两位十进制数并且把它们连接在一起组成的。比如,版本7.4.2将转换为70402,而8.1将转换为80100(不显示前导的零)。如果连接失败,则返回零。

PQerrorM essage

返回连接中操作产生的最近的错误信息。

char*PQerrorM essage(const PGconn

*conn);

几乎所有libpq函数在失败时都会为PQerrorMessage设置一个信息。注意libpq的传统是,一个非空的PQerrorMessage将在结尾包含一个新行。调用者不应该直接释放结果。结果的释放是在将PGconn句柄传递给PQfinish的时候自动进行的。我们不能假设在不同的PGconn结构操作中,结果字串都是一样的。

PQsocket

获取与服务器连接的套接字的文件描述符编号。一个有效的描述符应该是大于或等于0;结果为-1表示当前没有与服务器的连接打开。(在正常的操作中,这个结果不会改变,但是可能在启动或者重置的过程中变化。)

int PQsocket(const PGconn*conn); PQbackendPID

返回处理此连接的服务器服务器的进程号ID(PID)。

int PQbackendPID(const PGconn*conn);

这个服务器PID在调试和对比NOTIFY信息(包含发出通知的服务器进程的PID)时很有用。注意该PID属于运行数据库服务器的主机的进程,而不是本地主机!

PQgetssl

返回连接使用的SSL结构,或者如果没有使用SSL的话返回NULL。

SSL*PQgetssl(const PGconn*conn);

这个结构可以用于核实加密级别,检查服务器认证等信息。参考OpenSSL文档获取关于这个结构的更多信息。

为了获取这个函数的正确原形,你必须定义USE_SSL。这样做会自动包含来自OpenSSL的ssl.h。28.3.命令执行函数

一旦与数据库服务器的连接成功建立,便可用这里描述的函数执行SQL查询和命令。

28.3.1.主函数

PQexec

给服务器提交一条命令并且等待结果。

PGresult*PQexec(PGconn*conn,const

char*command);

返回一个PGresult指针或者也可能是一个NULL指针。通常返回一个非空(non-NULL)的指针,除非没有内存或发生了象不能把命令发送到服务器这样的严重错误。如果返回的是NULL,它应该被当作PGRES_FA TAL_ERROR结果处理。用PQerrorMessage获取有关错误的更多信息。

我们可以在命令行字串里包含多个SQL命令(用分号分隔)。在一次PQexec调用中发送的多个查询是在一个事务里处理的,除非在查询字串里有明确的BEGIN/COMMIT命令用于把整个字串分隔成多个事务。请注意这样返回的PGresult结构只描述字串里执行的最后一条命令的结果。如果有一个命令失败,那么字串处理的过程就会停止并且返回的PGresult会描述错误条件。

PQexecP arams

向服务器提交一条命令并且等待结果,还有额外的传递与SQL命令文本独立的参数的能力。

PGresult*PQexecP arams(PGconn*conn,

const char

*command,

int nParams,

const Oid

*paramTypes,

const char*

const*paramV alues,

const int

*paramLengths,

const int

*paramFormats,

int

resultFormat);

PQexecP arams类似PQexec,但是提供了额外的功能:参数值可以独立于命令串进行声明,并且可以要求查询结果的格式是文本或者二进制格式。PQexecP arams只是在协议 3.0以及以后的版本中支持;在使用2.0的版本的时候会失败。

如果使用了参数,那么它们是以$1,$2,等等在命令字串中引用的。nP arams是提供的参数的个数;它是数组paramTypes[],paramValues[],paramLengths[],和paramFormats[]的长度。(如果nP arams 是零,那么数组指针可以是NULL。)paramTypes[]用OID的形式声明了赋与参数符号的数据类型。如果paramTypes是NULL,或者数组中任意元素是零,那么服务器给对应的参数符号赋与和无类型文本串一样的数据类型。paramValues[]声明该参数的实际数值。这个数组中的空指针意味着对应的参数是空;否则,这个指针指向一个空零结尾的文本字串(文本格式)或者服务器期待的格式的二进制数据(用于二进制格式)。paramLengths[]声明二进制格式参数的实际数据长度。对于空参数和文本格式的参数会忽略这个参数。如果没有二进制参数,那么这个数组指针可以是空。paramFormats[]声明某个参数是文本(在数组中放一个零)还是二进制(在数组中放一个1)。如果这个数组指针是空,那么所有参数都认为是文本的。resultFormat为零则获取以文本方式返回的结果,为一则获取以二进制形式返回的结果。(目前不能规定从不同的字段获取不同格式的结果,尽管对下层的协议是可能的。)

PQexecP arams比PQexec最主要的优势是我们可以和命令串分开声明参数值,这样就可以避免枯燥无聊并且很容易出错的引起和逃逸。和PQexec不同的是,PQexecP arams在一个给出的字串里最多允许一个SQL命令。(里面可以有分号,但是不得超过一个非空的命令。)这是下层的协议的一个限制,但是也有些额外的好处,比如可以有另外一层防止SQL注射攻击的层次。

提示:通过OID声明参数类型是非常烦琐的,尤其是你不希望在你的程序里写死特定的OID值的时候。不过,你可以避免这么做,即使在服务器自己无法判断参数类型,或者是选择了一种与你预期不同的参数类型的时候也一样。在SQL命令文本里,给参数负号附加一个明确的类型转换,显示你准备发送的数据类型。比如:

select*from mytable w here x=

$1::bigint;

这样强制参数$1当作bigint看待,即使缺省情况下它会被赋予和x一样的类型。在以二进制格式发送参数值的时候,我们强烈建议通过这种方法或者是声明数字类型OID的方法强制类型判断,因为二进制格式比文本格式少一些冗余,因此服务器就会少一些机会捕捉类型的错误匹配。

PQprepare

用给定的参数提交请求,创建一个准备好的语句,然后等待结束。

PGresult*PQprepare(PGconn*conn,

const char

*stmtName,

const char*query,

int nParams,

const Oid

*paramTypes);

PQprepare创建一个为后面PQexecPrepared执行用的准备好语句。这个特性允许那些重复使用的语句只分析和规划一次,而不是每次执行都分析规划。这个语句必须在当前会话的前面已经准备好。只是在协议3.0和以后的连接里支持PQprepare;在使用2.0协议的时候,它会失败。

这个函数从query字串里创建一个叫stmtName的准备好的语句,query必须只包含一个SQL命令。stmtName可以是"",这样就创建一个无名的语句,这种情况下,任何前面存在的无名语句都会自动被代替;否则,如果语句名已经在当前会话里定义,那就是一个错误。如果使用了参数,那么在查询里它们引用成$1,$2等等。nP arams是参数的个数,参数的类型在数组paramTypes[]里事先声明好了。(如果nP arams是零,那么这个数组指针可以是NULL。)paramTypes[]用OID的方式声明与参数符号关联的数据类型。如果paramTypes为NULL,或者数组中某个特定元素是零,那么服务器将用处理无类型文本同样的方法给这个参数符号赋予数据类型。还有,查询可以使用比nP arams数值更大的参数符号编号;这些参数的数据类型也是用一样的方法推导的。

和PQexec类似,结果通常是一个PGresult对象,其内容表明服务器端是成功还是失败。空的结果表示内存耗尽或者完全不能发送命令。使用PQerrorMessage获取有关这类错误的更多信息。

目前,没有任何方法可以帮助我们得到所推导出来的那些paramTypes[]里面没有声明类型之参数的实际数据类型。这是libpq的一个忽略,将来版本可能会纠正这点。

用于PQexecPrepared的准备好语句也可以通过执行SQL PREPARE语句来创建。(不过PQprepare更灵活,因为它不要求预先声明参数类型。)还有,尽管没有libpq函数可以删除一个准备好语句,SQL DEALLOCATE语句却可以删除。

PQexecPrepared

发送一个请求,执行一个带有给出参数的准备好的语句,并且等待结果。

PGresult*PQexecPrepared(PGconn*conn,

const char

*stmtName,

int nParams,

const char*

const*paramV alues,

const int

*paramLengths,

const int

*paramFormats,

int

resultFormat);

PQexecPrepared和PQexecP arams类似,但是要执行的命令是通过命名一个前面准备好的语句声明的,而不是给出一个查询字串。这个特性允许那些要重复使用的命令只进行一次分析和规划,而不是每次执行都来一遍。PQexecPrepared只在协议 3.0和以后的版本里支持;在使用 2.0版本的协议的时候,它们会失败。

参数和PQexecP arams一样,只是给出的是一个准备好语句的名字,而不是一个查询字串,并且没有paramTypes[]参数(没必要,因为准备好语句的参数类型是在创建的时候确定的)。

PGresult结构封装了服务器返回的结果。libpq应该小心维护PGresult的抽象。使用下面的访问函数获取PGresult的内容。避免直接引用PGresult里面的字段,因为它们在未来版本里可能会被修改。

PQresultStatus

返回命令的结果状态。

ExecStatusType PQresultStatus(const

PGresult*res);

PQresultStatus可以返回下面数值之一:

PGRES_EM PTY_QUERY

发送给服务器的字串是空的

PGRES_COM M AND_OK

成功完成一个不返回数据的命令

PGRES_TUPLES_OK

成功执行一个返回数据的查询查询(比如SELECT或者SHOW)。

PGRES_COPY_OUT

(从服务器)Copy Out(拷贝出)数据传输开始

PGRES_COPY_IN

Copy In(拷贝入)(到服务器)数据传输开始

PGRES_BAD_RESPONSE

服务器的响应无法理解

PGRES_NONFA TAL_ERROR

发生了一个非致命错误(通知或者警告)

PGRES_FA TAL_ERROR

发生了一个致命错误

如果结果状态是PGRES_TUPLES_OK,那么可以用下面的函数从查询的返回中抽取元组信息。注意一个碰巧检索了零条元组的SELECT仍然显示PGRES_TUPLES_OK。PGRES_COMMAND_OK用于不返回元组的命令(INSERT,UPDA TE,等)。返回PGRES_EMPTY_QUERY的响应通常意味着暴露了客户端软件里面的臭虫。

状态为PGRES_NONFA TAL_ERROR的结果永远不会直接由PQexec或者其它查询执行函数返回;这类的结果会被传递给通知处理器(参阅Section28.10)。

PQresStatus

把PQresultStatus返回的枚举类型转换成一个描述状态码的字符串常量。调用者不应该释放结果。

char*PQresStatus(ExecStatusType

status);

PQresultErrorM essage

返回与查询关联的错误信息,或在没有错误时返回一个空字符串。

char*PQresultErrorM essage(const

PGresult*res);

如果有错误,那么返回的字串将包括一个结尾的新行。调用者不应该直接释放结果。在相关的PGresult句柄传递给PQclear之后,它会自动释放。

紧跟在一个PQexec或PQgetResult调用后面,PQerrorMessage(对连接)将返回与PQresultErrorMessage(对结果)一样的字符串。不过,一个PGresult将保有其错误信息直到被删除,而连结的错误信息将在后续的操作完成时被改变。当你想知道与某个PGresult相关联的状态时用

PQresultErrorMessage;当你想知道与连接的最近一个操作相关联的状态时用PQerrorMessage。PQresultErrorField

返回一个独立的错误报告字段。

char*PQresultErrorField(const PGresult

*res,int fieldcode);

fieldcode是一个错误字段标识符;参阅下面列出的符号。如果PGresult不是错误或者警告结果或者不包括指定的字段,那么返回NULL。字段值通常将不包括结尾的新行。调用者不应该直接释放结果。在相关联的PGresult句柄传递给PQclear之后,它将被自动释放。

下列代码是可用的:

PG_DIAG_SEVERITY

严重程度,这个字段的内容是ERROR,FA TAL,或者P ANIC(在错误信息里),或者W ARNING,NOTICE,DEBUG,INFO,或者LOG(在注意信息里),或者是这些东西的一个本地化翻译。总是出现。

PG_DIAG_SQLSTA TE

这个错误的SQLSTA TE代码。SQLSTA TE代码表示所发生的错误的类型;可以由前端应用用于对特定的数据库错误执行特定的操作(比如错误处理)。关于可能的SQLSTA TE代码的列表,请参阅Appendix A。这个字段是不能区域化的,并且总是出现。

PG_DIAG_M ESSAGE_PRIM ARY

主要的人类可读的信息(通常是联机)。总是出现。

PG_DIAG_M ESSAGE_DETAIL

细节:一个可选的从属错误信息,里面有更多有关该问题的细节。可能有多行。

PG_DIAG_M ESSAGE_HINT

提示:一个可选的有关如何处理该问题的建议。它和细节的区别是它提供了建议(可能不太合适)而不光是事实。可能有好几行。

PG_DIAG_STA TEM ENT_POSITION

一个包含十进制整数的字串,当作一个错误游标使用,指出最初的语句串出错的地方的下标。第一个字符的索引是1,并且这个位置是用字符计,而不是用字节计。

PG_DIAG_INTERNAL_POSITION

电力电子技术第四版课后题答案第八章

电力电子技术第四版课后题答案第八章 第8章组合变流电路 1. 什么是组合变流电路? 答:组合变流电路是将某几种基本的变流电路(AC/DC、DC/DC、AC/AC、DC/DC)组合起来,以实现一定新功能的变流电路。 2. 试阐明图8-1间接交流变流电路的工作原理,并说明该电路有何局限性。 答:间接交流变流电路是先将交流电整流为直流电,在将直流电逆变为交流电,图8-1所示的是不能再生反馈电力的电压型间接交流变流电路。该电路中整流部分采用的是不可控整流,它和电容器之间的直流电压和直流电流极性不变,只能由电源向直流电路输送功率,而不能由直流电路向电源反馈电力,这是它的一个局限。图中逆变电路的能量是可以双向流动的,若负载能量反馈到中间直流电路,导致电容电压升高。由于该能量无法反馈回交流电源,故电容只能承担少量的反馈能量,这是它的另一个局限。 3. 试分析图8-2间接交流变流电路的工作原理,并说明其局限性。答:图8-2是带有泵升电压限制电路的电压型间接交流变流电路,它是在图8-1的基础上,在中间直流电容两端并联一个由电力晶体管V0和能耗电阻R0组成的泵升电压限制电路。当泵升电压超过一定数值时,使V0导通,把从负载反馈的能量消耗在R0上。其局限性是当负

载为交流电动机,并且要求电动机频繁快速加减速时,电路中消耗的能量较多,能耗电阻R0也需要较大功率,反馈的能量都消耗在电阻上,不能得到利用。 4. 试说明图8-3间接交流变流电路是如何实现负载能量回馈的。答:图8-3为利用可控变流器实现再生反馈的电压型间接交流变流电路,它增加了一套变流电路,使其工作于有源逆变状态。当负载回馈能量时,中间直流电压上升,使不可控整流电路停止工作,可控变流器工作于有源逆变状态,中间直流电压极性不变,而电流反向,通过可控变流器将电能反馈回电网。 5. 何为双PWM电路?其优点是什么? 答:双PWM电路中,整流电路和逆变电路都采用PWM控制,可以使电路的输入输出电流均为正弦波,输入功率因数高,中间直流电路的电压可调。当负载为电动机时,可工作在电动运行状态,也可工作在再生制动状态;通过改变输出交流电压的相序可使电动机正转或反转,因此,可实现电动机四象限运行 6. 什么是变频调速系统的恒压频比控制? 答:即对变频器的电压和频率的比率进行控制,使该比率保持恒定。这样可维持电动机气隙磁通为额定值,使电动机不会因为频率变化而导致磁饱和和造成励磁电流增大,引起功率因数和效率的降低。 7. 何为UPS?试说明图8-11所示UPS系统的工作原理。 答:UPS是指当交流输入电源发生异常或断电时,还能继续向负载供电,并能保证供电质量,使负载供电不受影响的装置,即不间断电源。

第08讲1H413030管道工程施工技术(一)

1H413000工业机电工程安装技术 1H413030管道工程施工技术 2014-2016多选,2017单选 2015、2016、2017案例 本目学习 工业管道分类与施工程序 工业管道施工技术要求 工业管道试压技术要求 工业管道吹洗技术要求 工业管道的分类与分级 按材质分为金属、非金属管道 GC1、GC2、GC3三个等级。 如,GC1 (详见第三章特种设备的法律规定) 非金属管道:无机非金属材料管道、有机非金属材料管道 无机非金属材料管道——混凝土管、石棉水泥管、陶瓷管等 有机非金属材料管道——塑料管、玻璃钢管、橡胶管等 按压力分级 【提示】10Mpa属于中压管道,100Mpa属于高压管道,两者临界点归结到低一层级中。 按温度划分 (-40)---------(120)-----------(450℃) 低温常温中温高温 工业金属管道安装前施工条件 对施工队伍的要求 (1)承担工业金属管道施工的施工单位应取得相应的施工资质,并应在资质许可范围内从事管 (2)施工单位在压力管道工程施工前,必须向工程所在地的设区的市级质量技术监督部门办理书面告知,在施工过程中要主动接受特种设备安全监督管理部门的监督管理,并接受监督检验单位的监督检验。 (3)施工单位应建立压力管道质量保证体系,并应有健全的质量管理制度和相应的施工技术标

准。 (4)参加工业金属管道施工的人员、施工质量检查、检验的人员应具备相应的资格。施工人员包括施工管理人员和施工作业人员。 施工前应具备的开工条件阅读熟悉 1.工程设计图纸及其他技术文件完整齐全,已按程序进行了工程交底和图纸会审。 2. 3. 4.已办理工程开工文件。 5.用于管道施工的机械、工器具应安全可靠,计量器具应检定合格并在有效期内。 6. 工业管道安装的施工程序【重要】 管道安装工程一般施工程序:施工准备→测量定位→支架制作安装→管道预制安装→仪表安装 工程交接验收技术条件【重要】 1.办理工程交接验收手续的条件 (1)施工范围和内容符合合同、设计文件的规定。 (2)工程质量符合设计文件和规范的规定。 2.工程交接验收的技术资料 (1)技术文件; (2)施工检查记录; (3)试验报告。 工程交接验收的技术资料 技术文件—— 1)管道元件的产品合格证、质量证明文件和复检、试验报告。 2)管道安装竣工图、设计修改文件及材料代用单。 3 工程交接验收的技术资料 施工检查记录应包括的内容(或考案例补缺题) 施工检查记录等。 管道安装工程一般施工程序: 施工准备→测量定位→支架制作安装→管道预制安装→仪表安装→试压清洗→防腐保温→

电力电子技术 第2至第8章作业 答案

第2至第8章作业 第2章 电力电子器件 1. 使晶闸管导通的条件是什么? 答:使晶闸管导通的条件是:晶闸管承受正向阳极电压,并在门极施加触发电流(脉冲)。或:U AK >0且U GK >0。 2. 维持晶闸管导通的条件是什么? 答:维持晶闸管导通的条件是使晶闸管的电流大于能保持晶闸管导通的最小电流,即维持电流。 3. 怎样才能使晶闸管由导通变为关断? 答:要使晶闸管由导通变为关断,可利用外加电压和外电路的作用使流过晶闸管的电流降到接近于零的某一数值以下,即降到维持电流以下,便可使导通的晶闸管关断。 4. 图1中阴影部分为晶闸管处于通态区间的电流波形,各波形的电流最大值均为I m ,试计算各波形的电流平均值I d1、I d2、I d3与电流有效值I 1、I 2、I 3。 π4π4π25π4a)b)c)图1-43 图1 晶闸管导电波形

7. 晶闸管的触发脉冲需要满足哪些条件? 答:(1)触发信号应有足够的功率。 (2)触发脉冲应有一定的宽度,脉冲前沿尽可能陡,使元件在触发导通后,阳极电流能迅速上升超过掣住电流而维持导通。 第3章整流电路 1. 单相半波可控整流电路对电感负载供电,L=20mH,U2=100V,求当α=0°和60°时的负载电流I d,并画出u d与i d波形。

2.单相桥式全控整流电路,U2=100V,负载中R=2Ω,L值极大,当α=30°时,要求:①作出u d、i d、和i2的波形;②求整流输出平均电压U d、电流I d,变压器二次电流有效值I2; ③考虑安全裕量,确定晶闸管的额定电压和额定电流。

3.单相桥式全控整流电路,U2=100V,负载中R=2Ω,L值极大,反电势E=60V,当a=30°时,要求: ①作出u d、i d和i2的波形; ②求整流输出平均电压U d、电流I d,变压器二次侧电流有效值I2; ③考虑安全裕量,确定晶闸管的额定电压和额定电流。 4.单相桥式半控整流电路,电阻性负载,画出整流二极管在一周内承受的电压波形。

一建【建筑】第30讲-专业施工技术8(二)

2020年一级建造师《建筑工程管理与实务》 1A415063 吊顶工程施工技术(学习重点) 一、吊顶工程的分类 按照施工工艺不同,分为暗龙骨吊顶和明龙骨吊顶。 1.暗龙骨吊顶 又称隐蔽式吊顶。是指龙骨不外露,饰面板表面呈整体的形式。 2.明龙骨吊顶 又称活动式吊顶。一般是和铝合金龙骨或轻钢龙骨配套使用,是将轻质装饰板明摆浮搁在龙骨上,便于更换。龙骨可以是外露的,也可以是半露的。 按照采用的饰面材料不同,分为石膏板、金属板、矿棉板、木板、塑料板和格栅吊顶等。 按照采用的龙骨材料不同,分为木龙骨、轻钢龙骨、铝合金龙骨吊顶等。 二、施工环境要求 1.施工前应按设计要求对房间的净高、洞口标高和吊顶内的管道、设备及其支架的标高进行交接检验。 2.对吊顶内的管道、设备的安装及水管试压进行验收。 四、施工工艺 (1

钢结构转换层 (3) (5)安装主龙骨: 1 300mm 2)跨度大于15m的吊顶,应在主龙骨上,每隔15m加一道大龙骨,并垂直主龙骨焊接牢固。 (6)安装次龙骨:

(7)罩面板安装: 1)纸面石膏板安装: ①饰面石膏板应在中间向四周自由状态下固定,不得多点同时作业,防止出现弯棱、凸鼓的现象。 ②纸面石膏板的长边(即包封边)应沿纵向次龙骨铺设。 ④固定次龙骨的间距,一般不应大于600mm,在南方潮湿地区,间距应适当减小,以300m为宜。 ⑤自攻螺钉间距以150~170mm为宜,螺钉钉头宜略埋入板面,但不得损坏纸面,钉眼应作防锈处理并用石膏腻子抹平。 【例题1·单选】硅钙板吊顶工程中,可用于固定的吊扇的是()。【2016二建】 A.主龙骨 B.次龙骨 C.面板 D.附加吊杆 【答案】D 【解析】吊顶灯具、风口及检修口等应设附加吊杆。重型灯具、电扇及其他重型设备严禁安装在吊顶工程的龙骨上,必须增设附加吊杆。 【例题2·多选】建筑装饰装修吊顶工程,下列施工方法正确的有()。【2010】 A.主龙骨应平行房间短向布置 B.吊杆距主龙骨端部距离不得大于300mm C.纸面石膏板应在自由状态下进行固定,固定时应从板的四周向中间固定 D.纸面石膏板的长边应平行于主龙骨安装,短边平行搭接在次龙骨上 E.吊杆长度大于1500mm时,应设置反向支撑 【答案】BE 【解析】主龙骨应平行房间长向布置;纸面石膏板应在中间向四周自由状态下固定;纸面石膏板的长边应沿纵向次龙骨铺设。 【例题3·单选】以下选项中,可安装在吊顶龙骨上的是()。 A.烟感器 B.投影仪 C.电扇 D.大型吊灯 【答案】A 【解析】吊顶灯具、风口及检修口等应设附加吊杆。

电力电子技术(王兆安第五版)课后习题全部答案

电力电子技术 2-1与信息电子电路中的二极管相比,电力二极管具有怎样的结构特点才使得其具有耐受高压和大电流的能力? 答:1.电力二极管大都采用垂直导电结构,使得硅片过电流的有效面积增大,显著提高了二极管的通流能力。 2.电力二极管在P 区和N 区之间多了一层低掺杂N 区,也称漂移区。低掺杂N 区由于掺杂浓度低而接近于无掺杂的纯半导体材料即本征半导体,由于掺杂浓度低,低掺杂N 区就可以承受很高的电压而不被击穿。 2-2. 使晶闸管导通的条件是什么? 答:使晶闸管导通的条件是:晶闸管承受正向阳极电压,并在门极施加触发电流(脉冲)。或:uAK>0且uGK>0。 2-3. 维持晶闸管导通的条件是什么?怎样才能使晶闸管由导通变为关断? 答:维持晶闸管导通的条件是使晶闸管的电流大于能保持晶闸管导通的最小电流,即维持电流。 要使晶闸由导通变为关断, 可利用外加电压和外电路的作用使流过晶闸管的电流降到接近于零的某一数值以下,即降到维持电流以下,便可使导通的晶闸管关断。 2-4 图2-27中阴影部分为晶闸管处于通态区间的电流波形,各波形的电流最大值均为I m ,试计算各波形的电流平均值I d1、I d2、I d3与电流有效值I 1、I 2、I 3。 解:a) I d1=Im 2717.0)122(2Im )(sin Im 21 4≈+= ?πωπ π π t I 1=Im 4767.021 432Im )()sin (Im 21 4 2≈+= ? π?π ππ wt d t b) I d2=Im 5434.0)122(2Im )(sin Im 1 4 =+= ? wt d t ππ ?π I 2=Im 6741.021 432Im 2)()sin (Im 14 2≈+= ? π?π π π wt d t c) I d3=? = 20 Im 41)(Im 21 π ωπ t d I 3=Im 21)(Im 21 20 2= ? t d ωπ π 2-5上题中如果不考虑安全裕量,问100A 的晶阐管能送出的平均电流I d1、I d2、I d3各为多少?这时,相应的电流最大值I m1、I m2、I m3各为多少? 解:额定电流I T(AV)=100A 的晶闸管,允许的电流有效值I=157A,由上题计算结果知 a) I m1 35 .3294767.0≈≈ I A, I d1≈0.2717I m1≈89.48A

电力电子技术第2章习题-答案

班级姓名学号 第2/9章电力电子器件课后复习题 第1部分:填空题 1. 电力电子器件是直接用于主电路中,实现电能的变换或控制的电子器件。 2. 主电路是在电气设备或电力系统中,直接承担电能变换或控制任务的电路。 3. 电力电子器件一般工作在开关状态。 4. 电力电子器件组成的系统,一般由控制电路、驱动电路、主电路三 部分组成,由于电路中存在电压和电流的过冲,往往需添加保护电路。 5. 按照器件能够被控制的程度,电力电子器件可分为以下三类:不可控器件、 半控型器件和全控型器件。 6.按照驱动电路信号的性质,电力电子器件可分为以下分为两类:电流驱动型和电压驱动型。 7. 电力二极管的工作特性可概括为单向导电性。 8. 电力二极管的主要类型有普通二极管、快恢复二极管、肖特基二极管。 9. 普通二极管又称整流二极管多用于开关频率不高,一般为1K Hz以下的

整流电路。其反向恢复时间较长,一般在5s以上。 10.快恢复二极管简称快速二极管,其反向恢复时间较短,一般在5s以下。 11.肖特基二极管的反向恢复时间很短,其范围一般在10~40ns之间。 12.晶闸管的基本工作特性可概括为:承受反向电压时,不论是否触发,晶 闸管都不会导通;承受正向电压时,仅在门极正确触发情况下,晶闸管才能导通;晶闸管一旦导通, 门极就失去控制作用。要使晶闸管关断,只能使晶闸管的电流降至维持电流以下。 13.通常取晶闸管的U DRM和U RRM中较小的标值作为该器件的额定电压。选 用时,一般取为正常工作时晶闸管所承受峰值电压2~3 倍。 14.使晶闸管维持导通所必需的最小电流称为维持电流。晶闸管刚从断态转 入通态并移除触发信号后,能维持导通所需的最小电流称为擎住电流。对同一晶闸管来说,通常I L约为I H的称为2~4 倍。 15.晶闸管的派生器件有:快速晶闸管、双向晶闸管、逆导晶闸管、光控晶闸管。 16. 普通晶闸管关断时间数百微秒,快速晶闸管数十微秒,高频晶闸管10 微秒左右。高频晶闸管的不足在于其电压和电流定额不易做高。17. 双向晶闸管可认为是一对反并联联接的普通晶闸管的集成。

《电力电子技术》(第六七八章)习题答案

第6章 PWM 控制技术 1.试说明PWM 控制的基本原理。 答:PWM 控制就是对脉冲的宽度进行调制的技术。即通过对一系列脉冲的宽度进行调制,来等效地获得所需要波形(含形状和幅值)。 在采样控制理论中有一条重要的结论:冲量相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果基本相同,冲量即窄脉冲的面积。效果基本相同是指环节的输出响应波形基本相同。上述原理称为面积等效原理 以正弦PWM 控制为例。把正弦半波分成N 等份,就可把其看成是N 个彼此相连的脉冲列所组成的波形。这些脉冲宽度相等,都等于π/N ,但幅值不等且脉冲顶部不是水平直线而是曲线,各脉冲幅值按正弦规律变化。如果把上述脉冲列利用相同数量的等幅而不等宽的矩形脉冲代替,使矩形脉冲的中点和相应正弦波部分的中点重合,且使矩形脉冲和相应的正弦波部分面积(冲量)相等,就得到PWM 波形。各PWM 脉冲的幅值相等而宽度是按正弦规律变化的。根据面积等效原理,PWM 波形和正弦半波是等效的。对于正弦波的负半周,也可以用同样的方法得到PWM 波形。可见,所得到的PWM 波形和期望得到的正弦波等效。 2.设图6-3中半周期的脉冲数是5,脉冲幅值是相应正弦波幅值的两倍,试按面积等效原理计算脉冲宽度。 解:将各脉冲的宽度用 i (i =1, 2, 3, 4, 5)表示,根据面积等效原理可得 1 = m 5 m 2d sin U t t U ?π ωω=50 2cos π ωt - =0.09549(rad)=0.3040(ms) 2 = m 5 25 m 2d sin U t t U ω?ππ?=5 252 cos ππωt - =0.2500(rad)=0.7958(ms) 3 = m 535 2m 2d sin U t t U ω?ππ? =535 22 cos ππωt - =0.3090(rad)=0.9836(ms) 4 = m 545 3m 2d sin U t t U ω?ππ? = 2 =0.2500(rad)=0.7958(ms) 5 = m 5 4m 2d sin U t t U ω?π π?= 1 =0.0955(rad)=0.3040(ms) 3. 单极性和双极性PWM 调制有什么区别?三相桥式PWM 型逆变电路中,输出相电压(输出端相对于直流电源中点的电压)和线电压SPWM 波形各有几种电平? 答:三角波载波在信号波正半周期或负半周期里只有单一的极性,所得的PWM 波形在半个周期中也只在单极性范围内变化,称为单极性PWM 控制方式。 三角波载波始终是有正有负为双极性的,所得的PWM 波形在半个周期中有正、有负,则称之为双极性PWM 控制方式。

电力电子技术第2至第8章作业答案

电力电子技术第2至第8 章作业答案 -标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

第2至第8章作业 第2章电力电子器件 1. 使晶闸管导通的条件是什么? 答:使晶闸管导通的条件是:晶闸管承受正向阳极电压,并在门极施加触发电流(脉冲)。或:U AK>0且U GK>0。 2. 维持晶闸管导通的条件是什么? 答:维持晶闸管导通的条件是使晶闸管的电流大于能保持晶闸管导通的最小电流,即维持电流。 3. 怎样才能使晶闸管由导通变为关断? 答:要使晶闸管由导通变为关断,可利用外加电压和外电路的作用使流过晶闸管的电流降到接近于零的某一数值以下,即降到维持电流以下,便可使导通的晶闸管关断。 4. 图1中阴影部分为晶闸管处于通态区间的电流波形,各波形的电流最大值均为I m,试计算各波形的电流平均值I d1、I d2、I d3与电流有效值I1、I2、I3。 ππ π 4 π 4 π 2 5π 4 a)b)c) 图1-43 图1 晶闸管导电波形

7. 晶闸管的触发脉冲需要满足哪些条件? 答:(1)触发信号应有足够的功率。 (2)触发脉冲应有一定的宽度,脉冲前沿尽可能陡,使元件在触发导通后,阳极电流能迅速上升超过掣住电流而维持导通。 第3章整流电路 1. 单相半波可控整流电路对电感负载供电,L=20mH,U2=100V,求当α=0°和60°时的负载电流I d,并画出u d与i d波形。

2.单相桥式全控整流电路,U2=100V,负载中R=2Ω,L值极大,当α=30°时,要求:①作出u d、i d、和i2的波形;②求整流输出平均电压U d、电流I d,变压器二次电流有效值I2;③考虑安全裕量,确定晶闸管的额定电压和额定电流。

8预制装配整体结构施工技术(第八讲 )

装配整体式剪力墙结构体系 建造技术的新研究与新发展(第八讲) 东南大学土木工程施工研究所郭正兴 2011年

1 大板房的研究、推广与后遗症

1.1 大板房的研究(20世纪7080年代) 11大板房的研究(20世纪70~80年代) 大板住宅是第二次世界大战以后,欧洲诸国为了加快住宅建设速度而发展起来的。西欧及北欧各国,在60年代中期大板住宅的比重占18一26%。 北京市的大板住宅建筑,从1959年至1984年底共北京市的大板住宅建筑从 建成172.6万平方米其中高层(12一13层)48。9万平方米,多层223。7万平方米,16层试验住宅栋,面积 层试验住宅一栋,面积为7069平方米。 当年大板住宅建筑研究主要围绕着设计标准化与多样化,外墙板缝防水,围护结构的热工性能、大板结构接缝的受力性能、大板与大模板在水平荷载作用下的对比模型试验,大板结构抗震计算方法等。 比模型试验大板结构抗震计算方法等 成果:中国建筑技术发展研究中心、中国建筑科学研究院主编的《装配式大板居住建筑设计和施工规程》(JGJ 1-91)。

11大板房的研究(20世纪70~80年代) 1.1 大板房的研究(20世纪7080年代) 北京16层高层大板住宅研究做了工作: (1)简化内外墙板的规格和数量,计算考虑塑性内力 重分布减少联肢墙的连梁配筋; 北京层高层大板住宅研究做了作: 重分布,减少联肢墙的连梁配筋; (2)加强内外墙配筋,重点加强外围护墙体配筋率, 0.9%及1外墙板竖向及横向的净截面配筋率分别提高到及%; (3)加强了楼板的预埋连接筋,改进大楼板之间及大 楼板与外墙板之间的连接方式使整层楼板形成刚性盘楼板与外墙板之间的连接方式,使整层楼板形成刚性盘;(4)考虑到高层建筑在地震力作用下的“鞭梢效应” 加强了屋顶结构的整体连接对出屋面的管廊电梯机加强了屋顶结构的整体连接,对出屋面的管廊、电梯机房、水箱间等建筑均加设了销键和套环筋,加强了构造联结。 结

电力电子技术 第2至第8章作业 答案

第 2至第8章作业 第2章 电力电子器件 1. 使晶闸管导通的条件是什么? 答:使晶闸管导通的条件是:晶闸管承受正向阳极电压,并在门极施加触发电流(脉冲)。或:U AK >0且U GK >0。 2. 维持晶闸管导通的条件是什么? 答:维持晶闸管导通的条件是使晶闸管的电流大于能保持晶闸管导通的最小电流,即维持电流。 3. 怎样才能使晶闸管由导通变为关断? 答:要使晶闸管由导通变为关断,可利用外加电压和外电路的作用使流过晶闸管的电流降到接近于零的某一数值以下,即降到维持电流以下,便可使导通的晶闸管关断。 4. 图1中阴影部分为晶闸管处于通态区间的电流波形,各波形的电流最大值均为I m ,试计算各波形的电流平均值I d1、I d2、I d3与电流有效值I 1、I 2、I 3。 π ππ4π4π25π4a)b)c)图1-43 图1 晶闸管导电波形

7. 晶闸管的触发脉冲需要满足哪些条件? 答:(1)触发信号应有足够的功率。 (2)触发脉冲应有一定的宽度,脉冲前沿尽可能陡,使元件在触发导通后,阳极电流能迅速上升超过掣住电流而维持导通。 第3章整流电路 1. 单相半波可控整流电路对电感负载供电,L=20mH,U2=100V,求当α=0°和60°时的负载电流I d,并画出u d与i d波形。

2.单相桥式全控整流电路,U2=100V,负载中R=2Ω,L值极大,当α=30°时,要求:①作出u d、i d、和i2的波形;②求整流输出平均电压U d、电流I d,变压器二次电流有效值I2; ③考虑安全裕量,确定晶闸管的额定电压和额定电流。

3.单相桥式全控整流电路,U2=100V,负载中R=2Ω,L值极大,反电势E=60V,当a=30°时,要求: ①作出u d、i d和i2的波形; ②求整流输出平均电压U d、电流I d,变压器二次侧电流有效值I2; ③考虑安全裕量,确定晶闸管的额定电压和额定电流。 4.单相桥式半控整流电路,电阻性负载,画出整流二极管在一周内承受的电压波形。

第八章、关键施工技术、工艺及工程项目实施的重点、难点和解决方案

第八章、关键施工技术、工艺及工程项目实施的重点、 难点和解决方案 一、对工程重点部位的施工方法及措施 (1)本工程为一个综合性施工工程,在现场项目经理部的统一领导下,因此现场施工的协调工作相当重要,开工后必然是在多工种、多专业的交叉施工状态下进行,施工面积大,施工作业面分散,各个施工点的不同工种是同时或交叉施工,有很强的连贯性,因此必须合理安排交叉施工,各分项工程,尤其是细木、吊顶等加工量大的施工项目要在项目组的统一指挥下按进度安排准时完成,以确保总工期的要求。 (2)以一切为用户着想为出发点,优质高效完成任务为目标,要求全体人员站在与业主相同的角度来处理施工中遇到的问题。与业主和监理密切配合,同心同德共同完成施工任务,以实际行动交一份让业主满意的答卷。 (3)我公司建议业主、监理、各施工单位联合成立工程协调小组,对工程建设实行统一领导,通过定期召开会议,规定工作程序,检查监督施工单位合同履行的情况,计划质量、安全文明施工等指标的完成和保证措施的履行情况,协调各方关系,对很重要工作作出决定,提高工作效率,加强业主对工程建设的控制力度。 (4)执行监理规定和工作程序,按规定报告工作所提供的资料,自觉接受监督。 (5)认真领会施工组织设计的各项内容和要求,深入学习施工图,了解设计意图,与业主、监理、设计单位共同配合好图纸会审,不怕麻烦,千方百计满足业主为了达到使用功能和观感而进行的设计变更,及时办理变更手续,严格按图施工。 项目经理和项目副经理着重要抓好现场施工统筹运转,不同专业的施工之间的协调必须作为施工管理的重中之重,有了合理流畅的施工节奏,按照科学规范的要求施工,才能保证各专业的施工不发生冲突,尤其注意对以下几个方面的协调管理: a.各专业施工时段的穿插 b.不同专业的基层和成品安装的交叉施工 c.施工各类接口的安装尺寸、安装高度、尤其是装饰与设备安装的尺寸、 位置的配合 d.各类暗埋管线的走线不得重叠交叉。

电力电子技术第八章第九章部分课后习题答案(南航)

补充题:SOA 的构成 答:功率晶体管的SOA 由四部分组成。 1) 集电极最大允许电流I eM 2) 基极开路,集电极—发射极之间的最高允许电压U (BR)ceo 3) 晶体管集电极最大允许功率损耗P CM 4) 二次击穿电流水平I S/B 功率场效应管的SOA 由三部分组成 1) 漏—源击穿电压U (BR)DS 2) 等功耗线P DM 3) 最大允许漏极电流I DM 8-5图8-5中晶体管的β可在8~40间选择。R C =11Ω,电源电压E C =200V ,基极输入电压U B =10V 。如果U CES =和U BES =。求:(a )过驱动系数ODF=5时R B 的值;(b )强制β值;(c )晶体管功率损耗P C 。 c 截止区 饱和区 (a) (b)(c)解:30)1(=β取

Ω =??? ??=== -=-=== = =-= -= =8.2603.05.855 .110603.03009 .1809.18110 .12000.1b b bS b b b bes b b CS bs C CES C CS CES R R i i ODF R R U U i A i i A R U E ,i U β 时 W I U P I I cs ces C b CS f 09.1809.180.1)3(68.25.809 .18)2(=?===?? ? ??== β强制电流增益 8-9电路总电流为20A ,用两个MOSFET 管并联分担,一个管子的U DS1=,另一个是U DS2=3V 。如用串联源极电阻(a )R S1=Ω,R S2=Ω及(b )R S1=R S2=Ω来均流,求每个晶体管电流和两管漏极电流之差。 解:E ,U S DS =接地设 A R U E R U E S DS S DS 202 2 11=-+- (1)时Ω=Ω=2.0,3.021S S R R 202.03 3.05.2=-+-E E V E 2.5= A I A I D D 11,921== A I I D D 212-=-漏极电流差,12D D I I > (2)5.021==S S R R 205.03 5.05.2=-+-E E 75.7=E A I A I D D 5.9,5.1021== A I I D D 112=-漏极电流差,21D D I I >

电力电子技术 第2至第8章作业 答案

第2至第8章作业 第2章电力电子器件 1. 使晶闸管导通的条件是什么? 答:使晶闸管导通的条件是:晶闸管承受正向阳极电压,并在门极施加触发 电流(脉冲)。或:U AK >0且U GK >0。 2. 维持晶闸管导通的条件是什么? 答:维持晶闸管导通的条件是使晶闸管的电流大于能保持晶闸管导通的最小电流,即维持电流。 3. 怎样才能使晶闸管由导通变为关断? 答:要使晶闸管由导通变为关断,可利用外加电压和外电路的作用使流过晶闸管的电流降到接近于零的某一数值以下,即降到维持电流以下,便可使导通的晶闸管关断。 4. 图1中阴影部分为晶闸管处于通态区间的电流波形,各波形的电流最大值均为I m,试计算各波形的电流平均值I d1、I d2、I d3与电流有效值I1、I2、I3。 ππ π 4 π 4 π 2 5π 4 a)b)c) 图1-43 图1 晶闸管导电波形

7. 晶闸管的触发脉冲需要满足哪些条件? 答:(1)触发信号应有足够的功率。 (2)触发脉冲应有一定的宽度,脉冲前沿尽可能陡,使元件在触发导通后,阳极电流能迅速上升超过掣住电流而维持导通。 第3章整流电路 1. 单相半波可控整流电路对电感负载供电,L=20mH,U2=100V,求当α=0°和60°时的负载电流I d,并画出u d与i d波形。

2.单相桥式全控整流电路,U2=100V,负载中R=2Ω,L值极大,当α=30°时,要求:①作出u d、i d、和i2的波形;②求整流输出平均电压U d、电流I d,变压器二次电流有效值I2;③考虑安全裕量,确定晶闸管的额定电压和额定电流。

3.单相桥式全控整流电路,U2=100V,负载中R=2Ω,L值极大,反电势E=60V,当a=30°时,要求: ①作出u d、i d和i2的波形; ②求整流输出平均电压U d、电流I d,变压器二次侧电流有效值I2; ③考虑安全裕量,确定晶闸管的额定电压和额定电流。 4.单相桥式半控整流电路,电阻性负载,画出整流二极管在一周内承受的电压波形。

建筑施工技术形考作业8答案-建筑施工技术形考8

一、判断题 题目1 完成 获得0。500分中得0。500分 1。装饰抹灰使用得石灰膏熟化时间不得少于七天、 选择一项: 对 错 题目2 完成 获得0、500分中得0.500分 2、墙面抹灰得施工,为了保证粘结力,各层抹灰得施工应连续进行。 选择一项: 对 错 题目3 完成 获得0、500分中得0。500分 3. 墙面抹灰先做灰饼或标筋,目得就是控制抹灰层厚度与墙面垂直度、 选择一项: 对 错 题目4 完成 获得0。500分中得0、500分 4.中级墙面抹灰得质量要求就是阴阳角找方,分层赶平、修整、表面压光。选择一项: 对 错 题目5 完成 获得0、500分中得0.000分 5.中高级墙面抹灰先做灰饼或标筋,目得就是使墙面平整。

选择一项: 对 错 题目6 完成 获得0.500分中得0.500分 6。只要基层光滑洁净,可不予处理直接抹灰。 选择一项: 对 错 题目7 完成 获得0、500分中得0、500分 7、装饰工程项目多、工程量大、主要就是手工操作,因此施工期长,耗用劳动量多,质量不稳 定。 选择一项: 对 错 题目8 完成 获得0.500分中得0。500分 8。装饰工程项目多、工程量大、主要就是手工操作,因此质量问题多发、 选择一项: 对 错 题目9 完成 获得0.500分中得0、500分 9、装饰工程项目多、工程量大、且直接影响观感效果。 选择一项: 对 错 题目10

完成 获得0、500分中得0、500分 10.外墙抹灰工程中窗台、雨棚、檐口等部位都应要求水平,美观应做流水坡度。 选择一项: 对 错 二、简答题 题目11 完成 满分2、500 1.建筑装饰得主要作用就是什么? 建筑装饰装修得主要作用就是:保护主体,延长其使用寿命;增强与改善建筑物得保温、隔热、防潮、隔音等使用功能;美化建筑物及周围环境,给人们创造一个良好得生活、生产得空间。题目12 完成 满分2.500 2.建筑装饰工程得特点就是什么? 装饰装修工程得特点就是工程量大,工期长,一般装饰装修工程占项目总工期得30%~50%;机械化施工得程度差,生产效率较低;工程资金投入大,民用建筑中可占土建部分总造价得35%~45%;施工质量对建筑物使用功能与整体建筑效果影响很大、 题目13 完成 满分2、500 3、一般抹灰面层得外观质量要求就是什么? 一般抹灰面层得外观质量应符合下列规定: 普通抹灰:表面光滑、洁净,接槎平整、 中级抹灰:表面光滑、洁净,接槎平整,灰线清晰顺直、 高级抹灰:表面光滑、洁净,颜色均匀,无抹纹,灰线平直方正、清晰美观。 抹灰工程得面层不得有爆灰与裂缝、各抹灰层之间及抹灰层与基体间应粘接牢固,不得有脱层、空鼓等缺陷。

8255键盘及显示接口设计

班级: 姓名: 学号: 日期: 2009年12月28日成绩:

目录 一、课程设计的意义 (3) 二、课程设计的主要内容 (3) 三、课程设计的组织与安排 (3) 四、课程设计的要求 (4) 五、课程设计正文 (5) 1.设计原理 (5) 2.设计电路原理图 (6) 3.键盘及数码管显示电路接线图 (7) 4.使用原器件 (7) 5.课程设计总结 (7) 6.论文参考资料 (7) 六、附录一:程序流程图 (8) 七、附录二:课程设计程序 (9)

课程论文(设计)指导书 一、课程论文(设计)的意义: 1.通过《微型计算机原理与应用》课程设计,使学生能够进一步理解微型计算机工作原理, 微型计算机的硬件结构及微型计算机的应用软件编程。 2.要求学生能够根据功能要求初步进行硬件接口电路的设计,以及有关应用程序的设计,使学生的软件编程能力得到加强,对接口电路的综合应用能力有较大提高。 3.课程设计是培养和锻炼学生在学习完本课程后综合应用所学理论知识解决实际工程设计和应用问题的能力、进行工程实训的重要教学环节,它具有动手、动脑,理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一种较好方法。 4.通过课程设计实践,不仅要培养学生的实际动手能力,检验学生对本门课学习的情况,更要培养学生在实际的工程设计中查阅专业资料、工具书或参考书,掌握工程设计手段和软件工具,并能以图纸和说明书表达设计思想和结果的能力。培养学生事实求是和严肃认真的工作态度。 5.通过设计过程,要求学生熟悉和掌握微机系统的软件、硬件设计的方法、设计步骤,使学生得到微机开发应用方面的初步训练。让学生独立或集体讨论设计题目的系统方案论证设计、编程、软件硬件调试、查阅资料、绘图、编写说明书等问题,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力,实现由学习知识到应用知识的初步过渡。通过本次课程设计使学生熟练的熟练掌握微机系统与接口扩展电路的设计方法,熟练应用8086汇编语言编写应用程序和实际设计中的硬软件调试方法和步骤,熟悉微机系统的硬软件开发工具的使用方法。 二、课程论文(设计)的主要内容: 结合微型计算机应用系统的功能要求、硬件电路设计,进行汇编语言程序设计,要求画出程序流程图,编写完整的源程序,并经上机调试完成。课程设计过程一般2~3人一组,各组完成的内容不能雷同。 要求每个学生(或小组)都要自己动手独立设计完成一个典型的微机应用小系统。设计题目可以在给出的参考题目中选,也可以自己选择适当的设计题目。 三、课程论文(设计)的组织与安排: 设计题目的选题原则:根据教学大纲对本门课程的教学要求和所讲授的课程内容,结合现有的教学实验设备和能力,按照课程设计的目的和作用所提出的要求,选择符合教学内容、符合学生水平、符合实验室条件,综合本门课的全部知

建筑施工技术作业(1-4)答案ok

《建筑施工技术》课程作业评讲(1) 一、名词解释 1、土的可松性:自然状态下的土,经开挖后,其体积因松散而增加,以后虽然经回填压实,仍不能恢复成原来的体积,这种性质,称为土的可松性。 2、土方边坡:为了防止土壁坍塌,保持土体稳定,保证施工安全,在土方工程施工中,对挖方或填方的边缘均做成一定的坡度。 3、土层锚杆:土层锚杆是埋入土层深处的受拉杆件,一端与工程构筑物相连,一端锚固在土层中,以承受由土压力、水压力作用产生的拉力,维护支护结构的稳定。 4、土钉支护:基坑开挖的坡面上,采用机械钻孔,孔放入钢筋并注浆,在坡面上安装钢筋网,喷射厚度为80~200mm的C20混凝土,使土体、钢筋与喷射混凝土面板结合为一体,强化土体的稳定性。这种深基坑的支护结构称为土钉支护。 5、动水压力:流动中的地下水对土颗粒产生的压力称为动水压力。 6、流砂现象:采用集水坑降水法开挖基坑,当基坑开挖到地下水位以下时,有时坑底土会形成流动状态,随地下水涌入基坑,这种现象称为流砂现象。 7、土的最优含水量:在压实机械和压实遍数相同的条件下,使填土压实获得最大密实度时的土的含水量,称为土的最优含水量。 8、压实系数:压实系数是土的施工控制干密度和土的最大干密度的比值。 二、填空 1、土的开挖难易八 2、减小或平衡改变 3、加固型支护支挡型支护 4、集水坑降水法井点降水法 5、挖方深度H 其边坡底宽B 6、锚头拉杆锚固体 7、高压灌浆预应力扩孔 8、滤管井点管弯联管总管 9、沟端开挖沟侧开挖 10、分层 11、碾压法、夯实法、振动压实法 12、推土机、铲运机、平土机、松土机、单斗挖土机 三、单选 C C C B B B A C

电力电子技术第八章第九章部分课后习题答案(南航)复习课程

电力电子技术第八章第九章部分课后习题答案(南航)

补充题:SOA 的构成? 答:功率晶体管的SOA 由四部分组成。 1) 集电极最大允许电流I eM 2) 基极开路,集电极—发射极之间的最高允许电压U (BR)ceo 3) 晶体管集电极最大允许功率损耗P CM 4) 二次击穿电流水平I S/B 功率场效应管的SOA 由三部分组成 1) 漏—源击穿电压U (BR)DS 2) 等功耗线P DM 3) 最大允许漏极电流I DM 8-5图8-5中晶体管的β可在8~40间选择。R C =11Ω,电源电压E C =200V ,基极输入电压U B =10V 。如果U CES =1.0V 和U BES =1.5V 。求:(a )过驱动系数ODF=5时R B 的值;(b )强制β值;(c )晶体管功率损耗P C 。 c 截止区 饱和区 (a) (b)(c)解:30)1(=β取

Ω =??? ??=== -=-=== = =-= -= =8.2603.05.855 .110603.03009 .1809.18110 .12000.1b b bS b b b bes b b CS bs C CES C CS CES R R i i ODF R R U U i A i i A R U E ,i U β 时 W I U P I I cs ces C b CS f 09.1809.180.1)3(68.25.809 .18)2(=?===?? ? ??== β强制电流增益 8-9电路总电流为20A ,用两个MOSFET 管并联分担,一个管子的U DS1=2.5V ,另一个是U DS2=3V 。如用串联源极电阻(a )R S1=0.3Ω,R S2=0.2Ω及(b )R S1=R S2=0.5Ω来均流,求每个晶体管电流和两管漏极电流之差。 解:E ,U S DS =接地设 A R U E R U E S DS S DS 202 2 11=-+- (1)时Ω=Ω=2.0,3.021S S R R 202.03 3.05.2=-+-E E V E 2.5= A I A I D D 11,921== A I I D D 212-=-漏极电流差,12D D I I > (2)5.021==S S R R 205.03 5.05.2=-+-E E 75.7=E A I A I D D 5.9,5.1021==

第四章-第一节:建筑工程施工技术(八)

(四)钢结构工程施工 1.钢结构选材 对厚钢板结构、焊接结构、低温结构和采用含碳量高的钢材制作的结构,应防止脆性破坏。 承重结构的钢材,应保证抗拉强度、伸长率、屈服点和硫、磷的极限含量。焊接结构应保证碳的极限含量。必要时还应有冷弯试验的合格证。 2.钢结构构件的制作加工(略) 3.钢结构构件的连接 钢结构的连接方法分为焊接、螺栓连接、铆接等。 (1)焊接。焊接连接有气焊、接触焊和电弧焊等方法。采用电弧焊时,常用的焊条型号是E43××型和E50××型。 (2)螺栓连接。螺栓连接分为普通螺栓连接和高强度螺栓连接两种。 高强螺栓连接加工方便,对结构削弱少,可拆换,能承受动力荷载,耐疲劳,塑性、韧性好,安装工艺略为复杂,造价略高。 (3)铆接。现在已基本不用。 4.钢构件组装与预拼装 (1)钢构件组装施工。 1)钢构件组装分类。根据钢构件的特性以及组装程度,可分为部件组装、组装、预总装。 ①部件组装是装配最小单元的组合。 ②组装也称拼装、装配、组立,装配成为独立的成品构件。 ③预总装:这种装配方法已广泛应用在高强度螺栓连接的钢结构件制造中。 2)钢构件组装方法。常采用的是地样组装法和胎膜组装法。 (2)钢构件预拼装。钢构件拼装方法有平装法、立拼法和利用模具拼装法三种。

【例题】钢构件的组装方法较多,钢构件预拼装()适用于拼装跨度较小、构件相对刚度较大的钢结构,如长18m以内的钢柱、跨度6m以内的天窗架及跨度21m以内的钢屋架的拼装。 A.平装法 B.立装法 C.组装法 D.焊接拼装法 【答案】A 【解析】平装法适用于拼装跨度较小、构件相对刚度较大的钢结构,如长18m以内的钢柱、跨度6m以内的天窗架及跨度21m以内的钢屋架的拼装。 5.钢结构单层厂房安装 单跨结构宜从跨端一侧向另一侧、中间向两端或两端向中间的顺序进行吊装。多跨结构,宜先吊主跨、后吊副跨;当有多台起重设备共同作业时,也可多跨同时吊装。 (1)钢柱安装。一般钢柱的刚性较好,吊装时通常采用一点起吊。常用的吊装方法有旋转法、滑行法和递送法。对于重型钢柱也可采用双机抬吊。 (2)钢屋架安装。钢屋架侧向刚度较差,安装前需进行吊装稳定性验算,稳定性不足时应进行吊装临时加固,通常可在钢屋架上下弦处绑扎杉木杆加固。 钢屋架吊点必须选择在上弦节点处,并符合设计要求。 如果吊装机械性能允许,屋面系统结构可采用扩大拼装后进行组合吊装,即在地面上将两榀屋架及其上的天窗架、檩条、支撑等拼装成整体后一次吊装。 (3)吊车梁安装。在钢柱吊装完成经调整固定于基础上之后,即可吊装吊车梁。 (4)钢桁架安装。 6.多层及高层、高耸钢结构安装

电力电子技术 第6-8章 习题集答案

第6-8章 一、简答题 1、试说明PWM控制的基本原理。 答:PWM控制就是对脉冲的宽度进行调制的技术,即退过对一系列脉冲的宽度进行调制,来等效地获得所需要波形(含形状和幅值)。 在采样控制理论中一条重要的结论:冲量相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果基本相同,冲量即窄脉冲的面积。效果基本相同是指环节的输出响应波形基本相同,上述原理称为面积等效原理。 以正弦PWM控制为例。把正弦半波分成N等份,就可把其看成N个彼此相连的脉冲列所组的波形。这些脉冲宽度相等,都等于π/N,但幅值不等且脉冲顶部不是水平直线而是曲线,各脉冲幅值按正弦规律变化。如果把上述脉冲列利用相同数量的等幅而不等宽的矩形脉冲代替,使矩形脉冲的中点和相应弦波部分的中点重合,且使矩形脉冲和相应的正弦波部分面积(冲量)相等,就得到PWM波形。各PWM脉冲的幅值相等而宽度是按正弦规律变化的。根据面积等效原理,PWM波形和正弦半波是等效的。对于正弦波的负半周,也可以用同样的方法得到PWM波形。可见,所得到的PWM波形和期望得到的正弦波等效。 2、什么是异步调制?什么是同步调制?两者各有何特点?分段同步调制有什么优点?答:载波信号和调制信号不保持同步的调制方式称为异步调制。在异步调制方式中,通常保持载波频率f c固定不变,因而当信号波频率f r变化时,载波比N是变化的。 异步调制的主要特点是: 在信号波的半个周期内,PWM波的脉冲个数不固定,相位也不固定,正负半周期的脉冲不对称,半周期内前后1/4周期的脉冲也不对称。 这样,当信号波频率较低时,载波比N较大,一周期内的脉冲数较多,正负半周期脉冲不对称和半周期内前后1/4周期脉冲不对称产生的不利影响都较小,PWM波形接近正弦波。 而当信号波频率增高时,载波比N减小,一周期内的脉冲数减少,PWM脉冲不对称的影响就变大,有时信号波的微小变化还会产生PWM脉冲的跳动。这就使得输出PWM波和正弦波的差异变大。对于三相PWM型逆变电路来说,三相输出的对称性也变差。 载波比N等于常数,并在变频时使载波和信号波保持同步的方式称为同步调制。 同步调制方式中,信号波频率变化时载波比N不变,信号波一个周期内输出的脉冲数是固定的,脉冲相位也是固定的。 当逆变电路输出频率很低时,同步调制时的载波频率f c也很低。f c过低时由调制带来的谐小组不易滤除。当负载为电动机时也会带来较大的转矩脉动和噪声。 当逆变电路输出频率很高时,同步调制时的载波频率f c会过高。使开关器件难以承受。 此外,同步调制方式比异步调制方式复杂一些。 分段同步高调制是把逆变电路的输出频率划分为若干段,每个频段的载波比一定,不同频段采用不同的载波比。其优点主要是,在高频段采用较低的载波比,使载波频率不致过高,可限制在功率器件允许的范围内。而在低频段采用较高的载波比,以使载频率不致过低而对负载产生不利影响。 3、软开关电路可以分为哪几类?其典型拓扑分别是什么样子?各有什么特点? 答:根据电路中主要的开关元件开通及关断时的电压电流状态,可将软开关电路分为零电压电路和零电流电路两大类;根据软开关技术发展的历程可将软开关电路分为准谐振电路,零开关PWM电路,零转换PWM电路。 准谐振电路:准谐振电路中电压或电流的波形为正弦波,电路结构比较简单,但谐振电压或谐振电流很大,对器件要求高,只能采用脉冲频率调制控制方式。

相关主题
文本预览
相关文档 最新文档