国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于單片機(jī)STM32的搬運(yùn)機(jī)器人控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

2023-05-24 05:35:02付裕
無(wú)線互聯(lián)科技 2023年5期
關(guān)鍵詞:STM32單片機(jī)

付裕

摘要:針對(duì)傳統(tǒng)搬運(yùn)機(jī)器人存在的工作范圍狹窄、只能工作于平坦地形等問(wèn)題,文章提出一種將STM32單片機(jī)作為核心結(jié)構(gòu)的控制系統(tǒng),采用型號(hào)為NRF24L01的無(wú)線傳輸模塊,使有效傳輸距離超過(guò)100 m,滿足STM32單片機(jī)對(duì)電壓的實(shí)際需求。為保證搬運(yùn)機(jī)器人的靈活性,將人類(lèi)手臂的分關(guān)節(jié)靈活彎曲工作特點(diǎn)作為主要依據(jù),建立六自由度關(guān)節(jié)型機(jī)械臂。該機(jī)器人具有較高的使用價(jià)值,可最大限度地節(jié)約人力以及時(shí)間成本,實(shí)現(xiàn)生產(chǎn)線搬運(yùn)的智能化、高效化發(fā)展。

關(guān)鍵詞:STM32單片機(jī);搬運(yùn)機(jī)器人;六自由度機(jī)械臂;工位呼叫器

中圖分類(lèi)號(hào):TP242文獻(xiàn)標(biāo)志碼:A

0 引言

隨著我國(guó)科技的迅速發(fā)展,工業(yè)領(lǐng)域逐漸走向智能化。由于機(jī)器人可以在極其惡劣的環(huán)境下高效完成電氣焊接、流水線以及高空作業(yè)等工作,具有較強(qiáng)的工作穩(wěn)定性,越來(lái)越多的機(jī)器人被廣泛應(yīng)用于工業(yè)生產(chǎn)的多個(gè)領(lǐng)域,替代人類(lèi)完成各項(xiàng)高危工作。但是傳統(tǒng)搬運(yùn)機(jī)器人主要采用固定式或輪式平臺(tái)進(jìn)行設(shè)計(jì),該方式對(duì)于機(jī)器人的移動(dòng)范圍具有局限性,只能將其應(yīng)用于平坦地形。為此,本文提出一種基于單片機(jī)STM32的搬運(yùn)機(jī)器人控制系統(tǒng)設(shè)計(jì)方案,方案將人類(lèi)手臂的分關(guān)節(jié)靈活彎曲工作特點(diǎn)作為主要依據(jù),建立六自由度關(guān)節(jié)型機(jī)械臂,使機(jī)器人的可控角度更大。

1 基于單片機(jī)STM32的搬運(yùn)機(jī)器人控制系統(tǒng)總體設(shè)計(jì)

1.1 搬運(yùn)機(jī)器人控制系統(tǒng)總體方案

為了實(shí)現(xiàn)搬運(yùn)機(jī)器人的整體控制,在對(duì)控制系統(tǒng)進(jìn)行設(shè)計(jì)時(shí),可以分為移動(dòng)控制和機(jī)器人與工位呼叫器通信兩部分。其中,移動(dòng)控制部分主要負(fù)責(zé)控制搬運(yùn)機(jī)器人的移動(dòng)路線;工位呼叫器通信部分主要負(fù)責(zé)建立機(jī)器人與外界的聯(lián)系,有利于操作者實(shí)時(shí)掌握搬運(yùn)機(jī)器人的工作狀態(tài),搬運(yùn)機(jī)器人控制系統(tǒng)總體方案如圖1所示[1]。

