トピック関連記事
48時間以内の記事は New Mark で表示されます
Re: 続8ーPWM
maboさんお疲れさま、
皆さんこんばんは。

マッハの、[CLOSED LOOP]の設定方法を教えてください。
自分のスピンドルモーターには、エンコーダーのようなものがありません。
それでも、[CLOSED LOOP]にチェックを入れたり、P I Dに何かしらの数値を入れるのでしょうか?

ご紹介くださったページ、難しそうですね。
https://ja.wikipedia.org/wiki/PID制御
デフォルトでも数値が入っていましたが、やはり弄らなくちゃいけないのでしょうか??

読んでみますが、わからなかったら、再度投稿しますので、その節は宜しくお願いします。


*********************
猛牛ロックさんへ
プログラムの件、了解しました。

それと、
No1617のお写真すみません。
了解しました。

既に写真の可変抵抗が結線された既存の状態で抵抗を測ってあります。
なんと、最大で1Ωでした。 外して、もう一度抵抗値を確認します。
また、結線状態で、写真箇所の電流も図ります。


で、なんですが、
写真右のテストですが、既存のシステムだけでテストですか?
既存だけでしたら、あまり意味がないようですが。


訂正とお詫び
1Ω 正しくは、1kΩ
でした。済みませんでした。



*******************
maboさんへ


◯SEC(PWM出力) → ローパスフィルター(直流変換) →X9C → コントローラー(電圧制御)→適当なDCモーター
(コントローラーのボリュームとX9Cを置き換え。)

解釈ですが、
適当なDCモーター(コントローラーのボリュームとX9Cを置き換え。)とあります。
DCモーターに括弧をつけて、抜き出しています。 DCモーターに付属する何かがあって、
その何かで何をするのでしょうか??


それと、SEC→→ローパスフィルター →→ PICのAD変換 →→ X9C →→ ML4

これですが、
ローパスフィルターで、PWMを平準化しますよね、で、この流れだと、PICとx9cによって、もう一度
直流の電圧を平準化します。 これでは、2度平準化しますよ!!
これでも良いのでしょうか? ちょっと見、無駄な感じがします。
このことは、猛牛ロックさんも言われていることだと思っていましたが。

TR 2019/06/08(Sat) 20:13 No.1618
Re: 続8ーPWM
TRさん,こんばんは。

すみません間違いがありました。

◯SEC(PWM出力) → ローパスフィルター(直流変換) →X9C → コントローラー(電圧制御)→適当なDCモーター
(コントローラーのボリュームとX9Cを置き換え。)

これ,

◯SEC→ローパスフィルター→PICAD変換→X9C→コントローラー→適当なDCモーター

で,PICのAD変換がぬけてました。

括弧のなかは,この流れだと,PWMのコントローラーの
ボリュームとX9Cを置き換えて,確かめる,の意味でした。

モーターには,何もしなくて大丈夫です。


>それと、SEC→→ローパスフィルター →→ PICのAD変換 →→ X9C →→ ML4

>これですが、
>ローパスフィルターで、PWMを平準化しますよね、で、この流れだと、PICとx9cによって、もう一度
>直流の電圧を平準化します。 これでは、2度平準化しますよ!!
>これでも良いのでしょうか? ちょっと見、無駄な感じがします。
>このことは、猛牛ロックさんも言われていることだと思っていましたが。

これですが,PICでやってることは,

ローパスフィルターで読み取った電圧をならして,

それに応じたX9Cの設定をすることです。

ローパスフィルターでやることと,PICでならすことは,

どちらも必要なことだと思います。

ローパスフィルターを通った信号に乱れがあるので,

読み取るために,何回か平均をとってます。

この平均に基づいて,X9Cの設定をします。


それから,P I Dの設定ですけど,

すみません,研究中です。

なかなかうまくいきません。
mabo   2019/06/08(Sat) 20:46 No.1619
Re: 続8ーPWM
maboさんへ

>これですが,PICでやってることは,

ローパスフィルターで読み取った電圧をならして,

それに応じたX9Cの設定をすることです。

