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

?

智能多路徑圖書分揀機(jī)器人設(shè)計(jì)

2020-12-10 07:22成鳳敏張學(xué)輝
唐山學(xué)院學(xué)報(bào) 2020年6期
關(guān)鍵詞:舵機(jī)程序設(shè)計(jì)單片機(jī)

成鳳敏,張學(xué)輝

(唐山學(xué)院 智能與信息工程學(xué)院,河北 唐山 063000)

0 引言

一家擁有眾多借閱者的圖書館,每天會有大量的圖書出借和歸還,由于人工難以將歸還的圖書快速歸放原位,使得圖書堆積,無法有效利用,既不利于圖書的整備,也不方便讀者借閱。因此,為實(shí)現(xiàn)圖書快速歸位,設(shè)計(jì)了一種智能多路徑圖書分揀系統(tǒng)來代替人工進(jìn)行分揀工作,此系統(tǒng)通過圖像掃描進(jìn)行圖書種類識別,并利用無線傳輸模塊實(shí)現(xiàn)上位機(jī)與下位機(jī)之間的數(shù)據(jù)交互,借助機(jī)械臂快速有序地完成圖書的歸架整理工作。

1 方案設(shè)計(jì)

系統(tǒng)包括以掃描槍為主體的識別部分和以控制單片機(jī)為核心的機(jī)器人分揀部分,系統(tǒng)中用到兩個(gè)單片機(jī),分別為處理分析掃描數(shù)據(jù)的掃描單片機(jī)和控制機(jī)械臂動作的控制單片機(jī)。系統(tǒng)框架如圖1所示。

圖1 系統(tǒng)框架圖

識別部分包括掃描槍、掃描單片機(jī)和無線發(fā)送模塊。掃描槍掃描圖書上的6位條形碼獲取圖書信息,通過MAX232進(jìn)行編譯并傳入掃描單片機(jī),掃描單片機(jī)將信息編譯成無線傳輸模塊能夠識別的信號,再通過無線發(fā)送模塊轉(zhuǎn)發(fā)至機(jī)器人分揀部分,完成識別與分揀兩部分之間的通信。

機(jī)器人分揀部分包括電機(jī)驅(qū)動模塊、超聲波測距模塊、光電傳感器、無線接收模塊、控制單片機(jī)和機(jī)械臂。無線接收模塊接收識別部分發(fā)送來的信號,并傳給控制單片機(jī),之后控制單片機(jī)向機(jī)械臂發(fā)出信號,直接驅(qū)動機(jī)械臂上的3個(gè)舵機(jī),對目標(biāo)圖書進(jìn)行抓取。抓取圖書后,控制單片機(jī)向電機(jī)驅(qū)動模塊發(fā)出信號,使電機(jī)和兩個(gè)尋跡模塊啟動。機(jī)器人沿規(guī)劃軌跡行駛,同時(shí)超聲波測距模塊啟動,在前進(jìn)過程中不斷檢測并及時(shí)避障。當(dāng)尋跡模塊檢測到目標(biāo)地點(diǎn)的標(biāo)記物時(shí),機(jī)械臂停止前進(jìn),并將抓取的圖書放下。

2 硬件系統(tǒng)設(shè)計(jì)

2.1 無線傳輸模塊設(shè)計(jì)

無線傳輸模塊作為系統(tǒng)的通信中樞,可將識別部分與機(jī)器人分揀部分進(jìn)行有效的連接。目前的分揀系統(tǒng)由于受硬件和軟件的諸多限制,在使用上都是一臺上位機(jī)單獨(dú)控制一個(gè)分揀機(jī)器人。要實(shí)現(xiàn)一臺上位機(jī)控制多個(gè)機(jī)器人完成所有工作和總分配,需要用到無線傳輸模塊。

無線傳輸模塊選用低功耗設(shè)計(jì)的NRF24L01,工作在發(fā)射模式下發(fā)射功率為10 dBm時(shí)電流消耗為11.3 mA,接收模式下電流消耗為12.3 mA,掉電模式和待機(jī)模式下電流消耗更低。

無線傳輸模塊采用串口型,由USB轉(zhuǎn)TTL模塊轉(zhuǎn)接到電腦上,通過電腦的串口助手讀取無線傳輸模塊上的信息,這有助于對無線傳輸模塊的信息進(jìn)行調(diào)試。NRF24L01的RXD引腳連接USB轉(zhuǎn)TTL模塊的2引腳和單片機(jī)TxD/P3.1端口,USB轉(zhuǎn)TTL模塊的3引腳連接單片機(jī)RxD/P3.0端口。

2.2 機(jī)械臂控制系統(tǒng)設(shè)計(jì)