搬運(yùn)機(jī)器人控制系統(tǒng)的工作流程為:通過(guò)工位呼叫器喚醒??吭谲?chē)間坐標(biāo)原點(diǎn)的搬運(yùn)機(jī)器人,使搬運(yùn)機(jī)器人恢復(fù)工作狀態(tài),由操作者利用工位呼叫器向搬運(yùn)機(jī)器人的控制中心發(fā)送搬運(yùn)指令,當(dāng)指令最終到達(dá)機(jī)器人的目的工位坐標(biāo)后,搬運(yùn)機(jī)器人會(huì)成功接收指令,然后根據(jù)循跡算法控制自身移動(dòng)路線,以此實(shí)現(xiàn)搬運(yùn)的目的。在循跡算法的支持下,搬運(yùn)機(jī)器人控制系統(tǒng)具有循跡、避障以及無(wú)線收發(fā)等功能。搬運(yùn)機(jī)器人到達(dá)指定地點(diǎn)后,工人將需要搬運(yùn)的產(chǎn)品放置于機(jī)器人的托盤(pán)上,按下機(jī)器人機(jī)身的搬運(yùn)鍵,機(jī)器人可按照系統(tǒng)設(shè)定路線完成產(chǎn)品搬運(yùn)。若機(jī)器人在產(chǎn)品搬運(yùn)期間接收到來(lái)自工位呼叫器傳輸?shù)男轮噶?,則返回初始位置,完成下一次搬運(yùn)任務(wù)[2]。

1.2 搬運(yùn)機(jī)器人控制系統(tǒng)結(jié)構(gòu)設(shè)計(jì)

搬運(yùn)機(jī)器人的核心結(jié)構(gòu)為關(guān)節(jié)型機(jī)械臂,機(jī)械臂有利于提高搬運(yùn)機(jī)器人整體活動(dòng)的靈活性,實(shí)現(xiàn)對(duì)產(chǎn)品的精準(zhǔn)搬運(yùn)。為了保證搬運(yùn)機(jī)器人工作的靈敏度,對(duì)搬運(yùn)機(jī)器人的關(guān)節(jié)型機(jī)械臂結(jié)構(gòu)進(jìn)行設(shè)計(jì)時(shí),將人類(lèi)手臂的分關(guān)節(jié)靈活彎曲工作特點(diǎn)作為主要依據(jù),設(shè)計(jì)出一種六自由度機(jī)械臂?;诹杂啥鹊年P(guān)節(jié)型機(jī)械臂可對(duì)產(chǎn)品進(jìn)行精準(zhǔn)定位及抓取,具有較高的靈活性和精準(zhǔn)性。機(jī)械臂的結(jié)構(gòu)主要包括基座、手臂、手腕以及夾持器,為實(shí)現(xiàn)機(jī)械臂各部分結(jié)構(gòu)的緊密相連,采用多個(gè)合金支架,利用螺絲將機(jī)械臂的結(jié)構(gòu)組成零件與舵機(jī)建立連接。機(jī)械臂與舵機(jī)成功建立連接后,可通過(guò)搬運(yùn)機(jī)器人控制系統(tǒng)的控制器對(duì)每個(gè)舵機(jī)進(jìn)行控制,達(dá)到搬運(yùn)物品的目的。

2 基于單片機(jī)STM32的搬運(yùn)機(jī)器人控制系統(tǒng)硬件設(shè)計(jì)

2.1 STM32單片機(jī)的最小系統(tǒng)與感知電路

對(duì)搬運(yùn)機(jī)器人的核心結(jié)構(gòu)進(jìn)行設(shè)計(jì)時(shí),主要采用STM32F103C8T6主流控制器芯片,該芯片可對(duì)搬運(yùn)機(jī)器人的電機(jī)驅(qū)動(dòng)電路、紅外循跡、避障功能電路等部分進(jìn)行精準(zhǔn)控制。其閃存為64 KB、供電電壓為3.3 V、主頻達(dá)到72MHz。內(nèi)部包含48個(gè)引腳,搬運(yùn)機(jī)器人控制系統(tǒng)可使用的GPIO超過(guò)32個(gè)。搬運(yùn)機(jī)器人控制系統(tǒng)在STM32單片機(jī)的支持下,可實(shí)現(xiàn)對(duì)移動(dòng)范圍的精準(zhǔn)控制,有利于提升機(jī)器人的工作效率,滿足對(duì)搬運(yùn)機(jī)器人控制系統(tǒng)的設(shè)計(jì)要求[3]。

