《電子技術(shù)應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于SoPC的智能巡跡小車的設計
基于SoPC的智能巡跡小車的設計
來源:電子技術(shù)應用2013年第7期
紀金水,,劉彩虹
西北民族大學,甘肅 蘭州730000
摘要: 本設計以SoPC套件E-Play-1c12上配置的Cyclone系列FPGA芯片EP1C12Q240C8為控制單元,,加以直流電機,、光電傳感器、超聲波傳感器和電源電路以及其他電路構(gòu)成,??刂菩≤囋趯ぼ墔^(qū)能夠沿黑線行駛,并能在相應的區(qū)域加/減速,,進入尋光區(qū)后開始在光源的引導下到達終止線停止,。同時,在小車行駛過程中車首點陣式液晶滾動顯示字幕,,實時顯示小車行駛的時間及路程,。
中圖分類號: TP29
文獻標識碼: A
文章編號: 0258-7998(2013)07-0047-03
Design of intelligent track-seeking dolly based on SoPC
Ji Jinshui,Liu Caihong
Northwest Minorities University,,Lanzhou 730000,,China
Abstract: This design takes the Cyclone series FPGA CMOS chip—EP1C12Q240C8 as control unit. The Cyclone belongs to SoPC Series—E-Play1c12. Besides, the system also includes DC electric machineries, photo electricity sensors, ultrasonic sensors, power supply circuits and other circuits. The dolly is controlled to locomote along the black line in track-seeking zone and to accelerate or decelerate in special zone. In the light-seeking zone, the dolly is guided by lamp-house to locomote and stops at the end line. Meanwhile, the lattice LCD located in the head of the dolly shows the time and distance of the locomotion.
Key words : FPGA;SoPC,;photo electricity sensor,;test signal

     SoPC(System on a Programmable Chip)是一種特殊的嵌入式系統(tǒng)。首先它是片上系統(tǒng),,即由單個芯片完成整個系統(tǒng)的主要邏輯功能,;其次,它是可編程系統(tǒng),,具有靈活的設計方式,,可裁剪、可擴充,、可升級,,并具備軟硬件在系統(tǒng)可編程的功能[1]。SoPC技術(shù)是將盡可能大而完整的電子系統(tǒng)(包括嵌入式處理器系統(tǒng),、接口系統(tǒng),、硬件協(xié)處理器或加速系統(tǒng)、數(shù)字通信系統(tǒng),、存儲電路以及普通數(shù)字系統(tǒng)等)在單一FPGA中嵌入實現(xiàn),。因此,可以使得整個設計在規(guī)模、可靠性,、體積,、功耗,、功能,、上市周期、開發(fā)成本,、產(chǎn)品維護及其硬件升級等多方面實現(xiàn)最優(yōu)化[2],。從未來電子系統(tǒng)設計技術(shù)走勢上看,SoPC技術(shù)更具發(fā)展性和前瞻性,,被稱為“半導體產(chǎn)業(yè)的未來”[3-4],。

1 系統(tǒng)總體設計方案
    系統(tǒng)設計要求小車由起始端出發(fā)沿黑線行駛,在測到第一條黑線后有明顯的加速,,測到第二條黑線后有明顯的減速,,測到第三條黑線后開始尋光,測到第四條黑線后停止,。在行駛過程中,,車首液晶顯示屏實時顯示小車運行的時間和路程。下面給出兩種方案:
    (1)方案1:使用8051系列的單片機芯片,。8051系列的單片機芯片使用多年,,在市面上應用廣泛。各種電路也比較成熟,,但其速度相對較慢,,指令都是串行執(zhí)行,在增加液晶顯示等模塊后使得CPU對檢測電路的掃描變慢,。
    (2)方案2:使用E-Play-SoPC開發(fā)套件上的Cyclone系列FPGA芯片EP1C12Q240C8,。FPGA運算速度很快,且其進程以并列的形式執(zhí)行,,即使增加更多的功能模塊(在FPGA芯片的資源范圍內(nèi))也絲毫不影響對檢測信號的響應速度[5],。
    比較兩種方案,為使小車平穩(wěn)運行且功能更加智能化,,選擇了方案2,。
    系統(tǒng)整體框圖如圖1所示,主要由控制核心FPGA,、尋軌電路,、尋光電路、測障電路,、液晶顯示模塊,、電機驅(qū)動電路、LED指示燈指示模塊、語音提示模塊和點陣顯示模塊組成[6],。

