# 讓 ESP32-S3 程式帶動一台虛擬電機

ESP32-S3 單電機範例已經能在電腦上讀取回饋、調整輸出，也能暫停和單步查看。記錄目前能做什麼，以及接下來還要補上什麼。

[閱讀全文](https://grainpeak.com/zh-tw/updates/esp32s3-control-loop/)

Grainpeak LLC

發布於: 2026-10-29T00:46:00-04:00

更新於: 2026-10-29T01:39:46-04:00

開發電機控制時，有些問題光看程式碼不容易發現。回饋方向有沒有接反？輸出是不是一直維持在上限？往往要接上開發板和電機，才能看出實際情況。我們正在開發 ESP32-S3 模擬能力，希望先在電腦上檢查其中一部分問題。
最近，我們在 Botdraft 裡跑通了一個單電機範例。為 ESP32-S3 編譯的控制程式，已經能從專案介面執行：程式輸出交給電機模型，模型的運動透過模擬編碼器傳回程式，再由程式決定下一步如何控制。Botdraft 仍是暫定名稱。
目前跑通的是這個單電機範例。圖為示意，不是產品截圖。
現在可以怎麼用 這個範例已經可以開始、暫停、單步和繼續執行。暫停後，模型也停在同一個模擬時間點；往前走一步，程式就會讀取回饋、調整輸出，畫面中的電機姿態也跟著計算結果更新。這樣就能停下來查看某一步發生了什麼，再繼續往下執行。
我們想先用它協助控制程式除錯：輸出送出後，模型有沒有如預期變化？程式讀到回饋後，又做了什麼？這些是在接上硬體之前，我們希望開發者能先檢查清楚的問題。
程式讀到的回饋來自模型計算。
接下來還要補上什麼 目前只跑通了這個單電機範例，還不能任意拿一個 ESP32-S3 韌體映像檔放進來執行。晶片內建周邊仍要繼續補上，也尚未完整模擬整塊開發板的電路。
電機模型目前使用的仍是測試參數，還沒有與實體硬體對照過，不能據此判斷某款真實電機的表現。模擬時間與電腦實際花費的執行時間也不同，執行速度仍需繼續最佳化。
接下來，我們會繼續透過這個專案介面處理負載變化和回饋中斷的情境：加上負載後，程式如何回應？編碼器不再更新時，程式會如何處理？這些情境在目前的介面中尚未完成。我們也會繼續加入周邊模型和電機參數，並根據能找到的廠商公開資料核對參數。
專案的整體方向放在專案介紹，先前的軟體和匯出進展則寫在研發範圍說明（英文）中。


[返回部落格](https://grainpeak.com/zh-tw/updates/index.md)