本文設(shè)計(jì)的搬運(yùn)機(jī)器人主要面向?qū)捈s8m、長(zhǎng)約20m、占地面積約160m2的生產(chǎn)線,為實(shí)現(xiàn)控制系統(tǒng)中無(wú)線通信模塊的有效傳輸,應(yīng)結(jié)合勾股定理,將該模塊的傳輸距離控制在22m以上。但是該模塊對(duì)短距離數(shù)據(jù)進(jìn)行傳輸時(shí),無(wú)法達(dá)到有效通信的目的。將該模塊與短距離無(wú)線通信模塊進(jìn)行對(duì)比可知,短距離無(wú)線通信主要采用型號(hào)為NRF24L01的無(wú)線傳輸模塊,該模塊內(nèi)存為2.4G,有效傳輸距離超過(guò)100m,供電電壓為3 V~5.5 V。將該模塊與STM32單片機(jī)建立連接,并使用SPI總線通信方式中的PA4-PA9引腳與NRF24L01無(wú)線模塊連接在一起,可滿足STM32單片機(jī)對(duì)電壓的實(shí)際需求。

由于搬運(yùn)機(jī)器人主要通過(guò)紅外循跡傳感器識(shí)別路徑實(shí)現(xiàn)物品搬運(yùn),為此選用XD-201型號(hào)的紅外循跡傳感器,該傳感器具有四路循跡功能,識(shí)別距離為2cm~30cm,檢測(cè)角度為35°,供電電壓為3 V~5 V,滿足搬運(yùn)機(jī)器人控制系統(tǒng)的設(shè)計(jì)要求。為最大限度地降低搬運(yùn)機(jī)器人搬運(yùn)物品過(guò)程中出現(xiàn)碰撞現(xiàn)象,需要搬運(yùn)機(jī)器人具備實(shí)時(shí)避障功能。但是紅外循跡傳感器易受外界光線干擾,遇到物品為透明狀態(tài)或者存在圓形凸物時(shí),該傳感器的避障功能可能存在失效情況。為解決搬運(yùn)機(jī)器人的避障功能缺陷問(wèn)題,采用PB8-PB9兩個(gè)引腳分別對(duì)超聲波模塊視為T(mén)rig和Echo兩個(gè)引腳進(jìn)行控制,該模塊型號(hào)為RCWL-1601,檢測(cè)距離為2cm~450cm,供電電源為3.3 V~5 V 。

2.2 搬運(yùn)機(jī)器人控制系統(tǒng)的電機(jī)驅(qū)動(dòng)電路

當(dāng)搬運(yùn)機(jī)器人處于實(shí)際工作狀態(tài)時(shí),托盤(pán)內(nèi)部放置的溫控產(chǎn)品為1kg~4 kg。為保證搬運(yùn)機(jī)器人可承載物品勻速前進(jìn),需要向機(jī)器人內(nèi)部輸入足夠的電機(jī)驅(qū)動(dòng)電流以及堵轉(zhuǎn)扭矩,其數(shù)值至少大于4kg·cm,該數(shù)值下的電機(jī)驅(qū)動(dòng)電流以及堵轉(zhuǎn)扭矩可成功驅(qū)動(dòng)輪轂前進(jìn)。對(duì)電機(jī)驅(qū)動(dòng)電路進(jìn)行設(shè)計(jì)時(shí),采用型號(hào)為L(zhǎng)298n的電機(jī)驅(qū)動(dòng)芯片,該芯片可持續(xù)穩(wěn)定輸出2A電流,最高工作電壓高達(dá)50 V。對(duì)電機(jī)驅(qū)動(dòng)電路的輪轂設(shè)備進(jìn)行選擇時(shí),采用型號(hào)為ZGB38RG的直流減速電機(jī),該電機(jī)供電電壓為12 V,扭矩可達(dá)6.5kg·cm。在實(shí)際電路設(shè)計(jì)過(guò)程中,應(yīng)向其中添加10 μF和104電容,以此作為濾波電容。

2.3 搬運(yùn)機(jī)器人控制系統(tǒng)工位呼叫器電路