2 硬件設計
2.1 尋軌電路

    尋軌電路采用兩對紅外線傳感器,,當傳感器未檢測到黑線時,紅外線接收管相當于短路,,比較器負向端的電位在4 V左右,;當檢測到黑線時,紅外線接收管相當于開路,,比較器負向端的電位在2 V左右,。因此,將比較器正向端電位器的比較電位調(diào)到3 V即可實現(xiàn)對黑線的檢測,。未檢測到黑線時電路輸出低電平,,檢測到黑線時輸出高電平。其實現(xiàn)電路如圖2所示,。

2.3 電機驅(qū)動電路
    小車采用雙輪驅(qū)動,,使用驅(qū)動芯片L293D,其工作電壓為9 V,。電機驅(qū)動電路如圖4所示,,引腳1和引腳9分別是電機輸出的控制引腳,當引腳1或引腳9為低電平時,,無論引腳2,、引腳7、引腳10,、引腳15的輸入為何值,,引腳3、引腳6,、引腳11,、引腳14的輸出都為低電平;當引腳1或引腳9為高電平時,,引腳3,、引腳6、引腳11,、引腳14輸出的電平與引腳2,、引腳7、引腳10,、引腳15輸入電平的高低相應,。

3 軟件設計
    本文設計的小車中,基本運行程序可分為黑線計數(shù)模塊,、尋軌模塊,、尋光模塊以及計時模塊、路程測量模塊、液晶顯示模塊,、LED指示燈指示模塊等輔助功能模塊,。其行駛程序流程圖如圖6所示。

 

 

    (1)尋軌模塊:在黑線數(shù)為0,、1,、2時執(zhí)行此模塊。當車底左端的傳感器檢測到黑線時,,小車的左輪停止轉(zhuǎn)動,,右輪按原速轉(zhuǎn)動;若右端的傳感器檢測到黑線,,則反之。當黑線數(shù)為0,、2時小車為減速狀態(tài),,通過對電機驅(qū)動芯片L293D的控制引腳輸出占空比為25%的方波信號實現(xiàn)。當黑線數(shù)為1時,,小車運行在加速狀態(tài),,此時直接電機驅(qū)動芯片L293D的控制引腳輸出高電平。
    (2)尋光模塊:當黑線數(shù)為3時運行本模塊,,當光強檢測電路的檢測信號為高電平時認為左端的光照較強,,小車左拐,反之右拐,。
    (3)路程測量模塊:在小車的車輪上有黑,、白相間且間距相同的扇形花紋,當車輪轉(zhuǎn)動時車輪內(nèi)側(cè)的光電傳感器產(chǎn)生高低變化的電信號,,經(jīng)過比較器比較產(chǎn)生脈沖信號,,控制芯片通過對脈沖計數(shù)并與標定的數(shù)值相乘得出小車行駛的路程。
    (4)LED指示燈指示模塊,,車首兩端分別有3個顏色分別為紅,、黃、綠的LED指示燈指示小車的速度,,綠燈亮時小車行駛在高速區(qū),,黃燈亮時小車行駛在低速區(qū),紅燈亮時小車到達終點停止,。車前部兩側(cè)各有一個LED指示燈指示小車拐動方向,,左拐時左燈亮,右拐時右燈亮,。車尾有4個LED指示燈指示小車已測黑線的數(shù)量,,每測一條黑線增加一個LED指示燈亮。