ローパスフィルターでやることと,PICでならすことは,

どちらも必要なことだと思います。

ローパスフィルターを通った信号に乱れがあるので,

読み取るために,何回か平均をとってます。

この平均に基づいて,X9Cの設定をします。



大変恐縮ですが、怒らないで下さい。

x9cは、平準化プログラム込みのPICで使います。
コンデンサと抵抗は、無くて済むなら使わない方が良いと思います。
なので、先ずは、x9cは、平準化プログラム込みのPICの波形をオシロで比べてみて、それでも追いつかないようでしたら、
ローパスフィルターも併せて使った方が良いと思いますよ。
本当にごめんなさい。 言い過ぎかも。
TR   2019/06/08(Sat) 21:11 No.1620
Re: 続8ーPWM
TRさん、こんばんは。

>大変恐縮ですが、怒らないで下さい。

大丈夫ですよ。

ローパスフィルター使わないのであれば、デジタルで受け取る

ということになると思います。

そうすると、猛牛ロックさんが、書いてくれた後の方のプログラムお使いいなるのかな。

AD変換しないで、デジタルで受け取ったものを処理した方が、

ノイズ等の心配も少なくなりますしね。

猛牛ロックさんも、デジタルで受け取る方が好みだとおっしゃってました。

今日は、ドライバー作って、TK100A08N1というFETで、

回転数調べていました。

回転始めから、最高回転までの、範囲が、狭いようでした。

PWMのコントローラーは、DUTY比が4%〜69%の範囲で
動いていましたが、

今回買い求めたのは、12%〜48%と狭くなりました。

FET差し替えられるようにしましたので、

いくつか変えて、検証してみようかなと思います。
mabo   2019/06/08(Sat) 23:25 No.1621
Re: 続8ーPWM
> TRさん
やっている事の意味がわかりませんけど、内部を計測したいなら可変抵抗を外した方が良いです。
繋がった状態だとボリューム位置で抵抗値が変わります。
スピンドルの巻き線抵抗を調べているんですか?

> 写真右のテストですが、既存のシステムだけでテストですか?
そうです。その可変抵抗を1本の抵抗で置き換えて、その可変抵抗の意味を調べます。
つまり、どういった回路をそこに繋げば制御出来るのか、という、一番最初にやるべきことです。

入口(PCからのPWM)と出口(スピンドルへの出力)の仕様が判らなければ、動くかどうか聞かれても判断が付きません。


それと、8個の平均を出したのはアナログ受信のプログラムです。デジタルなら100以上にした方が良いです。


追記します

スピンドルの基板から回路(使っているIC)が解るなら、それでも構いません。
猛牛ロック   2019/06/08(Sat) 23:41 No.1622
Re: 続8ーPWM
maboさん、おはようございます。

>そうすると、猛牛ロックさんが、書いてくれた後の方のプログラムお使いいなるのかな。


No1553ですか、1553は難しくて、、、理解できませんでした。



****************
猛牛ロックさんおはようございます。


既存の資料は何もないので、分かりません。
なので、改造できそうなスピードコントロールに使われている可変抵抗をx9cに変えようとしています。

で、
あえて、可変抵抗を外して、抵抗を入れて、既存システムでスピンドルを回すということは、
その理由が分かりません。

分からないという理由
可変抵抗で回るのでしょうから、固定抵抗に置き換えても、スピードは分かりませんが、回ると思います。

しかしながらテストをすることとは、、、を考えると。
それでもテストするということは、
可変抵抗が確実に、スピンドルモーターのスピードコントロールに寄与しているかどうかを
確認するということなんでしょうね。

分かりました。 やってみます。
テスト方法
再度、可変抵抗の最大抵抗値を計測し、その抵抗値の半分以上を使って、既存システムで、まわしてみる。



>それと、8個の平均を出したのはアナログ受信のプログラムです。デジタルなら100以上にした方が良いで


サンプリング回数を変える場合、プログラムを一部を変えるが、
デバイスの初期化関数は、デバイスの関係で500が上限と言っていました。
算出方法
PWM基本周波数/サンプル数

