步進(jìn)電機(jī)的 LabVIEW 控制與應(yīng)用
本文介紹了樹(shù)莓派 RP2350 開(kāi)發(fā)板使用 LabVIEW 上位機(jī)串口發(fā)送指令,實(shí)現(xiàn)步進(jìn)電機(jī) 單步 和 連續(xù) 旋轉(zhuǎn)指定角度的項(xiàng)目設(shè)計(jì)。進(jìn)一步結(jié)合具體的應(yīng)用場(chǎng)景,設(shè)計(jì)了開(kāi)發(fā)板與儀器的聯(lián)合調(diào)用、進(jìn)而實(shí)現(xiàn)數(shù)據(jù)自動(dòng)采集的應(yīng)用案例。
項(xiàng)目介紹
在前面關(guān)于串口發(fā)送 json 指令使 RP2350 通過(guò) ULN2003 驅(qū)動(dòng) 28BYJ-48 步進(jìn)電機(jī)旋轉(zhuǎn)指定角度的項(xiàng)目設(shè)計(jì)的基礎(chǔ)上,使用 LabVIEW 上位機(jī)串口發(fā)送指令,實(shí)現(xiàn)步進(jìn)電機(jī)旋轉(zhuǎn)指定角度。
LabVIEW 介紹
LabVIEW (Laboratory Virtual Instrument Engineering Workbench)是 National Instruments(NI)公司開(kāi)發(fā)的一種圖形化編程語(yǔ)言。主要用于數(shù)據(jù)采集、儀器控制、工業(yè)自動(dòng)化以及測(cè)試測(cè)量系統(tǒng)的開(kāi)發(fā)。
2023年,NI 被艾默生電氣(Emerson)收購(gòu)。
關(guān)鍵組件
- 前面板(Front Panel)
用戶(hù)交互界面,包含按鈕、圖表、指示燈等控件。 - 程序框圖(Block Diagram)
圖形化編程區(qū)域,通過(guò)連線連接函數(shù)、結(jié)構(gòu)和子VI。 - VI(Virtual Instrument)
LabVIEW程序的基本單元,每個(gè)VI包含前面板和程序框圖,可嵌套使用。 - 工具包與模塊
- DAQmx :數(shù)據(jù)采集驅(qū)動(dòng);
- Vision Development Module :機(jī)器視覺(jué)處理;
- LabVIEW NXG :新一代Web化設(shè)計(jì)工具。
詳見(jiàn):[艾默生旗下測(cè)試和測(cè)量系統(tǒng) - NI] .
環(huán)境配置
下載并安裝最新完整版 [LabVIEW] ;
安裝時(shí)注意 VISA 串口驅(qū)動(dòng)器的安裝,后續(xù)測(cè)試將調(diào)用該模塊。
工程設(shè)計(jì)
介紹了 LabVIEW 軟件工程創(chuàng)建與程序設(shè)計(jì)的流程,實(shí)現(xiàn)上位機(jī)編寫(xiě)、旋轉(zhuǎn)角度的串口發(fā)送、狀態(tài)顯示等。
1 單步控制
功能實(shí)現(xiàn)
- 串口發(fā)送 json 格式的角度值;
- 打印發(fā)送和接收的數(shù)據(jù)至前面板;
- 顯示旋轉(zhuǎn)狀態(tài)(靜止或運(yùn)動(dòng))等。
前面板

程序框圖

功能實(shí)現(xiàn)
程序使用步驟
- 選擇目標(biāo)串口對(duì)應(yīng)的端口號(hào),配置波特率等信息;
- 點(diǎn)擊運(yùn)行按鈕,自動(dòng)打開(kāi)串口;
- 輸入目標(biāo)旋轉(zhuǎn)角度值,點(diǎn)擊
Send發(fā)送按鈕; - 字符面板顯示發(fā)送和接收的信息;
State指示燈將在完成旋轉(zhuǎn)任務(wù)后(收到OK)閃爍一次;
參考:[Labview 自動(dòng)化測(cè)試信息轉(zhuǎn)JSON字符串] 、[基于LabView開(kāi)發(fā)的串口助手] 、[利用VISA進(jìn)行串口通信]
2 連續(xù)控制
在實(shí)現(xiàn)單步控制的基礎(chǔ)上,介紹了循環(huán)發(fā)送旋轉(zhuǎn)角度指令,進(jìn)而實(shí)現(xiàn)連續(xù)旋轉(zhuǎn)的控制。
子VI定義
為了方便連續(xù)控制并旋轉(zhuǎn)指定角度,采用模塊化設(shè)計(jì),定義步進(jìn)電機(jī)旋轉(zhuǎn)子 VI 程序。
前面板

程序框圖

