胡 飛,陳彩蓉,尹文慶,劉海馬,劉 鑫,凌 龍
(南京農(nóng)業(yè)大學 工學院/江蘇省智能化農(nóng)業(yè)裝備重點實驗室,南京 210031)
國內(nèi)移栽基本以手工和半自動移栽為主,自動移栽機的應用改善了操作人員的工作條件,提高了工作效率,解決了勞動力短缺帶來的問題,有利于提高移栽作業(yè)的自動化水平[1]。
穴盤苗移栽試驗臺用于模擬移栽機在田間移栽的作業(yè)工況,完成穴盤苗移栽試驗要求。苗盤自動輸送機構是移栽試驗臺的關鍵部件,目前移栽裝備中苗盤輸送機構采用的驅動源主要有機械式、液壓式、氣壓式等。機械式驅動主要采用平面四桿、曲柄滑塊、圓柱凸輪、棘輪、不完全齒輪及槽輪等機構進行驅動及定位[2-3],具有結構簡單、制作方便、傳遞動力大等優(yōu)點,但大多存在沖擊大、運動精度低、傳動比固定及調(diào)整不方便等問題。液壓式驅動適用于高速重載的系統(tǒng),但液壓傳動效率偏低、傳動比不穩(wěn)定,且液壓油泄漏容易對環(huán)境產(chǎn)生污染,維護、保養(yǎng)不方便。氣壓式驅動具有結構簡單、成本低、速度快、泄漏影響小及維修簡單等優(yōu)點[4],但其工作時沖擊較嚴重,定位精度低。伺服電機驅動具有響應速度快、驅動力大、信號處理方便等優(yōu)點,可采用多種靈活的控制方式。它可以滿足自動移栽過程中苗盤輸送平穩(wěn)、響應速度快、定位準確及調(diào)整方便的要求。
本文提出了一種以伺服電機為動力源、光電編碼器為測量傳感器、dsPIC30F5015高性能微控制器為核心的新型苗盤自動輸送機構控制系統(tǒng),以實現(xiàn)苗盤的自動輸送和精確定位,可在一定程度上提高移栽機的自動化水平。
苗盤自動輸送機構主要由機械裝置和控制系統(tǒng)兩部分組成,機械裝置主要由同步帶、同步帶輪、苗盤托板、苗盤驅動桿、支架、軸等部分組成,如圖1所示。伺服電機從同步帶輪主動軸輸入動力,通過固定在同步帶表面的支架與驅動桿驅動苗盤直線運動,完成苗盤的平穩(wěn)輸送與精確定位。
圖1 苗盤輸送機械裝置Fig.1 Seedling tray delivery mechanism
控制系統(tǒng)主要作用是根據(jù)移栽作業(yè)要求,利用計算機及dsPIC30F5015給出控制信號,對伺服電機的速度和位置進行有效地跟蹤與控制。控制系統(tǒng)總體結構如圖2所示。其中,上位機主要包括計算機、參數(shù)設定及通信等模塊,主要實現(xiàn)對苗盤輸送過程的速度和位置等參數(shù)的設定及速度和位置反饋量的采集及顯示;下位機主要包括dsPIC30F5015、伺服電機驅動及數(shù)據(jù)采集等模塊[5],通過串口通信模塊可以與上位機實現(xiàn)雙向通信。
系統(tǒng)工作過程中,在上位機LabVIEW程序中設置速度、位置等參數(shù),通過串口輸出設定值,然后通過dsPIC30F5015將位置及轉速設定值轉化為對應的PWM波,伺服驅動器將位置設定值與實際位置值進行比較、運算后,去控制伺服電機;同時,機械裝置上的位置傳感器將實際位置反饋到dsPIC30F5015中,并上傳到LabVIEW中進行顯示、存儲。
圖2 控制系統(tǒng)總體結構Fig.2 The overall structure of control system
硬件系統(tǒng)采用主從結構,主機是高性能的計算機,從機采用具有高速數(shù)據(jù)處理能力的微控制器,兩者之間通過串行總線進行通信,主要由dsPIC30F5015、伺服電機驅動器、伺服電機、光電編碼器及計算機等部分組成。
采用dsPIC30F5015作為下位機的控制器,它是Microchip公司的一款16位微控制器,內(nèi)核含有DSP數(shù)據(jù)處理引擎,大大提高了內(nèi)核的運算和數(shù)據(jù)吞吐能力,同時具有豐富的外圍設備,指令執(zhí)行速度達30MIPS,具有很強的高速計算和快速中斷處理能力,能夠滿足電機高速控制的要求[6-9]。
dsPIC30F5015中的MCPWM(Motor Control PWM)是專門用于電機控制的模塊,它簡化了PWM波生成的軟件和硬件,具有8個PWM I/O引腳,4個占空比發(fā)生器,每個PWM的輸出引腳都可以被單獨使用,為電機控制等應用提供了很大的靈活性。
dsPIC30F5015帶有正交編碼器接口QEI(Quadrature Encoder Interface), QEI模塊有與位置編碼器三相對應的接口,根據(jù)QEI模塊的功能,結合芯片自帶的PWM模塊,可以實現(xiàn)對伺服電機位置與速度的精確控制。
驅動裝置是實現(xiàn)系統(tǒng)主要功能的重要環(huán)節(jié),采用伺服電機進行苗盤輸送與精確定位,與傳統(tǒng)的機械或氣動定位方式相比,具有輸送平穩(wěn)、定位精度高等優(yōu)點。本設計中采用日本安川(YASKAWA)公司的SGMJV-02ADA21伺服電機和SGDV-1R6A01A伺服驅動器來提供動力。安川SGMJV-02ADA21伺服電機的主要參數(shù)為:額定功率200W,額定轉矩0.637N·m,額定電壓200V,額定電流1.6A,轉速范圍0~6 000r/min,額定轉速3 000r/min。
移栽作業(yè)時,苗盤輸送機構一般工作在低速、高扭矩的工況下,需要在電機與同步帶主動軸之間增加減速器來降速增扭。綜合考慮運行速度、響應時間和穩(wěn)定性等多個因素,選擇傳動比為64的PLE-60減速器。根據(jù)同步帶輪的尺寸大小,當伺服電機在600~3 000r/min范圍內(nèi)運行時,苗盤直線運動速度為45~225mm/s。苗盤輸送可調(diào)節(jié)范圍寬,能夠滿足自動移栽機在不同工況下的作業(yè)要求。
為提高苗盤位置的控制精度,在同步帶從動軸端安裝光電編碼器,用于向dsPIC30F5015發(fā)送苗盤當前的位置數(shù)據(jù)。綜合考慮控制精度、輸送速度及成本等因素,選用歐姆龍E6B2-CWZ1D增量式編碼器作為系統(tǒng)的位置傳感器,分辨率為1 000脈沖/轉,線性驅動輸出,5~24V電源輸入。
安川伺服系統(tǒng)的主電路連接如圖3所示。其中,電源通斷由空氣開關1QF控制,電路的啟停和自鎖功能由電磁接觸器1KM控制,指示燈PL由繼電器1RY控制,用來顯示報警信號。
3.1dsPIC30F5015軟件設計
采用模塊化程序設計思想,在MAPLAB IDE開發(fā)環(huán)境下運用C語言開發(fā)下位機軟件,主要包括主程序、正交編碼器、電機控制及串口通信等模塊,各模塊以子程序形式出現(xiàn)。
圖3 主電路連接圖Fig.3 The chart of main circuit connection
主程序實現(xiàn)對微控制器的初始化和子程序調(diào)用[10],在系統(tǒng)上電或復位后,主程序開始執(zhí)行,首先對各部分進行初始化,包括I/O口、重置各變量初始值、時鐘的初始化和配置,UART初始化等,主程序流程如圖4所示。
圖4 主程序流程圖Fig.4 The flow chart of main program
定時器中斷程序主要對實時位置、速度信號進行采集轉換,并由串口發(fā)送到上位機。串口中斷主要發(fā)送、接收數(shù)據(jù),并進行分解轉換。PWM中斷用于已發(fā)送脈沖數(shù)的采集,內(nèi)部相關數(shù)據(jù)的處理等。正交編碼器中斷主要實現(xiàn)位置的采集比較和方向的判斷等。
3.1.1 串口通信模塊
dsPIC30F5015通過UART(通用異步傳輸模式)與上位機進行通信。dsPIC30F5015的串口模塊提供了RS-232C數(shù)據(jù)終端設備接口,上位機可以和任何使用RS-232C接口的串行設備進行通信。上位機將傳輸給下位機的位置、速度和方向3個量組合為一個控制指令字符串:“a_xxxx_yyyy_zz_f”。其中,“a”為指令識別標志;“_”為空格;“xxxx”為1~5 000的任意整數(shù);“yyyy”為40~1 000以10為間隔的任意整數(shù);zz為步進電機位置;“f”為0或1。
串口接收到的字符串無法直接用于PWM的生成,要通過判斷指令中的空格和字符串結束標志將其分解為位置、速度和方向3個數(shù)值,同時將其轉化為脈沖數(shù)、周期和方向3個可直接用于PWM波形生成模塊的數(shù)據(jù)。
3.1.2 PWM波形生成
PWM波形生成模塊主要是通過訪問MCPWM模塊中自帶的時基定時器PTMR、時基周期寄存器PTPER、PWM信號發(fā)生器等來實現(xiàn)。系統(tǒng)采用MCPWM輸出模式,PWM4/3/2/1引腳處于獨立輸出狀態(tài),PWM中斷優(yōu)先級為6,PWM時基1∶1分頻后輸出[11]。PWM周期的計算公式為
式中TCY—系統(tǒng)時鐘周期;
PTPER—PWM時基周期。
3.1.3 位置檢測與反饋
正交編碼器接口模塊用于檢測伺服電機的位置和速度,選擇對輸入信號進行4倍頻,提高分辨率,并通過與MAXCNT寄存器匹配復位。把編碼器的脈沖存入到芯片的計數(shù)器POSCNT,根據(jù)轉向進行增或減計數(shù)。每個PWM周期對光電編碼器采樣一次,從POSCNT寄存器中讀取采樣脈沖數(shù),將前后2次采樣脈沖數(shù)的差作為本次PWM周期的脈沖增量,即苗盤輸送機構機械轉角增量[6],根據(jù)機械裝置尺寸參數(shù)、減速比等即可計算出苗盤的直線位移。
LabVIEW是美國國家儀器公司(National Instruments)的一種虛擬儀器開發(fā)環(huán)境,使用圖形化編程語言編寫程序,大大減少了使用 C#、Java 等編程語言開發(fā)系統(tǒng)的時間[12]。LabVIEW集成了支持GPIB、VXI、RS-232和RS-485等協(xié)議的硬件及數(shù)據(jù)采集卡的全部功能,還內(nèi)置了豐富的擴展函數(shù)庫,可以方便地建立自己的虛擬儀器[13]。上位機軟件要實現(xiàn)的主要功能是串口通信、電機控制指令的發(fā)送和反饋量的實時顯示等,主要包括串口通信、信息采集及發(fā)送、信息接收和顯示等模塊。
采用LabVIEW自帶的NI-VISA接口函數(shù)來實現(xiàn)上位機與dsPIC30F5015的串口通信,主要包括初始化端口,設定端口號、波特率和奇偶校驗位等信息,并使得通信參數(shù)與下位機中保持一致。通訊子程序所圖5所示。
圖5 串口通信子程序Fig.5 The program of serial port communication
信息采集及發(fā)送模塊主要采集速度、位置和方向等數(shù)據(jù),將其編碼成“a_xxxx_yyyy_zz_f”格式經(jīng)串口發(fā)送。為了便于參數(shù)的設定和調(diào)整,程序中還進行了輸入量的單位轉換和同步顯示,子程序如圖6所示。信息接收和顯示模塊主要進行數(shù)據(jù)幀的接收、解碼和顯示,子程序如圖7所示。
圖6 信息采集及發(fā)送子程序Fig.6 The program of information collection and transmission
圖7 信息接收和顯示子程序Fig.7 The program of information receiving and displaying
根據(jù)控制系統(tǒng)的功能需求,將上位機前面板分為串口通信參數(shù)設置,位置、速度和方向等信息實時顯示,電機控制等部分顯示界面采用圖形與數(shù)字結合,兼顧形象化和準確性。前面板如圖8所示。
圖8 LabVIEW前面板Fig.8 LabVIEW front panel
基于本文設計的控制系統(tǒng)中進行了位置控制性能試驗,采用72(6×12)穴孔的苗盤,外形尺寸為540mm×280mm×45mm,穴孔間距為42mm。根據(jù)苗盤輸送作業(yè)的要求,將苗盤穴孔間距的整數(shù)倍42、126、504mm分別作為苗盤輸送的試驗距離。每個輸送距離測量5次并將平均值作為測量結果,如表1所示。
表1 定位精度測量Table 1 Measuring result of positional accuracy
由表1可以看出:苗盤輸送機構定位誤差絕對值小于0.32mm,相對誤差小于0.5%,具有良好的位置控制精度。
從苗盤自動輸送機構控制系統(tǒng)的實際功能和性能需求出發(fā),完成了基于dsPIC30F5015和 LabVIEW的苗盤自動輸送控制系統(tǒng)的設計。該系統(tǒng)實現(xiàn)了苗盤輸送位置等信息的實時顯示、控制、上位機和下位機的數(shù)據(jù)接收與顯示等功能。試驗過程中,啟動、運行良好,反應速度快,苗盤定位誤差小于0.32mm,相對誤差在0.5%范圍之內(nèi),能夠滿足苗盤自動輸送和精確定位的實際需求,為研發(fā)具有自主知識產(chǎn)權的農(nóng)業(yè)機器人及其控制系統(tǒng)奠定了基礎。