100Hzなら、1周期=0.01s
8サンプルで0.01/8=0.00125s=1250μs


8サンプルで1250、なのに、100サンプル、、
デバイスの上限を超えているので、、、、

*************
maboさん、、、、
ローパスと併用ですよ!! 多分。
TR   2019/06/09(Sun) 07:18 No.1623
Re: 続8ーPWM
> 再度、可変抵抗の最大抵抗値を計測し、その抵抗値の半分以上を使って、既存システムで、まわしてみる。
可変抵抗の最大値の1倍(〜10倍程度)までならどれでも良いです。ただし、値は覚えておいてください。
可変抵抗の最大値(固定された端子間)は外した状態で測ってください。

まず、その3本を外した状態で、電源を入れて、赤-黒間の電圧を計測してください。
もしかしたら高い電圧かも知れません。
(ここで5Vならいい結果が期待出来ます。高い電圧だと厳しくなります)

元の可変抵抗の固定部を使って切り替えても良いです。
上図で、
「赤と青を使って最高速、黒と青を使って動かない」というのが「良い結果」です。
なので、それでテスト終了です。
それ以外の結果の場合は…
まぁその時考えましょう。
猛牛ロック   2019/06/09(Sun) 08:54 No.1624
Re: 続8ーPWM
TRさん,猛牛ロックさん,おはようございます。


TRさん,ご指摘ありがとうございます。

>maboさん、、、、
>ローパスと併用ですよ!! 多分。

これ,ブログの方の,基本周波数の変換のプログラムですか?。

何年か前に,最初に取り組んだ時に,これではまりました。

プログラムは外国の諸兄,回路は日本の諸兄,

という組み合わせで,ローパスフィルター入れて,もがきました。

結果,ローパルフィルタ入れるとデジタルのサンプリング

できなくなりました。

今は,なんとなく理解できるのですが・・・・・・・。


それから,サンプリングですが,TRさんのおっしゃってることちょっとわからないのですが,

下記のように理解してます。

サンプリングの最小は,PICのクロック数に依存するので,

私が使ってるPICは,8Mhzで動作してますので,

クロック8MHz→1クロック0.125μs→1命令サイクル0.5μs

0.5μsより短い期間でのサンプリングはできませんが,

これより長ければ可と理解してます。


==================
違う種類のFETを注文しています。

一つは,諸兄のHPあった,3020のFET

もう一つは,ブログの方に書いた,値段の差のある

PWMのコントローラーです。

ちょっと,楽しみですが,X9Cは,まだとどきません。

アリでの購入の方がよかったかなあ。
mabo   2019/06/09(Sun) 09:23 No.1625
Re: 続8ーPWM
猛牛ロックさん
恐縮ですが、写真付で、説明願います。
TR   2019/06/09(Sun) 09:44 No.1626
Re: 続8ーPWM
maboさん

500マイクロは、1553にあるぷろぐらむで、初期化関数にあります。
猛牛ロックさんとのやり取りで、x9cの能力と聴いていました。

聞き間違えかもしれませんが、x9cは、500マイクロより、短時間では、動作しないと思いました。
猛牛ロックさんに、突っ込んで、聞けば良かった点です。
INCは500マイクロ必要かもしれません。

******
猛牛ロックさん
詳しく解説して下さい。x9cのデータシートの何処をどのように理解したらよろしいか。
TR   2019/06/09(Sun) 10:40 No.1627
Re: 続8ーPWM
TRさん,はい,TRさんがおっしゃってたのは,

X9Cの500μsでしたか。

これは,サンプリングではなく,

X9Cが一つワイパーを動かすのにかかる時間と,

私は理解しました。

ですから,次の動作まで,500μs 待つのだと思ってました。

動作の途中で,次の命令しても,受け付けない,

と思ってました。
mabo   2019/06/09(Sun) 12:27 No.1628
Re: 続8ーPWM
maboさん、右に同じです。
TR   2019/06/09(Sun) 12:36 No.1629
Re: 続8ーPWM
その辺りは2つの値が記載されています。
命令自体は1usで良い筈です。
その後にワイパーが動いて完了するまでが最大500usです。(標準で100us)
ワイパー自体は“make-before-break”動作です。
つまり、次のワイパーを繋いでから前のワイパーを切ります。

