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

        ?

        球 桿 控 制 實 驗 系 統(tǒng) 的 設(shè) 計 與 實 現(xiàn)

        2018-12-10 05:55:46余善恩倪紅霞
        實驗室研究與探索 2018年11期
        關(guān)鍵詞:球桿導(dǎo)軌小球

        李 真, 余善恩, 倪紅霞

        (杭州電子科技大學(xué) 自動化學(xué)院, 杭州 310018)

        0 引 言

        當(dāng)前,國內(nèi)有很多高校都在研究球桿控制系統(tǒng),該系統(tǒng)運用了模糊控制、自適應(yīng)遺傳PID控制、魯棒控制等控制方法,且收獲了良好的控制效果,但是在小球位置檢測方面卻存在不足之處。目前球桿控制系統(tǒng)中小球的檢測方法主要分為以下幾類:① 采用紅外光電傳感器來檢測小球在導(dǎo)軌上的位置,即在導(dǎo)軌的一端安裝一個光電傳感器。但由于小球的反射面是弧狀的,發(fā)射過來的光線在球面會產(chǎn)生散射,使系統(tǒng)對小球的位置產(chǎn)生誤判,而且實驗環(huán)境中不同的光強(qiáng)也可能使小球的位置檢測產(chǎn)生誤差,因此此種方法的應(yīng)用場合有限。② 采用超聲波測距:這也是一種比較普遍的選擇,但是由于超聲波測距本身并不敏感,而且超聲波測距受反射聲波的反射面形狀影響較大,準(zhǔn)確度和靈敏度較低[1]。③ 采取電阻尺(直線位移傳感器),即在導(dǎo)軌的一側(cè)放置一根繃直的電阻絲,而導(dǎo)軌的另一側(cè)放置一根繃直的細(xì)銅絲。當(dāng)小球(實心的金屬球)在導(dǎo)軌上滾動時,就會與電阻絲和細(xì)銅絲接觸,導(dǎo)軌和小球自然就形成了一個簡易的滑動變阻器,當(dāng)給電阻絲一個電壓值時,可以對細(xì)銅絲的一端采集A/D值,小球在導(dǎo)軌上的位置就可以通過該A/D值計算得到[2]。此方法雖然做起來很簡單,對于單片機(jī)來說也方便處理。但是由于小球和金屬絲時常接觸不好,從而導(dǎo)致實時檢測出來的小球位置存在很大的誤差。④ 采用激光傳感器對小球的位置進(jìn)行檢測,該傳感器能檢測到很微弱的激光信號,這是對小球位置最為精確的檢測。但是,由于市場上的激光傳感器價格都過于昂貴,這樣會使該實驗平臺的市場競爭力下降[3]。

        綜上所述,球桿控制實驗系統(tǒng)的控制方法雖然發(fā)展的較為完善,但小球位置的檢測裝置有待優(yōu)化。在本設(shè)計中,將一種新的方法應(yīng)用于對小球的位置檢測,即采用數(shù)字?jǐn)z像頭。這樣既可以解決紅外光電傳感器和超聲波傳感器等方法在小球位置檢測中存在的缺陷,也可以避免直線電位器接觸不好以及激光傳感器設(shè)備費用投入過高等問題,有利于該實驗平臺的推廣和發(fā)展。

        1 系統(tǒng)結(jié)構(gòu)設(shè)計

        球桿控制實驗系統(tǒng)的結(jié)構(gòu)如圖1所示,本結(jié)構(gòu)主要由碳纖導(dǎo)軌、直流減速電動機(jī)、帶坐軸承、支架等組成。導(dǎo)軌是由兩根長65 cm, 寬0.8 cm的碳纖管組成,可以繞其一側(cè)的帶坐軸承旋轉(zhuǎn),導(dǎo)軌另一側(cè)通過細(xì)線懸掛在減速電動機(jī)的轉(zhuǎn)軸上,通過電動機(jī)正反轉(zhuǎn)控制導(dǎo)軌上下運動,實現(xiàn)導(dǎo)軌角度的變化。其中小球采用的是實心鋼球[4]。

        圖1 球桿實驗系統(tǒng)簡易結(jié)構(gòu)示意圖

        2 系統(tǒng)硬件設(shè)計方案

        球桿控制實驗系統(tǒng)的硬件結(jié)構(gòu)如圖2所示,本系統(tǒng)的硬件部分主要包括BTN7970電動機(jī)驅(qū)動、減速電動機(jī)、位置檢測攝像頭、OLED顯示、STM32微處理器、矩陣鍵盤和電源等。本設(shè)計最為重要的是對小球位置的實時檢測,其中電動機(jī)驅(qū)動器由兩片BTN7970構(gòu)成,數(shù)字?jǐn)z像頭OV7725用來采集圖像信息,處理器根據(jù)小球在導(dǎo)軌中的位置計算出控制量,控制減速電動機(jī)轉(zhuǎn)過一定的角度,從而實時調(diào)整導(dǎo)軌的傾角,使小球在導(dǎo)軌上運動,改變小球在導(dǎo)軌上的位置,并且依據(jù)設(shè)定的小球位置值讓小球運動并穩(wěn)定在某個范圍之內(nèi)。同時,能夠?qū)崟r檢測到的小球位置通過微處理器在OLED上顯示出來[5]。

        圖2 球桿控制系統(tǒng)硬件結(jié)構(gòu)圖

        STM32系列單片機(jī)是一種高性能的ARM單片機(jī)。其本身具有AD轉(zhuǎn)換功能,且具有多個計時器(定時器),具有PWM輸出功能,同時運算數(shù)據(jù)的速率很高。編程也較為方便,能滿足本系統(tǒng)要運行的一些控制算法,支持處理圖像數(shù)據(jù)。因此,本設(shè)計采用STM32系列單片機(jī)中的STM32F103VET6芯片作為球桿控制實驗系統(tǒng)的控制中心[6]。

        直流電動機(jī)的機(jī)械特性好,且控制起來較為方便,能在很短時間內(nèi)實現(xiàn)電動機(jī)運動方向的轉(zhuǎn)變。同時相對于步進(jìn)電動機(jī),直流電動機(jī)的驅(qū)動設(shè)計較為簡單。因此,在本系統(tǒng)設(shè)計中采用直流減速電動機(jī)作為運動執(zhí)行部件。

        位置顯示模塊選用ILI9235觸摸屏和有機(jī)發(fā)光二極管(OLED)。ILI9235觸摸屏顯示面積8.13 cm(3.2 in),能夠動態(tài)顯示彩色圖片、漢字等,而且具有觸摸屏功能,易于程序調(diào)試。但是彩屏要占用較多的IO接口,這是與其他顯示屏相比的劣勢。OLED顯示屏和單片機(jī)之間數(shù)據(jù)傳輸采用的是四線SPI接口,其傳輸原理非常簡單。由于調(diào)試時需要先精確獲得小球的像素點值,因此需要使用觸屏顯示便于調(diào)試,但是如果顯示整幀圖片,又會降低處理速度。因此,本系統(tǒng)選擇觸摸屏作為調(diào)試工具,在調(diào)試完成后,選擇OLED作為顯示。

        OV7725數(shù)字?jǐn)z像頭其本身帶有許多寄存器,通過讀寫這些寄存器能根據(jù)設(shè)計者的需要調(diào)節(jié)攝像頭輸出的數(shù)據(jù)格式,而且能夠通過調(diào)節(jié)焦距控制拍攝圖片的清晰度。圖像數(shù)據(jù)輸出采用SCCB協(xié)議,且受環(huán)境變化的干擾較小。在引言部分提到的當(dāng)前球桿控制實驗系統(tǒng)大多采用測距傳感器,原理是反射式的,但是由于小球的反射面是弧狀的,會對被反射物質(zhì)形成散射,這樣會干擾傳感器對于障礙物位置判斷,不宜采用。因此,本系統(tǒng)設(shè)計采用OV7725攝像頭作為小球位置檢測模塊。

        BTN7970是一款電動機(jī)驅(qū)動芯片,且芯片允許流過的最大電流達(dá)到43 A。一塊BTN7970芯片只能控制一路PWM,如果要控制一個電動機(jī)正反轉(zhuǎn),那么就需要兩塊BTN7970芯片。使用時,只需要設(shè)計一些簡單的電路將兩塊芯片和控制芯片連接起來。因此,本系統(tǒng)設(shè)計采用兩片BTN7970作為電動機(jī)驅(qū)動模塊。

        本系統(tǒng)需要控制小球在一條直線上運動,所以采用矩陣按鍵作為系統(tǒng)的輸入設(shè)備,矩陣按鍵一共具有16個按鍵,卻僅僅占用單片機(jī)8個I/O接口,且編程簡單,占用CPU資源少[7]。

        3 系統(tǒng)軟件設(shè)計

        3.1 總體軟件流程

        軟件系統(tǒng)設(shè)計包括STM32單片機(jī)內(nèi)部自帶功能的軟件設(shè)計、數(shù)字?jǐn)z像頭OV7725驅(qū)動程序、OLED相應(yīng)的程序設(shè)計、數(shù)字圖像處理程序設(shè)計、減速電動機(jī)PID控制算法程序。系統(tǒng)軟件流程如圖3所示。

        圖3 系統(tǒng)程序流程圖

        3.2 數(shù)字?jǐn)z像頭OV7725程序設(shè)計

        OV7725攝像頭存儲圖像的流程如下:當(dāng)時鐘信號到達(dá)上升沿,OV7725攝像頭開始采集圖像, OV7725首先輸出一個場中斷信號(VSYNC),緩存芯片(FIFO)得到中斷信號后,緩存芯片開始復(fù)位、使能,緩存芯片開始緩存攝像頭采集到的圖像數(shù)據(jù),當(dāng)1幀圖像數(shù)據(jù)緩存結(jié)束之后,攝像頭就會輸出第2個場中斷信號,這時就可以禁止緩存芯片使能,關(guān)閉VSYNC,開始讀取緩存的攝像頭圖像數(shù)據(jù)。這樣周而復(fù)始就可以完成攝像頭圖像數(shù)據(jù)的采集。

        接下來介紹如何從存儲器中讀取攝像頭存儲的圖像數(shù)據(jù):當(dāng)?shù)玫降?個場中斷信號時,先把緩存芯片復(fù)位,然后將I/O口模擬時鐘脈沖輸出給緩存芯片,就可以讀取數(shù)據(jù),由于每1個像素點的值是16位,所以在讀取數(shù)據(jù)時先獲得高8位,再獲得低8位。這樣一直讀取320×240次就能夠把1幀圖像數(shù)據(jù)全部讀取出來。

        此外,本設(shè)計在每次讀取緩存芯片中數(shù)據(jù)時,讀取一個數(shù)據(jù)就判斷這個數(shù)據(jù)是否是程序所需要的,在讀取到需要的數(shù)據(jù)之后,就把緩存芯片中剩下的數(shù)據(jù)全部清空,同時開始下1幀數(shù)據(jù)的緩存,這樣就可以節(jié)省大量的時間。

        3.3 OLED模塊程序設(shè)計

        采用OLED顯示屏和單片機(jī)傳送數(shù)據(jù)是4線SPI接口,主要通過以下4個引腳在主從設(shè)備之間進(jìn)行通信,即CS、SCLK、MOSI、MISO 4個引腳。在圖4引腳圖中的CS為OLED的片選引腳,DC是OLED命令/數(shù)據(jù)標(biāo)志,即寫入命令和數(shù)據(jù)的引腳;RST是硬件復(fù)位引腳;OLED顯示屏在每次程序運行之前(初始化)都要進(jìn)行一次復(fù)位,即給RST引腳一個低電平。D0 信號線作為串行時鐘線 SCLK。D1 信號線作為串行數(shù)據(jù)線 SDIN。

        圖4 OLED模塊接口圖

        OLED驅(qū)動芯片采用的是SSD1306控制器。SSD1306的顯示內(nèi)存要比5110等液晶屏大很多,其顯示內(nèi)存容量一共是128×64個Byte。由于OLED液晶屏的顯示容量高達(dá)128×64個Byte,而OLED的地址線數(shù)量較少,無法直接尋址這么多的內(nèi)存空間,所以需要用較少的地址線尋址到液晶屏所有的存儲空間,因此需要將SSD1306液晶屏的顯示內(nèi)存分成8塊,其對應(yīng)關(guān)系如表1 所示。

        SSD1306初始化步驟:復(fù)位SSD1306;驅(qū)動SPI初始化代碼;開啟顯示;清零顯示;開始顯示。

        OLED顯示函數(shù):由于本系統(tǒng)設(shè)計只用到OLED去顯示簡單的位置信息,因此只需要簡單的顯示函數(shù)void OLED_ShowNum(u8 x,u8 y,u32 num,u8 len,u8 size)即可完成,不再贅述[8]。

        3.4 數(shù)字圖像處理程序設(shè)計

        若要在攝像頭所采集的圖片中給小球定位,那么首先要知道白色小球的像素值是多少。所以在調(diào)試過程中,先采用ILI9235觸摸屏作為顯示模塊,將攝像頭采集到的圖像動態(tài)的顯示出來。然后通過觸摸屏,點擊圖像中的小球,點擊的點在液晶屏中會有一個坐標(biāo),因此可以通過這個坐標(biāo)尋找到小球的像素值。

        找到小球在圖像中的像素值后,接下來就是去處理數(shù)字?jǐn)z像頭所采集的圖像數(shù)據(jù)。因為OV7725采集數(shù)據(jù)的速度太快且1幀圖像數(shù)據(jù)太多,所以單片機(jī)的I/O口無法跟上攝像頭采集數(shù)據(jù)的速度,因此本系統(tǒng)采用先緩存后處理的辦法處理圖像數(shù)據(jù)。當(dāng)1幀圖像數(shù)據(jù)采集完后,會完整地存儲在攝像頭的緩存芯片中,接著開始讀取緩存芯片中的數(shù)據(jù),讀取1個像素值就馬上該此像素值做相應(yīng)的處理,如果找到了需要的像素點,則立刻把這個像素點的相應(yīng)坐標(biāo)記錄下來。當(dāng)找到需要的像素點坐標(biāo)之后,就不再讀取緩存中剩余的圖片數(shù)據(jù),并立即將緩存中的數(shù)據(jù)清空,進(jìn)行下1幀數(shù)據(jù)的采集。這樣既節(jié)約了圖像處理的時間,提高了速度,也不會丟失需要的數(shù)據(jù)。

        表1 SSD1306 顯存與屏幕對應(yīng)關(guān)系表

        由于ILI9235觸摸屏顯示圖像需花費大量時間,因此在得到小球的像素值之后,為了提高圖像處理的速度,后續(xù)過程中將不再采用ILI9235觸摸屏顯示圖像,只需采用OLED顯示圖像處理后的結(jié)果。

        最后是如何通過采集的像素點坐標(biāo)得到小球在導(dǎo)軌上的位置,計算的思路是實物中小球在導(dǎo)軌上的相對位置與攝像頭圖片中小球在導(dǎo)軌中的相對位置成比例。因此,只需要計算出攝像頭圖片中小球的距離占圖片中導(dǎo)軌長度的比例,再以該比例乘以導(dǎo)軌的實際長度就得到了小球的實際距離[9-10]。

        判斷小球位置占導(dǎo)軌長度的比例,前提需要知道小球?qū)崟r的位置坐標(biāo)、導(dǎo)軌首尾的位置坐標(biāo),但是由于導(dǎo)軌是運動的,所以本系統(tǒng)采取了下面的方法去檢測導(dǎo)軌首尾的坐標(biāo):在系統(tǒng)開始運行之前,首先將導(dǎo)軌放置到水平位置,然后把白色小球分別放置到導(dǎo)軌的首端和尾端,通過程序檢測攝像頭采集的圖片中小球的坐標(biāo),然后通過OLED把這兩個坐標(biāo)顯示出來,通過這種方法獲得導(dǎo)軌首尾的坐標(biāo)之后,就可以把這兩個坐標(biāo)固定的寫入程序中。由于導(dǎo)軌在系統(tǒng)運行中傾斜角度不是很大,所以這種方法不會造成很大的誤差。因為此種方法在系統(tǒng)運行過程中,只需找到攝像頭每1幀圖像中小球的位置即可,找到小球的坐標(biāo)后,該幀圖像的其他數(shù)據(jù)均可舍棄,這樣可以提高單片機(jī)處理攝像頭數(shù)據(jù)的速度[11]。

        3.5 PID控制算法設(shè)計

        在本系統(tǒng)中采用的是湊試法對PID控制器的3個參數(shù)進(jìn)行給定。首先只整定比例部分,賦予比例參數(shù)P一個較小的值,然后逐步加大P的值,并觀察響應(yīng)曲線,直到得到反應(yīng)快、超調(diào)小的響應(yīng)曲線。如果在比例調(diào)節(jié)的基礎(chǔ)上,系統(tǒng)的靜差不能滿足設(shè)計要求,則需要加入積分環(huán)節(jié)。在給積分參數(shù)賦值之前應(yīng)該把事先調(diào)好的比例參數(shù)P的值修改成原來的80%,積分參數(shù)也是從較小的值開始逐步增加,直到被控系統(tǒng)的響應(yīng)曲線能夠達(dá)到穩(wěn)態(tài)。最后,如果對系統(tǒng)的抗干擾性能不是很滿意的話,可以給系統(tǒng)增加一個適當(dāng)?shù)奈⒎謪?shù)[12-13]。圖5所示為PID控制算法的程序設(shè)計流程圖[14]。

        圖5 PID控制算法流程圖

        在球桿控制實驗系統(tǒng)設(shè)計中,將小球的實時位置作為實際輸出值,把矩陣鍵盤輸入的位置作為設(shè)定值。兩者做差求出的誤差值作為PID控制器的輸入,經(jīng)過PID控制器的比較運算得到輸出值,然后將輸出值賦值給電動機(jī)驅(qū)動器,以此達(dá)到對電動機(jī)的實時控制[15]。

        4 結(jié) 語

        本設(shè)計完成了一個球桿控制實驗系統(tǒng)。在本系統(tǒng)中,小球位置的檢測方式并沒有采用之前普遍采用的檢測方式,例如紅外傳感器、直線電位器、超聲波等,因為這些檢測方式或多或少存在一些缺陷。在本設(shè)計中采用一種新的檢測方式,即通過數(shù)字?jǐn)z像頭檢測小球在導(dǎo)軌上的位置,這種新型檢測方式的使用克服了之前一些檢測方法的缺點,也提高了檢測精度。通過PID控制算法能使小球運動到指定位置的誤差范圍之內(nèi),且在OLED上準(zhǔn)確顯示小球的實時位置。經(jīng)使用,取得了良好的教學(xué)效果,平臺所使用的技術(shù)方案也可以為后續(xù)實驗系統(tǒng)的開發(fā)提供參考[16]。

        猜你喜歡
        球桿導(dǎo)軌小球
        棒與導(dǎo)軌問題分類例析
        聯(lián)想等效,拓展建?!浴皫щ娦∏蛟诘刃鲋凶鰣A周運動”為例
        小球進(jìn)洞了
        小球別跑
        小球別跑
        家教世界(2020年10期)2020-06-01 11:49:26
        電梯導(dǎo)軌支架檢驗探討
        基于改進(jìn)T-S模型的球桿系統(tǒng)控制方法研究
        一種電動車傳動機(jī)構(gòu)
        選購臺球桿應(yīng)避免的誤區(qū)和需注意的問題
        多軸數(shù)控機(jī)床轉(zhuǎn)臺幾何誤差辨識新方法
        亚洲av永久无码精品| 日本综合视频一区二区| 国产极品美女高潮无套| 欧美成人免费全部| 美女裸体无遮挡免费视频的网站| 蜜桃视频一区二区三区在线| 高潮内射主播自拍一区| 亚洲乱码一区av春药高潮| 久久97精品久久久久久久不卡| 亚洲av一区二区国产精品| 日韩人妻免费视频一专区| 日本最新免费二区| 激情另类小说区图片区视频区| 国产一区二区三区观看视频| 91偷拍与自偷拍亚洲精品86 | 国产精品久久久久高潮| 欧美最猛黑人xxxxx猛交| 国产精品无码mv在线观看| 亚洲岛国一区二区三区| 午夜福利理论片在线观看| 久久精品国产一区二区电影| 在线一区二区三区视频观看| 丰满人妻中文字幕一区三区| 欧美日韩国产码高清综合人成 | 国产超碰在线91观看| 小雪好紧好滑好湿好爽视频| 99久久国产露脸精品竹菊传媒 | 无限看片在线版免费视频大全| 中文字幕人成乱码中文乱码| 日本av亚洲中文字幕| 少妇饥渴偷公乱a级无码| 国产综合精品久久亚洲| 国产自拍三级黄片视频| 色88久久久久高潮综合影院| 国产mv在线天堂mv免费观看| 男人的天堂av一二三区| 一本色道久久亚洲加勒比| 国产乱子伦农村叉叉叉| 亚洲欧美国产日产综合不卡| 久久成人精品国产免费网站| 午夜爽爽爽男女污污污网站|