基于FPGA的激光筆輔助教學系統設計實現
摘要為了實現激光筆與大屏幕的互動基于常用的OV9650攝像頭模塊和315MHz無線收發模塊采用了一種FPGA架構實現激光筆與大屏幕互動的設計方案OV9650攝像頭模塊的采集信號由FPGA進行緩存和處理由它計算出激光點的坐標之后計算機接收激光點的坐標及激光筆發出的無線控制信號通過授課主機端的軟件實現激光筆與大屏幕的互動目前該系統已應用于上海交通大學部分智能教室中效果明顯
關鍵詞激光筆互動亮點識別FPGAOV9650無線收發
0引言
在多媒體教學的普及過程中普遍存在如何引進現代化教學設備與教師課堂教學習慣有機結合的問題目前教師在做教學演示的過程中往往需要守在計算機旁邊一邊操作計算機一邊進行講解需要重點強調的地方還要不時地站起身來指指點點本來提供方便的多媒體演示設備卻把教師豐富的課堂語言都束縛了為了解決這個問題本文設計并實現了一個基于FPGA的激光筆輔助教學系統以便讓教師可以通過激光筆在遠處與計算機系統進行交互
基于FPGA的激光筆互動教學系統的實現原理是首先通過OV9650攝像頭模塊拍攝到投影屏并在攝像頭捕捉圖中檢測到激光點的位置信息后通過跟蹤來分析和識別激光點的軌跡同時通過激光筆上的按鍵信息來共同實現激光筆與遠程計算機的交互在激光點的檢測方法中用到了不同的線索如激光點的運動特征和模式特征以及顏色特征等由于激光點的區域很小模式特征不是很明顯易受到噪聲的干擾而激光點顏色特征不同的使用環境中可以有較大的變化因此單純使用顏色特征也不是很好的辦法文獻提出將激光點的顏色特征運動信息和形狀特征這幾種線索融合起來進行激光點的檢測可使準確率得到一定的提升但是仍然存在漏檢和誤判的情況
該系統通過濾光片的使用基本排除了噪聲的干擾使系統的準確率得到大大的提升文獻公開了一種激光筆指示與光點識別方法利用亮度信息從顯示屏圖像提取紅色激光點亮點識別原理與本文一致但是由于使用的是固定槍式攝像頭故安裝調試不方便Cavens等通過改變硬件方法實現點擊功能在普通激光筆上增加了按鍵接收器根據按鈕發射頻段的不同判斷操作類型但是使用起來效果比較單一文獻分別使用了不同方法來實現激光筆的互動但都比較單一不夠完善然而在對激光點的行為進行描述上文獻提到的激光筆互動系統使用起來非常復雜本文提出的系統通過FPGA將攝像頭模塊亮點識別算法模塊以及無線收發模塊集成在一起使得系統部署方便使用更為靈活
1系統整體設計方案
點擊此處查看全部新聞圖片
基于FPGA的激光筆互動教學系統主要是為在智能自然教學空間中授課的教師提供一種輔助工具幫助他們在課程講義上進行各種指示動作或軌跡繪制以及遠距離進行各種操作從而使教學過程更生動教師的行動更自由為完成提供交互式教學場景的任務系統的總體設計遵循方便實用效率的原則使教師和學生都感到自然黑板更具有特色圖1是基于FPGA的激光筆互動系統的總體結構框圖它主要由嵌入式模塊激光筆授課主機和投影屏幕4大部分組成
教師通過激光筆這一交互工具在顯示屏幕上留下光點通過紅光濾光片及OV9650攝像頭獲取顯示屏幕的信息并通過FPGA模塊中的亮點識別算法獲取視頻圖像每一幀中的光點位置這樣的坐標信息送至授課主機通過坐標變換將亮點位置變換為自身的屏幕坐標位置并進行軌跡繪制放大鏡操作或鼠標操作結果通過投影或VGA線纜連接在顯示屏幕上展示出來除此以外激光筆本身和FPGA模塊通過無線連接FPGA模塊與授課主機通過USB線纜連接利用筆上的按鈕控制整個系統的啟動和中止以及軌跡繪制放大鏡操作和鼠標操作之間的功能切換系統邏輯流程如圖2所示
2系統硬件設計與實現
2.1無線發射激先筆設計
無線發射激光筆可以產生穩定可靠的激光光點另外有5個功能按鍵分別發射不同的控制信息根據設計要求將激光頭分為按鍵編碼模塊和無線發射模塊設計框圖如圖3所示在此采用了PT2262/PT2272編解碼芯片其中PT2262為編碼芯片PT2272為解碼芯片基于PT2262的工作方式設計了6按鍵的編碼電路方案如圖4所示K0~K5為6個按鍵分別對應數據位D0~D5當所有按鍵都斷開時晶體管Q1截止電路中沒有電流芯片不工作當6個按鍵中任意一個被按下時R1和按鍵的下拉電阻分壓使得Q1的基極電壓下降Q1導通PT2262芯片開始工作指示燈D1工作此時除了閉合的按鍵所對應的數據位為邏輯高電平之外其他位為低電平
無線發射模塊的功能是將按鍵信息編碼調制到高頻載波上并發送載波頻率為315MHz調制方式為幅度調制發射后的信號可由系統的無線接收模塊進行接收并解碼
2.2無線接收模塊
無線接收模塊用以接收激光筆發射端的控制信號它主要包括接收解調和信號解碼兩個部分為了達到較高靈敏度的目的選擇超再生接收作為接收端的接收解調方案其電路原理如圖5所示信號通過天線接收首先經過L2和C23濾出315MHz附近的頻段信號Q1為第一極放大放大特性通過R18和R17施加偏置電壓控制Q2為超再生混頻管其本身通過C15C16和L1構成的選頻網絡產生315MHz附近的本征振蕩然后與前級放大后的信號進行混頻如果本征頻率與315MHz足夠接近混頻后將產生低頻分量該分量即為調制到載波上的編碼信號
解碼芯片采用PT2272與PT2262配套使用PT2272有多種型號后綴可以為L4M4L6M6等后綴中的L表示鎖存數據輸出M表示瞬態輸出這采用PT2272-M6解碼后的控制信號經FPGA處理后輸出
2.3FPGA采集處理及數據傳輸
在系統的總體設計上采用Altera公司的EP2C8Q208C8FPGA芯片作為系統的主控芯片配合OMNIVISION公司的OV9650數字CMOS圖像傳感器和ISSI公司的IS42S16160B片外SDRAM存儲芯片來構建攝像頭激光點采集處理系統采集到的圖像可由VGA模塊顯示激光點可利用其較高的亮度信息與背景色進行分辨區分計算出的激光點坐標以及無線接收的控制信息以串口數據的方式發送經片外CP2102串口轉USB模塊可使數據通過USB口發送到授課主機該系統的總體結構方框圖如圖6所示
FPGA模塊是該系統的核心模塊它將數據采集圖像處理圖像存儲控制圖像顯示控制坐標計算及串口傳輸控制等功能集成到一片芯片上該系統采用Altera公司的EP2C8Q208C8FPGA芯片它擁有5256個邏輯單元LE36個M4K2個PLL和18個嵌入式乘法器還擁有最多138個通用I/O口它能提供足夠多的擴展口以滿足系統的所有要求另外OV9650攝像頭基于CMOS圖像傳感器技術最大輸出圖像分辨率為SxGA1280×1024OV9650支持多種圖像格式包括10位或者8位的原始RGBRGB565RGB555GBR[422]YUV等多種格式且具備自動圖像控制功能包括自動曝光控制AEC自動增益控制AGC自動白平衡AWB以及自動濾波ABF等以上各個參數都可以通過芯片的SCCB接口進行設置SCCB是OMNWISION公司定義的串行相機控制總線主要用于對該公司研發的系列圖像芯片寄存器進行設置OV9650有多個寄存器這些寄存器主要用于對圖像格式和圖像質量的控制用戶可以通過SCCB總線對這些寄存器進行讀/寫操作
3系統軟件設計與實現
該教學系統的軟件部分可以分為屏幕校準模塊和屏幕顯示模塊
3.1屏幕校準模塊
由于在OV9650攝像頭所采集到的圖像信息中無法準確地只包含顯示屏幕的信息而不含其他成分且顯示屏幕在視頻圖像中往往不是規則的四邊形而是帶有較小曲率的類似四邊形因此需要進行屏幕校準步驟使圖像信息中的坐標轉換為顯示屏幕對應的坐標這種轉換采用線性代數的方法公式如下
式中為轉換后坐標為轉換前坐標Ad為轉換參數通過計算初始采集圖像中屏幕的4個頂點坐標值得到
該系統中的這種轉換及需要的定位位置要在系統啟動時期以獲取并將轉換矩陣固定這樣對每個坐標值的轉換可在常數時間內完成
3.2屏幕顯示模塊
屏幕顯示模塊主要完成軌跡繪制鼠標操作和放大鏡操作的實現該模塊的邏輯流程如圖7所示
圖7中屏幕顯示模塊的輸入來自屏幕校準模塊校準后的激光點坐標信息輸出為軌跡繪制的顯示鼠標操作的響應或放大鏡操作的響應具體來說這三種輸出是該系統功能模式的實現分別為
繪圖模式使用激光筆在屏幕上描繪屏幕上出現對應的軌跡同時可以通過激光筆上的按鍵實現幻燈片的上下翻頁及擦除屏幕軌跡的操作
鼠標模式使用激光筆在屏幕上的指示位置屏幕上的鼠標發生移動并可通過激光筆上的按鍵實現鼠標左擊及右擊的操作
放大鏡模式使用激光筆在屏幕上的指示位置屏幕上對應的區域會進行局部放大并且屏幕上的放大區域會隨著光點發生移動為了防止操作激光筆時由于手的輕微抖動使屏幕產生輸出本系統采用了閾值的方法對這一情況進行了限制具體算法如圖8所示
4系統的整體實施結果
基于FPGA的激光筆互動教學系統功能測試效果如圖9所示從圖中可以看出基于FPGA的激光筆互動教學系統完全實現了預先設定的邏輯功能在實際使用中能大大方便智能教室的教學提高教學質量
5結語
激光筆互動教學具有如下有益效果能夠豐富教學環境提供給教師一種更新的教學模式可使教師的教學工作更加連貫和自由在其他環境中通過遠程指示特性各種人機交互設備可被修改為遠程指示性設備避免人力直接接觸屏幕提高設備的可靠性同時該系統采用FPGA將攝像頭模塊光點識別算法模塊及無線接收模塊集成在一起使得FPGA模塊成為惟一的外設方便安裝部署從而使得系統不僅僅局限于教室這一場景大大提高了這套系統的實用性未來的工作主要是將FPGA模塊與授課主機的通信方式由USB線纜通信升級為藍牙通信進一步增加系統的靈活性及實用性