※必ずしも待たなければならない訳では無いと思います。
つまり、「待て」と書いてあるわけではありません。

けれども、例えば30ワイパーとかを連続(2us)間隔で命令を入れれば、並列で数ワイパー繋がり、瞬間的に抵抗が下がります。
その辺りをどう判断するかです。実際には仕様上、1つのワイパー動作でも1つ並列状態にはなります。

私は、確実だと思う方法を書いただけです。
例えば10usでwhileループを回しても動作はすると思います。
猛牛ロック   2019/06/09(Sun) 17:36 No.1630
Re: 続8ーPWM
TRさん,猛牛ロックさん,おはようございます。

TRさん,初期化関数変更して,抵抗どうなりましたか?

ワイパー一番端に行って,40Ωになったでしょうか。

私は,X9Cまだ届かないので,

疑似X9C作成して,あそんでました。

私のPWMコントローラーのボリュームと換装して,いじってみたら,

回転数は,

  90kΩ 1200rpm
  80kΩ 4300rpm
  70kΩ 6000rpm
  60kΩ 7000rpm
  50kΩ 7700rpm
  40kΩ 8100rpm
  30kΩ 8500rpm
  20kΩ 8700rpm
  10kΩ 9100rpm

 Ωで書いてますけど,10kΩの抵抗10個で,

 100kΩ(およそ90kΩ)にはなりませんでしたので,

   90kΩ→→10kΩ1個====10kΩ9個の分圧

 の結果ぐらいの意味しかないと思いますが,

 こんな結果でした。
 
 グラフにしてみると,Cカーブのボリュームのグラフ

 に近い傾向でした。


==========================
猛牛ロックさん,TRさん,下記の様な記事を見つけました。

https://www.cnczone.com/forums/mach-software-artsoft-software-/241922-pid-control-spindle-speed.html

この書き込みでは, PID control は,SS等ではできない

の書き込みでした。

パラレルで試すの,面倒ですねえ。

mabo   2019/06/10(Mon) 11:00 No.1633
Re: 続8ーPWM
皆さん済みませんでした。

やはり、ローパスフィルターは必要でした。
PICのプログラムは、ADコンバーターでした。
なので、PICに入れる信号はローパスフィルターでアナログ化しなければなりません。
すっかり、勘違いしていました。

SEC基板〜ローパスフィルター(10μ・22Ω)〜PIC〜x9c〜ML4
でした。


************
maboさんへ、

>ワイパー一番端に行って,40Ωになったでしょうか。


x9cの1kΩを追加しましたので、
これが来たら、試すつもりです。
若し、好転しなくても、計画は進めてみます。
ML4のモーターが回れば、良しとします。
欲を言えば、実際に使えたらいいのですが。
今回の計画は、複雑です(笑)


それから、
1633の実験結果を見ると、全体の1割程度の抵抗値は、気にしなくてもよさそうですね。
というのも、予期してスピンドルモーターが回るなら、それはそれでいいと思います。
止まらなかったら、やばいけど、そういった事はないでしょうから。

理由
プログラムで、スピンドル停止の指令があると思うからです。
TR   2019/06/10(Mon) 11:29 No.1634
Re: 続8ーPWM
maboさんへ

>この書き込みでは, PID control は,SS等ではできない


グーグル翻訳で解明しようとしましたが、ちんぷんかんぷん。

でも、maboさんの解説のとおりでしょうから、
マッハのPIDは、自分のSSでは無理だとわかりました。
有難うございます。
TR   2019/06/10(Mon) 13:52 No.1635
Re: 続8ーPWM
TRさん,猛牛ロックさんこんばんは。

前記事で,PIDはSSでは動かないの記事を見つけた,
と書きました。

その記事は,

Jeff Birt at Warp9 says that one cannot use the PID
control with an external motion control device (eg ESS)

