labview
[ LabVIEW實作 - NI myRIO基礎篇 ] 伺服馬達控制實作
<攝影 : greatway9999>
一、成果展示
(一)、題目需求
- PWM 控制訊號頻率約 50Hz
- 時間週期大小 20ms
- 用按鈕控制
二、實作程式碼與解說
(一)、程式碼Demo
(二)、接線方式
<攝影 : greatway9999>
(三)、解題步驟
Step0. 了解關於伺服馬達的基本知識
1.Duty Cycle :
又稱Duty Ratio,中文為工作週期,表示在一個周期內,工作時間與總時間的比值,常用於頻射、微波電路、低頻交流和直流電流等多個領域。<更多關於Duty Cycle,詳見維基百科>
2.關於 PWM Duty Cycle與伺服機位置的對應關係 :
PWM Duty Cycle(ms) | 伺服機位置 |
0.5 | 正轉45~90度 (順時針) |
1.5 | 中間 |
2.5 | 反轉45~90度 (逆時針) |
Step1.設定 PWM腳位
如果使用 NI myRIO,先確認麵包板接在哪一個匯流排。此例接匯流排B,因此在PWM程式方塊的設定中,channel選擇 B/PWM0(Pin27)。
Step2. 設定 Duty Cycle和Frequency
依照題意,週期時間為20ms,Duty Cycle為控制伺服馬達正反轉的變數。程式接線如下圖所示。
Step3.設定正轉、反轉、停止的3種狀態按鈕
利用 " Build Array " 程式方塊,將三種按鈕整合成一個陣列。再利用 "Search 1D Array"程式方塊去讀取按鈕的狀態。同時用 "Or Array Elements" 程式方塊將狀態條件送進去 Case 結構中,進行判斷。
在利用 Case 結構,設定 0.5、1.5、2.5 三種不同狀態的毫秒數,作為控制馬達的條件。完成相關接線後,程式與人機介面如下。
執行後,按鈕即可控制馬達運轉狀態。
---
參考資料 :
占空比 維基百科
#PWM #ServoMotor #DutyCycle
0 留言