• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于STM32的全向移動(dòng)機(jī)器人設(shè)計(jì)解析

      2020-02-23 09:12:20
      中國新技術(shù)新產(chǎn)品 2020年24期
      關(guān)鍵詞:微控制器伺服電機(jī)驅(qū)動(dòng)器

      (北京理工大學(xué)珠海學(xué)院,廣東 珠海 519088)

      0 引言

      因?yàn)殡p輪機(jī)器人的目標(biāo)點(diǎn)定位有誤差,且調(diào)整效率較低,需要到達(dá)目的地后再次調(diào)整方向,影響搬運(yùn)效率的提升。所以,該文在嵌入式單片機(jī)(STM32)的基礎(chǔ)上設(shè)計(jì)出的全向移動(dòng)機(jī)器人可以有效克服位置與角度的誤差,促進(jìn)搬運(yùn)效率的提升,充分滿足當(dāng)前工業(yè)發(fā)展的新需求。

      1 全向移動(dòng)機(jī)器人的硬件設(shè)計(jì)

      1.1 USB轉(zhuǎn)串口模塊

      在微控制器的內(nèi)部設(shè)置TTL電平,將輸入門2.0 V~5.0 V設(shè)置為邏輯“1”,0.0 V~0.8 V設(shè)置為邏輯“0”;輸出門2.4 V~5.0 V和0.0 V~0.4 V分別設(shè)置為邏輯“1”和“0”。USB總線經(jīng)過D+與D-2個(gè)信號(hào)線實(shí)施通信,當(dāng)D+為高電平、D-為低電平時(shí),就意味著總線為邏輯“1”,反之則為邏輯“0”。因此,當(dāng)微控器與計(jì)算機(jī)總線相連時(shí),如果要開展串口通信、ISP固件下載等工序,則應(yīng)該利用串口模塊將計(jì)算機(jī)中SUB口信號(hào)轉(zhuǎn)變?yōu)槲⒖刂破髦С值腡TL串口電平,并將微控制器中的TTL電平轉(zhuǎn)變?yōu)榭勺R(shí)別的USB總線電平。利用USB總線中的轉(zhuǎn)接芯片CH340完成USB口向TTL串口的轉(zhuǎn)變。對(duì)于前者來說,它的作用主要體現(xiàn)在2個(gè)方面:1)將CH340芯片中RXD引腳微控制器的異步串口連起來,并與調(diào)試軟件相結(jié)合實(shí)現(xiàn)串口調(diào)試。2)將芯片中的RTS#、DTR引腳以及ISP電路連在一起,這樣就可以利用USB對(duì)微控制器固件程序進(jìn)行下載[1]。

      1.2 超聲波測(cè)距模塊

      超聲波頻率超出人耳的感知范圍,一般為2 000 Hz以上,且波長(zhǎng)較短,帶有狹小的發(fā)射線束,并通過波束的形式廣泛傳播,方向性較為明確。壓電式發(fā)生器的應(yīng)用較為普遍,當(dāng)發(fā)射超聲波時(shí),發(fā)生器應(yīng)該將電能轉(zhuǎn)變?yōu)槌曊饎?dòng);當(dāng)接收反射回波時(shí),在傳感器的作用下可以將回波轉(zhuǎn)變?yōu)殡娦盘?hào),這就是壓電效應(yīng)[2]。在該文的研究中,機(jī)器人采用HC-SR04模塊進(jìn)行距離測(cè)量與障礙規(guī)避,其額定電壓值為DC5 V,頻率為40 kHz??梢詼y(cè)量4.0 m內(nèi)的障礙物,精準(zhǔn)度可以達(dá)到0.3 cm。

      除電源之外,該模塊的接口還可以是TTL輸入引腳與回波輸出引腳。該模塊的應(yīng)用原理如圖1所示,主要包括觸發(fā)信號(hào)、發(fā)射信號(hào)與回波。具體傳輸原理:首先,在微控制器中發(fā)出信號(hào),經(jīng)過該模塊的輸入引腳進(jìn)入發(fā)射電路;其次,利用超聲波對(duì)回波信號(hào)進(jìn)行輸出;最后,傳微控制器的額外定時(shí)器中。該控制器可以定時(shí)器中的輸出模式與傳輸引腳結(jié)合在一起,對(duì)電平信號(hào)進(jìn)行轉(zhuǎn)換,為該模塊提供一個(gè)超過10 μs的高電平信號(hào),并發(fā)送8個(gè)頻率為40 kHz的脈沖信號(hào)。如果該信號(hào)遇到反射物體后進(jìn)入超聲波模塊,則接收器將接收到固定時(shí)段內(nèi)的信號(hào)?;夭ǖ某掷m(xù)時(shí)間與超聲波的往返時(shí)間相同,接收器將高電平信號(hào)輸入引腳,利用定時(shí)器對(duì)信號(hào)進(jìn)行采集,得出信號(hào)升降的時(shí)間,進(jìn)而計(jì)算出回波脈沖的寬度。

      1.3 Wi-Fi通信模塊

      該模塊屬于上位機(jī)中的智能終端,與下位機(jī)的主控器進(jìn)行通信傳輸。在實(shí)際應(yīng)用中,智能終端可以借助內(nèi)部Wi-Fi模塊將軟件指令傳遞給主控器中的通信模塊。待主控器接收到傳遞信息后,USB攝像頭中采集的視頻信號(hào)也可以通過Wi-Fi模塊傳遞到智能終端。該模塊在Linux內(nèi)核的基礎(chǔ)上構(gòu)建操作系統(tǒng),并支持路由器開發(fā)。在OpenWrt系統(tǒng)中創(chuàng)建媒體服務(wù)器,就可以發(fā)揮實(shí)時(shí)視頻傳輸?shù)淖饔?。該系統(tǒng)可在多樣化嵌入式芯片中運(yùn)行,除支持MIPS體系之外,還支持PowerPC與ARM等結(jié)構(gòu)。全向機(jī)器人中的Wi-Fi模塊內(nèi)置MT7620芯片,具有580 MHz主頻的特點(diǎn)。在通信模塊中配置32 MB內(nèi)存,當(dāng)通信接口與串口相連時(shí),其額定電壓為DC5 V。

      圖1 超聲波測(cè)距原理圖

      1.4 電機(jī)驅(qū)動(dòng)模塊

      在機(jī)器人運(yùn)行的過程中,動(dòng)力電機(jī)會(huì)為伺服電機(jī)提供相應(yīng)的控制信號(hào),并結(jié)合控制指令執(zhí)行運(yùn)動(dòng)動(dòng)作。動(dòng)力電機(jī)與驅(qū)動(dòng)器共同組成伺服系統(tǒng),也就是隨動(dòng)系統(tǒng),該系統(tǒng)控制肌肉系統(tǒng)的作用[3]。該文采用型號(hào)為RMDS-106+的驅(qū)動(dòng)器,其接口如圖2所示。將其作為主控芯片,為RS485通信模式提供支持,還可以與PC連接進(jìn)行驅(qū)動(dòng)調(diào)試,為每個(gè)電機(jī)配置1個(gè)驅(qū)動(dòng)器。在調(diào)試過程中,將232T、GND以及232R接口與PC相連,將額定電壓設(shè)置為24 V,采用串行方式與PC通信,為驅(qū)動(dòng)器標(biāo)記唯一的號(hào)碼,以免出現(xiàn)混淆。主控設(shè)備可通過CANL信號(hào)線與驅(qū)動(dòng)器連接,再通過總線通信將運(yùn)動(dòng)指令傳遞到總線。驅(qū)動(dòng)器中的接口也可以通過并聯(lián)模式掛載到主控總線上,與驅(qū)動(dòng)器監(jiān)聽的編號(hào)信息相結(jié)合,依靠定時(shí)器形成特定比例的PWM波形。在該波形中還需要增加功率放大電路,從MT1與MT2引腳輸出后,可對(duì)動(dòng)力電機(jī)進(jìn)行驅(qū)動(dòng),使其滿足轉(zhuǎn)速運(yùn)動(dòng)的需求。

      圖2 驅(qū)動(dòng)器接口示意圖

      控制電機(jī)轉(zhuǎn)速和方向的方法較多,當(dāng)前,應(yīng)用較為頻繁的1種是調(diào)節(jié)勵(lì)磁與電樞電壓的方法。勵(lì)磁線圈電感較大,動(dòng)態(tài)響應(yīng)相對(duì)較弱,在低速狀態(tài)下很容易受到磁極飽和的影響,導(dǎo)致效果不夠理想。為了達(dá)到精準(zhǔn)可靠的目標(biāo),同時(shí)獲得較大的轉(zhuǎn)矩,與大多數(shù)機(jī)器人控制場(chǎng)景相同,該機(jī)器人也采用電樞控制模式進(jìn)行伺服電機(jī)操控,并在電樞上加入特定的直流電壓,電機(jī)就可以根據(jù)電壓值進(jìn)行相應(yīng)的旋轉(zhuǎn),當(dāng)電壓方向改變后,電機(jī)旋向也隨之改變。

      2 全向移動(dòng)機(jī)器人的軟件設(shè)計(jì)

      2.1 開發(fā)環(huán)境

      在安卓系統(tǒng)中運(yùn)行時(shí),該機(jī)器人將智能終端作為上位機(jī),在Linux基礎(chǔ)上構(gòu)建移動(dòng)操作系統(tǒng);底層程序庫利用C++語言編寫相關(guān)程序,其中,應(yīng)用程序均由Java語言編寫。Google企業(yè)為開發(fā)者專門打造了集成工具安卓Studio,并營造與之相對(duì)的開發(fā)環(huán)境。下位機(jī)是以STM32F103作為主控系統(tǒng),它的軟件是在MCU中運(yùn)行的控制固件代碼,其集成嵌入式開發(fā)環(huán)境、構(gòu)建程序編譯工具鏈并將下機(jī)位作為ARM的開發(fā)平臺(tái)。在下機(jī)位內(nèi)部有指令模擬器,同時(shí)具備單機(jī)脫離硬件調(diào)試的能力。在不嵌入單片機(jī)硬件的條件下,就可以在模擬代碼中運(yùn)行。該企業(yè)為微控制器開發(fā)了很多庫函數(shù),并對(duì)庫函數(shù)進(jìn)行合理地應(yīng)用,極大地縮短了軟件開發(fā)周期,主要流程如下:首先,創(chuàng)建相應(yīng)的工程項(xiàng)目,針對(duì)內(nèi)部參數(shù)進(jìn)行設(shè)置,例如晶振頻率、目標(biāo)芯片等;其次,在項(xiàng)目中編寫代碼,使軟件功能更加豐富完善,可以完成工程編譯、測(cè)試等操作;再次,當(dāng)發(fā)現(xiàn)錯(cuò)誤后及時(shí)糾正代碼,對(duì)其進(jìn)行重新編譯直至準(zhǔn)確無誤;最后,再將其與硬件相結(jié)合進(jìn)行調(diào)試。

      2.2 上位機(jī)設(shè)計(jì)

      安卓端程序設(shè)計(jì)主要包括流媒體數(shù)據(jù)、App參數(shù)與控制指令等內(nèi)容。在啟動(dòng)App后,先進(jìn)入?yún)?shù)設(shè)置界面,在該界面明確控制信號(hào)IP地質(zhì)以及流媒體服務(wù)器IP地址等。在控制指令中,可以利用圖片按鈕組件實(shí)現(xiàn)在App應(yīng)用中,對(duì)按下按鈕時(shí)的事件進(jìn)行監(jiān)測(cè),如果監(jiān)測(cè)到按鍵被按下,就會(huì)將鍵值傳送到控制信號(hào)的IP地址中,由Wi-Fi模塊對(duì)控制信號(hào)進(jìn)行接收,再經(jīng)過串口傳遞給主控制器。對(duì)實(shí)時(shí)流媒體服務(wù)器中的IP地址進(jìn)行訪問,利用解析器對(duì)服務(wù)器中的視頻信息進(jìn)行播放,就可以達(dá)到遠(yuǎn)程監(jiān)控的效果[4]。

      2.3 下位機(jī)設(shè)計(jì)

      該軟件的主要作用是對(duì)上位機(jī)控制指令做出響應(yīng),并控制機(jī)器人運(yùn)動(dòng),將采集的數(shù)據(jù)傳遞到App。串口通信程序設(shè)計(jì)包括數(shù)據(jù)發(fā)送和數(shù)據(jù)接收等程序。主控器接口可經(jīng)過RX數(shù)據(jù)、TX數(shù)據(jù)與Wi-Fi模塊相互連接。在兩者之間利用相同的通信協(xié)議進(jìn)行串口通信,每個(gè)數(shù)據(jù)包中帶有5 Byte,以O(shè)fxx作為包頭與包尾,可用的數(shù)據(jù)位還剩下3 Byte。當(dāng)通信程序檢驗(yàn)到頭尾為Ofxx時(shí),就意味數(shù)據(jù)是有價(jià)值的,可存入緩沖區(qū)域;反之,則說明數(shù)據(jù)無效,應(yīng)將其剔除。CAN總線可完成數(shù)據(jù)收發(fā)工作,在串口接收下重新編碼,將CAN指令傳遞到電機(jī)驅(qū)動(dòng)器總線中,對(duì)驅(qū)動(dòng)設(shè)備傳遞的信息進(jìn)行接收。在開啟通信端口前,應(yīng)該對(duì)串口能否成功開啟進(jìn)行檢驗(yàn),如果成功開啟,就可以對(duì)端口進(jìn)行初始化;反之則在出現(xiàn)錯(cuò)誤信息后停止運(yùn)行。在初始化啟動(dòng)后,根據(jù)串口信號(hào)做出相應(yīng)決策,生成與之相對(duì)的數(shù)據(jù)幀。在電機(jī)驅(qū)動(dòng)下根據(jù)信號(hào)對(duì)底盤電機(jī)進(jìn)行控制,也可以通過驅(qū)動(dòng)器中的收發(fā)器傳遞給機(jī)器人。如果發(fā)現(xiàn)機(jī)器人的運(yùn)動(dòng)狀態(tài)達(dá)到預(yù)期目標(biāo),就停止操作;否則要重新讀取串口數(shù)據(jù),并重復(fù)上述流程。

      2.4 電機(jī)驅(qū)動(dòng)程序設(shè)計(jì)

      電機(jī)利用較為典型的PID閉環(huán)控制算法,以STM32F103微控制器為主芯片,以伺服電機(jī)為執(zhí)行器,在反饋值與理想值的基礎(chǔ)上構(gòu)建PID控制系統(tǒng)。PID控制是積分、微分和比例的統(tǒng)稱,在伺服電機(jī)驅(qū)動(dòng)器為動(dòng)力電機(jī)傳輸信號(hào)后,其控制信號(hào)從零跳轉(zhuǎn)到給定值,使機(jī)器人運(yùn)行更加穩(wěn)定,實(shí)現(xiàn)平滑控制的目標(biāo)。比例控制以反饋與理想值的誤差作為控制值。當(dāng)比例控制趨于穩(wěn)定時(shí),就處于穩(wěn)定狀態(tài)。在取值范圍內(nèi),雖然控制增益與穩(wěn)態(tài)值成反比,后者隨著前者的增加而減少;但是也可能出現(xiàn)振蕩情況。為了減少該情況的出現(xiàn),可以利用積分控制實(shí)現(xiàn)比例控制。積分控制主要是控制信號(hào)與誤差信號(hào)的和,它可以把比例控制形成的穩(wěn)態(tài)誤差剔除,一般與微分控制聯(lián)合應(yīng)用[5]。PID原理,如圖3所示,與期望控制量進(jìn)行對(duì)比,如果超過該值就將比例、積分與微分控制結(jié)合起來,共同作用于伺服電機(jī),并且輸出實(shí)際控制量;如果沒有超過該值則在進(jìn)行反饋后,輸出實(shí)際控制量。

      在運(yùn)動(dòng)控制方面,可以以運(yùn)動(dòng)控制中是否采用PID參數(shù)為根據(jù),將其分為開環(huán)與閉環(huán)2種控制模式。對(duì)于前者來說,可以直接設(shè)定伺服電機(jī)數(shù)值,不需要對(duì)反饋量進(jìn)行分析。在對(duì)動(dòng)力電機(jī)進(jìn)行檢測(cè)時(shí),可以優(yōu)先采用開環(huán)控制。通過伺服電機(jī)的電流控制,在狀態(tài)趨于穩(wěn)定后,使電機(jī)內(nèi)的電流達(dá)到恒定狀態(tài),并且讓力矩隨著時(shí)間的變化而不斷改變。電流值與電機(jī)加速度成正比,當(dāng)對(duì)電流值進(jìn)行控制時(shí),電機(jī)速度也會(huì)隨之而變。在該模式下,可以確保電機(jī)長(zhǎng)期運(yùn)轉(zhuǎn)時(shí)電流值穩(wěn)定在科學(xué)可控的范圍,避免因?yàn)殡姍C(jī)長(zhǎng)期堵轉(zhuǎn)導(dǎo)致內(nèi)部電流激增,最終而造成電機(jī)過熱被毀。伺服電機(jī)長(zhǎng)期保持特定的速度運(yùn)轉(zhuǎn),被稱為速度環(huán)控制。當(dāng)速度環(huán)控制居于穩(wěn)定時(shí),伺服電機(jī)速度與負(fù)載均受到直接影響??梢詰?yīng)用于多種需要電機(jī)保持恒定的場(chǎng)所。當(dāng)開環(huán)運(yùn)行時(shí),伺服電機(jī)轉(zhuǎn)速較快,受慣性作用影響,難以使其在短時(shí)間內(nèi)暫停運(yùn)行。因此,速度環(huán)模式也可以用于控制運(yùn)動(dòng)體剎車,其反饋速度可以從光電編碼器中體現(xiàn)出來;在速度控制時(shí),積分控制與比例參數(shù)基本相同。電流速度控制包括速度和電流2個(gè)方面,不但可以促進(jìn)直流伺服電機(jī)的穩(wěn)定運(yùn)行,而且還可以輸出恒定力矩,在長(zhǎng)期擁堵的狀態(tài)下避免因電流過熱而損壞設(shè)備。在控制參數(shù)中包括速度比例、電流積分參數(shù)和比例參數(shù)等。通常情況下,機(jī)器人采用電流速度控制,要求伺服電機(jī)按照特定速度轉(zhuǎn)動(dòng),電流值小于給定值。

      圖3 PID控制原理圖

      3 系統(tǒng)測(cè)試

      為了檢測(cè)控制系統(tǒng)是否穩(wěn)定可行,在STM32的基礎(chǔ)上構(gòu)建的全向機(jī)器人,可以利用無線通信為上位機(jī)傳送指令,借助串口將數(shù)據(jù)打包傳遞給開發(fā)板,并將融合數(shù)據(jù)反饋給上位機(jī);同時(shí),對(duì)長(zhǎng)短里程的精度指標(biāo)進(jìn)行分別測(cè)試。在里程精度測(cè)試中,以短距離為主,直線速度為0.5 m/s,角速度為0.5 rad/s,多次測(cè)試后匯總得出底層誤差,見表1。根據(jù)表中數(shù)據(jù)可知,橫軸與縱軸的距離均為998 m,自轉(zhuǎn)角度為360°;在誤差方面,縱軸誤差超過橫軸;那么,就可以接受自轉(zhuǎn)角度存在誤差。

      表 1 里程誤差

      對(duì)長(zhǎng)距離的里程精度進(jìn)行測(cè)試,當(dāng)距離在220.000 m時(shí),總轉(zhuǎn)角為1 980.0°;當(dāng)橫軸偏差為-2.680 m、縱軸偏差為-2.983 m時(shí),角度偏差為13.7 °。因?yàn)榭紤]到機(jī)器人在運(yùn)行中底部容易打滑,所以在進(jìn)行零半徑轉(zhuǎn)彎測(cè)試時(shí),只要轉(zhuǎn)角值為7 200.0 °、差值為48.5 °、橫軸誤差在80 mm以內(nèi),縱軸誤差在100 mm以內(nèi),都符合相關(guān)規(guī)定的要求。

      4 結(jié)論

      總的來說,首先,該文對(duì)移動(dòng)機(jī)器人系統(tǒng)的軟件、硬件設(shè)計(jì)進(jìn)行分析,在STM32的基礎(chǔ)上使控制系統(tǒng)更加精準(zhǔn)靈活,通過人機(jī)交互系統(tǒng)實(shí)現(xiàn)無線視頻監(jiān)控,使PID控制算法得到優(yōu)化;其次,將其應(yīng)用到嵌入式軟件設(shè)計(jì)中,通過應(yīng)用安卓系統(tǒng)的上位機(jī)App進(jìn)行設(shè)計(jì);最后,對(duì)機(jī)器人樣機(jī)進(jìn)行試驗(yàn)測(cè)試,并將檢測(cè)結(jié)果進(jìn)行分析,從而有限驗(yàn)證了機(jī)器人的可控性、穩(wěn)定性與可行性,實(shí)現(xiàn)理想的人機(jī)交互效果。在未來的研究中,還可以將多傳感器技術(shù)引入其中,為機(jī)器人路徑規(guī)劃與導(dǎo)航設(shè)計(jì)提供強(qiáng)有力的支持,使其擁有更高的自主移動(dòng)能力,在各種復(fù)雜的環(huán)境中得到廣泛應(yīng)用。

      猜你喜歡
      微控制器伺服電機(jī)驅(qū)動(dòng)器
      專利名稱:一種適應(yīng)壓鑄環(huán)境的伺服電機(jī)
      藏起驅(qū)動(dòng)器號(hào)確保數(shù)據(jù)安全
      電腦愛好者(2020年6期)2020-05-26 09:27:33
      生產(chǎn)線中的伺服電機(jī)定位控制
      電子制作(2018年17期)2018-09-28 01:57:00
      伺服電機(jī)控制技術(shù)的應(yīng)用及發(fā)展趨向分析
      物聯(lián)網(wǎng)技術(shù)在微控制器實(shí)驗(yàn)教學(xué)中的應(yīng)用
      電子制作(2017年14期)2017-12-18 07:07:58
      壓電陶瓷驅(qū)動(dòng)器的遲滯特性
      淺說伺服電機(jī)位置控制下的定位問題
      SiC基和Si基永磁同步電動(dòng)機(jī)驅(qū)動(dòng)器的比較
      Atmel針對(duì)新一代物聯(lián)網(wǎng)應(yīng)用發(fā)布全新32位微控制器
      新型低電壓大變形微驅(qū)動(dòng)器數(shù)值求解及仿真
      宁波市| 山西省| 象州县| 噶尔县| 辽源市| 老河口市| 绥滨县| 浦县| 平谷区| 常州市| 西平县| 离岛区| 武安市| 平潭县| 民权县| 阿克| 中超| 玛纳斯县| 新闻| 仲巴县| 昌宁县| 红河县| 景宁| 天峻县| 修文县| 江门市| 铜梁县| 南阳市| 博罗县| 通江县| 光山县| 连州市| 乐东| 萝北县| 陵川县| 道孚县| 南投县| 潢川县| 五原县| 苗栗市| 迁安市|