4 抗干擾措施
    需要對黑線檢測和障礙物檢測的信號采取抗干擾措施。具體如下:當檢測到黑線或障礙物時,,延時一段時間后再次檢測,,若還是黑線或障礙物,則確定其為黑線或障礙物,,否則認為其為干擾不予理睬[7],。具體實現(xiàn)程序如下:
    PROCESS(a,clk)
        VARIABLE m1,m2 : INTEGER RANGE 0 TO 8191;
        BEGIN
        IF clk=′1′ AND clk'EVENT THEN
            IF a=″00″ THEN
                m2:=0;
                IF m1=8190 THEN
                    m1:=0;
                    IF a=″00″ THEN
                        r1<=&prime;1&prime;;
                    END IF;
                ELSE
                    m1:=m1+1;
                END IF;
            ELSE
                m1:=0;
                IF m2=8190 THEN
                    m2:=0;
                    r1<=&prime;0&prime;;
                ELSE
                    m2:=m2+1;
                END IF;
            END IF;
            END IF;
        END PROCESS;
5 仿真測試
    仿真測試時序如圖7所示。其中,,A所指示的位置為車底的兩個光電傳感器同時檢測到黑線,,經(jīng)過去抖處理后黑線數(shù)目加1;B所指示的區(qū)域為高速區(qū),,小車高速行駛在此區(qū)域,,當車底一側(cè)的光電傳感器檢測到黑線時,小車相應地調(diào)整軌跡使其沿黑線行駛,;C所指示的區(qū)域為減速區(qū),,小車在此區(qū)域中行駛的速度較慢,約為高速區(qū)的1/4,,此區(qū)域中存在很多彎道,,當車底一側(cè)的光電傳感器檢測到黑線時,小車也相應地調(diào)整軌跡沿黑線行駛,;D所指示的區(qū)域為尋光區(qū),,小車進入此區(qū)域后立刻開始尋光并朝光線較強的方向行駛,小車在此區(qū)域中的速度與低速區(qū)相同,;E所指示的位置為終點,,當小車檢測到終點線后停止運行。由仿真圖可知,,小車在理想情況下可順利地通過高速尋軌區(qū),、低速尋軌區(qū)、尋光區(qū),,并在檢測到終點線后停止運行,。

    FPGA的運算速度非常快,,保證了小車的平穩(wěn)運行,,且其并行執(zhí)行過程讓點陣式液晶顯示更加方便。FPGA在程序并行控制方面充分顯示了其優(yōu)越性,,并且運行準確,。今后將會對本設計進行擴展以及更進一步的開發(fā)。
參考文獻
[1] 何偉,,秦江云,,張玲,,等.基于SoPC的多用途無線監(jiān)控報 警系統(tǒng)[J].電子技術(shù)應用,2011,,37(2):33-35.
[2] 周渝斌.基于FPGA+DSP的智能車全景視覺系統(tǒng)[J].電子技術(shù)應用,,2011,37(3):38-41.
[3] POUSSIER S,,RABAH H,,WEBER S.SoPC-based embedded smart strain gage sensor[C].12th International Conference, FPL 2002 Montpellier,F(xiàn)rance,,2002:1131-1134.
[4] Cao Liting,,Jiang Wei,Zhang Zhaoli.Automatic meter reading system based on wireless mesh networks and SoPC  technology[C].Intelligent Networks and Intelligent Systems,,ICINIS'09,,Second International Conference,2009:142-145.
[5] 雷伏容.VHDL電路設計[M].北京:清華大學出版社,,2007.
[6] 徐惠民,,安德寧.數(shù)字邏輯設計與VHDL語言描述[M].北京:機械工業(yè)出版社,2010.
[7] 薛小剛,,葛毅敏.Xilinx ISE9.x FPGA/CPLD設計指南[M].北京:人民郵電出版社,2007.

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。