STマイクロエレクトロニクスのステッピングモータードライバの選び方。

STマイクロエレクトロニクスさんが、Youtube上にステッピングモータードライバ関連の動画をUPされたので、貼り付けさせていただきます。。







STマイクロのステッピングモータードライバ、L6470とか、先進的過ぎて使いづらい印象がありますが、ローレベルからハイレベルなものまで各種取り揃えられているので、用途に合ったものを使うことが出来ると思います。

また、DCモータードライバや、ブラシレスモータードライバなどのドライバICも豊富です。。
スポンサーサイト

テーマ : 自作・改造
ジャンル : コンピュータ

BeagleboneBlackの電源の切り方。。

ボード単体でLinuxCNCが動くBeagleBoneBlackですが、ちゃんとした電源の切り方がよくわからなかったのでWeb上を徘徊。

ありました。

How to Shut Down and Reboot Your BeagleBone

電源はUSBコネクタを繋ぐことで入りますが、電源の切り方が、S3のスイッチを長押し、、と、なんかスコっと電源を切ってるイメージだったので。。


具体的には

sudo shutdown -h now

これでコンソールからのコマンドで切ることができます。

で、リブートは

sudo reboot


忘れそうなので、メモとして。。


ところで、BeagleboneBlackの姉妹製品?のBeagleBoneGreenSeeedStudioの方で販売が始まっているようです。

BlackとGreenの大きな違いはHDMIコントローラーの削除。スタンドアローン作動時には必要と思えるHDMI、多分リモートデスクトップ環境では、必要ないと判断されたのかもしれません。その分価格はちょっとお安くなっている模様。。

OSからNCコントローラーまで、1ボードで対応できるので、かなりお買い得なのでは?

基本的なところはPCでのLinuxCNCと違う所はありませんが、I/O周りはリアルタイム性を担保するためにBeagleboneblackに使われているMCU内の独立したサブプロセッサであるPRUを使用するので、LinuxCNC設定ファイルであるHALファイル内の接続設定するデバイス名がちょっと特徴のあるものに変わります。

単純に、PCと違い、MCU自体に直接UARTやSPI,I2Cなどのペリフェラルが内蔵されていることもあり、PCからI/Oを引き出す事を考えると、余計な手間が少なく済むのでは?と思います。
更にオンボードでADCが載っているのでLinuxCNCに直接ADCの値を読み込むことが出来たり、、PCをつかってやろうとするとどうしてもPCI PCI-E接続のFPGAカードが必要だったことが、設定は手間かもですが、1ボードで出来てしまいます。

また、PC側から見ると、USB接続で、リモートデスクトップな環境での操作。USBCNCも良いとは思うのですが、NCコントローラーそのものをリモートデスクトップで使うBeagleBoneBlack on LinuxCNC な環境も操作を行うPCに負荷を掛けずに使用出来るって事で良いのでは??と思います。

多分ホビー用途には十分過ぎる機能でしょう。。

テーマ : 自作・改造
ジャンル : コンピュータ

ママさんシリーズの更新!5回目

http://monoist.atmarkit.co.jp/より。

ママさん設計者がやさしく教える「CNCフライス超入門」(5):
まずはリハーサル! GコードをCNCソフトに取り込む

NCコントローラーにGコードを取り込む所を解説されてます。

使用されてるNCコントローラーはこのブログでは取り上げたことがないUSBCNCですが、モーションがテキスト形式で記述されたGコードファイルのNCコントローラーへの読み込みは、どのNCコントローラに指示を出すソフトウエアも手順的にはたいして変わらないはずです。

このGコード、以前の記事「シマリス技研さんのLinuxCNC翻訳マニュアル「Gコード」」内でも書きましたが、LinuxCNC以降、多くのホビー用NCコントローラーソフトがLinuxCNCに実装されているGコードをお手本としているようです。

また、Reprap等の3Dプリンタも、基本的にはLinuxCNCのGコードをお手本にされているようですが、樹脂吐出等々、固有の機能が追加された物となっているようです。


テーマ : 自作・改造
ジャンル : コンピュータ

BeagleBoneグリーンは、HDMI ...と価格をドロップ

http://linuxgizmos.com/より

BeagleBone Green drops the HDMI… and the price

Beagleboneblackから、HDMI端子を廃止し、Groveインターフェースとゆう、I2CやUARTでセンサと手軽に接続出来るコネクタを取り付けたBeagleBoneGreenが発売されるご様子。

BeagleBoneBlackを使用する際、大抵リモートデスクトップで接続した別PCからのコントロールとなるので、HDMI端子が無くなっても、さして問題ないのかも。

もちろん価格も下がるみたい。


Beaglebone自体、LinuxCNCが走る一つのコンピュータなので、ちょっと期待しております。

テーマ : 自作・改造
ジャンル : コンピュータ

パルス列入力からのカラーTFT液晶の描画

少し前の記事にて、PSoC5LPプロトタイピングキットを使ってのTFT液晶パネルの表示をしてみましたが、何がしてみたかったかとゆうと、デジタルデータのリアルタイムでの可視化。
人間の認識できる速度を遥かに凌ぐデジタルデータ自体がどうなってるか、目に見えるようにしたかったのです。
認識しないと、判断できないので、、。。

PSoC5LPプロトタイピングキットを使ったのは、、、単に安かったから、、だけではなく、このPSoC、PLD付きのMCUとして非常に手軽にPLDを触ることが出来ます。
下手にFPGAやCPLDを触るよりお手軽に、ロジックで出来た部品を使うことが出来ます。また、FPGAやCPLDで使用するIPとゆう機能ブロック的なもの、も、開発環境であるPSoCクリエーター内にあり、このPSoC5LPを有効に使えるPLD部分を使った機能ブロックも豊富に使うことができます。