功能實(shí)現(xiàn)
- 輸入端口:串口配置參數(shù) (波特率等)、步進(jìn)電機(jī)的旋轉(zhuǎn)速度
velocity和目標(biāo)旋轉(zhuǎn)角度angle; - 運(yùn)行程序;
- 待檢測(cè)到串口反饋回 OK 字樣,表明任務(wù)執(zhí)行完畢;
- 打印字符串,點(diǎn)亮
State狀態(tài)指示燈。
連續(xù)運(yùn)行
利用模塊化設(shè)計(jì)的旋轉(zhuǎn)子 VI 程序,結(jié)合 while 循環(huán)實(shí)現(xiàn)連續(xù)旋轉(zhuǎn)控制。
前面板

程序框圖

功能實(shí)現(xiàn)
- 串口配置參數(shù) (波特率等);
- 運(yùn)行程序;
- 單步運(yùn)行:
- 輸入旋轉(zhuǎn)速度
velocity和目標(biāo)旋轉(zhuǎn)角度angle; - 點(diǎn)擊
Go To按鈕; - 待字符串面板顯示 OK ,完成單步運(yùn)行流程 .
- 輸入旋轉(zhuǎn)速度
- 連續(xù)運(yùn)行:
- 在步長(zhǎng)
Step(單次旋轉(zhuǎn)的角度)、最終需要的角度值End、延時(shí)Delay欄分別輸入對(duì)應(yīng)的數(shù)值; - 點(diǎn)擊
START按鈕,開(kāi)始運(yùn)行程序; Position顯示當(dāng)前位置、loop 指示燈顯示連續(xù)運(yùn)行狀態(tài),同時(shí)輸出提示字符串;- 待循環(huán)結(jié)束,到達(dá)目標(biāo)角度,loop 指示燈熄滅,表明連續(xù)運(yùn)行結(jié)束。
- 在步長(zhǎng)
- 點(diǎn)擊
Terminate按鈕終止程序。
應(yīng)用案例
介紹了開(kāi)發(fā)的 LabVIEW 上位機(jī)步進(jìn)電機(jī)控制系統(tǒng) 的應(yīng)用案例。
案例一:自動(dòng)數(shù)據(jù)采集裝置
實(shí)驗(yàn)中通常使用二分之一波片或中性密度濾光片(Neutral Density, ND)實(shí)現(xiàn)光束的強(qiáng)度和光功率的調(diào)節(jié)。
也可以通過(guò)旋轉(zhuǎn)起偏器或檢偏器實(shí)現(xiàn)光強(qiáng)的精細(xì)調(diào)節(jié)
參考:[二分之一波片的四種用法]
方案介紹
使用 LabVIEW 上位機(jī)通過(guò)串口向單片機(jī)循環(huán)發(fā)送指令,精確控制步進(jìn)電機(jī)的旋轉(zhuǎn)角度,進(jìn)而機(jī)械驅(qū)動(dòng)波片旋轉(zhuǎn),實(shí)現(xiàn)光強(qiáng)的精確控制。
介紹了兩種實(shí)現(xiàn)光功率調(diào)節(jié)的方案,分別是采用二分之一波片和 ND 濾波片的解決方案。
工作原理
介紹旋轉(zhuǎn)二分之一波片實(shí)現(xiàn)光強(qiáng)控制的基本原理。
馬呂斯 (E. L. Malus) 定律
I = I_0cdot cos^2{theta}

結(jié)合本項(xiàng)目設(shè)計(jì),使用 LabVIEW 控制單片機(jī)驅(qū)動(dòng)步進(jìn)電機(jī),進(jìn)而旋轉(zhuǎn)波片,實(shí)現(xiàn)光強(qiáng)的精確控制。
中性密度濾光片
ND 濾光片大致分為兩種
- 不連續(xù)變化

詳見(jiàn):[Round, Step-Variable, Metallic Neutral Density Filters]
- 連續(xù)變化

詳見(jiàn):[Round Continuously Variable Metallic Neutral Density Filters] .
兩種濾波片均可通過(guò)控制旋轉(zhuǎn)角度,調(diào)整光斑入射至 ND 的相對(duì)位置,進(jìn)而實(shí)現(xiàn)光強(qiáng)的精確調(diào)控。
數(shù)據(jù)采集
實(shí)驗(yàn)室中的光強(qiáng)數(shù)據(jù)采集通常由 光敏探頭 結(jié)合 光功率計(jì) 完成

參考:[Power Meter Kits - Thorlabs]
或使用光電探測(cè)器(PD)、雪崩探測(cè)器 (APD)、光電倍增管 (PMT)、CCD 傳感器等。

參考:[平衡光電探測(cè)器] 、[光電倍增管] 、[雪崩光電二極管] 、[CCD]
這里使用混入噪聲的鋸齒波模擬旋轉(zhuǎn) ND 時(shí),光強(qiáng)信號(hào)的變化。
項(xiàng)目工程
介紹了 LabVIEW 上位機(jī)聯(lián)合調(diào)用設(shè)備實(shí)現(xiàn)自動(dòng)化數(shù)據(jù)采集的項(xiàng)目設(shè)計(jì),包括面板設(shè)計(jì)、程序框圖、功能實(shí)現(xiàn)等。
前面板

程序框圖

