- 締切済み
電動機のV/f制御プログラムについて
電動機のV/f制御について教えてください。 SH7125を使って誘導電動機のV/f制御をしたいと思っています。 速度指令を外部の可変抵抗などを使って入力し、速度を可変するようにしたいのですが、 Vとfが一艇で推移していくアルゴリズムについては、 N_ref (ADで入力) V=100/N_ref; count=count+1; if(count>=N_ref){ omega=omega+1; count=0; } これで大丈夫でしょうか? Vは電圧、omegaは位相で0~360までになるようにしています。 速度と周波数を同じ比率で推移させたいのですが、ちょっとわからず悩んでいます。 わかる方おられましたら、どなたかご教授お願いいたします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- foobar
- ベストアンサー率44% (1423/3185)
回答No.2
#1お礼欄に関して。 dtはプログラムのループ部分の実行周期(何秒毎に加算をするか、の値)です。 K_nは一定の値です。
- foobar
- ベストアンサー率44% (1423/3185)
回答No.1
N_refに入っている数値はなんでしょうか? もし、回転数指令値に比例する値なら、その後の処理は修正する必要があるかと思います。 V/f=一定にするので、VはN_refに比例させるひつようがあります。(V=k*N_ref;) omegaの処理も、考える必要があるでしょう。 通常は、omega += K_n*N_ref*dt; として、そのあと0<omega<360になるように加減算する処理をいれるかと思います。
お礼
foobar様 迅速な解答、大変感謝いたします。 N_refに入る値は、外部のトリマなどからAD入力でマイコンに入れる速度指令値として書きました。 >V/f=一定にするので、VはN_refに比例させるひつようがあります。(V=k*N_ref;) 了解いたしました。 >通常は、omega += K_n*N_ref*dt; として、 >そのあと0<omega<360になるように加減算する処理をいれるかと思います。 omega += K_n*N_ref*dt; if(omega>360){omega=omega-360} if(omega<=-1){omega=omega+360} という感じでしょうか。 VのkとomegaのK_nは定数で一定ですよね? dtに関してはどう決めたらいいでしょか?