Boost 变换器的DCM小信号传递函数

合集下载

15、buck变换器DCM小信号建模

15、buck变换器DCM小信号建模
1. 已知 Buck 变换器电路参数:D=0.536,R=3 欧姆,Vg=28V,L=50uH,C=500uF。开关频率 fs=50kHz。 确定 Buck 变换器传递函数的主要特征参数,并绘制输入-输出传递函数的伯德图。
一:BUCK 变换器电路原理图 L
+ Vg
-
iL(t)
+ vL(t) -
D
C
+
带入参数得:
0.536 ∗ 3 ������ (������) =
7.5 ∗ 10 ∗ ������ + 5 ∗ 10 ∗ ������ + 3
② 、控制扰动与输出扰动的传递函数: 忽略输入扰动的作用,其小信号模型等效电路图为:
L


iL
d Vg
C
R

v
������

1 ������������
������(������) ������ ������(������)
MATLAB 程序如下: >>num=[0.536*3]; >>den=[7.5*10^(-8),5*10^(-5),3]; >>figure(1);bode(num,den);grid; Bode 图如下:
RV -
iD(t)
二、分析
1、当 MOSFET 导通时
������ (������) = ������ − ������
������������ (������)
������ (������) = ������ ∗
= ������ − ������
������������
������������ (������) ������ − ������

反激变换器小信号模型Gvd(s)推导__1210

反激变换器小信号模型Gvd(s)推导__1210

一、反激变换器小信号模型的推导 1.1 DCM1.1.1 DCM buck-boost 小信号模型的推导根据状态空间平均法推导DCM buck-boost 变换器小信号模型如下:+-v in (t)v o (t)一般开关网络图1 1理想Buck-Boost 变换器开关网络1231d d d ++= (1)首先,定义开关网络的端口变量1122,,,v i v i ,建立开关周期平均值1122,,,ssssT T T T v i v i 之间的关系:11()sg T g pk s s v t v i d T d T LL<>==(2)根据工作模态:113()()()0s s s L T g T T v t d v t d v t d <>=<>+<>+ (3)[]11()()()sss t T t T L T L s ttsssdi Lv t v d Ld i t T i t T T d T τττ++<>===+-⎰⎰(4) DCM 下,()()0s i t T i t +==,所以()0s L T v t <>=,结合(3)式:11()()0s s g T T d v t d v t <>+<>= (5)21()(t)=-(t)()s sg T T v t d d v t <><> (6)根据工作模态:1123()()0()(()())()()s s s s T g T T g T v t d t d t v t v t d t v t <>=+<>-<>+<>(7) 消去上式的2d 和3d 得:1()()s s T g T v t v t <>=<> (8)根据工作模态:2123()()(()())()0(())s s s s T g T T g T v t d t v t v t d t d v t <>=<>-<>++-<>(9)消去上式的2d 和3d 得:2()()s s T T v t v t <>=-<> (10)21111111()()()22ss s t T s T pk T tsd T i t i t d i v t T L+<>===<>⎰(11)于是输入端口的方程可表示为:111()()()ss T T e v t i t R d <><>= (12)1212()e sLR d d T =(13) 222111222212()()11()()22()()()ss s s s st T T T s T pk tsT e T v t v t d T i t i t d i T L v t R d v t +<><><>====<><>⎰(14)于是输出端口的输出功率可以表示为:21221()()()()s s s T T T e v t i t v t R d <><><>=(15)可见输出端口的输出功率等于输入端口的输入功率。

boost传递函数 交流小信号推导

boost传递函数 交流小信号推导

看看确实推导过程都没写,不过确实因为推导太复杂了,要整理成word真不容易,开个手稿版的,其实都是按照张卫平那本书中的方法和步骤推导的,不过那本书中只对buck拓扑进行了推导,所以我真的没有抄哦。

由上面的两个式子就可以推导出Gvd(s)和Gid(s),过程就略过了,直接给出结果:而Gvg(s)和Gig(s)的推导则令交流小信号等效电路中d(s)微变量为零,即涉及到的电压源短路,电流源开路,同样根据变压器两边电压电流的关系可列出两个式子基本上,CCM模式的boost主回路Gvd(s)均可以套用这个公式,大家可以结合自己接触过的项目用mathcad绘制这个函数的波特图,对于主回路的传递函数其实有四个式子,这个当然是最关键的,因为是占空比到输出电压的传递函数,关于这个函数主要注意点是:品质因数Qc、ESR造成的零点和右半平面零点,明天再做具体分析。

