🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Arduino

Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

Q&A

2回答

8555閲覧

ステッピングモーターが動かない

退会済みユーザー

退会済みユーザー

総合スコア0

Arduino

Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

0グッド

0クリップ

投稿2019/09/12 11:05

現在やっていること

秋月のステッピングモーターユニポーラ型をarduinoを使って秋月のL6470モータードライバで動かしています。ACアダプターは5V 2.2Aと12V 1Aを持っています。

困っていること

秋月のステッピングモーターユニポーラ型のページを見ると定格電圧5V、入力定格電流0.5Aと書いてあります。しかしL6470モータードライバの電流の幅は8V~45Vと5Vでは足りません。現に5VのACアダプターを使ってもLED2が赤く光りません。
しかし北の国から電子工作さんの「L6470でユニポーラステッピングモーターを動かす」というサイトではL6470を使ってユニポーラステッピングモーターを動かすことに成功しています。しかも図の外部電源には8V~45Vと表記してあります。どうしてでしょうか

おそらく...

ユニポーラステッピングモーターの黒い線と白い線を使わずにバイポーラステッピングモーターとして動かしているからなのかなぁとは思っています。バイポーラステッピングモーターの定格電圧は12VでL6470の規格を満たしています。
それか北の国から電子工作さんがバイポーラステッピングモーターで行っていた時のスケッチをダウンロードしたから問題が起きているかも...とも思っています。

どなたか回答よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ozwk

2019/09/12 11:14 編集

>定格電圧5V、入力定格電流0.5Aと書いてあります。 12V0.6Aと書いてあるように見えるんですが
ozwk

2019/09/12 11:19 編集

書いてませんよ ST-42BYG020と ST-42BYG0506Hをごっちゃにしてません?
退会済みユーザー

退会済みユーザー

2019/09/12 11:19

すいません、間違いです ごめんなさい 別のやつと勘違いしてました
ozwk

2019/09/12 11:23 編集

あなたの過去質問の4回中3回が参考にしているサイトを読み間違えたり読み飛ばたりしてるだけなので、次回からその辺り意識してみるといいかもしれません
guest

回答2

0

相数は4なので48Vかけなければ

いいえ、形を考えてください。ユニポーラの標準の回路では、片端と中間点間に電流を流します。
それが両端を使うようになるので長さ(抵抗値)が倍です。
(片端から中間点までユニポーラと同じ電圧だとすると、さらに、もう一方まで同じ電圧が必要という事です。)

どうやってkvalを255にするのでしょう

L6470_setparam_kvalhold(val); //[R, WR]停止時励磁電圧default 0x29 (8bit) (Vs[V]*val/256)
L6470_setparam_kvalrun(val); //[R, WR]定速回転時励磁電圧default 0x29 (8bit) (Vs[V]*val/256)
L6470_setparam_kvalacc(val); //[R, WR]加速時励磁電圧default 0x29 (8bit) (Vs[V]*val/256)
L6470_setparam_kvaldec(val); //[R, WR]減速時励磁電圧default 0x29 (8bit) (Vs[V]*val/256)

この4つの関数です。Vsは電源電圧です。それぞれの状態での接続電圧(割合)を指定できます。

投稿2019/09/13 02:53

nac_tnk

総合スコア494

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/09/13 03:33

L6470_setparam_kvalhold(val); //[R, WR]停止時励磁電圧default 0x29 (8bit) (Vs[V]*val/256) L6470_setparam_kvalrun(val); //[R, WR]定速回転時励磁電圧default 0x29 (8bit) (Vs[V]*val/256) L6470_setparam_kvalacc(val); //[R, WR]加速時励磁電圧default 0x29 (8bit) (Vs[V]*val/256) L6470_setparam_kvaldec(val); //[R, WR]減速時励磁電圧default 0x29 (8bit) (Vs[V]*val/256) これをどのように変えるのでしょうか?
nac_tnk

2019/09/13 03:39

しまった。回答場所を間違えちゃった。 L6470_setparam_kvalhold(255); L6470_setparam_kvalrun(255); L6470_setparam_kvalacc(255); L6470_setparam_kvaldec(255);
guest

0

そのモータをバイポーラ結線で回すなら、普通DC24V以上、1.5A以上の電源を用意します。
※倍の電圧の24Vを繋ぐと定格の0.6A/相程度流れます。で、2相分なので、電流も倍です。

で、12Vを繋いだのなら、ダウンロードしたままのスケッチでは動かないでしょう。ちゃんとパラメータの設定をする必要があります。

北の国からさんのアップされているスケッチではkvalが0x50(80)です。そのままだと
12V×80/256=3.75V
しかモータにかかりません。本来24V繋ぐ必要があるところを3.75Vですから回すのはちょっと無理があるでしょうね。
kvalを255にして、ほぼ12Vで廻すように設定すれば回るかもしれません。

※他にも加速度や最高速度、過電流など、使用する電源やモータに合わせた設定をする必要があります。

L6470モータードライバの電流の幅は8V~45Vと5Vでは足りません。

接続するモータ用電源が8~45Vです。モータに印加できる電圧は接続電源電圧が上限です。
それ以下の定格のモータなら設定次第でどうにでもなります。

投稿2019/09/12 18:22

nac_tnk

総合スコア494

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/09/13 01:34

僕が使っているステッピングモーター相数は4なので48Vかけなければいけないということでしょうか
退会済みユーザー

退会済みユーザー

2019/09/13 01:40

どうやってkvalを255にするのでしょう
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問