工位呼叫器電路主要采用STC15W408AS主控芯片作為核心部分,選擇SOP28進(jìn)行封裝。STC15W408AS主控芯片憑借較少的外圍電路、8K閃存、512字節(jié)SRAM以及SPI總線資源,使該芯片被廣泛應(yīng)用于無(wú)線傳輸模塊中,有利于實(shí)現(xiàn)對(duì)NRF24L01無(wú)線模塊的控制,并且STC15W408AS主控芯片只要插入電源即可工作。工位呼叫器主要使用矩陣鍵盤(pán)完成目標(biāo)工位號(hào)的輸入,對(duì)于成功輸入的目標(biāo)工位號(hào),可通過(guò)LCD1602液晶顯示器完成目標(biāo)工位號(hào)及對(duì)應(yīng)工位號(hào)崗位的顯示。為了保證搬運(yùn)機(jī)器人能夠準(zhǔn)確地根據(jù)坐標(biāo)實(shí)現(xiàn)路徑規(guī)劃,利用STC15單片機(jī)將采集信息譯碼成搬運(yùn)機(jī)器人可識(shí)別的坐標(biāo),最后將譯碼完成的坐標(biāo)數(shù)據(jù)發(fā)送至無(wú)線傳輸模塊,由無(wú)線傳輸模塊將坐標(biāo)發(fā)送至機(jī)器人。

3 基于單片機(jī)STM32的搬運(yùn)機(jī)器人控制系統(tǒng)軟件設(shè)計(jì)

3.1 搬運(yùn)機(jī)器人軟件控制系統(tǒng)總體設(shè)計(jì)

搬運(yùn)機(jī)器人的控制系統(tǒng)主要由主程序進(jìn)行控制,其運(yùn)作流程為:首先應(yīng)對(duì)系統(tǒng)內(nèi)部各個(gè)模塊以及用到的芯片進(jìn)行初始化設(shè)置;其次,初始化完成后,將無(wú)線遙控部分設(shè)置為紅燈模式,并通過(guò)AD轉(zhuǎn)換實(shí)現(xiàn)對(duì)搬運(yùn)機(jī)器人舵機(jī)轉(zhuǎn)動(dòng)角度以及電機(jī)轉(zhuǎn)速的控制,該操作屬于無(wú)線循環(huán)過(guò)程,直至所有物品搬運(yùn)完畢后,用戶可通過(guò)控制系統(tǒng)讓機(jī)器人回歸到初始位置,使機(jī)器人處于待機(jī)狀態(tài)。其中,初始化設(shè)置指的是對(duì)時(shí)鐘、I/O接口、PS2無(wú)線遙控以及各個(gè)定時(shí)器等設(shè)備的配置。為了實(shí)現(xiàn)對(duì)控制系統(tǒng)主控板的整體控制,在主控電路中配置了PWM模式定時(shí)器,該定時(shí)器主要通過(guò)改變占空比,實(shí)現(xiàn)脈寬調(diào)制,從而達(dá)到控制主控板的目的,搬運(yùn)機(jī)器人控制系統(tǒng)主程序流程如圖2所示[4]。

3.2 搬運(yùn)機(jī)器人控制系統(tǒng)定時(shí)器配置程序

定時(shí)器的配置流程為:首先完成對(duì)結(jié)構(gòu)體的定義,并配置定時(shí)器的周期參數(shù)以及分頻參數(shù),各項(xiàng)參數(shù)均配置完畢后,對(duì)定時(shí)器的運(yùn)作模式進(jìn)行選擇,最后使各項(xiàng)參數(shù)可通過(guò)PWM波通道完成輸出。對(duì)定時(shí)器進(jìn)行初始化時(shí),需要對(duì)void setup_dj_timer(void)函數(shù)進(jìn)行配置,通過(guò)該函數(shù)即可配置一個(gè)向上計(jì)數(shù)的PWM波,由PWM波完成參數(shù)的傳輸。

3.3 搬運(yùn)機(jī)器人控制系統(tǒng)GPIO電平反轉(zhuǎn)程序