最后一张图②中的交流小信号等效电路,那个方法不懂,麻烦楼主再讲一下为什么d'(t) < Vo(t) >Ts就分离为那四部分了?我也是按照那个书上《开关变换器的建模与控制》的方法来推导的,我的理解是那种分离方法是针对小信号扰动进行,其实就相当于用d'(t) < Vo(t) >Ts对t求导数,<Vo(t)>Ts指的是开关周期内输出电压的平均值,自然就是Vo了,d`(t)在开关周期内的平均值自然就是D`,该式对时间求一阶导数的话就是那四个分式啦不晓得有没有解释清楚其实你可以看看那本书,我推传递函数的方法和步骤基本都是按照那本书的方法进行的d'(t)<Vo(t)>Ts不就是d(t)<Vo(t)>Ts对时间t 求导了么?,还是说这里的d' 表示的和D‘差不多的意思?其实应该是(1-d(t))<Vo(t)>Ts对时间求导,所以式子中有很多匪夷所思的负号那个d(t)<vo(t)>Ts是平均分量表达式,然后把平均分量分解成直流分量与交流小信号分量之和。

(电压控制模式的DCM-BOOST变换器设计程序)

(电压控制模式的DCM-BOOST变换器设计程序)

DCM模式电压型BOOST转换器设计程序1.确定BOOST转换器规格要求:a.输入电压范围(Vi):最小 AC33 V 典型 AC220V 最大AC330Vb.输出电压范围(Vo):最小典型 DC540V 最大c.输出功率范围(Po):最小 100W 典型 667W 最大1000Wd.输出电流范围(Io):最小 0.19A 典型 1.24A 最大 1.85Ae.开关频率(Kz):20KHz/100Kz/200Kzf.输出电压纹波(ΔVo):0.50Vg.效率(ξ):90﹪2.开关频率选择:开关频率选择取决于转换器的尺寸,重量以及成本和开关器件等折中选择。

20KHz3.升压电感的选择:(DCM)a.计算电压增益(M):M=Vo/Vi M=540/(33×1.414)=11.57b.等效负载电阻(R):R=Vo/Io R=540/0.19=2.84KΩc.最大升压电感(L):L≤[ (R×Ts)/2] ×[ (M-1)/M³]实际选择时要考虑:①允许启动瞬变,②输出滤波电容的额外充电电流。

