TA的每日心情 | 愤怒 2020-12-8 11:59 |
|---|
签到天数: 105 天 连续签到: 1 天 [LV.6]常住居民II 累计签到:223 天 连续签到:1 天
|
发表于 2012-10-4 09:32:18
|
显示全部楼层
回复 1# two_fish
6 p( M9 b$ N& I6 l( H: x
6 t8 w) V; x" l: Z0 P4 U* V0 K4 F2 p' J/ U5 i- W
Pscad有2种方法可以保存采样数据。
$ R4 `& S1 X4 C8 _0 B6 Z/ _2 m. q0 h- m
一是recorder,另外一种是channel save。第一种方法最为常用,也最方便,平时应用已足够了。第二种方法则在特定的情况下能发挥奇效。
6 @, @3 a* K, B- z x) a
: K# ]+ @% B6 s5 W* G' x0 p8 y/ t, C4 [; j; n: e7 H
先说recorder。重点讲一下其中的几个设置。3 L2 H# |9 w5 \
1. Recording Time Step: 必须是整数,小数位一律没用。比如说60Hz,64采样点/周波,输入260就行了,输入260.42和输入260是一个效果的。最大采样时间精度是1微妙,如果需要更小的采样周期,可以使用第二种方法。) d+ J; b k9 y9 D# p
2. Output file format:一般选RTP,或COMTRADE99。其中RTP格式简单,但是一些情况下,某些采样点会以xxxxxx保存,如果发生这种情况,把对应采样channel中的pt or ct ratio改成一个很大的值,例如10000,重新运行就可以了。COMTRADE99的格式复杂一些,但是不会出上面的错误。
% k& Z/ {# e2 M h* G; z/ y/ A3. Analog Output Maximum:现在采样要16位吧,2的16次方-1=65535。缺省的4096是12位采样精度,我感觉4095更对,设计人员少硬件知识:-(。
5 v4 `- \# G2 O; T& K1 W4. 如果某个channel之前有ct或pt模块,别忘了给相应的channel选择二次测,并填写正确的pt or ct ratio。
7 {/ o7 k# A K6 M( d6 X: Z: Y5. System Frequency:具体没有什么用处,50,60对数据没影响,只是会在数据文件中保留这个频率。
( y5 {; U. ], z1 z8 Q+ k0 G! [$ A6. 其他的缺省值就可以了。9 @" ~: o1 i/ i! c8 b
9 h; p! A1 a& ?; P, b
- L0 m2 b' t1 W- H8 J需要注意几点:
# Q0 [2 g4 G' T' F+ O0 |1. 模块外部有采样起始和终止时间的控制。仿真如果在采样终止时间之前人为终止,则数据文件是.nam的临时文件,不能解读。如果仿真在采样终止时间之前自行终止,则依然会生成正常的数据文件。
; U8 h0 ]( X9 B3 S6 ?* b2. 如果添加recorder模块后,程序反而编译不通过,出现Runtime error的对话框,有abnormal program termination的出错信息。如果检查其他都正常,可以尝试修改Output file name,因为你的输入文件名不合适。如果添加多个recorder模块后,在仿真中间出现错误,是因为多个recorder的输出文件名相同了。你也许会说文件名是不同的,但你可以检查一下每个文件名的前8位是否相同?recorder只认前8位,后面的一律省略。4 Q A1 R- N( b/ F0 b8 A9 e- I0 \
. U& f& W. {; G. S' P$ p
* [% D( N# G# {5 _9 f; r第一种方法的采样周期最小只能为1微妙,如果做行波分析,需要很大的的采样频率,例如10MHz,这时则需要第二种方法来保存采样点了。基本步骤如下:
* w& e% V4 e |/ q1. 仿真桌面的output channel只关联到需要保存的量。$ i& g) z: g& ]. |) _6 q. H
2. 右击project name,选择‘Project Settings’,‘Save channels to disk’选Yes。$ G( C. A9 _+ f6 G' n7 }/ d. E
3. 输入文件名。9 n" Z" K1 i; C6 a1 x& @7 _
4. 运行程序,会生成.out数据文件。不要和输电线参数的.out文件混了。
. v ]. o6 C! ]1 ~, Q, q5 X8 E4 q t1 z/ V6 t) O
( f" {8 n: I6 q! U6 [
需要注意几点:
3 l8 m F6 ~7 \0 Y( q+ ]1. solution time step最好设置为采样周期的十分之一。如果需要10MHz的采样频率,设置为0.01。
r+ u+ f4 V' u5 F/ ^ Q3 s) r9 c: E2. channel plot step就是采样周期。如果需要10MHz的采样频率,设置为0.1。
8 W2 f$ D9 x1 ?' ^: H3. 因为数据量很大,有些无用数据可以不采集。例如前0.1秒的preset阶段,这时可以考虑使用snapshot功能。
* j, [( O1 G) x4. 当然这种方法也能替代recorder,不过个人感觉还是recorder好一些。
4 m# D' l' K& L5 U+ z0 w1 a5 p# `/ M8 y
9 L! d/ @0 k$ ?1 f$ _附件是matlab对rtp格式(.pbk文件)和comtrade格式(.cfg和.dat文件)的解读函数,我自己改编的。只在matlab7.1版本以上能用。都只处理模拟量,懒了。+ E' j+ K5 c7 ^% E. q- [6 ~7 q
. ]" y; d4 m6 c# r% a
1 H1 a( j4 G: F8 d( S m H- h
使用方法如下:* q' W" B; ?# r! H/ z2 z2 w
data=real_comtrade('sim01'); 或 data=real_rtp('sim01');
* W; F% u2 @" s3 a2 t8 d G其中sim01是数据文件,不加扩展名。返回采样数据。其他的一些采样信息在函数中均有变量表示,如果需要,可以提取相应变量。
}% I( Y5 ~- q: _+ c0 {) ?& L, n- \- H
9 e% \6 C; v. s* b4 N1 C
————摘自论坛某帖 |
|