スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Max10でもPluto-Step

かなり前に基板まで作成したのにLinuxCNCPluto-Pドライバ内にあるPluto-Stepが上手く動かなかったのですが、ようやく出力がきちんと出るように。。



動画を見たところで、使っているFPGAがMax10なのかはサッパリわかりませんがMax10を使用しています。


なぜ今更パラレルポートに取り付けるPluto-Step、、かとゆうと割りと安価なボード1枚でステップパルス4軸分と、Output14本Input16本と、パラレルポートの入出力よりかなり多くの信号出力が可能だから、、です。
また、パラレルポートを使用する場合ステップパルスジェネレーターであるStepgenはPC内の物を使用しますがPluto-Stepを使用すると、ステップパルスジェネレーターはFPGA上のハードウエアステップパルスジェネレーターを使うことになり、PC上のパルスジェネレーターよりも速い信号を出すことが可能です。

また、MaxⅡ上では作動確認していますが同じPluto-Pドライバ内のPluto-ServoもFPGA上で多分作動するはずです。←動きました。
このPluto-Servo、FPGA上にPWMジェネレーターとQエンコーダー4軸分載るので、PCにでDCモーターの位置フィードバック制御(サーボ制御)が可能となります。
Qエンコーダーに関して言えば、パラレルポートでもQエンコーダーの入力が可能なのですが、最大入力パルスの周波数が低いので使い方にも依りますがあまり高速で読み取ることができません。


もちろん、PCI PCI-EなMESAカードのようなFPGAカードを使用できるのならそちらのほうが使えるI/.O数も、出力出来るステップパルスの速度も、なんならエンコーダー入力とかもあり良いのですが、モノの値段と送料を考えると、、。。


MaxⅡ、MaxⅤ、CycloneⅤでもこのPluto-StepはLinuxCNCのHALドライバ内で公開されているHDLをPluto-Pとの異なっている所をほぼ合わせるだけで作動しましたが、Max10の場合、IDEであるQualtusⅡのバージョンの違いにより、多分HDLの解釈が微妙に違って?ちょっとした記述の違いで同じHDLでも出力が出ない状態でした。

元々もPluto-Pに使われているACEX-1kは5V入力が可能なデバイスなので、3.3VまでのI/0な最近のFPGAでパラレルポートに取り付けて作動させるにはレベル変換が必要になると思います。

Max10はFPGA内にコンフィギュレーションROMを内蔵し、3.3Vの単一電源作動が可能で容量が大きく、お手頃なお値段。
Pluto-ServoとPluto-Step両方を切り替えるように入れて、更に、デジタルリードアウト用のエンコーダーカウンタを入れてもなお、最小のサイズの10M02でも余る位の容量はとても魅力です。

もちろんこの手の容量の大きい色々な機能が付いているFPGA、ソフトウエアプロセッサ等を入れたりして使うのがアレだとおもうのですが、FPGA内で回路を作り、ソフトウエアプロセッサを載せさらにソフトウエアプロセッサ上で動くソフトウエアを書く、、私にはちょっと荷が重いです^^;


RaspberryPi上でのLinuxCNCを動かす場合、ハードウエアステップパルスジェネレータ等々をSPI通信にてPICで出力するPICNCV2とゆうものがあります。(作動未確認)

また、RaspberryPi,BeagleboneBlack/Green用のPluto-Servo,Stepとして、Github上にspi-fpga-driverがありますが、今の段階でソースコードからの回路合成が私の環境では上手く行ってません。。
スポンサーサイト

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

コメントの投稿

非公開コメント

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

あきらひとし。

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

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

メールフォーム

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

リンク
最新記事
カテゴリ
スポンサードリンク
スポンサードリンク 
スポンサードリンク
オンラインカウンター
現在の閲覧者数:
検索フォーム
RSSリンクの表示
最新トラックバック
最新コメント
月別アーカイブ
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。