如果是三相apfc则按如下选择:M'=M*√2 , 根据M'与L/(Ts·Ui²/Po)的关系图求出L ,Vi是Ui×√2DC升压算法:fs=20Kz 时L最大值=(2840/20000×2)×[ (11.57-1)/(11.57)³]=485μHfs=100Kz 时L最大值=(2840/100000×2)×[ (11.57-1)/(11.57)³]=97μHfs=200Kz 时L最大值=(2840/200000×2)×[ (11.57-1)/(11.57)³]=49μH三相apfc算法:M'=M*√2=11.57×L/(Ts·Ui²/Po)1.414=16.36 查图5-2得:L/(Ts·Ui²/Po)=0.66 L=0.66 ×(Ts·Ui²/Po)fs=20Kz 时 L=0.66 ×(33²/100×20000)=360μHfs=100Kz 时 L=0.66 ×(33²/100×100000)=72μHfs=200Kz 时 L=0.66 ×(33²/100×200000)=36μH4.占空比计算(D):a.先确定(K): K=(2×L)/(R×Ts)K=(2×0.000485)/( 2840/20000)=0.00683 fs=20Kz 时K=(2×0.000097)/( 2840/100000)=0.00683 fs=100Kz 时K=(2×0.000049)/( 2840/200000)=0.0069 fs=200Kz 时b.计算(D): D=√K×M×(M-1)D=√0.00683×11.57×(11.57-1) =0.913对于三相apfc时最大占空比为Dmax=(M-1)/M ,设计占空比为(Dm)取Dm=0.8DmaxDmax=(11.57-1)/11.57=0.914Dm=0.8Dmax=0.8×0.914=0.7315.峰值电感电流(Ipk):对于单相Ipk=(Upk×D×Ts)/L 其中Upk=Vi×√2Vi为AC输入电压Ipk=(33×√2×0.913×1/20000)/0.000485=4.9A fs=20Kz 时Ipk=(33×√2×0.913×1/100000)/0.000097=4.39A fs=100Kz 时Ipk=(33×√2×0.913×1/200000)/0.000049=4.35A fs=200Kz 时对于三相apfc时 Ipk=(Upk×Dm×Ts)/L (@100W)Ipk=(33×√2×0.731×1/20000)/ 0.00036=4.74A fs=20Kz 时Ipk=(33×√2×0.731×1/100000)/ 0.000072=4.74A fs=100Kz 时Ipk=(33×√2×0.731×1/200000)/ 0.000036=4.74A fs=200Kz 时输出功率667W,fs=20Kz时:Ipk=28.71A输出功率1000W,fs=20Kz时:Ipk=43.33A6.输出滤波电容选择:a.假设电容的ESR是0时:纹波ΔVo=[(Ipk)²×L]/[2×C×(Vo-Vi)]则:所需的电容C=[(Ipk)²×L]/[ 2×ΔVo×(Vo-Vi)]C=[(4.74)²×0.00036]/[ 2×0.50×(540-33×√2)]=16.4μF (@100W)C=[(28.71)²×0.000074]/[ 2×0.50×(540-33×√2)]=124μf (@667W)C=[(43.3)²×0.000049]/[ 2×0.50×(540-33×√2)]=186μF(@1000W)b.现假设该电容的ESR是非常大,由纹波电压ΔVo的限制推算出ESR=ΔVo/ΔIo (mΩ) 这里假设ΔIo= Ipk ,输出滤波电容的额定电流应至少是[ΔVo/ESR]的2倍至3倍(换言之,输出滤波电容的30%至50%电容量的等效串联电阻= ESR),所以输出滤波电容选择为:Co=3×CCo=3×16.4=49.2 μF (@100W)Co=3×124=372 μF (@667W)Co=3×186=558μF (@1000W)或者:C≥﹛Io﹙max﹚×[1-√〔﹙2×L﹚/﹙R×Ts﹚〕]﹜/﹙Fs×ΔVo﹚电容的ESR≤ΔVo/ΔI﹙L﹚Co≥﹛0.19×[1-√〔﹙2×0.00036﹚/﹙2840×1/20000﹚〕]﹜/﹙20000×0.5﹚=17.6μF (@100W)Co≥﹛1.24×[1-√〔﹙2×0.000072﹚/﹙435×1/20000﹚〕]﹜/﹙20000×0.5﹚=114μF (@667W)Co≥﹛1.85×[1-√〔﹙2×0.000036﹚/﹙292×1/20000﹚〕]﹜/﹙20000×0.5﹚=172μF (@1000W)电容的ESR≤0.5/4.74=105mΩ (@100W)ESR≤0.5/28.71=17.4mΩ (@667W)ESR≤0.5/43.33=11.5mΩ (@1000W)一般三相BOOST功率级的输出滤波电容比相应单相BOOST功率级输出滤波电容要小7.功率开关的选择:a.开关管所承受的电压为负载电压(Vo),一般器件的承受电压应为实际应用的2倍,即2×Vo 本例开关管耐压:2×540=1080V,即1200V等级b. 开关管的输入最大电流为输入峰值电压时输入电流的峰值(Ipk),器件手册上给出的多为常温下的数据,而开关管工作温度在80ºC以上,电流一般取常温时的0.6倍,而且,电路在刚开通的那一刻,会产生很大的冲击电流,至少是稳态是的2倍,所以开关管至少需要:I=(2×Ipk)/0.6 。

14、boost变换器DCM小信号建模

14、boost变换器DCM小信号建模