GPIO電平反轉(zhuǎn)程序在控制系統(tǒng)中主要負(fù)責(zé)對(duì)機(jī)器人舵機(jī)轉(zhuǎn)向進(jìn)行控制,在控制舵機(jī)的正轉(zhuǎn)和反轉(zhuǎn)過(guò)程中,可利用void tb_gpio_init(void)函數(shù)作為核心函數(shù),通過(guò)switch語(yǔ)句中12個(gè)不同分支的case語(yǔ)句中的任意兩句,即可完成對(duì)機(jī)器人舵機(jī)電平狀態(tài)的整體控制。若控制過(guò)程中出現(xiàn)舵機(jī)占空比的數(shù)值傳遞給定時(shí)器中的預(yù)裝載值時(shí),可利用PS2手柄上的按鍵對(duì)占空比進(jìn)行改變,使占空比對(duì)應(yīng)的舵機(jī)產(chǎn)生轉(zhuǎn)動(dòng),從而達(dá)到控制搬運(yùn)機(jī)器人各個(gè)舵機(jī)的目的,有利于實(shí)現(xiàn)對(duì)物品的搬動(dòng)。

3.4 搬運(yùn)機(jī)器人控制系統(tǒng)無(wú)線通信模塊程序

無(wú)線通信模塊程序的運(yùn)作流程為:首先完成該模塊端口的初始化;其次利用void setup_ps2(void)函數(shù)建立機(jī)器人控制系統(tǒng)內(nèi)部主板與手柄之間的通信,通信建立成功后,對(duì)PS2手柄進(jìn)行初始化配置。由于PS2手柄包含兩種工作模式:紅燈、綠燈,為此本文經(jīng)過(guò)對(duì)比分析,最終選用紅燈工作模式完成搬運(yùn)機(jī)器人控制系統(tǒng)的無(wú)線通信功能。PS2手柄采用紅燈工作模式時(shí),利用void loop_ps2_data(void)函數(shù)對(duì)手柄上的數(shù)據(jù)進(jìn)行讀取,讀取過(guò)程為循環(huán)狀態(tài),數(shù)據(jù)讀取完畢后,向主機(jī)發(fā)送命令,由下位機(jī)接收命令并返回?cái)?shù)據(jù),主機(jī)可對(duì)返回的數(shù)據(jù)進(jìn)行處理,將得到的兩次按鍵值進(jìn)行對(duì)比,即可判斷是否產(chǎn)生動(dòng)作[5]。

3.5 搬運(yùn)機(jī)器人控制系統(tǒng)工位呼叫器軟件程序

3.5.1 呼叫器鍵盤(pán)與顯示程序

對(duì)搬運(yùn)機(jī)器人控制系統(tǒng)的呼叫器鍵盤(pán)與顯示程序進(jìn)行設(shè)計(jì)時(shí),首先應(yīng)對(duì)液晶顯示模塊進(jìn)行初始化,并通過(guò)P3口的8個(gè)引腳對(duì)呼叫器鍵盤(pán)進(jìn)行掃描,掃描完畢后即可確定按鍵碼。若判斷存在按鍵按下,則單片機(jī)讀回的P3口數(shù)值不等于0×F0,該數(shù)值即可確定第幾行被按下。將P3口數(shù)值設(shè)置為0×F0,利用單片機(jī)對(duì)P3口數(shù)值進(jìn)行判斷,若其數(shù)值不等于0×F0,可確定第幾列被按下。綜合行與列的數(shù)值,即可獲取按鍵碼,最后通過(guò)液晶顯示器LCD1602顯示該數(shù)字。呼叫器鍵盤(pán)與顯示程序流程如圖3所示。

3.5.2 呼叫器無(wú)線發(fā)送程序

呼叫器無(wú)線發(fā)送程序主要建立于SPI總線協(xié)議上進(jìn)行,其發(fā)送流程為:首先對(duì)NRF24L01無(wú)線模塊進(jìn)行初始化,將初始化數(shù)據(jù)發(fā)送至TX_BUF,對(duì)呼叫器無(wú)線發(fā)送程序的發(fā)送模式進(jìn)行設(shè)置,若數(shù)據(jù)成功發(fā)送,即可清除FIFO;若數(shù)據(jù)發(fā)送失敗,則返回上一級(jí),重新發(fā)送數(shù)據(jù),直至發(fā)送完成后停止操作。數(shù)據(jù)發(fā)送過(guò)程中,需要CE=1的持續(xù)時(shí)間為10 μs,持續(xù)130 μs后啟動(dòng)發(fā)射,數(shù)據(jù)發(fā)送結(jié)束后,CNS=1關(guān)閉使能,呼叫器無(wú)線發(fā)送模塊自動(dòng)轉(zhuǎn)為接收模式,等待應(yīng)答信號(hào)。