功能實(shí)現(xiàn)
- 選擇目標(biāo)串口對(duì)應(yīng)的端口號(hào),配置波特率等信息;
- 點(diǎn)擊運(yùn)行按鈕,自動(dòng)打開(kāi)串口;
- 單次運(yùn)行:
(a)輸入目標(biāo)旋轉(zhuǎn)角度值;
(b)點(diǎn)擊Go To按鈕,字符面板顯示發(fā)送和接收的信息;
(c)Running指示燈顯示旋轉(zhuǎn)狀態(tài)(運(yùn)行時(shí)點(diǎn)亮,靜止時(shí)熄滅); - 連續(xù)運(yùn)行:
(a)輸入步長(zhǎng)、目標(biāo)角度、延時(shí)、文件保存路徑;
(b)點(diǎn)擊START按鈕開(kāi)始運(yùn)行;
(c)實(shí)時(shí)顯示位置、循環(huán)狀態(tài)、提示字符串;
(d)顯示數(shù)據(jù)與角度演化曲線;
(e)運(yùn)行結(jié)束后,曲線數(shù)據(jù)自動(dòng)保存至目標(biāo)路徑。 - 點(diǎn)擊
Terminate按鈕終止程序。
效果演示
參數(shù)配置完成后點(diǎn)擊 START 按鈕運(yùn)行程序

數(shù)據(jù)保存樣式

至此完成了 RP2350 開(kāi)發(fā)板結(jié)合 LabVIEW 上位機(jī)實(shí)現(xiàn)自動(dòng)數(shù)據(jù)采集的項(xiàng)目。
案例二:自動(dòng)雨刷(自動(dòng)撐傘裝置、自動(dòng)澆水器、自動(dòng)換水魚(yú)缸)
結(jié)合雨滴傳感器、土壤濕度傳感器、水位傳感器、光強(qiáng)傳感器等,當(dāng)檢測(cè)到傳感器模擬信號(hào)變化或達(dá)到閾值,旋轉(zhuǎn)步進(jìn)電機(jī)實(shí)現(xiàn)力矩傳遞和機(jī)械驅(qū)動(dòng)目標(biāo)裝置,實(shí)現(xiàn)擺動(dòng)、進(jìn)動(dòng)、旋動(dòng)、開(kāi)關(guān)等操作,自動(dòng)完成設(shè)定任務(wù)。

總結(jié)
本文介紹了 DFRobot Beetle RP2350 開(kāi)發(fā)板使用 LabVIEW 上位機(jī)串口發(fā)送指令,實(shí)現(xiàn)步進(jìn)電機(jī) 單步 和 連續(xù) 旋轉(zhuǎn)指定角度的項(xiàng)目設(shè)計(jì)。
進(jìn)一步結(jié)合具體的應(yīng)用場(chǎng)景,設(shè)計(jì)了開(kāi)發(fā)板與儀器的聯(lián)合調(diào)用、進(jìn)而實(shí)現(xiàn)數(shù)據(jù)自動(dòng)采集的應(yīng)用案例。
結(jié)合其他應(yīng)用場(chǎng)景,有針對(duì)性地提出了工程設(shè)計(jì)思路與解決方案。
上述系統(tǒng)性的測(cè)試為電機(jī)驅(qū)動(dòng)等相關(guān)類(lèi)似項(xiàng)目提供了新思路,也為該型號(hào)開(kāi)發(fā)板的應(yīng)用提供了具有 LabVIEW 上位機(jī)控制的一系列有價(jià)值的參考。
審核編輯 黃宇
-
LabVIEW
+關(guān)注
關(guān)注
2014文章
3682瀏覽量
344674 -
步進(jìn)電機(jī)
+關(guān)注
關(guān)注
153文章
3222瀏覽量
151630
發(fā)布評(píng)論請(qǐng)先 登錄
?DRV8821 雙路步進(jìn)電機(jī)控制器與驅(qū)動(dòng)器技術(shù)文檔總結(jié)
?DRV8711 步進(jìn)電機(jī)控制器技術(shù)文檔總結(jié)
伺服電機(jī)和步進(jìn)電機(jī)的核心區(qū)別
基于MT6835磁編碼器IC的步進(jìn)電機(jī)全閉環(huán)伺服控制策略
單片機(jī)怎么控制步進(jìn)電機(jī)的
步進(jìn)電機(jī)和伺服電機(jī)的區(qū)別是什么?
如何應(yīng)對(duì)步進(jìn)電機(jī)的各種干攏問(wèn)題
剎車(chē)步進(jìn)電機(jī)的特點(diǎn)
步進(jìn)電機(jī)—4線,6線,8線的電機(jī)怎么接線
想讓步進(jìn)電機(jī)控制更順滑?微步控制優(yōu)勢(shì)與挑戰(zhàn)全揭秘
想讓步進(jìn)電機(jī)控制更順滑?微步控制優(yōu)勢(shì)與挑戰(zhàn)全揭秘!
步進(jìn)電機(jī)的控制實(shí)現(xiàn)方法
中空軸步進(jìn)電機(jī)概述

步進(jìn)電機(jī)的 LabVIEW 控制與應(yīng)用

評(píng)論