曾維鵬,蔡莉莎,韓寶如
(1.海南軟件職業(yè)技術(shù)學(xué)院 海南瓊海571400;2.海南大學(xué) 海南 ???70102)
基于51單片機(jī)小球控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
曾維鵬1,蔡莉莎1,韓寶如2
(1.海南軟件職業(yè)技術(shù)學(xué)院 海南瓊海571400;2.海南大學(xué) 海南 ???70102)
針對(duì)全國(guó)電子設(shè)計(jì)競(jìng)賽(J)題通過控制擺桿的高低來實(shí)現(xiàn)小球滾動(dòng),并根據(jù)擺桿與水平平面的夾角和小球在槽內(nèi)的位置來控制小球在光滑的U型槽內(nèi)完成各種要求的往復(fù)運(yùn)動(dòng)的要求。本設(shè)計(jì)以STC89C52單片機(jī)為主控核心,結(jié)合角度傳感器、光電對(duì)管、直流減速電機(jī)、LED、蜂鳴器及LCM1602液晶屏構(gòu)成一套完整的小球滾動(dòng)控制系統(tǒng)。通過LCM1602液晶屏顯示往復(fù)運(yùn)動(dòng)、位置、周期、偏差4組數(shù)據(jù)的時(shí)間及角度,通過16個(gè)LED實(shí)時(shí)顯示小球的運(yùn)行軌跡,通過實(shí)驗(yàn)表明該系統(tǒng)符合設(shè)計(jì)要求。
單片機(jī);小球滾動(dòng)控制系統(tǒng);往復(fù)運(yùn)動(dòng)
本系統(tǒng)是2015年全國(guó)電子設(shè)計(jì)競(jìng)賽的J題,題目要求設(shè)計(jì)一個(gè)U型導(dǎo)軌,導(dǎo)軌一端固定在U型導(dǎo)軌上,另一端固定在頂梁上通過電機(jī)控制其上下運(yùn)動(dòng),使小球在導(dǎo)軌上按要求去靈活滾動(dòng)或定位。小球的運(yùn)動(dòng)要求如下:當(dāng)小球觸碰到導(dǎo)軌兩端的觸發(fā)裝置時(shí),有明顯的聲光報(bào)警;15 s內(nèi)自動(dòng)將導(dǎo)軌從正負(fù)15度范圍內(nèi)的任一位置調(diào)整至水平狀態(tài),小球放置在導(dǎo)軌25~35 cm區(qū)間某一位置時(shí)靜止不滾動(dòng);小球在原點(diǎn)從靜止開始,15 s內(nèi)使小球在導(dǎo)軌上做3次往復(fù)運(yùn)動(dòng),且運(yùn)動(dòng)控制在5~55 cm區(qū)間范圍內(nèi);在往復(fù)運(yùn)動(dòng)狀態(tài)下,通過設(shè)置命令(按鍵)使小球在15 s內(nèi)穩(wěn)定停止在28~32 cm位置區(qū)域內(nèi),并至少保持10 s;小球在原點(diǎn)從靜止開始,在30 s內(nèi)完成不少于3次往復(fù)運(yùn)動(dòng),往復(fù)運(yùn)動(dòng)周期在3~8 s間可設(shè)置;小球在原點(diǎn)從靜止開始,在30 s內(nèi)控制小球在導(dǎo)軌上以30 cm處為中心,做不少于4次往復(fù)運(yùn)動(dòng);往復(fù)運(yùn)動(dòng)偏離中心的最大位移可在15~25 cm區(qū)間設(shè)置,且最大位移偏差不超過2 cm[1]。在完成上述基本功能后,本系統(tǒng)還將小球的實(shí)時(shí)角度位置顯示在液晶顯示屏上。
1.1 系統(tǒng)結(jié)構(gòu)
小球滾動(dòng)控制系統(tǒng)由STC89C52單片機(jī)、電機(jī)和驅(qū)動(dòng)模塊、傳感器、液晶顯示屏等部分構(gòu)成。由電機(jī)來控制繞線從而來使擺桿上下擺動(dòng),在擺桿上安裝角度傳感器和紅外傳感器用于檢測(cè)小球在U型槽中所處的位置,初步設(shè)計(jì)的系統(tǒng)功能框圖見圖1。
圖1 系統(tǒng)框圖原型
1.2 方案比較與選擇
1)電機(jī)方案比較與選擇
方案一:選擇步進(jìn)電機(jī):步進(jìn)電機(jī)精度高,速度可調(diào),但慢速調(diào)節(jié)時(shí)電機(jī)震動(dòng)劇烈,時(shí)刻影響擺桿上的滾珠平穩(wěn)活動(dòng)[2]。方案二:選擇普通有刷電機(jī),速度可調(diào),精度不高,速度調(diào)節(jié)時(shí)因電機(jī)速度較快,使擺桿擺動(dòng)的角度較大從而使小球速度過快不好控制[3]。方案三:選擇直流減速電機(jī),速度可調(diào),速度較慢,精度適中,穩(wěn)定性好,能夠很好的控制擺桿的角度。綜上所述,考慮到本題對(duì)小球滾動(dòng)的往復(fù)運(yùn)動(dòng)最大距離為50±2 cm,使用步進(jìn)電機(jī)由于存在抖動(dòng)問題,普通直流電機(jī)速度過快難以控制,所以我們選擇方案三:直流減速電機(jī)[4]。
2)小球位置檢測(cè)方案比較與選擇
方案一:選擇超聲波傳感器,超聲波測(cè)試距離精準(zhǔn)度高,靈敏度高,但檢測(cè)物的方向不斷的改變,且小球的形狀為球體,檢測(cè)難度較大,而且超聲波傳感器的體積相對(duì)較大,不好安裝到擺桿上[5]。方案二:選擇光電傳感器,在U型導(dǎo)軌上的關(guān)鍵位置安裝光電傳感器,當(dāng)小球經(jīng)過改點(diǎn)時(shí)反饋信號(hào)給主控芯片,該感器靈敏度較高,體積小可隨意擺放比較靈活[6]。綜上所述,使用光電傳感器檢測(cè)小球的位置可靠,且程序設(shè)計(jì)較簡(jiǎn)單,故我們選擇方案二來檢測(cè)小球在U型導(dǎo)軌內(nèi)的位置。
3)擺桿平衡檢測(cè)方案比較與選擇
方案一:選擇角度傳感器,精度靈敏度高,穩(wěn)定性好,能夠很好的檢測(cè)角度,但若裝置沒有水平放置時(shí)角度傳感器會(huì)有一定的誤差[7]。方案二:選擇紅外傳感器,紅外傳感器精度適中,靈敏度適中,體積適中,能夠檢測(cè)較長(zhǎng)的距離,并且所需的控制的例程簡(jiǎn)單[8]。方案三:角度傳感器加紅外傳感器,這種方案將上訴兩種傳感器結(jié)合起來使用,檢測(cè)精度高,適應(yīng)不同的工作環(huán)境,能夠提高控制系統(tǒng)的可靠性[9]。綜上所述,擺桿平衡檢測(cè)選擇選用方案三角度傳感器加紅外傳感器作為擺桿平衡檢測(cè)模塊。
4)供電方案比較與選擇選擇
方案一:?jiǎn)坞娫垂╇姡奖阏加每臻g小,連接方便,但是當(dāng)電機(jī)和單片機(jī)一起啟用時(shí)會(huì)影響單片機(jī)正常運(yùn)行,和傳感器模塊與單片機(jī)在電路回路中存在干擾,所以該方案不可行。方案二:雙電源供電,可以解決單電源供電存在的缺點(diǎn),可以任意調(diào)節(jié)電機(jī)電壓,所以采用該方案。
經(jīng)過上述論證,我們決定本項(xiàng)目采以STC89C52單片機(jī)為主控核心,結(jié)合角度傳感器、光電對(duì)管、直流減速電機(jī)、LED、蜂鳴器及LCM1602液晶屏構(gòu)成一套完整的小球滾動(dòng)控制系統(tǒng),系統(tǒng)框圖見圖2。
圖2 本設(shè)計(jì)的系統(tǒng)框圖
2.1 結(jié)構(gòu)系統(tǒng)設(shè)計(jì)與檢測(cè)
系統(tǒng)實(shí)物圖如圖3所示,將紅外傳感器分別安裝到擺桿不同標(biāo)度上,用來記錄小球的位置,利用光電傳感器加角度傳感器判斷擺桿的擺動(dòng)的角度,紅外傳感器分別裝在擺桿的上方和側(cè)方,使擺桿隨時(shí)能夠調(diào)節(jié)角度。系統(tǒng)通過紅外和光電傳感器檢測(cè)小球的位置,然后將數(shù)據(jù)送到單片機(jī)處理,單片機(jī)通過控制電機(jī)驅(qū)動(dòng)模塊L298N控制電機(jī)來回轉(zhuǎn)動(dòng)[10],從而使小球任意滾動(dòng),根據(jù)不同任務(wù),使用PWM方法控制電機(jī)的轉(zhuǎn)速[11],使之符合任務(wù)要求。
圖3 實(shí)物圖
2.2 小球檢測(cè)設(shè)計(jì)與檢測(cè)
將8個(gè)光電傳感器與單片機(jī)P1口相連,利用光電傳感器對(duì)小球位置進(jìn)行檢測(cè),將光電傳感器放置在擺桿的不同標(biāo)度,當(dāng)沒有小球經(jīng)過時(shí),傳感器輸出低電平,當(dāng)小球從原點(diǎn)出發(fā)經(jīng)過光電傳感器時(shí),傳感器輸出高電平,將數(shù)據(jù)送入單片機(jī)處理[12]。
2.3 擺桿平衡檢測(cè)設(shè)計(jì)與檢測(cè)
將3個(gè)紅外傳感器與單片機(jī)P2口相連,利用紅外傳感器檢測(cè)擺桿是否調(diào)整到水平狀態(tài),然后將上方紅外傳感器調(diào)整到剛好檢測(cè)到水平位置,接著調(diào)整側(cè)邊的紅外傳感器剛好檢測(cè)到水平位置,雙向檢測(cè)擺桿使擺桿能更精確檢測(cè)水平位置[13]。
2.4 擺桿擺動(dòng)角度設(shè)計(jì)與檢測(cè)
利用電機(jī)驅(qū)動(dòng)模塊L298N控制模塊驅(qū)動(dòng)減速電機(jī)[14]。將紅外和光電傳感器檢測(cè)到的數(shù)據(jù)傳送到單片機(jī)進(jìn)行處理,單片機(jī)再經(jīng)過PWM算法改變輸出頻率,再將數(shù)據(jù)送給電機(jī)驅(qū)動(dòng)模塊控制電機(jī)旋轉(zhuǎn),通過繞線最終控制擺桿[15]。
3.1 電路設(shè)計(jì)
紅外傳感器和光電傳感器和單片機(jī)連接將檢測(cè)到的信號(hào)送到單片機(jī),單片機(jī)再進(jìn)行信號(hào)處理,將處理后的數(shù)據(jù)送至與單片機(jī)連接電機(jī)驅(qū)動(dòng)模塊[16],從而控制電機(jī)正反轉(zhuǎn),再通過連接在單片機(jī)的矩陣鍵盤切換不同任務(wù),從而達(dá)到控制小球運(yùn)動(dòng)的不同的效果。顯示電路是單片機(jī)與LCD1602顯示模塊組成,將小球所用的時(shí)間和擺桿的角度記錄顯示。
3.2 程序結(jié)構(gòu)設(shè)計(jì)
根據(jù)任務(wù)要求,需要設(shè)置多個(gè)不同的功能,所以采用矩陣鍵盤作為輸入。在程序設(shè)計(jì)方面,通過鍵盤掃描,判斷按鍵,再根據(jù)按鍵設(shè)置電機(jī)的工作方式[17],以實(shí)現(xiàn)不同的任務(wù),程序流程圖見圖4。
圖4 流程圖
測(cè)試前,將門型框架擺正,保證整個(gè)框架在水平位置,啟動(dòng)電源,便可進(jìn)行測(cè)試[18],測(cè)試時(shí),根據(jù)任務(wù)要求,按下相應(yīng)的按鍵便能完成對(duì)應(yīng)的任務(wù),任務(wù)進(jìn)行時(shí),液晶屏實(shí)時(shí)顯示任務(wù)時(shí)間和擺桿角度,16個(gè)LED實(shí)時(shí)顯示小球在U型導(dǎo)軌內(nèi)的位置信息。系統(tǒng)測(cè)試數(shù)據(jù)如表1~表4。
表1 測(cè)試數(shù)據(jù)1
表2 測(cè)試數(shù)據(jù)2
表3 測(cè)試數(shù)據(jù)3
表4 測(cè)試數(shù)據(jù)3
根據(jù)以上數(shù)據(jù)表明,所設(shè)計(jì)的小球控制系統(tǒng)符合設(shè)計(jì)要求,而且整個(gè)系統(tǒng)較為穩(wěn)定,誤差范圍較小。
本系統(tǒng)在完成賽題基本運(yùn)動(dòng)要求的基礎(chǔ)上進(jìn)行了以下3點(diǎn)創(chuàng)新:采用LCM1602液晶屏模塊進(jìn)行實(shí)時(shí)時(shí)間顯示;采用 LCM1602液晶屏模塊加ADXL345角度傳感器模塊進(jìn)行實(shí)時(shí)角度顯示;采用16個(gè)LED加紅外光電對(duì)管傳感器實(shí)時(shí)顯示小球在導(dǎo)軌上的軌跡。
本系統(tǒng)以單片機(jī)為控制核心,根據(jù)各種傳感器采集的信息,控制直流減速電機(jī)正反轉(zhuǎn)來控制導(dǎo)軌上下運(yùn)動(dòng),從而達(dá)到控制小球在U型導(dǎo)軌中往復(fù)滾動(dòng)的目的。在系統(tǒng)設(shè)計(jì)中,力求硬件線路簡(jiǎn)單,充分發(fā)揮軟件編程靈活的特點(diǎn),來滿足系統(tǒng)設(shè)計(jì)的要求。當(dāng)然本系統(tǒng)在算法[19]和硬件電路方面仍需要進(jìn)一步優(yōu)化。 經(jīng)過整個(gè)競(jìng)賽團(tuán)隊(duì)的努力,本系統(tǒng)的設(shè)計(jì)在比賽中也取得了全國(guó)一等獎(jiǎng)的優(yōu)異成績(jī)。經(jīng)過競(jìng)賽也使學(xué)生的動(dòng)手能力得到進(jìn)一步的提高。
[1]全國(guó)電子設(shè)計(jì)競(jìng)賽組委會(huì).小球滾動(dòng)控制系統(tǒng)(J題)[EB/OL].http://www.nuedc.com.cn/index.asp.
[2]王玉琳,王強(qiáng).步進(jìn)電機(jī)的速度調(diào)節(jié)方法[J].電機(jī)與控制應(yīng)用,2006,33(1):53-56.
[3]李潔.基于有刷電機(jī)的電動(dòng)助力轉(zhuǎn)向系統(tǒng)結(jié)構(gòu)參數(shù)優(yōu)化[D].沈陽:沈陽理工大學(xué),2014.
[4]李雪東,張平華,鄧知輝.基于直流電機(jī)控制與驅(qū)動(dòng)模塊的研究與應(yīng)用 [J].中國(guó)集成電路,2008(12):75-77.
[5]栗桂鳳,周東輝,王光昕.基于超聲波傳感器的機(jī)器人環(huán)境探測(cè)系統(tǒng)[J].傳感器與微系統(tǒng),2005,24(4):59-61.
[6]胡媛媛,鄧世建,王書婧.基于紅外光電傳感器的智能尋跡小車設(shè)計(jì)[J].電子設(shè)計(jì)工程,2011(7):141-143.
[7]王艷永,鄧方,孫健.改進(jìn)的自適應(yīng)神經(jīng)模糊推理系統(tǒng)的角度傳感器誤差補(bǔ)償方法[J].控制理論與應(yīng)用,2013(10):1342-1347.
[8]吳建平,殷戰(zhàn)國(guó),曹思榕,等.紅外反射式傳感器在自主式尋跡小車導(dǎo)航中的應(yīng)用 [J].中國(guó)測(cè)試技術(shù),2004(6):21-23.
[9]王博,郝文昌,王志超,等.自由擺平板控制系統(tǒng)的分析與設(shè)計(jì)[J].電子技術(shù),2012(8):43-47.
[10]張潔,劉萍,盧慧.基于單片機(jī)AT89C52的多功能探測(cè)小車設(shè)計(jì)[J].電子測(cè)量技術(shù),2014,37(8):85-88.
[11]李維軍,韓小剛,李晉.基于單片機(jī)用軟件實(shí)現(xiàn)直流電機(jī)PWM調(diào)速系統(tǒng)[J].機(jī)電一體化,2004(5):49-51.
[12]靳展,劉錚,林玉池.光電傳感器特性參數(shù)測(cè)試系統(tǒng)的設(shè)計(jì)[J].傳感技術(shù)學(xué)報(bào),2012(12):1678-1681.
[13]張曄,楊衛(wèi),岳元,等.基于熱釋電紅外傳感器探測(cè)距離影響因素的研究 [J].紅外與毫米波學(xué)報(bào),2010(6):448-451.
[14]周游,景艷梅,何文學(xué).智能尋跡系統(tǒng)設(shè)計(jì)[J].儀表技術(shù),2012(3):25-27.
[15]云中華,劉洪春,李勇峰,等.STM32的方位角度與傾斜數(shù)據(jù)測(cè)量?jī)x系統(tǒng)設(shè)計(jì)[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2015(10):35-36.
[16]鎖軍,劉翠翠,李樹芃,等.新型三相倍壓整流電路的研究與實(shí)現(xiàn)[J].西安工程大學(xué)學(xué)報(bào),2016,30(6):783-790.
[17]王亮,王文策,程斌,等.基于Simulink的發(fā)電機(jī)勵(lì)磁系統(tǒng)整流單元的建模與仿真 [J].陜西電力,2011(7):25-28.
[18]于 康,孫亞非,陳曉江.X射線衍射殘余應(yīng)力測(cè)試方法及應(yīng)用[J].火箭推進(jìn),2015(2):102.
[19]薛誠(chéng)尤,聶萬勝,何博.基于基元反應(yīng)的總包機(jī)理建模及算法優(yōu)化[J].火箭推進(jìn),2015(1):36.
Design and implementation of ball control system base on 51 small single-chip
ZENG Wei-peng1,CAI Li-sha1,HAN Bao-ru2
(1.Hainan Software Profession Institute,Qionghai 571400,China;2.Hainan University,Haikou 570102,China)
The system by controlling the pendulum level to achieve a small ball rolling,and according to the angle between the horizontal plane of the pendulum and the ball in the slot position to control the ball in a smooth U-groove to complete the various requirements of reciprocation requirements.This design takes STC89C52 microcontroller as the core,combined with angle sensor,photoelectric to tube,DC motor,LED,buzzer and LCM1602 liquid crystal screen.By LCM1602LCD display time and angle of four sets of data,comprising a shuttle,the location,period,error,a total of four sets of data.By 16 LED display real-time trajectory of the ball.Experiments show that the system meets the design requirements.
micro-control-unit;controlsystem of ball rolling;reciprocating motion
TN4
:A
:1674-6236(2017)08-0068-04
2016-03-24稿件編號(hào):201603325
2015年海南省教育科學(xué)規(guī)劃課題(QJY1251558)
曾維鵬(1982—),男,海南澄邁人,碩士,副教授。研究方向:智能診斷、智能規(guī)劃等。