一、ODrive介紹
ODrive是一款開源的高性能磁盤驅動器,能夠實現對電機的控制和運動控制。它基於ARM Cortex-M4處理器進行設計,支持多種通信協議和端口,如UART、USB和CAN。ODrive還提供了豐富的Python API,能夠方便地進行控制和調試。
二、ODrive的指令
1. ODrive F 0指令
ODrive F 0指令是一個開關型指令,用於啟動或停止馬達使其保持在當前位置。
odrv0.axis0.requested_state = AXIS_STATE_CLOSED_LOOP_CONTROL
2. ODrive ASCll指令
ODrive ASCll指令是一種遠程控制方法,使用UART和ODrive通信。可以輕鬆的發送命令到ODrive進行馬達的控制。
ser = serial.Serial('COM24', baudrate = 115200) ser.write(b'w axis0.requested_state 1\n')
3. ODriver
ODriver是ODrive的一個Python庫,提供了一系列Python函數,可以方便地對ODrive進行控制,包括電機的旋轉控制和PID參數的設置等等。
import odrive odrv0 = odrive.find_any() odrv0.axis0.controller.vel_setpoint = 10000
4. ODrive FOC與Simple FOC
ODrive FOC(磁場定向控制)是一種現代電機控制方式,替代了傳統電機控制方式,如BLDC,PMSM 等。Simple FOC是用Python編寫的一個輕量級FOC庫,可以運行在ODrive上。
import odrive from simplefoc import SimpleFOC odrv0 = odrive.find_any() motor = SimpleFOC(0, motor_params) motor.link(odrv0.axis0) motor.init() motor.move(1000)
三、ODrive高級功能
1. ODrive恆轉矩控制
ODrive恆轉矩控制可以讓馬達在轉速和位置之外,保持一個恆定的扭矩輸出。
odrv0.axis0.controller.config.control_mode = CTRL_MODE_CURRENT_CONTROL # switch to current control mode odrv0.axis0.motor.config.torque_constant = 8.27 / odrv0.axis0.motor.config.motor_type.current_lim # set the torque constant for your motor # Set current limit to a very high value to get a constant torque limit odrv0.axis0.motor.config.current_lim = 150 odrv0.axis0.controller.current_setpoint = 10.0
2. OneDrive永久免費100G
OneDrive位於Microsoft工具鏈的核心位置,支持跨設備同步,為用戶提供了免費的100G存儲空間,且有相應的開發者平台以及API接口。
3. OneDrive可以卸載嗎
OneDrive可以通過常規的方法卸載,但是如果你想將其完全從系統中移除,則需要進行編程操作。比較簡單的方法是使用PowerShell,然後運行以下命令:
Get-AppxPackage *OneDrive* | Remove-AppxPackage
結語
ODrive是一款高性能的磁盤驅動器,支持多種通信協議和端口,並提供了豐富的Python API。同時,ODrive還具有很多高級特性,如恆定轉矩控制和Simple FOC。同時,OneDrive為用戶提供了免費的100G存儲空間,為開發者提供了API接口,方便進行二次開發。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/241381.html