STM32F103C8T6でGRBL

EbayやAliで販売されている安価なSTM32F103C8T6が載った、STM32DuinoBlue Pillと呼ばれている青い小さなボードにて、GRBLが作動するようです。

参考(ebay)
STM32F103C8T6 ARM STM32 Minimum System Development Board Module For Arduino



動画自体、ソースからコンパイル、インストール、で、実際の作動迄をフォローしています。
動画コメント欄にソースのURLがあります。

usbcnc/grbl This is a port of GRBL 1.1 to STM32F103 target
上記のWiki

Githubから、クローンorダウンロードして、CooCoxにて、プロジェクトファイルを開き、そのままコンパイルして、書き込んでいるようです。

試しに同じように、ダウンロードしてCooCoxにてプロジェクトを開いてコンパイルしてみました。
書き込み器は、動画では、コレまたAliやEbayで安価に販売されているSTLinkのコピー?を使い書き込んでますが、私は秋月でも売っているSTM32のEvalボード上部に付いているSTLinkを使用し、IDEが吐き出す書き込み用のHEXファイルをSTマイクロご謹製のSTLinkUtilityで読み込み、書き込みしました。

動画上でも言っているのですがATMegaを使うオリジナルのGRBLのようにUSB-UART変換ICが使われる訳ではなく、STM32自体にあるUSBインターフェースを使い、USBのVertualCOMPortとしてPCに接続するため、もしかるするとSTM32 Virtual COM Port Driverのインストールが必要になるかもしれません。

このVCPを使用するので、今まで以上の速度での仮想COMポートでのUARTの送受信が可能となるようですが、一応今の所、GRBLの対人間のインターフェースであるUniversalGcodeSenderやbCNC等々、115200のボーレート迄しか対応してないご様子。

ATMegaでGRBLを使用しないで、STM32でGRBLを使用するメリットとして、上記のUARTの通信速度の上限が上がるのと、計算速度が上がるので、最大ステップ周波数が上がります。
基本的には元のGRBLと同じGコードパーサーと、モーションプランナーを使用している(と思われる)ので、元のGRBLと変わらない、といえば変わりません。

UniversalGcodeSenderとbCNCにて、接続し、動かしてみましたが、やはり、移植とゆうことで、シリアルコンソールに最初に出てくるメッセージは

Grbl 1.1e ['$' for help]

と、現行GRBLと同じ。使い勝手も同じです。
ただ、一応Edgeブランチとなっているので、できれば、ソースコードを確認しての使用が良いと思われます。

とりあえず、テケトーなGコードを動かしてパルスが出ていること、を確認しました。






MCU自体の性能に余裕があるので、ATMegaでのGRBLが一杯一杯でやってたことが余裕となり、各種機能が追加されることと思われます。


また、LPC1769上でも、動く?ようにgrbl-LPCとゆうものも。
こちらはGithub上の記述を見ると、Smoothieボード上でも動くご様子。
Smootheボード上で動くのであれば、以前試してみた、秋月で売っているLPCXpresso1769でも動くのでは?と思います。

GRBLやLinuxCNCのようにオープンソースで公開されているソフトウエア、折角制御内容がソースコードとゆう形で公開されているので、できるだけソースコードを読んで使っていけると良いだろうなぁと思います。

追記

備忘用
この記事を書いている時点でのSTM32を使用したGRBLのピン配置
ソースファイル内cpu_map.hの286行目より。

PoartA
0:X_Step
1:Y_Step
2:Z_Step
3:X_Direction
4:Y_Direction
5:Z_Direction
6:Stepper_Enable/Disable
7
8:SpindlePWM
9
10
11
12
13:SWD
14:SWD
15:Probe

PortB
0:Spindle_Enable/Disable
1:Spindle_Direction
2:Coolant_Flood
3:Coolant_mist
4
5:Control_Reset
6:Control_FeedHold
7:Control_CycleStart
8:Control_SafetyDoor
9:
10:X_Linit
11:Y_Linit
12:Z_Limit
13:
14:
15:

本文中のSTM32Duinoで使われているBlue~とゆうボードを使う場合、PortBのPin_2は、Boot1(基板上のジャンパの片方)に抵抗を介して繋がっているので抵抗前から引っ張り出す。








スポンサーサイト

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

コメントの投稿

非公開コメント

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

あきらひとし。

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

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

メールフォーム

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

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