IIoT-SPYN是一個(gè)基于IIoT-EDDP開(kāi)源平臺(tái)和PYNQ軟件框架的項(xiàng)目,它展示了如何在PYNQ開(kāi)源框架下對(duì)電機(jī)進(jìn)行控制、監(jiān)視、捕獲數(shù)據(jù)、可視化和分析。
上圖為工程項(xiàng)目示意圖,PL側(cè)包含了對(duì)電機(jī)控制、狀態(tài)采集的模塊。在PYNQ中加載比特流后,就可以訪問(wèn)到這些已實(shí)現(xiàn)好的模塊,對(duì)電機(jī)進(jìn)行控制和狀態(tài)檢測(cè)。
此項(xiàng)目中采用的FOC算法示意圖,包括Clarke變換、Park變換、PWM編碼器、PI控制器、電流采樣等。Overlay中的算法模塊通過(guò)Vivado HLS生成。
設(shè)備清單
PYNQ-Z2套件
EDDP Kit
快速開(kāi)始
1)方法一
在Jupyter界面中new選項(xiàng)里選擇新建一個(gè)終端,在終端輸入:
udo pip3 install --upgrade git+https://github.com/Xilinx/IIoT-SPYN.git
2) 方法二
下載IIoT-SPYN的zip壓縮包,上傳壓縮包到PYNQ板卡,在終端中unzip上傳的壓縮包,移動(dòng)到解壓的目錄下然后采用pip安裝
sudo pip3 install -e .
示例Notebook演示
Overlay自帶2個(gè)Notebook,spyn.ipynb和spyn_dash.ipynb
2個(gè)notebook均展示了完整的電機(jī)控制、狀態(tài)檢測(cè)和分析功能,不同的是spyn_dash.ipynb均在dashboard上實(shí)現(xiàn)。
以下為spyn.ipynb代碼執(zhí)行的部分截圖。
以下為spyn_dash.ipynb代碼執(zhí)行的部分截圖。
總結(jié)與展望
本Overlay中使用了FOC算法,它在本質(zhì)上就是一些線性代數(shù)中的矩陣變換,這里講述的是有傳感器的FOC算法,轉(zhuǎn)子的位置信息是通過(guò)絕對(duì)式磁編碼器反饋的,直接是數(shù)字量。關(guān)于FOC算法的詳細(xì)內(nèi)容,可以參考有關(guān)電機(jī)理論的專業(yè)書籍,這里不再贅述。
本項(xiàng)目中的FOC算法全部使用HLS編寫,使用AXI-Stream接口完成各模塊的通信。我們可以通過(guò)上述AXIS監(jiān)測(cè)器來(lái)從PS端看到各關(guān)鍵數(shù)據(jù)。讀者可以使用github提供的tcl文件恢復(fù)出完整的Vivado工程,以此為基礎(chǔ)調(diào)整其中的算法或者功能,打造適合自身需要的電機(jī)控制Overlay。
編輯:hfy
-
電機(jī)控制
+關(guān)注
關(guān)注
3526文章
1857瀏覽量
268379 -
FOC算法
+關(guān)注
關(guān)注
1文章
17瀏覽量
9656 -
磁編碼器
+關(guān)注
關(guān)注
0文章
51瀏覽量
6149
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論