4 結(jié)語(yǔ)

為提升生產(chǎn)線的工作效率,本文設(shè)計(jì)了一種基于單片機(jī)STM32的搬運(yùn)機(jī)器人控制系統(tǒng),該控制系統(tǒng)將人類(lèi)手臂的分關(guān)節(jié)靈活彎曲工作特點(diǎn)作為主要依據(jù),建立核心結(jié)構(gòu)為六自由度的關(guān)節(jié)型機(jī)械臂,選用XD-201型號(hào)的紅外循跡傳感器對(duì)路徑進(jìn)行識(shí)別,通過(guò)機(jī)械臂有利于提高搬運(yùn)機(jī)器人的整體靈活性與物品搬運(yùn)的精準(zhǔn)度。該搬運(yùn)機(jī)器人控制系統(tǒng)不僅能夠替代人工模式進(jìn)行高危環(huán)境下的搬運(yùn)作業(yè),而且能夠通過(guò)智能化的操作節(jié)約生產(chǎn)線工作成本,在工業(yè)生產(chǎn)領(lǐng)域有一定的實(shí)用價(jià)值。

參考文獻(xiàn)

[1]王媛媛,劉海龍,蔡逸鋒.基于單片機(jī)的吸附式倉(cāng)儲(chǔ)搬運(yùn)機(jī)器人研發(fā)[J].機(jī)電信息,2020(5):85,88.

[2]汪凱,施立群,張明月.搬運(yùn)機(jī)器人的無(wú)線遙控裝置設(shè)計(jì)與實(shí)現(xiàn)[J].自動(dòng)化技術(shù)與應(yīng)用,2016(6):61-63.

[3]王耀華.吳國(guó)慶.功能性運(yùn)動(dòng)鞋設(shè)計(jì)研究進(jìn)展[J].中國(guó)皮革,2018(11):49-53.

[4]BOEK PAVOL,NIKITIN YURY.The development of an optimally-tuned PID control for the actuator of a transport robot[J].Actuators,2021(10):195.

[5]張高美,羅冠益,董兵兵.超市搬運(yùn)機(jī)器人發(fā)展前景研究[J].中國(guó)設(shè)備工程,2021(4):25-26.

(編輯 李春燕)

猜你喜歡
STM32單片機(jī)
基于STM32單片機(jī)的脈沖信號(hào)參數(shù)高精度測(cè)試儀
科技資訊(2017年3期)2017-03-25 01:42:48
基于STM32芯片的移動(dòng)機(jī)器人的避障研究
基于單片機(jī)的灌裝生產(chǎn)線成品率計(jì)算裝置設(shè)計(jì)
基于STM32的兩輪自平衡遙控小車(chē)設(shè)計(jì)
科技視界(2016年26期)2016-12-17 08:35:54
基于STM32單片機(jī)的智能手環(huán)設(shè)計(jì)與實(shí)現(xiàn)
基于STM32單片機(jī)的數(shù)碼相框顯示系統(tǒng)設(shè)計(jì)
基于STM32的多旋翼無(wú)人機(jī)超聲波測(cè)距系統(tǒng)
試論STM32單片機(jī)在室內(nèi)環(huán)境監(jiān)測(cè)系統(tǒng)中的運(yùn)用
STM32單片機(jī)原理及硬件電路設(shè)計(jì)研究
STM32單片機(jī)的高精度超聲波測(cè)距系統(tǒng)的設(shè)計(jì)
拉萨市| 巴马| 千阳县| 达拉特旗| 布尔津县| 嘉鱼县| 洪洞县| 宣汉县| 新和县| 兴山县| 永善县| 无极县| 石门县| 广汉市| 扬中市| 石首市| 峨眉山市| 禄丰县| 改则县| 长宁县| 普宁市| 丹凤县| 佛山市| 南安市| 乌兰察布市| 运城市| 正定县| 剑川县| 东明县| 正宁县| 梧州市| 宁晋县| 博兴县| 阿克陶县| 东港市| 滕州市| 青冈县| 江永县| 隆回县| 鹤山市| 胶州市|