f1( v1(t) TS , v2 (t) TS , d (t))
将该式在静态工作点附近作泰勒级数展开得到:
I1 iˆ1
f1(V1,V2, D) vˆ1
f1 (v1 ,V2 dv1
,
D)
|v1 V1
vˆ2
f1(V1, v2 , dv2
D)
|v2
V2
dˆ (t )
f1 (V1 ,V2 dd
,
D)
|v2 V2
(M
1 1)2
Re
j1
df1(V1,V2, d ) dd
|d D
2MV1 D(M 1)2 Re
类似的,对输出端口作同样处理,输出端口方程为:
i2 (t)
TS
d12Ts 2L
*
v1(t) v2 (t) TS
2 TS
v1(t)
TS
f2 ( v1(t) TS , v2 (t) TS , d (t))
i1 (t )
TS
d12Ts 2L
*
v2 (t) TS v2 (t) TS
* v1(t) TS v1(t) TS
i2 (t)
TS
d12Ts 2L
*
v1(t) v2 (t) TS
2 TS
v1(t)
TS
首先引入扰动,即令
d (t) D d (t)
v1
(t
)
Ts
V1
v1
(t
)
iv12((tt))TTs sIV1 2i1v(t2)(t
j2
df2 (V1,V2 , d ) dd
|d D
2V1 D(M 1)Re
根据上式,DCM 方式下 boost 变换器的小信号模型如图 5 所示

boost传递函数 交流小信号推导

boost传递函数 交流小信号推导

看看确实推导过程都没写,不过确实因为推导太复杂了,要整理成word真不容易,开个手稿版的,其实都是按照张卫平那本书中的方法和步骤推导的,不过那本书中只对buck拓扑进行了推导,所以我真的没有抄哦。

由上面的两个式子就可以推导出Gvd(s)和Gid(s),过程就略过了,直接给出结果:而Gvg(s)和Gig(s)的推导则令交流小信号等效电路中d(s)微变量为零,即涉及到的电压源短路,电流源开路,同样根据变压器两边电压电流的关系可列出两个式子基本上,CCM模式的boost主回路Gvd(s)均可以套用这个公式,大家可以结合自己接触过的项目用mathcad绘制这个函数的波特图,对于主回路的传递函数其实有四个式子,这个当然是最关键的,因为是占空比到输出电压的传递函数,关于这个函数主要注意点是:品质因数Qc、ESR造成的零点和右半平面零点,明天再做具体分析。

最后一张图②中的交流小信号等效电路,那个方法不懂,麻烦楼主再讲一下为什么d'(t) < Vo(t) >Ts就分离为那四部分了?我也是按照那个书上《开关变换器的建模与控制》的方法来推导的,我的理解是那种分离方法是针对小信号扰动进行,其实就相当于用d'(t) < Vo(t) >Ts对t求导数,<Vo(t)>Ts指的是开关周期内输出电压的平均值,自然就是Vo了,d`(t)在开关周期内的平均值自然就是D`,该式对时间求一阶导数的话就是那四个分式啦不晓得有没有解释清楚其实你可以看看那本书,我推传递函数的方法和步骤基本都是按照那本书的方法进行的d'(t)<Vo(t)>Ts不就是d(t)<Vo(t)>Ts对时间t 求导了么?,还是说这里的d' 表示的和D‘差不多的意思?其实应该是(1-d(t))<Vo(t)>Ts对时间求导,所以式子中有很多匪夷所思的负号那个d(t)<vo(t)>Ts是平均分量表达式,然后把平均分量分解成直流分量与交流小信号分量之和。

反激变换器小信号模型Gvd(s)推导

反激变换器小信号模型Gvd(s)推导

一、反激变换器小信号模型的推导 1.1 DCM1.1.1 DCM buck-boost 小信号模型的推导根据状态空间平均法推导DCMbuck-boost 变换器小信号模型如下:+-v in (t)v o (t)一般开关网络图1 1理想Buck-Boost 变换器开关网络1231d d d ++=(1)首先,定义开关网络的端口变量1122,,,v i v i ,建立开关周期平均值1122,,,ssssT T T T v i v i 之间的关系:11()sg T g pk s s v t v i d T d T LL<>==(2)根据工作模态:113()()()0s s s L T g T T v t d v t d v t d <>=<>+<>+(3) []11()()()sss t T t T L T L s ttsssdi Lv t v d Ld i t T i t T T d T τττ++<>===+-⎰⎰(4) DCM 下,()()0s i t T i t +==,所以()0s L T v t <>=,结合(3)式:11()()0s s g T T d v t d v t <>+<>=(5) 21()(t)=-(t)()s sg T T v t d d v t <><>(6)根据工作模态:1123()()0()(()())()()s s s s T g T T g T v t d t d t v t v t d t v t <>=+<>-<>+<> (7) 消去上式的2d 和3d 得:1()()s s T g T v t v t <>=<>(8)根据工作模态:2123()()(()())()0(())s s s s T g T T g T v t d t v t v t d t d v t <>=<>-<>++-<>(9)消去上式的2d 和3d 得:2()()s s T T v t v t <>=-<>(10)21111111()()()22ss s t T s T pk T tsd T i t i t d i v t T L+<>===<>⎰(11)于是输入端口的方程可表示为:111()()()ss T T e v t i t R d <><>=(12)1212()e sLR d d T =(13) 222111222212()()11()()22()()()ss s s s st T T T s T pk tsT e T v t v t d T i t i t d i T L v t R d v t +<><><>====<><>⎰(14)于是输出端口的输出功率可以表示为:21221()()()()s s s T T T e v t i t v t R d <><><>=(15)可见输出端口的输出功率等于输入端口的输入功率。

20170715-Buckboost变换器在电阻负载下的小信号传递函数

20170715-Buckboost变换器在电阻负载下的小信号传递函数

Buckboost 变换器在电阻负载下的小信号传递函数普高(杭州)科技开发有限公司 张兴柱 博士用等效电源平均法,可获得Buckboost 变换器在电阻负载和CCM 下的两个等效子电路,分别如图1(b)和图1(c)所示。

其中图1(b )为稳态等效子电路,图1(c )为小信号等效子电路。

)(t v g )(tgV(ˆs vg )(ˆ][s dV V g o +)(ˆs oL图1: Buckboost 变换器和它的等效平均电路模型用图1(b )的稳态等效子电路,可以求出Buckboost 变换器在电阻负载和CCM 下的稳态关系。

因R R L <<,故在稳态关系中,可将其忽略。

求得的稳态关系为:Buckboost 变换器在稳态工作点上的小信号传递函数:222111)(o o zc a g vd s Q s s s D V s G ωωωω+++−′=)()(,2211)(o o zc vg s Q s s D Ds Gωωω+++′= 2221)1)(1()(oo zc zL L out s Q s s s D R s Z ωωωω++++′=)1()1()(1)(2222)(zp o o g ig in s s Q s D R D s G s Z ωωω+++′== 221311)1)(o o zp g id s Q s s R D V D s G ωωω+++′+=(,22211)(oo zpig s Q s s R D D s G ωωω+++′=22111)(o o zcii s Q s s D s G ωωω+++′=其中:D D −=′1,LC D o ′=ω,])([122C D R R R D L Q L c o ′++′=ω,DL R D a 2′=ω L R L zL =ω,C R C zc 1=ω,RC zp 1=ω,RCD zp +=11ω有两个小信号传递函数,即)()(s G g id ,)()(s G g ii 没有给出,有兴趣的读者,可以作为作业自己去推导。

Boost变换器系统建模及其控制 ppt课件

Boost变换器系统建模及其控制 ppt课件

在Boost变换器中,端口变量
刚好分别为电感电流和电容电
压,这里将它们定义为开关网络的输入变量。
为开关网络的
输出变量。用受控源等效网络子电路,如v图1(t)3和 所i2示(t)
图3 用受控源等效的网络子电路
为保证图3中受控源两端口与图2中的开关网络完全等效,受控源两端 口网络的两个端口必须与开关网络的两个端口波形相同,将图3中的 二端口网络作开关周期平均运算之后,有:
截止频率:3.75105 Hz
其稳定判据显示系统不稳定
2021/3/26
19
Boost变换器系统建模及其控制 ppt课件
不稳定的原因是原始回路中频以-40dB/dec的斜率穿越0dB线,此时对应最小相位 系统相频图中相移为-180度,-20dB/dec对应-90度,所以应使校正后的系统以20dB/dec的斜率穿越0dB线,这样就会有较好的相位稳定性,低频处设一极点以提 高系统的型别,可以使补偿后的系统成为无差系统,使静差为零,同时减少了低 频误差,高频处设置极点,以减小高频开关波纹。
R
把传递函数写入MATLAB中的sisotool中, 得到传递函数的对数频率坐标图.
2021/3/26
18
Boost变换器系统建模及其控制 ppt课件
在MATLAB中的波特图如下所示:
Open-Loop Bode Editor (C) 80
60
Magnitude (dB)
40
Phase (deg)
Gm (s)
为占空比至输出的传递函数,
为PWM为脉宽调制器的传
递函H (数s) , 表示反馈通路的传递函数,Gc (s) 为补偿网络的传递函数。
其中
为未加补偿网络时的回路增益函数,称之为原始

20170808-峰值电流型控制Boost等效功率级的小信号传递函数

20170808-峰值电流型控制Boost等效功率级的小信号传递函数

峰值电流型控制Boost 等效功率级的小信号传递函数
普高(杭州)科技开发有限公司 张兴柱 博士
Boost 变换器在峰值电流型控制下的等效功率级小信号传递函数(CCM ): )
1)(1()1()1()(220n n p p zc a vc vc s Q s s s s G s G ωωωωω++++−′≈′ )1)(1()1)(1()(220
n n p p zc a vg vg s Q s s s s G s G ωωωωω++++′+′≈′ )
1()1()(0p zc out s s R s Z ωω++′≈′ 其中:10F D R R G i vc ′=′,120F F L RT G s vg =′,1
0F R R =′ 11F RC p =ω,L R D a 2′=ω,)5.0(1−′=D m Q c p π,C R c zc 1=ω,s
n T πω= a a D F ωω×′=′22,)]5.0(21[231−′+=c s m D L RT F ,]5.0[22−′+′′=D m RT D L D F c s
n e c S S m +=1,i g n R L
V S ×=
Boost 的峰值电流控制等效功率级小信号传递函数,与Buck 的差别是在控制电压到输出电压这个小信号传递函数中增加了一个右半平面零点,其它的特性很类似,但由于其极点数少了一阶,所以相比于电压型控制而言,它的补偿电路也是比较容易设计的。

1。

电流型控制Boost电路小信号建模

电流型控制Boost电路小信号建模

电流型控制Boost 电路小信号建模■惠晶 崔冬明 江南大学控制科学与工程研究中心电流型控制法由于其快速响应性、准确性以及具有负载过流保护等优点被广泛应用在脉宽调制(PWM )DC/DC 直流变换器中。

描述直流变换器开环传递函数可以用来了解变换器本身特性并为闭环控制器的设计提供参考。

电流型控制方法通常需要的传递函数有占空比到电感电流F pi (s)、输入电压到电感电流M vi (s)和输出电流到电感电流A i (s)。

采用常规的状态空间平均法的建模方法虽然可以通过公式推导的方法逐步得到电路的各个传递函数,但当考虑元件的寄生参数时该方法显得有些困难。

相关文献提出了一种基于平均电路的小信号建模方法,该方法通过建立电路的平均模型,可以方便的得到电路的小信号模型和传递函数。

本文利用相关文献中的平均电路法建立了PWM DC/DC Boost 电路在电流连续模式(CCM )下的小信号模型,考虑了电感电容及MOSFET 开关器件的等效阻抗,根据该模型分别得出了占空比到电感电流的传递函数F pi (s)、输入电压到电感电流的传递函数M vi (s)和输出电流到电感电流的传递函数A i (s)三个传递函数。

采用MATLAB 仿真软件对本文得到的传递函数分别进行了频率响应分析和瞬态响应分析,为Boost 变换器电流环控制设计提供了重要的参考价值。

一、Boost 变换器平均电路模型的建立图 1 boost 电路 图2 Boost 电路CCM 平均模型根据相关文献可以得到Boost 电路(图1)的平均电路模型如图2所示。

用电流源Q i 代替通过主开关器件MOSFET 的平均电流,用电压源D v 代替二极管两端的平均电压。

根据相关文献得到:其中,L r 为电感等效串连阻抗,DS r 为主开关器件的导通阻抗,R F 为二极管的前向导通阻抗。

设在稳态运行时电感电流和输出电压分别为V 0和I L ,在稳态量的基础上引入扰动,得到: 其中,^d 、^L i 和^0v 为扰动量。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档