在機(jī)械臂控制系統(tǒng)中,利用單片機(jī)控制機(jī)械臂完成抓取圖書的動作。控制機(jī)械臂的舵機(jī)有3個(gè),編號為1號、2號、3號,在機(jī)械臂上由上至下放置,采用并聯(lián)方式依次相連,3個(gè)舵機(jī)之間相互配合,準(zhǔn)確地抓取目標(biāo)圖書,完成抓取收納任務(wù)。最上面的1號舵機(jī),控制抓物鉗的張開和收攏;中間的2號舵機(jī),調(diào)整抓物鉗的水平位置,便于抓取目標(biāo)圖書;最下方的3號舵機(jī),調(diào)整舵機(jī)的水平方向。連接3個(gè)舵機(jī)的每條控制線都在單片機(jī)上有所對應(yīng),舵機(jī)直接與單片機(jī)連接,便于電信號處理。將機(jī)械臂控制端口置于單片機(jī)的一側(cè)整齊排列,有利于接線和電信號的傳輸,且不易和其他電路串聯(lián)。3個(gè)舵機(jī)的電源和地線連接在一起,由單片機(jī)的電源統(tǒng)一供電,這樣有利于檢測出在機(jī)械臂上所出現(xiàn)的各種問題。

2.3 電機(jī)驅(qū)動模塊設(shè)計(jì)

選用L298N作為4個(gè)電機(jī)的驅(qū)動模塊,L298N內(nèi)部包含4通道邏輯驅(qū)動電路,是一種二相和四相電機(jī)的專用驅(qū)動器,內(nèi)含雙H橋電機(jī)驅(qū)動芯片,其中每個(gè)H橋可提供2 A的電流,功率部分的供電電壓范圍是2.5~4.8 V,邏輯部分為5 V供電,接受TTL電平[1]。

驅(qū)動模塊的4個(gè)端口IN1-IN4與單片機(jī)的P1.0-P1.3端口一一連接,用來接收單片機(jī)上的電信號。為了維持電信號的穩(wěn)定,提升單片機(jī)所輸出的信號電壓,在連線中增加上拉電阻A102J。另外,為了防止電機(jī)在運(yùn)行過程中因電壓問題出現(xiàn)不同步現(xiàn)象,對L298N采取單獨(dú)供電。

2.4 超聲波測距模塊設(shè)計(jì)

超聲波測距模塊用于機(jī)器人在行進(jìn)過程中檢測前方是否有障礙物,做到有效避障。通過發(fā)送和接收超聲波,利用時(shí)間差和聲音傳播速度,計(jì)算出模塊到前方障礙物的距離[2]。設(shè)超聲波脈沖由傳感器發(fā)出到接收所經(jīng)歷的時(shí)間為t,超聲波在空氣中的傳播速度為c,則從傳感器到目標(biāo)物體的距離D可用D=ct/2求出[3]。

3 程序設(shè)計(jì)

程序設(shè)計(jì)分模塊進(jìn)行,主要包括三部分:掃描程序設(shè)計(jì)、行進(jìn)程序設(shè)計(jì)和機(jī)械臂抓取程序設(shè)計(jì)。

3.1 掃描程序設(shè)計(jì)

單片機(jī)接通電源后運(yùn)行主程序,主程序開啟定時(shí)器和定時(shí)中斷程序,每10 ms檢測一次所連接的引腳獲取的信號,在收到信號后單片機(jī)對MAX232的信號進(jìn)行讀取,并在檢測完信號后將連接的引腳信號進(jìn)行復(fù)位,防止二次檢測,也防止后面的信號無法傳輸。信號復(fù)位后單片機(jī)將信號進(jìn)行編譯,首先單片機(jī)發(fā)送啟動信號給NRF24L01,當(dāng)NRF24L01接收到啟動信號后才從單片機(jī)中接收信號,然后單片機(jī)會不斷地將信號發(fā)送給NRF24L01,同時(shí)NRF24L01將接收到的信號以無線信號直接傳送出去。

3.2 機(jī)器人行進(jìn)程序設(shè)計(jì)

電機(jī)之間性能不同,導(dǎo)致電機(jī)在相同的電壓、電流參數(shù)下轉(zhuǎn)動速度不同,如果一個(gè)電機(jī)比另一個(gè)電機(jī)轉(zhuǎn)動速度快,機(jī)器人不會走直線而是轉(zhuǎn)圈,因此需要對電機(jī)性能進(jìn)行測試,即調(diào)整驅(qū)動程序。為了讓4個(gè)電機(jī)轉(zhuǎn)動的速度為同一個(gè)數(shù)值,將電機(jī)在同電壓下進(jìn)行兩兩測試,經(jīng)過3次比較之后找到最快轉(zhuǎn)速的電機(jī),將其所供給的電壓設(shè)為一個(gè)定值20,其后所有電機(jī)的所供電壓在此基礎(chǔ)上進(jìn)行相應(yīng)的增加,然后依次和最快轉(zhuǎn)速的電機(jī)進(jìn)行兩兩測試,當(dāng)機(jī)器人能進(jìn)行直線行駛時(shí)記錄此電機(jī)的電壓,最后得出其余3個(gè)電機(jī)的供電數(shù)值。