なんですけど,これ,又聞きなんでしょうかね。

本家 Warp9 のフォーラムのぞいてみたのですが,

PIDの話題が結構でてます。

もし動かないなら,話題にならないような気がしてきました。

MACH4でのコントロールの様子ですが,添付のグラフがありました。

もうちょとあさってみます。

PIDのことについては,分かり易いHPがありました。

http://www.picfun.com/motor05.html


◯mazonにX9Cはたのんだのですが,まだきません。

いろいろあさってたら,別な物見つけたので,
それ,追加で注文しました。

https://jp.rs-online.com/web/p/digital-potentiometers/5236816/

マニュアルも日本語のありました。

https://www.analog.com/media/jp/technical-documentation/data-sheets/AD5220_JP.pdf

分かれば,こちら頼んだのにと,思いました。

mabo   2019/06/10(Mon) 23:47 No.1636
Re: 続8ーPWM
maboさん、おはようございます。

自分のx9cですが、壊れてしまったようで、
昨晩から、x9cにつなげたモニター用LEDが点灯しなくなりました。


取説、ありがとうございます。
INC・UDは、プルアップしないといけないようですね。
早速、INK/UDがつながっているPICの各ピンをプルアップに変更します。

それと、UP/DOWNのきっかけは、立下りエッジ検出のCLK=INKとなっていますね。
これで、初期化関数にある↓の意味が分かりました。

for (char i = 0; i < 100; i++) {
inc = 0;
__delay_us(1);
inc = 1;
__delay_us(500);
}


>分かれば,こちら頼んだのにと,思いました。

今回は、比較的に低廉な商品でよかったですね。
バイクの方は、そうはいきません、よくやりましたよ(笑)

TR   2019/06/11(Tue) 06:24 No.1637
Re: 続8ーPWM
maboさんへ、 もう一件失礼します。

SEC→ローパスフィルター→PICAD変換→X9C→コントローラー→適当なDCモーター

この流れで、ローパスフィルターは成功しましたか?
成功しているようであれば、CとRの数値を教えてください。
また、カットオフ周波数も分かればお願いします。

というのも、↓の記事が目に止まりました。



No1625
プログラムは外国の諸兄,回路は日本の諸兄,

という組み合わせで,ローパスフィルター入れて,もがきました。

結果,ローパルフィルタ入れるとデジタルのサンプリング

できなくなりました。
TR   2019/06/11(Tue) 07:30 No.1638
Re: 続8ーPWM
TRさん,おはようございます。

TRさん,取説は,X9Cのものではないので,

お間違いのないように。

AD5220という型番のものです。

>SEC→ローパスフィルター→PICAD変換→X9C→コントローラー→適当なDCモーター

実機が届いてないので,LEDでのPICの動作確認ですが,

SS→→ローパスフィルター→→PICAD変換→LED

で,動作の確認はしてます。

X9C→コントローラー→適当なDCモーター

の部分が未確認です。

ローパスフィルターは,20kと10μF だったと思います。


ローパスフィルターいれて,だめだったのは,

今考えると当たりまえなのですが,デジタルで受けたからです。

ローパスフィルタ(日本の諸兄の配線図)→→デジタル受け(外国の諸兄のプログラム)

での失敗です。ローパスフィルターに使った抵抗とコンデンサーの選択の失敗ではなくで,

アナログ→デジタル

のながれでのあたりまえの失敗でした。今週には,

X9CもAD5220も届くと思いますので,確認しようと思ってます。

それから,パラレルでのPIDの検証もしたいと思ってます。
mabo   2019/06/11(Tue) 09:40 No.1639
Re: 続8ーPWM
maboさん

もうそろそろくるということで、ちょっと。
初期化関数に気になる点があります。
x9cに電源を入れて直ぐに、モニター用ledが点灯します。ただ、実際の影響は、定かでありません。

ローパスフィルターの情報有り難うございます。

実際、スピンドルが回るか?
TR   2019/06/11(Tue) 10:06 No.1640

処理 記事No 暗証キー

- JoyfulNote v6.02 -
++ Edited by Hamel ++