質問編集履歴
3
分かりにくかったところの修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -30,13 +30,13 @@
|
|
30
30
|
|
31
31
|
|
32
32
|
|
33
|
-
// PLACE GLOBAL VARIABLES OR USER FUNCTIONS HERE...
|
34
33
|
|
35
|
-
static float f_PI = 3.141592653, Th; //ここで、使う変数を定義しています。Thは、角度Θの意味です。
|
36
34
|
|
37
35
|
```C言語/////////////////////////////////////////////////////////////////////
|
38
36
|
|
39
|
-
// FUNCTION
|
37
|
+
// PLACE GLOBAL VARIABLES OR USER FUNCTIONS HERE...
|
38
|
+
|
39
|
+
static float f_PI = 3.141592653, Th; //ここで、使う変数を定義しています。Thは、角度Θの意味です。// FUNCTION: SimulationStep
|
40
40
|
|
41
41
|
// This function runs at every time step.
|
42
42
|
|
2
分かりにくかったところの修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -24,29 +24,9 @@
|
|
24
24
|
|
25
25
|
エラーメッセージ
|
26
26
|
|
27
|
+
#iclude <Psim.h>
|
27
28
|
|
28
29
|
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
### 該当のソースコード
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
```C言語
|
38
|
-
|
39
|
-
Psim回路内のCブロックのプログラムです。
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
ソースコード
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
#include <Psim.h>
|
50
30
|
|
51
31
|
|
52
32
|
|
@@ -54,11 +34,7 @@
|
|
54
34
|
|
55
35
|
static float f_PI = 3.141592653, Th; //ここで、使う変数を定義しています。Thは、角度Θの意味です。
|
56
36
|
|
57
|
-
|
58
|
-
|
59
|
-
```ここに言語を入力
|
60
|
-
|
61
|
-
/////////////////////////////////////////////////////////////////////
|
37
|
+
```C言語/////////////////////////////////////////////////////////////////////
|
62
38
|
|
63
39
|
// FUNCTION: SimulationStep
|
64
40
|
|
@@ -112,11 +88,7 @@
|
|
112
88
|
|
113
89
|
|
114
90
|
|
115
|
-
コード
|
116
|
-
|
117
|
-
```
|
118
|
-
|
119
|
-
////////////////////////////////////////////////////////////
|
91
|
+
////////////////////////////////////////////////////////////
|
120
92
|
|
121
93
|
// FUNCTION: SimulationBegin
|
122
94
|
|
@@ -136,9 +108,7 @@
|
|
136
108
|
|
137
109
|
//int *pnError: (write only) assign *pnError = 1; if there is an error and
|
138
110
|
|
139
|
-
```
|
140
|
-
|
141
|
-
|
111
|
+
set the error message in szErrorMsg
|
142
112
|
|
143
113
|
// strcpy(szErrorMsg, "Error message here...");
|
144
114
|
|
@@ -168,9 +138,7 @@
|
|
168
138
|
|
169
139
|
|
170
140
|
|
171
|
-
```
|
172
|
-
|
173
|
-
|
141
|
+
/////////////////////////////////////////////////////////////////////
|
174
142
|
|
175
143
|
// FUNCTION: SimulationEnd
|
176
144
|
|
@@ -196,7 +164,15 @@
|
|
196
164
|
|
197
165
|
}//シミュレーション終了時のコマンドをうつところです。
|
198
166
|
|
167
|
+
コード
|
168
|
+
|
199
|
-
```
|
169
|
+
```
|
170
|
+
|
171
|
+
|
172
|
+
|
173
|
+
|
174
|
+
|
175
|
+
|
200
176
|
|
201
177
|
|
202
178
|
|
1
分かりにくかったところの修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
### 前提・実現したいこと
|
2
2
|
|
3
|
+
2枚の写真で示されている回路は、機械系の制御を行うコンバータの回路であり、そのシミュレーションを現在私が行ております。どちらも下の回路の一番左端の部分の電圧E0と電圧E0の位相角であるfai0を計算するための回路です。
|
4
|
+
|
3
|
-
|
5
|
+
私は、E0,fai0の初期値をこの回路にまず与えた後、任意の時間ごとのE0とfai0の値を計算し、回路のE0,fai0の値を時間ごとに更新していき、その結果を波形に出したいです。下の回路のC言語ブロックでE0,fai0をもとめるためのプログラムを作成します。
|
4
6
|
|
5
7
|
|
6
8
|
|
@@ -8,15 +10,15 @@
|
|
8
10
|
|
9
11
|

|
10
12
|
|
11
|
-
下の写真はシミュレーション回路を映した図です。このシミュレーション回路は
|
12
|
-
|
13
|
-
、電圧E0、E0の位相角のfai0をもとめる計算
|
13
|
+
下の写真はシミュレーション回路を映した図です。このシミュレーション回路は機械系の制御システムを示した回路であり、回路の左の方にあり、6個の入力と3個の出力が長方形がCブロックです。Cブロックの上の二つの入力は上の写真で計算されたE0,fai0の値をCブロックに入力します。その下の二つの入力は、シミュレーションの最初で初期値のE0,fai0の値を入力します。なお、力率PF0,PF1,PF2と書かれているメーターの上についている長方形のブロックは、力率を求めるための計算システムが入っております。また、一番右端のブロックの内部にはコンバータの回路が入っております。
|
14
|
+
|
15
|
+
次に上の図は、下の回路から電流io、電圧vo、電力p2を挿入して回路の力率、、電圧E0、E0の位相角のfai0をもとめる計算を行うシミュレーション回路です。この四角の中には計算を行うためのシステムが入っています。
|
14
16
|
|
15
17
|
|
16
18
|
|
17
19
|
### 発生している問題・エラーメッセージ
|
18
20
|
|
19
|
-
|
21
|
+
E0、fai0のをリアルタイムに更新するプログラムがわかりません。
|
20
22
|
|
21
23
|
|
22
24
|
|
@@ -42,11 +44,7 @@
|
|
42
44
|
|
43
45
|
|
44
46
|
|
45
|
-
|
47
|
+
|
46
|
-
|
47
|
-
#include <String.h>
|
48
|
-
|
49
|
-
#include <math.h>
|
50
48
|
|
51
49
|
#include <Psim.h>
|
52
50
|
|
@@ -58,7 +56,7 @@
|
|
58
56
|
|
59
57
|
|
60
58
|
|
61
|
-
|
59
|
+
```ここに言語を入力
|
62
60
|
|
63
61
|
/////////////////////////////////////////////////////////////////////
|
64
62
|
|
@@ -114,11 +112,11 @@
|
|
114
112
|
|
115
113
|
|
116
114
|
|
117
|
-
|
115
|
+
コード
|
116
|
+
|
118
|
-
|
117
|
+
```
|
119
|
-
|
120
|
-
|
118
|
+
|
121
|
-
|
119
|
+
//////////////////////////////////////////////////////////////
|
122
120
|
|
123
121
|
// FUNCTION: SimulationBegin
|
124
122
|
|
@@ -136,7 +134,11 @@
|
|
136
134
|
|
137
135
|
//int nParameterCount: (read only) Number of parameters is always zero for C-Blocks. Ignore nParameterCount and pszParameters
|
138
136
|
|
139
|
-
//int *pnError: (write only) assign *pnError = 1; if there is an error and
|
137
|
+
//int *pnError: (write only) assign *pnError = 1; if there is an error and
|
138
|
+
|
139
|
+
```
|
140
|
+
|
141
|
+
```set the error message in szErrorMsg
|
140
142
|
|
141
143
|
// strcpy(szErrorMsg, "Error message here...");
|
142
144
|
|
@@ -158,17 +160,17 @@
|
|
158
160
|
|
159
161
|
|
160
162
|
|
161
|
-
|
162
|
-
|
163
163
|
|
164
164
|
|
165
|
-
}//シミュレーションの初期値を
|
165
|
+
}//シミュレーションの初期値をここに言語を入力
|
166
|
+
|
167
|
+
|
168
|
+
|
169
|
+
|
170
|
+
|
166
|
-
|
171
|
+
```
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
172
|
+
|
171
|
-
/////////////////////////////////////////////////////////////////////
|
173
|
+
```/////////////////////////////////////////////////////////////////////
|
172
174
|
|
173
175
|
// FUNCTION: SimulationEnd
|
174
176
|
|
@@ -194,9 +196,7 @@
|
|
194
196
|
|
195
197
|
}//シミュレーション終了時のコマンドをうつところです。
|
196
198
|
|
197
|
-
|
199
|
+
```
|
198
|
-
|
199
|
-
|
200
200
|
|
201
201
|
|
202
202
|
|