完成4個(gè)電機(jī)的程序設(shè)計(jì)后,再對尋跡模塊進(jìn)行設(shè)計(jì)。尋跡模塊在檢測到地點(diǎn)標(biāo)記物黑線時(shí)會變?yōu)榈碗娖捷敵觥纹瑱C(jī)內(nèi)啟用定時(shí)器對各引腳電信號進(jìn)行檢測,當(dāng)檢測到對應(yīng)引腳達(dá)到低電平時(shí),說明機(jī)器人前端的一側(cè)檢測到黑線,此時(shí)如果加快反向側(cè)的電機(jī)轉(zhuǎn)速,可使機(jī)器人快速脫離黑線。但是當(dāng)機(jī)器人運(yùn)行速度過快,很容易在檢測時(shí)來不及反應(yīng)而直接沖出軌道,同樣在轉(zhuǎn)彎的時(shí)候也容易在持續(xù)的加速中沖出軌道,找不到繼續(xù)行進(jìn)的路線,因此在程序設(shè)計(jì)時(shí)沒有加快反向側(cè)的電機(jī)轉(zhuǎn)速,而是減慢了所有電機(jī)的轉(zhuǎn)速,并且將檢測到黑線那一側(cè)電機(jī)的轉(zhuǎn)速再次減慢,形成更大的速度差來達(dá)到相同的效果,這樣保證了機(jī)器人在偏離軌道或者轉(zhuǎn)彎時(shí)能夠平穩(wěn)行進(jìn),提高了容錯(cuò)率。機(jī)器人行進(jìn)程序流程如圖2所示。

圖2 機(jī)器人行進(jìn)程序流程圖

3.3 機(jī)械臂抓取程序設(shè)計(jì)

機(jī)械臂抓取動作需要驅(qū)動機(jī)械臂上的3個(gè)舵機(jī)進(jìn)行轉(zhuǎn)動,因此需要單片機(jī)的3個(gè)引腳對其進(jìn)行控制。單片機(jī)對舵機(jī)持續(xù)發(fā)送電信號,使舵機(jī)不停地轉(zhuǎn)動,當(dāng)信號中斷時(shí),舵機(jī)停止轉(zhuǎn)動,使機(jī)械臂固定在某位置。

3個(gè)舵機(jī)的轉(zhuǎn)動角度和轉(zhuǎn)速是固定的,在設(shè)計(jì)時(shí)將機(jī)械臂的轉(zhuǎn)動時(shí)間調(diào)到極限,將機(jī)械臂先轉(zhuǎn)動到一個(gè)極限位置進(jìn)行復(fù)位,然后再進(jìn)行轉(zhuǎn)動,轉(zhuǎn)動一定角度時(shí)停止,這樣就很容易達(dá)到指定位置。

當(dāng)3個(gè)舵機(jī)調(diào)整角度的程序完成后,在運(yùn)行程序時(shí)將3個(gè)舵機(jī)的運(yùn)行順序分開,依次運(yùn)行。先運(yùn)行3號舵機(jī)程序完成機(jī)械臂水平轉(zhuǎn)動角度,然后運(yùn)行2號舵機(jī)程序調(diào)整機(jī)械臂上下距離,最后運(yùn)行1號舵機(jī)程序使鉗子張開或收縮進(jìn)行抓取,然后2號舵機(jī)再抬高抓頭,完成收納動作。機(jī)械臂抓取程序流程如圖3所示。

圖3 機(jī)械臂抓取程序流程圖

4 結(jié)論

智能分揀機(jī)器人采用靜態(tài)卸載,只要圖書電子標(biāo)簽的信息正確,即可實(shí)現(xiàn)分揀零差錯(cuò)率。與人工分揀相比,智能分揀機(jī)器人不僅省時(shí)省力,而且還具有分揀差錯(cuò)小、可靠性高和拓展性強(qiáng)等優(yōu)點(diǎn),同時(shí)系統(tǒng)電路結(jié)構(gòu)簡單,成本低。因此,具有廣泛的應(yīng)用前景。

猜你喜歡
舵機(jī)程序設(shè)計(jì)單片機(jī)
醫(yī)學(xué)專業(yè)“Python程序設(shè)計(jì)”課程教學(xué)改革總結(jié)與思考
基于Visual Studio Code的C語言程序設(shè)計(jì)實(shí)踐教學(xué)探索
基于單片機(jī)的SPWM控制逆變器的設(shè)計(jì)與實(shí)現(xiàn)
基于單片機(jī)的層次漸變暖燈的研究
基于單片機(jī)的多功能智能插排
從細(xì)節(jié)入手,談PLC程序設(shè)計(jì)技巧
基于單片機(jī)的便捷式LCF測量儀
基于dsPIC單片機(jī)的飛艇舵機(jī)控制實(shí)現(xiàn)
高職高專院校C語言程序設(shè)計(jì)教學(xué)改革探索
超音速舵機(jī)保護(hù)器
维西| 华亭县| 江源县| 九台市| 万盛区| 沭阳县| 林周县| 石狮市| 宁晋县| 延吉市| 神木县| 巩留县| 南安市| 诏安县| 新郑市| 河源市| 辉县市| 红安县| 泰和县| 当涂县| 泉州市| 洛阳市| 平顺县| 吴旗县| 邵东县| 呼伦贝尔市| 女性| 柘城县| 南皮县| 凤凰县| 西盟| 漳浦县| 大埔区| 巢湖市| 陆河县| 丹凤县| 沭阳县| 兰溪市| 扬州市| 女性| 彭阳县|