<E-ZeusとLX200コマンド対応>
天体望遠鏡制御システムEJANは、Arduinoボードとステッピングモータシールドを用いて、星図アプリから指定した天体を望遠鏡の視野に自動導入し、天体撮影を可能にしようとするGOTOシステムです。
1.メインボードはArduino UNO または MEGAを採用する
2.駆動モータは、バイポーラ型のステッピングモータを使用する
3.星図プログラムは、フリーウエアのSkychart(Cartes du siel)を用意する
このSkychartはコマンド体系は以下のものをサポートしている。
◆INDIドライバ
◆ASCOM
◆LX200--バグ修正と機能追加
◆EZEUS---操作パネルで機能追加しました
◆手動装置
天体望遠鏡制御システムEJANのコマンド体系は
◆LX200 ◆EZEUS
の二種類が存在しています。
どちらかを出力可能な星図ソフトであれば、市販のものでも天体望遠鏡制御システムEJANを制御できます。
<A4988ドライバ>
株式会社 ユニコフ 小田長 由弘
愛知県豊橋市前田町2丁目11-9
TEL: 0532-52-2811
mail: unicof@pop12.odn.ne.jp
☆Arduinoシールドを利用した-赤道儀制御システムの製作☆
<なぜ、今、Arduinoなのか:E-Zeus、LX-200>
Arduino UNOをメインボードに採用したE-ZeusやLX-200のEjan望遠鏡制御システムが2013年に一応の完成をみたものの、その後の開発を一時中断していました。それは、開発してみて分かったことなのですが、以下のような課題があったからです。
1.ステッピングモータを駆動するドライバの結線が複雑になる
Arduinoの基本はメインボード上に各種の機能基板(これはシールドとよばれている)をピンソケットで積み上げる:形式でシステムの構築を行います。
そのため、適切なシールドが存在する場合には非常に簡便にI/O処理が可能なのですが、逆にシールドが存在しない場合にはピンソケットそのものが邪魔になり、結線が非常に複雑で面倒になります。
2.ステッピングモータの設定をする結線又は回路が必要になる
開発の時点では、1軸用のステッピングモータ・ドライバが複数種販売されていました が、2軸以上のドライバ・シールドの良いものがありませんでした。1軸用ボードの多くは比較的安価ですが、その半面ドライバチップのI/Oピンが基板上に配置されているだけの単純なものです。
それでも、制御基板をまっさらな状態から作成することを思えばメリットは多いのです。
3.ステッピングモータ・ドライバの基板が制御ボックスに設置できない
上記1,2にも関連して、基板の数が増えることは、それを納める制御ボックスにも影響を与えます。各基板は、制御ボックスに固定されなくてはなりませんから、そのためのスペースが必要ですし、当然ながら穴開け作業も増えてきます。しかし、これらのボードは単体で固定することが考慮されていません。
4.複数のステッピングモータを制御できる良い基板(シールド)が必要になる
このように、上記1~3の条件は、2軸以上搭載されたシールドが存在していれば解決してしまうことばかりなのですが、開発の当初はそのような有効なシールドが見つかりませんでした。
そのため、独自に1軸のステッピングモータ・ドライバを二枚搭載でき、マイクロステップなどが設定できる試作基板を作成してテストを繰り返していたのです。それでも、赤道儀のような2軸同時制御のシステムではなかなか有効な組み合わせができずにいました。
Arduinoを採用することの一番の利点は、周辺機能の付加がシールドを採用することで容易に行なえるということなのです。つまり、ステッピングモータを制御するシールドを自ら製作したのでは、Arduinoを採用することのメリットが全く無いわけです。
実際にキットなどとしてユーザにシステム提供したり、簡単に製作が楽しめるようなものを考えると、新規に基板を起こす以外には方法がありませんが、そのようなことを行うようなことになれば、Arduinoをメイン基板に採用するという必然性そのものが失われてしまいます。このため、Arduino UNOによるシステム開発を中断することになったのでした。
以上のような理由から、赤道儀制御システムを多くの愛好家に使用してもらうためには、発展性の少ないボードを採用することは特別なメリットがない限り採用することはできないということになります。
要するに、Arduinoを採用する場合には最低でも2軸モータ制御可能なシールドを使用できないと機能的なメリットがなくなるばかりかソケットそのものが邪魔になってしまうのです。更に言うならば、1軸駆動のモータ・ドライバを採用すると前述のように配線が煩雑になって使いづらいことが一番の問題となっていました。また、これらの単体ボードは主にブレッドボード用に製作されているものがほとんどで、基板を特定なボックスなどに固定することに苦労します。
8. モータコントローラについて
8.1 モータ純正のメーカー製コントローラ
次に問題となるのはステッピングモータのコントローラ(ドライバ)です。一般に販売されているボードの多くは、耐ノイズ対策などのために安定性を重視した設計となっています。
このため、生産ラインや機械制御に用いられボードの多くは自社製のコントローラとモータとをセット販売を推奨している場合が多く、安定性や信頼性といった面では申し分ないですが、アマチュアが使用する中・小型の赤道儀では、それらモータ純正のメーカー製コントローラには以下のような不利な一面があります。
a.ドライバのサイズが大きすぎること
オリエンタルモータの2相のステッピングモータUMkシリーズのドライバを例に取ると、そのサイズは35mm(W)×100mm(D)×135mm(H)となっており、このドライバを収納するにはかなりのスペースが必要なことが分かります。
しかし、メーカーのカタログによれば非常にコンパクトと謳われているので、確かに生産ラインなどで使用するにはコンパクトかもしれないですが、赤道儀においてこのサイズを収納するならかなりの空間が必要なこともまた事実なので、一般的には使用できないと思われます。
また、ボードタイプのCMkシリーズのものはサイズが33mm(W)×50mm(D)×65mm(H)となっており比較的小型だがやや厚みが気になるところではあります。
b.価格的に合わない
オリエンタルモータの2相のステッピングモータUMkシリーズの値段はモータ込みで1セット¥34500です。さらに、ボードタイプのCMkシリーズのものはモータ込みで1セット¥17000程です。
これはあくまで1セットの値段ですから、赤道儀使用するにはかなり高級志向のものでないと、やはり使用することは出来ないでしょう。
c.使用しないであろう機能も多い
運転電流や停止電流制御、小電力モードなど細かな設定が項目がありますが、赤道儀の場合にはバッテリで使用するような環境でないとあまり意味のない機能のように思われます。また、これらの機能の多くはドライバチップに搭載されているものが提供されるようになりましたので、これらの機能は特別なものではなくなりつつあります。
以上のような理由で、必ずしもメーカー製ドライバを比較的小型の赤道儀に使用することはあまり得策ではないと考えます。
コントロールボード(ドライバ)の選定に当たり留意したことはメイン制御ボートの場合とほぼ同等ですが、メイン制御ボートのマイクロコントローラ(MC)がこれらのドライバをダイレクト制御できることが前提なので、ドライバ側はシンプルな回路構造で、小型のものがよいと思われます。
もちろん、これらのボードは結線や不用意な使用法によってはハード的な損傷を受ける場合があるのかもしれません。それでも、正常な使用においては何ら問題なく動作することも事実なのですから、要は使われるハードの環境によって制約を受けるものと考えて、その環境に合わせてドライバを替えていっても良いのではないかと思います。
結局のところ、一般的な赤道儀の使用者は温度的な環境条件(冬場や寒冷地)では過酷な場合があっても、ノイズ的なものは比較的条件の良いところで使用することになるのですから、ステッ行けばよいのではないか考えます。
さらに、メーカー製のもの安価なドライバでも最終的には市販のモータドライバチップによってモータをダイレクト駆動していることを考えれば、ステッピングモータの制御そのものには大差はないものと考えられます。概ね、ドライバの性能はこのモータドライバチップによって決まってしまうものですから、値段の差は安全性や安定性といった要求の度合いによってでているものなのかもしれません。
要は最低限の機能を有しており、特定な条件がクリアできていなければならないと言うことになるのですが、逆をいえば、最低限の条件をクリアできているドライバであれば採用は可能ということでもあります。
ア.制御信号の内、回転方向(CW,CCW)、ステップ動作信号は必須である
赤道儀の赤経軸と赤緯軸は、それぞれの回転軸に対して任意の方向に動作しなくてはなりませんから、回転方向を指定する必要があります。また、天体の追尾には非常に遅くかつ正確な回転が要求されので、正確であり操作可能なステップ信号によって回転動作が制御される必要があります。
イ.メイン制御ボートのマイクロコントローラ(MC)のポートから信号を入れる
赤道儀を前記ア.の項目で説明したような操作をマイクロコントローラに行わせるために必須な信号です。信号は独立したものとして操作できなくてはなりません。
ウ.マイクロステップ動作ができること(最低1/8以上が望ましい)
マイクロステップの設定はソフト的なものとハード的なものとに分かれますが、基本的にはどちらでもよいということになります。
この点に関しては、ハード的に設定ではディプスイッチ等で設定するわけですからマイクロステップの値は赤道儀の動作中は変更できません。
ソフト的な設定(例えばL6470の様な)が可能なデバイスでは赤道儀の動作中にマイクロステップ値を任意にコマンドで変更できますから、回転速度を任意に変更できる可能性があります。
いずれにしても、ステッピングモータを駆動モータとして採用する場合には、このマイクロステップは必須です。マイクロステップなしでは天体の追尾は概ねできても、天体を写真撮影するようなユーザには耐えがたい動作です。
マイクロステップはON/OFF信号を正弦波的に電圧調整を行ってステップ角度を小さくして動作を滑らかにするものですから、赤道儀では必須ともいえるものです。
ただし、ハード的な減速機を使用すれば同じような結果になり回転トルクの面でも有利になるのですが、そのような減速機付きのステッピングモータは非常に高価なために今回のシステムではオプション扱として必須とはしません。
エ.ハード回路が分かればなお望ましい
システム設計やトラブル回避のために必要な情報としてハード回路が分かっているもの
が望ましいと考えます。
このような、条件の下でドライバボードを探すと、Ejan赤道儀制御システムとの相性が良さそう(というかアマチュアユース)なステッピングモータ・ドライバが何種類か見つかります。
これらのステッピングモータ・ドライバの特徴はその回路構成をみれば一目瞭然なのですが、要はドライバチップメーカーの推奨回路そのものを採用している比較的シンプルな構成で、I/Oポートの端子がボード盤面に配置されており、MCUボードとは直結で接続をすることが前提に作られています。
これらのボードは正常に接続されていれば概ね正常動作を行うように設計されており、前述のように過大な回路保護機能というものは存在しないのですが不正な処理を行わない限り動作に問題は生じないと思われます。
以下では、上記の条件に従って現状で採用可能な市販のステッピングモータ・ドライバ・モジュールを探っていきましょう。
8.2 市販メーカー製のコントロールボード
コントロールボード(ドライバ)の選定にあたり留意することはメイン制御ボートの場合とほぼ同等なのですが、要はメイン制御ボートのマイクロコントローラ(MC)がこれらのドライバをダイレクト制御できることが前提なので、ドライバ側はシンプルな回路構造で、小型のものがよいと思われます。
もちろん、これらのボードは結線や不用意な使用法によってハード的な損傷を受ける場合があるかもしれません。
それでも、正常な使用においては何ら問題なく動作することも事実なのですから、つまりは使われるハードの環境によって制約を受けるものとして、その環境に合わせてドライバを替えていっても良いのではないかと考えます。
結局のところ、一般的な望遠鏡の使用は温度的な環境条件に過酷な場合があっても、ノイズ的には比較的条件の良いところで使用することになるのですから、ステッピングモータは単体で購入し、小型で安価なドライバによって制御することを考えて行けばよいのではないかと考えます。
さらに、メーカー製のもの安価なドライバでも最終的には市販のモータドライバチップによってモータをダイレクト駆動していることを考えれば、ステッピングモータの制御そのものには大差はないものと考えられます。概ね、ドライバの性能はこのモータドライバチップによって決まってしまうものですから、値段の差は安全性や安定性といった要求の度合いによってでているものなのです。
要は最低限の機能を有しており、特定なの条件がクリアできていなければならないと言うことになるのですが、逆をいえば、最低限の条件をクリアできているドライバであればどのようなものでも採用は可能であるということでもあります。
ア.制御信号の内、回転方向(CW,CCW)、ステップ動作は必須である
イ.マイクロステップ動作ができること(最低1/8以上が望ましい)
ウ.メイン制御ボートのマイクロコントローラ(MC)のポートから信号を入れられる
エ.ハード回路が分かればなお望ましい
このような、条件の下でドライバ・ボードを探すと、Arduinoと相性の良さそう(というかアマチュアユース)なステッピングモータ・ドライバが何種類か見つかります。
8.2.1 EasyDriver-ドライバ(A3967)
このボードはAllegro社のステッピングモータードライバA3697を搭載したドライバで、マイクロステッピング制御機能を持っています。
4段階のマイクロステップ(full-step,half-step,quarter-step,eighth-step)が設定可能です。
◆full-step : 基本ステップ(一周200ステップ)のままの角度で動作する
◆half-step : 基本ステップの1/2(一周400ステップ)の角度で動作する
◆quarter-step : 基本ステップの1/4(一周800ステップ)の角度で動作する
◆eighth-step : 基本ステップの1/8(一周1600ステップ)の角度で動作する
8V~30Vのモータ電源から5Vの電源が取れるので、この電源でメイン制御ボードを駆 動できる点もハード構成を小さなものにできます。
比較的発熱も少ないので、小型モータならヒートシンクは必要ないかもしれません。
このドライバの場合、4線、6線、8線のバイポーラ型ステッピングモータの駆動に使用しますが、難を言えばドライブできるモータの出力がやや小さいことくらいです。しかし、中型のステッピングモータならば十分駆動できるのであまり大きな問題とはならないと思います。概ね、小型から中型の赤道儀に使用すれば良いのではないかと考えています。
図 EasyDriver-ドライバ(A3967)
■コントローラ : Allegro社 A3967 max0.75A/1コイル
■マイクロステップ: full-step,half-step, quarter-step,eighth-step
■出力電源 :5V 又は 3.3V
■入力電源 :8~30V(5V駆動) 6.8~30V(3.3V駆動)
このドライバは制御用のI/Oピンがブレッドボードに乗るように設計されていますが、それ以外の利用には余り設計意図が見られません。7V~30Vのモータ電源から5Vの電源が取れるレギュレータ回路がありますから、これ一つで他に電源は必要がありません。
表 A4988 Pololu 製 コネクタ CN1ピン定義
<名称> <入出力> <用途/機能>
VMOT 電源 電源(8V~35V)
DIR 入力 モータ回転制御信号
GND 電源 電源グランド
STEP 入力 モータステップ回転信号
GND 電源 ロジック電源グランド
MS2 入力 基板レギュレータ出力
ENABLE 入力 イネーブル信号入力
RESET 入力 リセット信号入力
MS1 入力 マイクロステップ設定
PFD 入力 PFD信号入力
SLEEP 入力 スリープ信号入力
2A,2B 出力 モータ駆動信号 2
VDD 出力 電源出力 5V
1A,1B 出力 モータ駆動信号 1
GND 電源 電源グランド
この基板の弱点は、ドライバチップ(A3967)が時代とともにやや古臭くなり機能的には最近のドライバモジュールに比べて若干見劣りすることと基板の固定のし難さでしょうか。しかし、実際に使用した感触では、実用上何も問題なく動作するだけでなく、発熱も比較的少なくヒートシンクが不要なのは非常に良いことに感じます。
8.2.2 Pololuステッパーモータ・ドライバ(A4988)
このボードはAllegro社のステッピングモータードライバA4988 を搭載したモジュールで、マイ
クロステッピング制御や過電流保護機能を持っています。
このボードは5段階のマイクロステップ動作(full-step,half-step,quarter-step,eighth-step, sixteenth-step)が設定可能です。
使用した感触では発熱に対してチップ面積が小さいために、過熱シャットダウン機能が掛かることがあるのでヒートシンクが必須となりますが、何しろヒートシンクをチップ上に搭載しようにもチップが小さすぎるので実用に成りませんでした。ただし、近年販売されるものには概ねヒートシンクが付いていますから、同時に適正な最大電量調整を行えば何の問題も無くモータ駆動を行えます。。
ドライバはモータ電源から5Vの電源が取れるタイプのもの(下図 のタイプ2)とドライバ回路のみのタイプ(下図 のタイプ1)のボードがあります。これらのボードは適正な最大電量調整を行えばヒートシンク無しでも実用になりますが、比較的大きな電流を流す場合にはチップ用の冷却器は必須なのです。Pololuのドライバには更に上位のものが販売されており、それらのボードの内のいくつかはヒートシンクが要らなさそうなものもあり、それらはピンコンパチブルなのでボード上のドライバチップが異なっていても概ね問題無く使用できそうです。
図 テッパーモータ・ドライバ(A4988)
<タイプ1:ドライブ機能のみ>
■コントローラ : Allegro社 A4988 max 2A/1コイル当たり
■マイクロステップ : full-step,1/2,1/4,1/8,1/16-step
■出力電源 : 5V 又は 3.3V
■入力電源 : 8V~35V
■インテリジェントチョッピング制御で自動電流減衰モードの選択(高/低速減衰)
■過熱シャットダウン、低電圧ロックアウト、クロス電流保護機能
■接地短絡および負荷短絡保護機能
上の2種のステッピングモータドライバの左側のドライバは、入力電源からモータをドライブする機能のみを有しています。
電源供給機能ありのドライバは、入力電源から外部供給電源の端子があり、3.3V又は5Vを供給することができます。このため、単体で用いる場合は、この外部電源からメインポートに対する電源を供給することができます。
表 A4988 Pololu 製 タイプ1 コネクタ CN1ピン定義
<名称> <入出力> <用途/機能>
ABLE 入力 イネーブル信号入力 |
MS1,MS2,MS3 入力 マイクロステップ設定 (下表 を参照する)
VMOT 電源 電源(8V~35V)
GND GND 電源グランド
21B 出力 モータ駆動信号 2B
2A 出力 モータ駆動信号 1A
RESET 入力 リセット信号入力
1A 出力 モータ駆動信号 1A
SLEEP 入力 スリープ信号入力
1B 出力 モータ駆動信号 1B
STEP 入力 モータステップ回転信号
VDD 出力 電源出力 3.3/5V
DIR 入力 モータ回転方向制御信号
GND GND ロジック電源グランド
<タイプ2:電源供給機能あり>
表 A4988 Pololu 製 タイプ2 コネクタ CN1ピン定義
<名称> <入出力> <用途/機能>
GND GND ロジック電源グランド
5V 電源 3-5.5Vロジック入力
VDD PU 基板レギュレータ出力
3.3V PU レギュレータ3.3V出力
GND GND ロジック電源グランド
REF 電源 電源(2.7V~3.6V)
ENABLE 入力 イネーブル信号入力
VMOT 電源 電源(8V~35V)
MS1,MS2,MS3 入力 マイクロステップ設定( 下表 を参照する)
GND GND 電源グランド
2B B 出力 モータ駆動信号 2B
2A B 出力 モータ駆動信号 1A
RESET 入力 リセット信号入力
1A A 出力 モータ駆動信号 1A
1B A 出力 モータ駆動信号 1A
SLEEP 入力 スリープ信号入力
STEP 入力 モータステップ回転信号
VDD 出力 3-5.5V
DIR 入力 モータ回転制御信号
GND GND 電源グランド
STBY PU スタンバイ・リセット
表 A4988ドライバのジャンパー設定とマイクロステップ値
<MS0> <MS1> <MS2> <M値> <マイクロステップ設定値>
Low Low Low 0 1/1 フルステップ
High Low Low 1 1/2 ハーフステップ
Low High Low 2 1/4 クォーターステップ
High High Low 3 1/8 ステップ
High High High 7 1/16ステップ
このタイプ2のドライバは、入力電源への逆電力保護回路とモーター用とは分離された5V又は3.3V出力のレギュレータを搭載していますが、タイプ1のドライバにはこれらの機能が有りません。
また、これらのドライバはドライブチップ(A4988)の端子信号がダイレクトに基板の両端に出力されています。このようなボードは主にブレッドボードでの試作や実験といった利用法に優位な形態になっており、実用的なボードとして採用するには別途搭載ボードを製作するか、次表で示すようなArduinoのドライバシールドなどを採用して回路を組まなければなりません。特に問題となるのは、マイクロステップの設定回路、ステップ信号(STEP)、回転方向(DIR)と電源は必須ですが、これらを全て単純配線で行うのは無理なのです。
8.2.4 L6470チップ使用のSPI制御ドライバ
両ドライバは制御の基本がSPI通信によるコマンド操作なのですが、その操作を通して以下に示す様々な機能を持っています。これらの機能の多くは、制御チップのL6470の性能に負うところが多いのですが、何にしても対価格性能が非常に高いのです。
主な特徴的な機能を以下に提示してみます。
・制御マイコンとはSPIで通信し、制御コマンドにより動作します
このドライバは電源投入しただけでは正しく動作しません。動作に必要な設定を様々なコマンドで行なった後にモータの回転処理を行います。
・最大128マイクロステッピング駆動の小型ステッピングモータドライバです
このドライバの特長は上記制御コマンドによりプログラム実行中に変更が可能なことです。
モータのマイクロステップは、フルステップ、ハーフステップ,1/4,1/8,
1/16,1/32,1/64,1/128がコマンド設定できます。
つまり、まいくろステップの値をプログラムで変更可能なことがこのチップの特徴のうちの一つです。
・最大3A,45Vまでのバイポーラ・ステッピングモータの制御が可能です
・フルブリッジドライバ、マイクロステップ用DSP,電流検出、A/Dコンバータなどの機能があります
・インターフェースなどモータ駆動に必要な回路が1つに集積されています
・ロジック電源は3V~5Vで動作します
・加減速処理をドライバ側で実行することができます
加減速の速度をコマンドで変更できる強みがあります。
・ピン制御によるステップ動作も可能です
モータの回転は、ユーザの外部ステップ信号で動作するステップモードとコマンド駆動するものの二つの形式ありますが、いずれにせよコマンドによりそれを設定してからの処理になります。コマンドによる回転の利点は、所定の回転をコマンドで指定できる点で、その場合は加減速処理をチップ内部で行わせることができます。
しかし、回転周期や速度を正確に行うことは苦手なので、赤道儀などの低速で正確な回転を行わせるには、やはりステップ信号によって実行するしかありません。
というのも、回転周期の最小単位が比較的大きいので天体の微妙な速度指定には向かないからです。
・モータの回転位置を設定、把握する機能があります
コントローラが制御している回転角度や位置情報を所定のコマンドにより設定もしくは取得が可能になっています。回転数はすなわち回転角度なので、角度制御には有効な機能といえます。
これらのドライバは、高性能な割に小型で駆動能力が高いことが最も有用な点です。特に分割度の高いマイクロステップ処理と加減速処理がハード側でできることは最も大きな利点となっています。更に、過電流の検出やモータの加速度及び減速度の設定が可能なのできめ細かいモータ制御が可能であるだけでなく、脱調の抑制機能などもあり非常に高性能なドライバに仕上がっています。
また、内部ステップカウントやホームポジションの把握といった機能を持ち、ポジション制御が非常に容易になっています。このポジション制御は指定されたマイクロステップにおけるモータの実回転量を示すものとして実機器の位置制御ができる点はこのクラスのモードライバとしては画期的といえるものです。
反面、ドライバの制御にはSPI通信を使用しており、ピン制御によるステップ動作についても内部制御レジスタに対するピン制御コマンド送出を行った後ではないと作動しません。
このため、このドライバの場合はプログラミングが複雑になるという欠点もあります。それでも、拡張が容易で取り回しが楽になるという利点が欠点を補って余りあると考えられます。
ストロベリー・リナックス社のドライバは42mm角でステッピングモータの背面に取り付けられるサイズになっています。秋月電子の場合は42mm×50mmでモータサイズよりも若干大きいのでそのようなことはできません。両ドライバとも10ピンの制御ポートがあり、これらのポートに出力されているポートピンの種別はほぼ同じですが、ピン配置そのものは同じではありません。
そのため、単純に置き換えが可能という訳ではありませんが、ピン接続をきっちりとおこなえば同じように動作するものと思われます。
8.2.6 ステッピング・モーターシールド-2 : A4988 Driver
<4軸のモータ制御シールド>
<モータ・ドライバ基板>
このシールドの特徴は、A4988ステッピングモータ・ドライバの単体がXYZの3軸とドリル用スピンドルモータの合計4軸の制御が可能になっていることです。また、モータ・ドライバ基板とシールドボードは別販売になっており、pololu A4988の他にDRV8825ドライバを使用することができます。A4988チップのマイクロステップは1/16が最大で、各モータドライバボード毎にディップスイッチでその値を設定できます。出力は2.0Aが最大値で、外部電圧は最大35Vに対応しています。内部回路は、3.3Vと5Vに切り替えが可能になっています。
表 ステッピング・モーターシールド-2の機能仕様
<仕 様> <機 能 内 容>
ボードの特徴 モータシールドとモータ・ドライバが別ボードとして製作されている。
もともと、CNC用のシールドとして開発されたらしく、XYZ軸と
ドリル用モータの4軸の制御ができるように設計されている。
モータ・ドライバは、シールド上のソケットに差し込むことで使用可能
です。
ドライバチップ A4988 / DRV8825
駆動可能な軸数 最大 4軸 搭載ドライバの数に依存する
Micro Step数 1,2,4,8,16 基板上のディプスイッチでのみ設定可能
最大出力 最大 ±2.0A
モータ電圧 12V~36Vまで
内部回路電圧 3.3~5.0V ロジック電圧
その他機能 ・自動電流減数モード検出/選択
・内部UVLO及びサーマルシャットダウン回路
・クロスオーバー電流防止
基板構成 ・Arduino UNO 基板 メインボード
・ドライバシールド: ドライバ基板(A4988×4 max) 別途
DRV8825チップドライバはA4988とピン互換なので使用可能です。このドライバのマイクロステップは1/32が最大で、各モータドライバボード毎にディップスイッチでその値を設定できますが設定される値は同じディップスイッチであっても、後に述べるようにA4988とは異なっているので注意が必要です。出力は2.2A/コイルが最大値で、チップ自体の外部電圧は最大45Vに対応していますが、このシールドで使用する場合は他の部品との兼ね合いで最大でも36Vまでの電圧で使用しないと破損や回路不良になることがあり推奨されません。
このシールドはRepRapと呼ばれる3Dプリンタのドライバ基板として採用されているもので、互換ボードも多く比較的低価格的(1000円から2000円位)で入手することのできるボードです。また、全てのドライバ基板を搭載する必要もありませし、ドライバに不具合があってもボード交換することも容易で、モータを追加するときも、必要に応じてドライバを追加搭載するようにすれば良いようになっています。
ステッピングモータの制御は、下表 で示す通りピン番号2からピン番号13までを使用して行ないます。一つのモータに対してその回転方向(DIR)と回転ステップ数(STEP)の2ポートにより制御することが可能になっており、詳細な仕様は次の表 に示されています。このシールドの場合、XYZ軸とスピンドルの合計4モータの制御が可能なのですが、この全てを使用する必要はありませんので、赤道儀の制御には実質的には2モータ分の4ポート(例えば、2,3と5,6)のみを制御に使用します。
使わないモータの信号は基本的に他の機能で使用してもかまわないのですが、追加シールドの場合は更に上方に積み上げるような構成なので、このシールド以外の機能ピンを使用する事は結線の関係であまり有効では無いことが分かります。このため、モータの信号も含めArdionoの全てのピンが基板上に配置されています。
表 ステッピング・モーターシールド-2のピン仕様
<Arduinoピン番号> <表記> <操 作 仕 様>
デジタル ピン0 D0 シリアル通信 RX 受信信号線
デジタル ピン1 D1 シリアル通信 TX 送信信号線
デジタル ピン2 D2 X軸 ステップ信号:X軸回転ステップ信号の出力ポート
デジタル ピン3 D3 Y軸 ステップ信号:Y軸回転ステップ信号の出力ポート
デジタル ピン4 D4 Z軸 ステップ信号:Z軸回転ステップ信号の出力ポート
デジタル ピン5 D5 X軸 回転方向信号:X軸回転方向を表す信号の出力ポート
デジタル ピン6 D6 Y軸 回転方向信号:Y軸回転方向を表す信号の出力ポート
デジタル ピン7 D7 Z軸 回転方向信号:Z軸回転方向を表す信号の出力ポート
デジタル ピン8 D8 イネーブル信号:High信号で全機能が有効になります
デジタル ピン9 D9 X軸 エンドストップ:X軸終端位置に達したことを表す
デジタル ピン10 D10 Y軸 エンドストップ:Y軸終端位置に達したことを表す
デジタル ピン11 D11 Z軸 エンドストップ: Z軸の終端位置に達したことを表す
デジタル ピン12 D12 スピンドルモータ イネーブル信号
デジタル ピン13 D13 スピンドルモータ 回転方向
アナログ ピン0 A0/D14 未設定:アボート信号・デジタル信号の他用途で使用可能
アナログ ピン1 A1/D15 未設定:ホールド信号・デジタル信号の他用途で使用可能
アナログ ピン2 A2/D16 未設定:レジューム信号・デジタル信号の他用途で使用可能
アナログ ピン3 A3/D17 未設定:クーラント信号・デジタル信号の他用途で使用可能
アナログ ピン4 A4/D18 未設定:アナログ/デジタル信号の他用途で使用可能
アナログ ピン5 A5/D19 未設定:アナログ/デジタル信号の他用途で使用可能
GND 共通GND信号
<マイクロステップのジャンパー設定>
マイクロステップの設定はA3967シールドのようにポート設定するのではなく、ジャンパーピンによるハード設定となっていますからプログラム的に変更はできません。そして、ジャンパーはドライバボード下に位置するように設計されていますから、再設定の際はドライバを取り外した状態で行なわなくてはなりません。このため、一度設定したマイクロステップ値の変更は面倒なので、実質的には固定的(最大値)に使用することになると思います。
図 シールドの端子形態とマイクロステップの設定ジャンパー(M0,M1,M2)
表 A4988ドライバのジャンパー設定とマイクロステップ値
<MS0> <MS1> <MS2> <M値> <マイクロステップ設定値>
Low Low Low 0 1/1 フルステップ
High Low Low 1 1/2 ハーフステップ
Low High Low 2 1/4 クォーターステップ
High High Low 3 1/8 ステップ
High High High 7 1/16ステップ
表 DRV8825ドライバのジャンパー設定とマイクロステップ値
<MS0> <MS1> <MS2> <M値> <マイクロステップ設定値>
Low Low Low 0 1/1 フルステップ
High Low Low 1 1/2 ハーフステップ
Low High Low 2 1/4 クォーターステップ
High High Low 3 1/8 ステップ
Low Low High 4 1/16 ステップ
Low High High 5 1/32 ステップ
Low High High 6 1/32 ステップ
High High High 7 1/32 ステップ
このボードの唯一の難点は、モータの結線端子台が無いことでしょうか。それでも、モータ線を直結するのでなければ基板上の4ピン端子に信号が出ているので、この端子に対して4ピンのソケットなどを介して接続すれば問題は何もありません。
また、そのほかの市販シールド、例えばLCDシールドなどを使用することはこのピン配置では難しいことになります。概ね、Arduinoのシールドではこれらのデジタルピンが固定的に使用されていますのでピン制御が重なるからなのです。
それでも、シールド上のピン仕様をみると2モータの駆動のみならば、アナログピンが全て空くことになるので、これらのピンをデジタルピンとして設定すれば、結線処理などの問題はありますが他の機器の制御も可能ということになります。
さらに、このシールドにはシリアル(UART)のRX,TXピン(ピン番号 0,1)とI2C関連の信号が基板上にピン配置されています。ここのところは発展的仕様の領域として設計されており、非常に好都合です。
シリアル信号は下表のように4信号がピン配置されています。これら信号はUSB-シリアル通信で使用しているので上位アプリと通信している時は使用することができませんが、ハンドコントローラとのシリアル通信には使用することができます。
<信号> < ピン配置> < 信号ピンの意味合い>
RX D0 RX : シリアルデータ受信信号
TX D1 TX : シリアルデータ送信信号
5V 5V 5V 出力信号
3.3V 3.3V 3.3V出力信号
I2C信号は下表のように4信号がピン配置されています。これら信号はI2C制御のLCDのために使用できそうです。
<I2C信号> <ピン配置> <信号ピンの意味合い>
SCA A4/D18 I2C クロック
SDL A5/D19 TX データ線
GND GND グランド
RESET RESET リセット端子
これらのピンは8ピンソケットが使えるような形態になっていますが、信号でI2C制御のLCDを制御する場合は、シリアル信号にある電源(3.3Vか5V)かそのほかの電源の使用を考慮しなくてはなりません。
<モータ駆動ピンとステッピングモータの結線>
シールド上のモータ駆動ピンは、図 で示す通り、X,Y,Z,Aのそれぞれのピンソケットが配置されています。各ソケットの信号はモータドライバの信号が直接出力されています。このモータドライバの信号線は図にある通り配線の順序が、Ejanコントローラの信号配置と若干異なっています。一般にドライバ側のピン配置はドライバ毎に異なるもので、コントローラ側の信号配置に合わせて実配線をしなおさなくてはなりません。A4988ドライバの場合は、A1,2の順序がコントローラのものとは逆になりますから、この部分の配線は表 に見られるとおりクロス配線をすることになります。実際、このクロス配線を行なわなくともステッピングモータそのものは稼働しますが、DIR信号による回転方向が逆になってしまいます。この話しはあくまでもA4988ドライバの場合ですが、幸いなことにDRV8825ドライバは、マイクロステップ値の定義が異なることを除けばピンコンパチプルなのでそのまま使用することができそうです。
さて、実際のモータ線はバイポーラ型が4線、ユニポーラ型が6線で、モータ線の意味合いに則り、Ejanコントローラのポートに結線することになる訳です。ステッピングモータは製造会社毎に信号の意味合いで色分けされた信号線になっています。仕様書に従って色分けされたA,Bの各線毎に行ない、バイポーラ型の場合はモータとコントローラの信号配置が合うように結線するだけでよいのです。ユニポーラ型の場合は、A,B相の各2線の他にコモン信号線ふ2線が有りますが、このうちコモン線はどこにも結線せず、A,B線のみバイポーラ型と同様に結線すれば良いことになります。
8.3 ステッピングモータについて
赤経・赤緯の両軸をドライブするステッピングモータはLX200の筐体サイズの関係上、あまり大きなモータを採用することはできません。
寸法的に見るとオリエンタルモータの42mmタイプの以下のものでないと収まらないから、その中で最も大きいもの(42mmタイプ)を採用することにします。
ステッピングモータは、オリエンタルモータが業界のデファクト・スタンダードのようなので、この会社のものを使用するに越したことはないと思われます。それでも、一個当たり数千円から1.5万円(減速機能付き)くらいだから価格の方もそれなりなのですが、これで何年もの間精度を維持して使用し続けることが出来るのならば、結局のところ良い買い物ということになるのではないでしょうか。ということで、搭載の候補となるものは下表に示すのステッピングモータということになります。これらのステッピングモータ以外でも良いモータは沢山あると思われますが、何しろ全てをテストするというわけにも行かないので、モータに関しては各製作者に個別選択してもらうということにしたいと思っています。
また、駆動電圧は12Vを考えていますが、前述のドライバは24Vでの駆動も可能なので選択モータを変更してももんだはないと思われます。
表 採用可能なステッピングモータ
<製造会社> <型番> < 型 > <電圧(V)> <抵抗Ω> <電流(A)> <トルク(NM)>
オリエンタルモータ PK-243\03A HB 12 38.5 0.31 0.16
オリエンタルモータ PK243-D15A-L HB 2.85 1.9 1.5 0.35
オリエンタルモータ PK244-D15A-L HB 3.9 2.6 1.5 0.48
オリエンタルモータ PK245D15A HB 3.6 2.4 1.5 0.58
マーキュリ・モータ SM-42BYG011 HB 12 34 0.33 0.23
三龍社 P43EAG22-250 PM 12 35 0.34 0.02
*HB:ハイブリッド型、PM:PM型
前記ステッピングモータドライバを使用するモータを選択する時に留意して欲しいことは、ステッピングモータドライバに入れる電圧と制御用に必要なの電流量です。
ステッピングモータドライバに入れる電圧は最低電圧と最高電圧が決まっており、最低電圧以下のステッピングモータを正常に駆動できないし、最高電圧以上の電圧の印可はモータ・ドライバそのものが発熱して破損と原因となって非常に危険です。
<オリエンタルモータ PK-243>
<マーキュリーモータ SM42BYG011 >
今回、紹介しているテッピングモータドライバは概ね0.7A~1.5Aくらいまでの駆動能力がありますが、それ以上の駆動電流でモータを駆動する場合には、電流制限の他に駆動チップの発熱を抑える放熱器を考慮する必要があるかもしれません。
駆動モータの中でベストな選択はオリエンタルモータかもしれませんが、価格的にはマーキュリーの10倍程の価格ですから性能もそれなりに期待したいところです。ですが、どちらもトルク特性の良さなど、実際に長期運用したわけではないので耐久性などと同様に不明なの状況です。
オリエンタルモータとマーキュリー・モータはハイブリッド型のステッピングモータなので一周当たりの基本ステップ数は共に200ステップです。
これらのモータは前述のモータドライバのマイクロステップ機能により更に基本ステップを細分化(1/2,1/4,1/8,1/16)することができるので、よりスムースな回転が期待できるし減速比も大きくなります。減速比については1/128マイクロステップのドライバもあるわけですから減速値そのものはあまり問題にならない訳ですが、マイクロステップによる減速は回転トルクの問題とは何の関係もありません。つまり、マイクロステップは回転の角度を細分化し減速もしますが、回転トルクそのものが増すわけではないことに注意が必要です。回転トルクの増加は実ギアによる減速ならば同じ減速比でもより重い装置の回転が可能になるわけです。モータを選定するときの注意点は最終的には回転精度とトルクの大きさと特性ということになりますから、この点は特に重要なのです。
<モータ選定時の留意点>
赤道儀の制御ではピリオデック・モーションの問題が取り上げられますが、これは追尾精度のことを言うわけです。追尾精度の良し悪しは、赤道儀そのものの工作精度、赤道儀の設置精度など外部要因と赤経軸回転精度の追尾機器精度などの要因があります。これらの内、外部な要因が全て良好な場合或いは同一機器条件のときの追尾機器精度において、以下で示す要因が赤道儀の追尾精度を決定づけます。
1.モータの回転精度
モータの回転精度で重要なことは単位時間の回転角との精度ですが、ステッピングモータの場合はむしろステップ信号に対する回転角度の正確さの方が重要です。つまり、ステップ信号に対するモータ回転のアンダーシュート(回転不足)とオーバーシュート(回転過多)とのバランスできまります。この場合、一般的にPM型よりもハイブリッド型の方がモータ単体ならば精度が上がります。
2.トルクの問題
ステッピングモータの回転軸のトルクは、モータ固有のものとして必ず表記されています。
このトルクは静止トルクといって回転を停止し維持することできるトルクの最大値です。
ステッピングモータは回転速度が上がるに従ってトルクが少なくなる特性を持っています。
赤道儀などの機械動作の始動時に必要なトルクとモータのそれとが問題になります。モータのトルクの方が機械側よりも大きくないと機械は回転しません。
この問題を解消する方法は、モータを大きくするか、減速機を使用して見かけ上のトルクを上げることのいずれかです。
減速機を使用するとトルク自体が増えることは事実ですが、必ずしもギア比にリニアに比例しておらず、回転精度が良くなるということには若干の問題点もあります。
というのも、この減速を行っているものは主に減速ギアなのですが、そのギアの回転精度そのものが望むものになっていないと最終的には減速軸の回転精度に影響を与えるのです。
オリエンタルモータでは減速機構付きのものも販売されています。これらのモータはマイクロステップとは別にハード的に減速されているので更に細かでなめらかな回転ができるだけでなく、回転トルクの平均化によって更に使いよく精度の良い制御が可能なモータになっています。
このような関係は、全てのステッピングモータに対して言えることですが、その中での優劣を争う議論は資料がないのでここではやめておきます。
図 ハイブリッド 中型 ステッピングモータ
ミネベア製のユニポーラ型のハイブリッドモータです。(矢印は回転テストの目印として付けたものでモータとは無関係です。)
<56mm ミネベア>
三龍社のステッピングモータはPM型なので一周当たり24ステップで回転するものを外付けの金属ギア等で減速しているタイプのものを使用します。PM型のモータは金属ギアまたはプラスティックギアによって所定の減速比(最大減速1/600)を稼いでいるタイプなので、モータそのものは基本的にマイクロステップ動作はモータ仕様上できないことになっています。
このためこのようなステッピングモータでは減速機の使用は必須です。PM型のステッピングモータに減速機を使用することは、<モータ選定時の留意点>で説明したように追尾精度という観点では余り良い結果を得られないと考えるのですが、実際は高橋製作所の赤道儀で採用されており、それらは高精度ということに定評があります。実際のところ、それが機械的なものか、制御機器の優秀性によるものなのか、はたまたその双方によるものなのかは定かではありません。
図 PM型 43mm ステッピングモータ
三龍社のモータについて、ハイブリッドモータのようにドライバによるマイクロステップ動作ができるかメーカーに問い合わせたところ、当然のことですがその様な動作は仕様の範囲ではないとの回答を受けました。
要は減速ギア付きのものを使用して所定の減速比とトルクを得ることが前提なので、ドライバはハイブリッドモータでいうところのフルステップ動作で行うことが求められているのです。
価格は、オリエンタルモータの通常モータとほぼ同じか若干安くなります。望遠鏡メーカー高橋製作所の赤道儀はこのモータが使われてきたようなのですが、特別なドライバを使用して回転を高精度に制御しているとのことでした。
減速比についてはモータの注文時に指定することになり、標準タイプでは1/5~1/600位まですが、減速比に対するモータのL(長さ)寸法が決まっているので注意が必要です。
モータ外形寸法は型番により統一されており、28mm,43mm,55mm,60mmが標準サイズですから、通常はトルクとの関連で43mmのものを使うことになると思います。
0コメント