CAN FD通信
このチュートリアルでは、CAN FD 経由で Aotenjo One ボードを制御し、閉ループ角度制御を実行する方法を検討します。
CAN FD をまだセットアップしていない場合は、配線と構成の詳細な手順については Aotenjo One CAN FD チュートリアル] を参照してください。
CAN ネットワーク内のボードが Aotenjo One v1.x または Aotenjo Master v1.x の場合、CAN FD 通信は使用できません。代わりに CAN バス通信チュートリアル] を参照してください。
CAN FD の詳細については、「CAN FD とは?](/docs/aotenjo-one/fdcan#what-is-can-fd)」を参照してください。
前提条件
このチュートリアルでは、次のハードウェアが使用されます。
- 青天井ワンボード MCU: STM32G431CBU6 バージョン: 青天井 One V2.0
- 青天井マスターボード MCU: STM32G431CBU6 バージョン: 青天井マスター V2.1
- 直径方向着磁ディスクマグネット(Aotenjo Oneに付属)
- ST-LINK V2 クローン
- BlackPill STM32 ボード
- BE4108 75T ジンバルモーター
- 電源(12V)
ファームウェアをボードにアップロードするには、ST-LINK V2 クローンが必要です。安価なクローン ST-LINK V2 は 5 ドル以下で購入できます。
インストール
VScode と PlatformIO
PlatformIO は、VSCode 拡張機能マーケットプレイスからインストールできます。
STM32CubeProgrammer
これはファームウェアをボードにフラッシュするために必要です。
クローンを作成 リポジトリ
git clone https://github.com/aotenjo-xyz/master.git
cd master
クイックスタート
-
Aotenjo マスターボードを ST-LINK V2 プログラマに接続します。
ST-LINK V2 <-> Aotenjo Master3.3V <---> 3.3VGND <---> GNDSWDIO <---> SWDIOSWCLK <---> SWCLKRST <---> NRST備考
blackpill ボードとは異なり、NRST ピンを STM32G4 シリーズの ST-LINK V2 プログラマに接続する必要があります。
あるいは、アップロード中に青天井マスター ボードの NRST ボタンを押し続けると、同じ効果が得られます。
:::
2. ST-LINK V2 プログラマをコンピュータに接続します。
3. VSCode でプロジェクト フォルダーを開きます。
4. 左側のサイドバーの「PlatformIO」タブをクリックし、「Upload」ボタンをクリックしてファームウェアをボードにアップロードします。
-
ST-LINK V2 プログラマを取り外し、Aotenjo Master と Aotenjo One ボード間の電源用の JST XH ケーブルと CAN バス用の JST PH ケーブルを接続します。
-
Aotenjo マスターボードを USB 経由でコンピュータに接続します。
-
左側のサイドバーにある [PlatformIO] タブをクリックし、[
Monitor] ボタンをクリックしてシリアル モニターを開きます。
-
電源を入れるとモーターが回転し始め、FOC(Field Oriented Control)が初期化されます。
-
シリアル モニターに次のコマンドを入力し、Enter キーを押します。
M06.28
M0 モーターは 1 回転し、初期位置で停止します。ラジアン単位で値を変更することで、ターゲットの角度を調整できます。
M0-6.28 のように負の値を入力すると、モーターを逆方向に回転させることもできます。
M0 モーターの現在の角度を読み取るには、次のように入力します。
M0P
モーターをスリープ モードにするには、次のコマンドを使用します。
ESTOP
これはまさに、Aotenjo Master および Aotenjo One ボードとの CAN バス通信を使用してモーター巻線機を制御する方法です。 Aotenjo を使ってプロジェクトの構築を楽しんでいただければ幸いです。