Orion_F303_BLDC ハードウェア仕様¶
本ドキュメントは、ハードウェア仕様を整理したものです。
MCU/クロック¶
- MCU: STM32F303
- コア: Cortex-M4F
- システムクロック: 72MHz 構成
- 主制御周期: 1ms
- モーター制御周期: 40kHz(左右で交互に処理するため実質20kHz)
モータ駆動¶
- 対象: 2モータ(M0/M1)
- PWM: TIM1 と TIM8 の 3相コンプリメンタリ出力(CH1-3 + CH1N-3N)
- PWM 設定:
Period=1800,DeadTime=10 - PWM周波数: 40kHz
- フリーウィール制御: CH/CHN の有効無効を直接切り替え
エンコーダ¶
- 種別: AS5047P(SPI1, 16bit フレームアクセス)
- センサ数: 2個(CS: PB6/PB7 で個別選択)
- 角度分解能扱い: 14bit 読み出し値を内部で 16bit スケールへ展開
アナログ計測¶
- ADC: ADC1/ADC2/ADC3 を併用
- 計測対象:
- バッテリ電圧
- ゲートドライバ DCDC 電圧
- モータ電流 x2
- モータ温度 x2
- FET温度 x2
- 電流センサ:
- ZXCT1084(オフセット 0)
- INA199(オフセット 2048) を起動時の生ADC値で切り替える実装
通信¶
- CAN: 1ch 使用(PA11/PA12)
- 設定値: Prescaler=4, BS1=4TQ, BS2=4TQ(コード上)
- フィルタで速度指令、電源有効、キャリブ開始などを受信
- UART1: 2,000,000 bps(PC4/PC5)
- DMA送信バッファを使ったデバッグ出力
GPIO(主な用途)¶
- スイッチ入力: PC0-PC3(Pull-up, Low active)
- LED出力: PC13-PC15
- エンコーダCS: PB6/PB7
電源系のしきい値(ソフト保護)¶
- 過電流/過熱/低電圧/過電圧/過負荷を監視し、異常時はPWM停止+リセット
- しきい値実体は
control_limits.hを参照