第1部分 硬體介紹
1.1 硬體清單
| 序號 | 品名 | 數量 |
|---|---|---|
| 1 | SimpleFOCShield V2.0.2 主板 | 1 |
| 2 | ARDUINO UNO主板 | 1 |
| 3 | MKS SF2804電機 | 1 |
| 4 | AS5600傳感器 | 1 |
| 5 | AS5600_A(3pin)連接線 | 1 |
| 6 | 杜邦線 | 4 |
| 7 | 直流24V 1A電源配接器 | 1 |
| 8 | USB 線 | 1 |
硬體清單如下圖所示:

1.2 硬體連接
-
SimpleFOCShield V2.0.2主板與Arduino UNO主板疊接,
-
USB線一端連接Arduino UNO主板,另一端連接PC;
-
24V電源配接器連接主板DC介面,上電后PWR指示燈亮,
-
電機三根相線連接至SimpleFOCShield V2.0.2主板TB_M1的3個介面,
-
AS5600傳感器Analog介面:
| 序號 | SimpleFOCShield V2.0.2主板 | AS5600傳感器 |
|---|---|---|
| 1 | A1 | OUT |
| 2 | 5V | 5V |
| 3 | GNG | GND |
Analog介面硬體連接如下圖所示:

- AS5600傳感器I2C介面:
AS5600傳感器與SimpleFOCShield V2.0.2主板連接關系如下表格所示,
| 序號 | SimpleFOCShield V2.0.2主板 | AS5600傳感器 |
|---|---|---|
| 1 | SCL | SCL |
| 2 | SDA | SDA |
| 3 | 5V | 5V |
| 4 | GNG | GND |
I2C介面硬體連接如下圖所示:

第2部分 AS5600傳感器測驗
2.1 Analog介面測驗
-
打開Aruino IDE,打開示例,檔案 -> 示例-> Simple FOC -> utils -> sensor_test -> magnetic_sensors -> magnetic_sensor_analog_example, 如下圖1,2,3,4,5,6,7所示,

-
analog示例程式如下圖所示,

-
連接開發板后,點擊上傳,并等待上傳完成,如下圖1,2所示,

-
打開串口監視器,可以監測電機的位置以及轉速,如下圖1,2所示,

-
轉動電機,可以發現電機位置與轉速發生改變,如下圖3所示,
正轉一圈約數值增加6.28(2π),反轉一圈數值減少6.28(2π),

2.2 I2C介面測驗
-
打開示例:檔案->示例-> Simple FOC -> utils -> sensor_test -> magnetic_sensors -> magnetic_sensor_i2c_example,如下圖1,2,3,4,5,6,7所示,

-
I2C示例程式如下圖所示,

-
連接開發板后,點擊上傳,并等待上傳完成,
-
打開串口監視器,可以監測電機的位置以及轉速,如下圖1,2所示,

-
轉動電機,可以發現電機位置與轉速發生改變,如下圖3所示,
正轉一圈約數值增加6.28(2π),反轉一圈數值減少6.28(2π),

第3部分 倍訓控制測驗
3.1 倍訓位置測驗
-
打開示例:檔案 -> 示例 -> Simple FOC -> motion_control -> position_motion_control -> magnetic_sensor -> angle_control,如下圖1,2,3,4,5,6,7所示,

-
修改檔案,如下圖1,2,3,4,5所示,
第13行,用“//”屏蔽,如下圖1所示,
如果用I2C介面則需要:第15行,洗掉“//”,取消屏蔽,如下圖1所示,
如果用Analog介面則需要:第17行,洗掉“//”,取消屏蔽,
第20行,BLDCMotor motor = BLDCMotor(7);如下圖2所示,
第41行,driver.voltage_power_supply = 24;如下圖3所示,
第57行,motor.PID_velocity.I = 2;如下圖4所示,
第60行,motor.voltage_limit = 1; 如下圖5所示,


-
連接開發板后,上傳代碼,并等待上傳完成,
-
打開串口監視器,等待完成初始化,如下圖1所示,

-
輸入位置資訊 T62.8,并點擊發送,如下圖1,2所示,
正轉一圈約數值增加6.28(2π),反轉一圈數值減少6.28(2π),

-
可觀察到電機轉動約10圈,并回傳位置資訊,如下圖3所示,

-
輸入不同位置資訊,可觀察電機轉動,并停在不同位置,
-
用手撥動電機會發現有阻力,松手后電機會回傳原先的位置,
3.2 倍訓速度測驗
-
打開示例:檔案 -> 示例 -> Simple FOC -> motion_control -> velocity_motion_control -> magnetic_sensor -> velocity_control,如下圖1,2,3,4,5,6,7所示,

-
修改檔案,如下圖所示,
第16行,用“//”屏蔽,如下圖1所示:
如果用I2C介面需要:第18行,洗掉“//”,取消屏蔽,如下圖1所示,
如果用Analog介面需要:第19行,洗掉“//”,取消屏蔽,
第22行,BLDCMotor motor = BLDCMotor(7);如下圖2所示,
第43行,driver.voltage_power_supply = 24;如下圖3所示,
第56行,motor.PID_velocity.I = 2;如下圖4所示,
第59行,motor.voltage_limit = 1; 如下圖5所示


-
連接開發板后,上傳代碼,并等待上傳完成,
-
打開串口監視器,等待完成初始化,如下圖1所示,

-
輸入速度資訊 T2,并點擊發送,如下圖1,2所示,

-
可觀察到電機會以2圈/秒的轉速轉動,并回傳轉速資訊,如下圖3所示,

-
輸入不同轉速資訊,可觀察電機以不同轉速轉動,
第4部分 電流感測測驗
電流感測測驗需要接I2C介面,
為了方便觀察電流變化,電機需要進入倍訓模式,
測驗代碼為倍訓位置控制示例與電流感測示例合并所生成,
電流感測代碼可以在Q群732557609下載,如下圖所示,

解壓后檔案如下圖所示,

-
打開下載好的程式檔案,如下圖所示,

-
連接開發板后,點擊上傳,并等待上傳完成,
-
打開串口監視器,可以監測電機的A相、B相的電流以及電流幅值,如下圖所示,

-
撥動電機A相電流、B相電流、電流幅值瞬間發生改變,如下圖所示,

Makerbase SimpleFOC 第二課 基本測驗 到此結束,
請繼續關注后續課程,
歡迎加入 創客基地 電機控制Q群 討論電機控制相關問題:732557609
歡迎光臨 創客基地 B站 了解技術資料:
https://space.bilibili.com/393688975
歡迎光臨 創客基地 淘寶店 采購產品:
https://makerbase.taobao.com/
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/271880.html
標籤:其他
上一篇:數控系統刀補傳輸解決方案
