亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        碼垛機(jī)器人機(jī)械臂仿真控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

        2016-04-12 00:00:00常宏斌
        現(xiàn)代電子技術(shù) 2016年19期

        摘 要: 隨著科技的飛速發(fā)展,企業(yè)的生產(chǎn)能力大幅提高,傳統(tǒng)的人工碼垛已經(jīng)不能滿足企業(yè)對物流的需求,碼垛機(jī)器人技術(shù)應(yīng)運(yùn)而生。高效率的碼垛能夠大大節(jié)省物流時間,提高工作效率。系統(tǒng)利用四軸碼垛機(jī)械臂仿真控制軟件實(shí)際控制一臺小型的關(guān)節(jié)型四軸碼垛機(jī)械臂。機(jī)械臂利用舵機(jī)作為執(zhí)行元件,DSP作為控制器控制舵機(jī)運(yùn)動。仿真控制軟件根據(jù)規(guī)劃的路徑計(jì)算出碼垛過程中舵機(jī)運(yùn)行的角度,通過串口通信將角度數(shù)據(jù)傳遞給DSP,DSP控制舵機(jī)的運(yùn)行并帶動碼垛機(jī)械臂實(shí)現(xiàn)碼垛功能。

        關(guān)鍵詞: 四軸碼垛機(jī)械臂; OpenGL; DSP; MFC

        中圖分類號: TN876?34; TM417 文獻(xiàn)標(biāo)識碼: A 文章編號: 1004?373X(2016)19?0174?05

        Abstract: With the rapid development of technology, the production capacity of enterprises is increased substantially. The traditional manual palletizing can′t meet the logistics demand of enterprises, so the palletizing robot technology comes into being. The efficient palletizing can save logistics time and improve working efficiency greatly. The simulation control software of four?axis palletizing robot arm is used to control a small four?axis palletizing robot arm with joints. The servo is taken as the actuator of four?axis palletizing robot arm, and DSP is taken as the controller to control the servo moving. The simulation control software is used to calculate the angle of servo moving in palletizing process according to the planning route, and pass the angle data to DSP through the serial ports. The DSP can control servo running and drive the palletizing robot arm for palletizing function realization.

        Keywords: four?axis palletizing robot arm; OpenGL; DSP; MFC

        0 引 言

        人工碼垛存在效率較低,浪費(fèi)大量人力資源,機(jī)械地重復(fù)性勞動損害身體健康等缺點(diǎn)。碼垛機(jī)器人技術(shù)集許多學(xué)科于一體,包括機(jī)械、信息、電子、計(jì)算機(jī)科學(xué)、智能技術(shù)等[1],它在提高勞動生產(chǎn)效率、解決勞動力不足、降低工人勞動強(qiáng)度、改善生產(chǎn)環(huán)境、降低生產(chǎn)成本等方面具有重要意義。

        本文主要研究了關(guān)節(jié)型四軸碼垛機(jī)械臂,利用MFC應(yīng)用程序平臺設(shè)計(jì)了一款四軸碼垛機(jī)械臂的控制軟件,通過OpenGL三維函數(shù)庫繪制碼垛機(jī)械臂的三維圖形。軟件有友好的交互界面,操作者通過輸入碼垛的基本信息,如碼垛層數(shù)、每層的碼垛方式、碼垛數(shù)量、物塊大小信息、碼盤放置位置等數(shù)據(jù),軟件就會設(shè)計(jì)好機(jī)械臂的運(yùn)動路徑和操作方式,并以三維動畫的形式對碼垛過程進(jìn)行演示,讓操作者方便地了解機(jī)械臂的運(yùn)行情況,并做出判斷是否需要修改數(shù)據(jù)。同時軟件還可以把每個關(guān)節(jié)轉(zhuǎn)動的角度以串口傳輸?shù)姆绞絺鬟f給機(jī)械臂的控制器DSP,控制碼垛機(jī)械臂上的5個舵機(jī)旋轉(zhuǎn),完成碼垛過程。5個舵機(jī)分別控制了機(jī)械臂底座、下臂、上臂、腕部的旋轉(zhuǎn)以及末端夾持器的開合。

        1 四軸碼垛機(jī)械臂仿真控制軟件設(shè)計(jì)

        為了用戶能夠方便地操作軟件,仿真控制軟件在設(shè)計(jì)時采用了多個界面輸入的操作方式。軟件模擬了一個四軸碼垛機(jī)械臂碼垛的過程,通過設(shè)定碼垛的參數(shù)和碼放的方式,軟件規(guī)劃出碼垛路徑,把貨物從流水線上按碼垛路徑碼放到托盤上。 軟件共分為五個部分:定義工作區(qū)域、定義工作臺、設(shè)定碼垛方式、設(shè)定運(yùn)動路徑和動畫演示。

        1.1 功能選擇界面

        功能選擇界面是基于對話框資源創(chuàng)建的,5個功能選項(xiàng)分別調(diào)用了5個按鈕控件。四軸碼垛機(jī)械臂仿真控制軟件共調(diào)用了13個對話框資源,通過這些對話框資源使得軟件變得友好、易操作。對話框是重要的用戶界面元素之一,是用戶交互的重要手段。對話框在創(chuàng)建后可以通過控件編輯器添加各種控件,包括編輯框、滑動條、靜態(tài)文本、按鈕等,這些控件在程序運(yùn)行過程中可用于捕捉用戶的輸入信息或數(shù)據(jù),每個控件都可以添加消息響應(yīng)函數(shù),便于優(yōu)化用戶體驗(yàn)。這些控件的使用使得仿真控制軟件界面更加方便操作,不再需要程序設(shè)計(jì)人員進(jìn)行操作,或?qū)Σ僮魅藛T進(jìn)行復(fù)雜的培訓(xùn),經(jīng)過簡單的說明介紹,普通用戶也可以方便的使用。

        1.2 物體拖拽功能實(shí)現(xiàn)

        在設(shè)定工作臺界面中實(shí)現(xiàn)了物塊拖拽的功能。為了確定物塊在碼盤上的起始位置,可以將流水線上的物塊模型用鼠標(biāo)左鍵拖拽到碼盤上,再利用碼垛設(shè)置對話框?qū)Υa盤起始點(diǎn)進(jìn)行微調(diào)。 物塊拖拽功能實(shí)際上就是物塊隨著鼠標(biāo)的移動而重畫的過程。主要在函數(shù)OnMouseMove(UINT nFlags, CPoint point)中實(shí)現(xiàn),當(dāng)鼠標(biāo)移動時程序就會調(diào)用這個函數(shù) 。函數(shù)有兩個參數(shù)值,nFlags代表各種虛擬按鍵是否按下 ,此參數(shù)可以是任何下列值:

        MK_CONTROL 當(dāng)CTRL鍵按下時;

        MK_LBUTTON當(dāng)鼠標(biāo)左鍵按下時;

        MK_MBUTTON當(dāng)鼠標(biāo)中鍵按下時;

        MK_RBUTTON當(dāng)鼠標(biāo)右鍵按下時;

        MK_SHIFT當(dāng)SHIFT按下時。

        另一個參數(shù)point,是鼠標(biāo)的坐標(biāo),point.x代表[x]方向坐標(biāo),point.y代表[y]方向坐標(biāo),這個坐標(biāo)是鼠標(biāo)距離截獲該消息的窗口左上角的位置,是一個相對位置而不是在屏幕像素上的絕對位置,因此在使用時要注意將坐標(biāo)位置和像素進(jìn)行轉(zhuǎn)換。在程序中獲得鼠標(biāo)的坐標(biāo)信息以后,在畫圖函數(shù)OnPaint()中對物塊圖形進(jìn)行重繪,就會顯示出物塊被鼠標(biāo)拖拽的效果。

        1.3 設(shè)定碼垛方式界面

        碼垛方式界面設(shè)計(jì)圖如圖2所示,分為左右兩部分。左側(cè)界面的下方是托盤的俯視圖,上方是層數(shù)、旋轉(zhuǎn)角度編輯框,以及預(yù)覽添加按鈕。右側(cè)界面是托盤的前視圖。在左側(cè)頁面上的層數(shù)編輯框單擊下拉菜單,從第一層到最高層,選擇需要碼垛的層數(shù),這里的碼垛層數(shù)信息是由定義工作區(qū)界面設(shè)定的,每設(shè)置完一層的碼垛信息后就順序選擇下一層。然后雙擊界面左側(cè)托盤上方的示例物塊,第一個物塊就會自動出現(xiàn)在“設(shè)置工作區(qū)域”界面在托盤上設(shè)置好的初始位置上,在托盤上單擊鼠標(biāo)右鍵,在出現(xiàn)的對話框里選擇需要碼放物塊的個數(shù),即長×寬的個數(shù),并可以選擇正向碼放還是旋轉(zhuǎn)90°后縱向碼放,選擇好后單擊確定鍵,相應(yīng)個數(shù)的物塊就會出現(xiàn)在托盤里。想要在這一層繼續(xù)碼放物塊的話,就一直按住鼠標(biāo)左鍵把示例物塊拖拽到托盤上任何想要擺放的位置,然后放開鼠標(biāo)左鍵并單擊右鍵,在出現(xiàn)的對話框里選擇要碼放物塊的個數(shù)。重復(fù)操作上面的信息直至確定好一層要碼放的物塊,最后單擊添加按鈕,該層碼放的所有物塊會以前視圖的方式添加到右側(cè)頁面的托盤里。選擇下一個碼垛的層數(shù),重復(fù)之前的操作,直至完成所有層數(shù)的物塊設(shè)置。單擊預(yù)覽按鈕,右側(cè)界面的托盤上會出現(xiàn)碼放整齊的每一層的物塊的擺放方式,操作者可以直觀地觀測到產(chǎn)品碼放后的方式,方便操作者進(jìn)行修改或下一步操作。

        圖2為兩層碼垛的操作,第一層放置了6個物塊,其中2[×]2個物塊正向碼放,2[×]1個物塊旋轉(zhuǎn)90°縱向碼放,第二層放置了4個物塊,以2[×]2的方式正向碼放。在單擊預(yù)覽按鈕后,右側(cè)屏幕顯示了兩層碼垛的示意圖。

        設(shè)定碼垛方式界面對對話框窗口進(jìn)行分割。當(dāng)用戶需要同時對窗口的不同部分進(jìn)行編輯時常常會用到切分窗口。切分窗口分為動態(tài)切分窗口和靜態(tài)切分窗口,本文選擇的是靜態(tài)切分窗口的方式。 窗口分割的程序?qū)懺诖翱趧?chuàng)建函數(shù)OnCreate()中,調(diào)用CreateStatic()函數(shù)產(chǎn)生靜態(tài)切分。調(diào)用 CreateView()函數(shù)產(chǎn)生每個視圖窗口。

        1.4 設(shè)定運(yùn)動路徑界面

        在前面的設(shè)計(jì)中,流水線的位置和高度、碼盤的位置和高度以及物塊擺放的位置、物塊碼放的方式和順序已經(jīng)確定,但碼垛機(jī)械臂的運(yùn)動路徑還沒有確定。設(shè)定運(yùn)動路徑界面就是為了確定四軸碼垛機(jī)械臂碼放產(chǎn)品的運(yùn)動過程。設(shè)定運(yùn)動路徑界面設(shè)置圖如圖3所示。機(jī)械臂碼垛過程共有六個運(yùn)動步驟,如下所示:

        (1) 四軸碼垛機(jī)械臂運(yùn)動到流水線上物塊的位置,打開末端夾持器,然后閉合夾持器從流水線拾取物塊。

        (2) 四軸碼垛機(jī)械臂用末端夾持器抬起物塊,運(yùn)動到流水線正上方某位置,停頓1 s。

        (3) 四軸碼垛機(jī)械臂用末端夾持器抓住物塊,從流水線上方移動到物塊要碼放在碼盤位置的正上方,停頓1 s。

        (4) 四軸碼垛機(jī)械臂移動到托盤要碼放物塊的位置,打開末端夾持器把物塊放到托盤上。

        (5) 四軸碼垛機(jī)械臂打開夾持器空載到托盤正上方,閉合末端夾持器。

        (6) 四軸碼垛機(jī)械臂空載移動到流水線正上方。完成一次碼垛流程,然后重復(fù)這六個運(yùn)動步驟。

        設(shè)定運(yùn)動路徑界面的左側(cè)有一個路徑示意圖,示意的就是四軸碼垛機(jī)械臂碼垛過程所經(jīng)歷的6個位置,按照1?2?3?4?5?6?1的順序循環(huán)反復(fù)。位置1是流水線上物塊的位置,位置2和位置6是流水線的上方,位置3和位置5在舵盤的上方,位置4是舵盤上物塊要擺放的位置。根據(jù)前三個功能界面的設(shè)置,位置1和位置4的坐標(biāo)已經(jīng)確定,通過設(shè)定運(yùn)動路徑界面可以確定其他四個位置的[y]方向坐標(biāo),[x]方向坐標(biāo)和[z]方向坐標(biāo),默認(rèn)和位置1或位置4相同,即位置3,5在位置1的正上方,位置2,6在位置4的正上方,但距離可以設(shè)定。設(shè)定方式在界面的左側(cè),有四個編輯框分別對應(yīng)著位置2,3,5,6的[y]方向坐標(biāo),仿真控制軟件默認(rèn)設(shè)置距離為1個單位,通過編輯框右側(cè)的+,-按鈕可以對幾個位置的[y]坐標(biāo)進(jìn)行增加或降低的修改。修改完成后退出界面,確定了四軸碼垛機(jī)械臂的完整碼垛路徑。

        2 四軸碼垛機(jī)械臂硬件設(shè)計(jì)

        2.1 DSP程序的編譯

        DSP控制程序主要涉及定時器中斷和串口通信兩部分。舵機(jī)的控制信號是周期為20 ms,頻率為50 Hz的PWM波,占空比在2.5%~12.5%之間。飛思卡爾mc56f8013型DSP擁有6路PWM通道,但可以輸出PWM波的最小頻率值高于50 Hz,因此選擇定時器中斷的方式產(chǎn)生PWM波。 首先設(shè)定一個10 μs的定時器,定時器中斷2 000次就是10 μs×2 000=20 ms,也就是舵機(jī)控制信號的一個周期。當(dāng)定時器中斷的前1 000次,控制輸出端口輸出高電平,定時器中斷的后1 000次,輸出端口輸出低電平時,就產(chǎn)生了一個占空比為50%的PWM波,當(dāng)改變輸出高電平和輸出低電平的中斷次數(shù)時,PWM波的占空比也隨之改變,舵機(jī)就會輸出不同的角度,從而帶動四軸碼垛機(jī)械臂轉(zhuǎn)動。當(dāng)高電平的中斷次數(shù)為50次時,此時的占空比為[502 000=]2.5%,舵機(jī)轉(zhuǎn)動0°;當(dāng)高電平的中斷次數(shù)為250次時,占空比為[2502 000=]12.5%,舵機(jī)轉(zhuǎn)動180°。

        在CodeWarrior平臺的專家處理模塊添加定時器的嵌入豆,定義定時器的時間為10 μs。添加5個I/O接口的嵌入豆,用于輸出5路PWM波控制舵機(jī)。添加一個串口通信的嵌入豆,接收四軸碼垛機(jī)械臂控制軟件發(fā)送的串口數(shù)據(jù),這些串口數(shù)據(jù)已經(jīng)在軟件編程中轉(zhuǎn)化成高電平的定時器中斷次數(shù),方便了DSP的編程操作。

        定時器中斷程序的流程圖如圖4所示。

        2.2 硬件電路設(shè)計(jì)

        控制器采用ms56f8013最小系統(tǒng),系統(tǒng)包含了程序傳輸、串口通信、電流驅(qū)動等基本模塊。

        其中舵機(jī)電路原理圖如圖5所示。圖中所示的是一個舵機(jī)與DSP的連接圖,舵機(jī)的控制信號線與DSP的輸出端口相連結(jié),端口輸出PWM控制信號。為了保證為舵機(jī)提供足夠大的功率,舵機(jī)和DSP分開供電。

        實(shí)驗(yàn)時采用雙路穩(wěn)壓穩(wěn)流電源為舵機(jī)和DSP分別供電。DSP最小系統(tǒng)上有電壓轉(zhuǎn)換功能,把5 V電壓轉(zhuǎn)成3.3 V為DSP芯片供電。舵機(jī)的供電電壓可選擇在4.8~6 V之間,系統(tǒng)選擇5.5 V為舵機(jī)供電。

        3 系統(tǒng)測試

        在實(shí)際運(yùn)行四軸碼垛機(jī)械臂時,首先通過下載器把在CodeWarrior IDE中編譯的DSP程序下載到DSP中,程序下載成功后,把計(jì)算機(jī)和DSP通過RS 232串口連接線連接起來,實(shí)現(xiàn)上位機(jī)和下位機(jī)的串口通信。舵機(jī)的三條線分別是電源線、地線和控制信號線,DSP的端口1到端口5分別輸出五個舵機(jī)的控制信號PWM波形,把舵機(jī)的控制信號線和DSP相應(yīng)的端口連接起來,實(shí)現(xiàn)DSP對執(zhí)行器舵機(jī)的控制。DSP和舵機(jī)分別供電,把地線相連接。上位機(jī)和下位機(jī)連接好后,開始對系統(tǒng)運(yùn)行情況進(jìn)行測試。測試內(nèi)容是四軸碼垛機(jī)械臂把一個物塊從流水線的位置碼放到托盤位置,即軟件測試中第一個物塊的碼放情況。由1.4小節(jié)可知,四軸碼垛機(jī)械臂碼放一次物塊要經(jīng)過6個位置,仿真控制軟件計(jì)算出的底座、下臂、上臂舵機(jī)在6個位置所旋轉(zhuǎn)的角度如表1所示。折線圖如圖6所示。

        四軸碼垛機(jī)械臂在運(yùn)行過程中的底座舵機(jī)控制信號圖如圖7所示。

        由舵機(jī)原理可知,高電平的時長為0.5 ms時輸出角度為0°,高電平時長為1 ms時輸出角度為45°,高電平時長為2.5 ms時輸出角度為180°。圖7是機(jī)械臂底座舵機(jī)運(yùn)行在位置3,4,5時的控制信號圖,此時舵機(jī)的旋轉(zhuǎn)角度大約為90°,信號頻率為50 Hz,符合舵機(jī)的控制要求。

        由測試可得,四軸碼垛機(jī)械臂的DSP可以通過RS 232串口通信模塊接收控制軟件傳遞的舵機(jī)角度數(shù)據(jù),同時DSP可以對舵機(jī)進(jìn)行控制,使舵機(jī)能夠按照仿真控制軟件計(jì)算的角度旋轉(zhuǎn),實(shí)現(xiàn)關(guān)節(jié)型四軸碼垛機(jī)械臂的碼垛功能。

        4 結(jié) 論

        工業(yè)機(jī)器人碼垛技術(shù)越來越受到人們的重視,它在提高生產(chǎn)效率、降低事故發(fā)生概率、改善生產(chǎn)環(huán)境等方面都有重要作用,本文完成了四軸碼垛機(jī)械臂仿真控制軟件的設(shè)計(jì)。軟件可以根據(jù)用戶輸入的產(chǎn)品信息、位置信息、碼垛方式信息等規(guī)劃好機(jī)械臂的運(yùn)動路線,利用三維動畫的方式顯示機(jī)械臂碼垛的實(shí)時過程。軟件通過串口通信模塊把機(jī)械臂碼垛過程中各個關(guān)節(jié)的角度值傳遞給DSP。機(jī)械臂系統(tǒng)采用DSP作為控制器,舵機(jī)作為機(jī)械臂的執(zhí)行機(jī)構(gòu),用DSP控制舵機(jī)運(yùn)動,實(shí)現(xiàn)四軸碼垛機(jī)械臂實(shí)物的碼垛過程。

        四軸碼垛機(jī)械臂控制系統(tǒng)基本實(shí)現(xiàn)了預(yù)期功能,可以通過軟件對機(jī)械臂系統(tǒng)進(jìn)行控制和三維動畫仿真,并且實(shí)現(xiàn)了機(jī)械臂實(shí)物的碼垛過程??梢栽诜抡婵刂栖浖袑?shí)現(xiàn)多種機(jī)械臂的整合。后期改進(jìn)可以把對其他類型機(jī)械臂的控制和仿真添加到軟件中,實(shí)現(xiàn)一款軟件對多種工業(yè)機(jī)器人的控制,使得軟件的利用率更高,使用更方便,同時也降低開發(fā)成本。

        參考文獻(xiàn)

        [1] 劉揚(yáng),高志慧,贠超,等.混聯(lián)碼垛機(jī)器人運(yùn)動學(xué)分析與仿真[J].機(jī)械與電子,2010(3):57?60.

        [2] 張?jiān)?基于實(shí)時以太網(wǎng)的碼垛機(jī)械手控制平臺研究[D].濟(jì)南:山東大學(xué),2013.

        [3] 張聰.基于Internet的六自由度機(jī)械臂遠(yuǎn)程控制系統(tǒng)[D].北京:北京郵電大學(xué),2011.

        [4] 冀亮,錢正洪,白茹.基于四元數(shù)的四軸無人機(jī)姿態(tài)的估計(jì)和控制[J].現(xiàn)代電子技術(shù),2015,38(11):112?116.

        [5] BLOSS R. Telepresence and delta style robots come of age at latest combined automate and promat shows [J]. Industrial robot, 2012, 39(1): 12?16.

        [6] HOLUBEK R, KOSTAL P, PECHACEK F. Incorporation, programming and use of an ABB robot for the operations of palle?tizing and depalletizing at an academic research oriented to intelligent manufacturing cell [J]. Applied mechanics and mate?rials, 2013, 309: 62?68.

        [7] LUAN Nan, ZHANG Haiqing, TONG Shanggao, et al. Optimum motion control of palletizing robots based on iterative learning [J]. Industrial robot, 2012, 39(2): 162?168.

        [8] HARTMAN L R. Robotics move palletizing into high gear [J]. Packaging digest, 2005, 42(7): 44?45.

        91麻豆精品一区二区三区| 日韩成人大屁股内射喷水| 免费无码一区二区三区蜜桃大| 免费人成无码大片在线观看| 中文字幕大屁股熟女乱| 日韩av最新在线地址| 成年人观看视频在线播放| 亚洲一卡2卡3卡4卡5卡精品| 99偷拍视频精品一区二区| 91爱爱视频| 久久婷婷国产色一区二区三区| 亚洲国产色婷婷久久精品| 欧美老熟妇喷水| 亚洲av无码专区亚洲av桃| 亚洲情精品中文字幕有码在线| 在线亚洲精品中文字幕美乳色| 亚洲av午夜一区二区三| 国产午夜精品一区二区三区嫩草| 娇妻玩4p被三个男人伺候电影| 日韩欧美国产自由二区| 国产精品亚洲最新地址| 欧美性生交大片免费看app麻豆 | 久久99国产精品久久99| 丰满人妻被黑人猛烈进入| 久久国产亚洲精品超碰热| 国产三级精品三级在专区中文| 亚洲不卡高清av网站| 色妞ww精品视频7777| jjzz日本护士| 日本免费一区二区精品| 亚洲精品无码永久在线观看 | 久久综合九色欧美综合狠狠| 无码少妇一区二区浪潮av| 人妻精品久久中文字幕| 日本小视频一区二区三区| 日日摸夜夜添夜夜添高潮喷水| 天天影视性色香欲综合网| 国产精品亚洲片夜色在线| 精品国精品自拍自在线| 浓毛老太交欧美老妇热爱乱| 最近免费中文字幕|