摘 要:在用计算机求解大规模电路时,多采用节点法分析。M atlab具有强大的矩阵运算功能,在电子技术中应用广泛。对用Matlab分析大规模电路时的
模型建立方法进行了研究,并编写了相应的程序用于求解大规模电路中的电流和电压。结合
一个实例,说明用Matlab
分析大规模电路的方法。
关键词:电路;节点法;Matlab;建模
对于简单的电路分析,可以采用观察的方法列出所需要的独立方程,手算得出答案。而现代的电子电路包含上百个元件,对于这类大规模电路,不能凭观察列出方程。这就需要一
套系统化的步骤来处理这类电路,方程列写和解答都由计算机完成。对于方程的解答,可采
用Matlab。Matlab是集数值计算、符号运算及图形处理等强大功能于一体的科学计算语言,
特别适用于矩阵的运算。
1大规模电路的模型建立
1.1关联矩阵
对于给定的电路,可以用一个定向图来描述各定向支路和各个节点之间的连接关系。可以构造一个矩阵,定向图的节点组成矩阵的行,支路组成矩阵的列。这样的矩阵被称为关联增广
矩阵。对于一个有b条支路和n个节点的定向图,其关联增广矩阵为一个n行b列的矩阵Aa
:
Aa=(aij)
其中,第(i,j)个元素aij规定如下:
(1)如果支路j和节点i相关联,且离开该节点aij=+1;
(2)如果支路j和节点i相关联,且进入该节点aij=-1;
(3)如果支路j和节点i无关联,aij=0。
把矩阵的各行相加得到一个零向量,所以关联增广矩阵Aa是线型相关的。因此去掉关联增广矩阵Aa中的任意一行,仍能表征定向图中节点对支
路的关系。把这种(n-1)×b矩阵称为关联矩阵,记为A
。
1.2节点分析方法
设电路中每一条支路有1个电阻,1个独立电压源和1个独立电流源,一般形式如图1所示。由图1可得:

其中,Ik为第k条支路电流; Uk为第k条支路电压;
Gk为第k条支路电导;
Usk为第k条支路独立电压源电压;
Ik为第k条支路独立电流源电流。

支路电导矩阵为:

独立电压源向量Us为:

支路电流方程为:

其中:R为支路电阻矩阵。
节点电导矩阵为:

由方程GnUn=In可以确定节点电压向量Un,由Ub=AT
Un可以确定支路电压Ub,由Ib=GUb+Is-G Us可以求出支路电流Ib。
2Matlab程序编写
2.1数据输入
(1)在程序运行开始先输入支路数和节点数。
(2)电路各节点和支路信息输入到建立的数据文件中。输入方式如下:1行数据有6个,其中
第1个数据是支路编号;第2个数据是该支路起始节点编号;第3个数据是该支路终止节点编
号;第4个数据是支路电阻值;第5个数据是支路电压源电压值;第6个数据是支路电流源电
流值。数据输入后以数据文件的形式保存在计算机内部,供运行Matlab
程序时读取。
2.2程序实现
首先读出数据文件中的数据,根据输入的数据确定关联矩阵A、独立电压源向量Us、独立电流源向量Is和支路电阻矩阵R。再根据上面的方
程计算:节点电流向量In、节点电压向量Un、支路电压Ub和支路电流Ib。最后用
save d:\shuju\jddl.dat In- ascii语句把计算的结果以ASCII码文件的
形式保存在硬盘上。jddl.dat为保存节点电流的数据文件;In为程
序计算得出节点电流矩阵。
源程序:


3实例分析
电路如图2所示,按上面提供的方法,可以确定该电路有4个节点(n1~n4),6条支路(b1~b6)。该电路图的定向图如图3
所示,再由该定向图可以确定输入的数据为:

http://www.embeded.cn/upload/2005/08/1124003045.jpg" target=_blank>
把该数据保存到d:\shuju1.dat文件中,待Matlab程序调用。按输入数据得出计算结果如下:


经EWB软件分析,程序计算结果是正确的。
4结语
在电路分析中,对于大规模电路不可能采用观察的方法列出电路的节点方程或网孔方程。 本文通过对电路节点分析方法一般过程的具体分析,得出了一种通过Matlab软件分析大规模
电路的一般方法。按照此方法,在确定了电路图的定向图后,把包含电路信息的数据输入到
数据文件中,就可以调用编写的软件进行计算了。得出的计算结果还可以保存到计算机的数
据文件当中,方便用户使用。
参考文献
[1]李瀚荪.电路分析基础[M].北京:高等教育出版社,1992.
[2]龚剑,朱亮.Matlab入门与提高[M].北京:清华大学出版社,2000.