今回、32bitのUP/Downカウンタを少なくとも3つ、4軸NCなら4つ、ハードウエアブロックとして欲しかったのでPSoC5LPを使いました。比較的入手しやすいMCUでは、32bitのUP/Downカウンタが、多くても2つまで。
もちろん16bitタイマ、カウンタを使ってカウンタが溢れたらMCUの変数に+-1して、計算をさせれば問題なく作動するとは思いますが、折角32bitタイマ/カウンタが4つ乗るMCUがあるのでコレにしました。

MCU側での計数操作はめんどくさく感じたためです^^;



動画ですが、BeagleboneBlackを使ったLinuxCNCの各軸のStep/Dir信号を使って32bitUP/Downカウンタにて計数しているものを左上に表示。
で、その数値を使ってTFT液晶上に描画させています。
この表示はPC上の表示と異なり、実際にステッピングモーターや、サーボモーターを作動させる信号から作った経路画像なので、1ステップ何mmと定義した物が正確に動いていれば、このように動くはずです。
もちろん、刃物のオフセットは考慮されてませんから、この状態では、3軸NCルーター、フライスであるならば、刃物の中心位置になります。



こちらは初めの動画から、ちょっとプログラムを足して経路と現在位置が判るようにしたものです。

この2つの動画、LinuxCNCに付属している全く同じGコードでの再生です。
実のところ、1mm辺りのステップ数と、加速度と、移動速度は違います。
描画自体、ちょっと違いますね。。

設定の違いにより、このように実際のモーション自体も変化してしまいます。。

通常の加工時にモーション自体は、動いていってしまうもの、なので、なかなか認識しづらいのですが、実際のパルス列をつかった描画をしてみると、案外と違うことがよく解ります。
この辺り、コントローラー自体の設定と、Gコードの書き方具合いでかなりの違いとして出てくるものと思われます。
経路が微妙に違えば、加工される品物自体も変わってくるはず。。

詳しいことはLinuxCNCのマニュアルに詳しく書かれてます。

ホビーNCコントローラーの多くはLinuxCNCをお手本に作られているものも多く、LinuxCNCに限ったことではなく、基本的なところは同じようです。。

もちろん、Step/Dirなパルス列制御で出力しているNCコントローラーなら、同じよう計数、表示が可能で、UP/Downカウンタ部分をPSoC Creator内のコンポーネントQuadrature Decoderを使用することにより、直交エンコーダーの4x計数表示もできますし、カウンタにロジックを追加することにより、2パルス方式の信号も計数できます。

以前の記事「位置フィードバックさせたDCモーターをロータリーエンコーダーで操作。」などの、ロータリーエンコーダーの信号をモータードライバの入力のStep/Dirな信号に変換させることもロジックブロックを使えば出来ると思います。

また以前の記事、「DCモーターのサーボ制御」では、処理速度の速いSTM32F4を使いましたが、PSoCLP5でも、殆ど同じことが出来ると思います。


このPSoC5LPのプログラム自体は、カウンタの数値から、点を打つだけの単純なものです。
グラフィック液晶の表示さえできれば難しくは無いと思います。

下の動画で使ったPSoC5LPはPSoC5LPプロトタイピングキットの物と少し違い100ピンで、アナログ機能が少し劣る物。
I/Oピンに余裕があるので、NCマシンへのリミットスイッチとかのチャタリング抑制回路等を載せることが出来ます。今回は32bitタイマ/カウンタを4つ載せて、チャタリング抑制回路を幾つか載せたので、PLD部分であるUDBの余裕がそんなに多くありませんが、タイマの代わりにPWM回路を載せて、NCコントローラーからのON/OFF 信号での、PWM出力を、、とかとか。
扱いやすく、また、MCUも載っているのでこの作例のようにハードウエアカウンタを回したまま、MCU側で数値を読み取り、、、ってことが割と簡単にできたりします。

他MCUとかなり違うのですが、ロジック信号を扱うようなNC制御には、結構重宝するMCUだと思うので、他MCUとは別枠の手段として持っていても良いかもしれません。


実際の作動する信号を確認することはとても大事で、ホントの所はNCフレームにエンコーダーを取り付け、出力パルス分きちんと作動しているか、の検証までが一括りだと思います。
一応、ステッピングモーターは、1パルスの信号を送ると決まった角度動く事になっていますが、高マイクロステップを使った場合など、1ステップ動く力が、フレームの駆動抵抗に負けて実際には動いていない、とゆうこともあり得ます。
誤差が累積しないのがステッピングモーターの大きな特性ですが、使い方によっては、命令に対して上手く作動しないことも。。




必要な機材、必要な確認等々、加工に至るまでは、なかなか道が遠いようです。。










テーマ : 自作・改造
ジャンル : コンピュータ

ライセンス
アクセスカウンター
プロフィール

あきらひとし。

Author:あきらひとし。
木工用CNCルーターフレームと、ステッピングモータードライバを作ってみました。
たぶん記事は一般的な人には殆ど必要のない事ばかりなの、かも。

モーターは回るだけでも楽しい。制御(速度、トルク、位置)できるともっと楽しい!

メールフォーム

名前:
メール:
件名:
本文:

リンク
最新記事
カテゴリ
スポンサードリンク
スポンサードリンク 
スポンサードリンク
オンラインカウンター
現在の閲覧者数:
検索フォーム
RSSリンクの表示
最新トラックバック
最新コメント
月別アーカイブ