<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 物聯(lián)網(wǎng)與傳感器 > 設計應用 > C51程序控制激光廣告儀系統(tǒng)

          C51程序控制激光廣告儀系統(tǒng)

          作者:蘇州卡歐電子股份有限公司,平川 時間:2004-06-18 來源:電子設計應用 收藏
          摘 要: 本文用AT89C51和C51程序來實現(xiàn)激光器掃描動態(tài)圖像,解決了用計算機時較難解決的圖像封口問題,對現(xiàn)有振鏡實時,能輸出簡單動態(tài)圖像。通過良好的實現(xiàn)情況,只要提高的速度和存貯器容量,即可顯示復雜的動態(tài)圖像。

          關鍵詞:單片機;;;控制

          引言
          當前,激光技術發(fā)展日趨完善,在基礎研究、醫(yī)療、機械、通訊等領域廣泛應用。目前多采用計算機進行可視化激光器控制,因為計算機有很高的速度和很大的存貯空間,可以控制大的系統(tǒng)。在控制中小型系統(tǒng)時,計算機的優(yōu)勢并不明顯,而且軟硬件復雜、成本較高。
          采用簡單的控制系統(tǒng)來取代計算機這樣復雜的系統(tǒng),可以解決以上問題。在一般控制系統(tǒng)中,單片機可以代替計算機,其中被廣泛使用的是AT89C51單片機,它具有結構簡單、價格便宜、控制性能良好、操作方便等優(yōu)點。
          該控制系統(tǒng),本質上是控制四路TTL電源電平,這方面作者作了一些有效嘗試。
          本文利用單片機及C51程序控制激光器,使其在顯示屏上描述圖像。圖像原始數(shù)據(jù)由AUTOCAD 等相關軟件生成PLT文件,再轉化成C51數(shù)據(jù)模式。該控制系統(tǒng)主體控制程序是C51程序,由它控制激光描繪出相應的圖像。

          單片機控制的激光廣告儀系統(tǒng)
          硬件系統(tǒng)組成
          控制系統(tǒng)主要分為以下四個部分。
          控制部分:AT89C51單片機,8MHz晶振。運行控制程序,向兩個芯片發(fā)送控制指令,完成芯片的選擇和數(shù)據(jù)的發(fā)送。
          部分:兩個DAC芯片DAC0832LCN。完成數(shù)字信號向模擬信號的轉換,在確認被選中后,對送上端口的8位數(shù)字信號進行轉換。
          信號放大部分:兩組雙運算放大器HA17741。將數(shù)字圖像轉換成電壓量,然后輸出兩路電源給光學掃描系統(tǒng),控制X,Y軸振鏡。
          開關電源: 通過單片機的p1.4和p1.5端口,輸出“1”或“0”來關閉和打開兩路紅綠激光電源。
          三色激光廣告儀系統(tǒng)原理簡圖和構成
          原來的三色激光廣告儀中的控制系統(tǒng)由計算機完成,現(xiàn)在由單片機來取代,如圖1所示。單片機通過導入其中的C51程序來控制四路電平的輸出。光學振鏡掃描系統(tǒng)(上海通用掃描公司生產(chǎn),型號為6001S)中X、Y軸振鏡步進機接受從運算放大器輸出的模擬電壓信號。正常的輸入電壓范圍為±10V,系統(tǒng)設定±40o光學掃描角,單片機控制系統(tǒng)中輸出電壓范圍為± 5V,所以對應的光學掃描角為±20o,這樣的角度范圍滿足實驗要求。
          其余SW1,SW2兩路控制激光電源,一路是670nm的紅色激光,另一路是532nm的綠色激光。運行程序控制激光發(fā)光及激光顏色,最后在演示屏幕上顯示所要求的圖像。


          圖1 三色激光廣告儀系統(tǒng)原理簡圖


          圖2 雙極性輸出電路圖


          圖3 C51語音程序流程圖


          圖4 動態(tài)顯示的橢圓和靜態(tài)矩形

          ?同步輸出
          兩路D/A輸出要求嚴格同步,采用圖中接法,把數(shù)字量的輸入鎖存兩路D/A轉換輸出,實現(xiàn)同步控制X、Y軸振鏡步進機。
          當振鏡的響應頻率遠遠低于CPU數(shù)據(jù)傳輸速率,同步和異步之間的輸出差異將忽略,該系統(tǒng)也可采用異步輸出。
          ?雙極性輸出
          振鏡的轉動不僅與輸出模擬電壓大小有關,而且與輸出模擬電壓的極性有關。所以在每個DAC后要用兩個運算放大器來實現(xiàn)雙極性輸出,如圖2所示。雙極性輸出是在單極性輸出的基礎上再加一級電壓放大器,最終輸出的電壓為。
          本系統(tǒng)中VREF=+5V,所以輸出的雙極性電壓范圍為±5V。當單片機向DAC0832輸出的數(shù)字量為0H(0)時,VOUT2=-5V;當輸出的數(shù)字量為80H(128)時,VOUT2=0;當輸出的數(shù)字量為FFH(255)時,VOUT2=+5V。
          軟件系統(tǒng)
          ?AUTOCAD 的PLT文件
          獲得圖像的原始數(shù)據(jù)一個基本方法,就是通過AUTOCAD 生成的PLT文件,PLT文件記錄了圖像在屏幕上坐標值。一般來講,對圓弧而言,就是若干個微小的線段連接而成,每一個線段都有起始兩點,由于圓弧是許多微小線段構成,所以坐標點很多,當激光掃描這些坐標點時,就能顯示相關的圖形。PLT文件是HP繪圖儀的命令語句, PLT 文件由幾乎可讀的ASCII碼組成,容易生成和調(diào)試。
          對其中一些重要參數(shù)的解釋:
          IN (initial):初始化,設置所有參數(shù),將畫筆移至原點。
          SC (scale):定標,坐標值的范圍。
          LT (line type):線型,一般為實線。
          SP (select pen):選擇筆型。
          PU (pen up):起筆。
          PD (pen down):落筆。
          PA (pen allocate):定位筆,其后數(shù)據(jù)是X、Y軸坐標。
          從使用角度,真正有用的是PA后的X、Y軸坐標,也是必須轉換的數(shù)據(jù)部分,這也是PLT文件主體部分,集中了大量數(shù)據(jù),提取PA后的坐標值簡化成TXT文件,再拷貝到C51程序中。
          ?TURBO C++ 相關程序段和解釋
          該TURBO C++ 轉換程序主要功能是對PLT文件中的圖像數(shù)據(jù)進行轉換,把不適合的PLT文件數(shù)據(jù)格式轉換成適合的數(shù)據(jù)格式。C51語言數(shù)據(jù)格式為0至255的十六進制的數(shù)據(jù),如:34,d6,fe 等格式,255對應的十六進制的數(shù)為 ff。PLT文件的數(shù)據(jù)在零到數(shù)萬正負之間,因此必須要對數(shù)據(jù)進行轉換。
          ?C51程序流程圖和解析
          C51程序是控制激光器的主體程序,分成三個主要部分:選擇DAC芯片,數(shù)據(jù)指針指向數(shù)據(jù)表,數(shù)據(jù)輸出轉換。
          這些數(shù)據(jù)代表電壓值,由于單片機數(shù)據(jù)位是8位,電壓的輸出在± 5V之間。把電壓分成256份(28)。80h對應的是0V,ffh 對應的是+5V,00h對應的是- 5V。其輸出的電壓值精度就是10/256V,約為39mV。
          流程圖如圖3所示。C51語言相關程序段和解釋:
          1.打開激光器:把p1.4和p1.5 端口置成低電平來打開紅綠兩路激光器, 當然也可打開其中任一路顏色的激光器,顏色合成就是通過打開不同顏色的激光器來實現(xiàn)的。
          P1^=16:打開 5 V 電源,開綠激光器,關紅激光器;
          P1=0xfd:打開 5 V 電源,開紅激光器,關綠激光器。
          2.存貯圖形數(shù)據(jù):
          unsigned char data x[]={0x3f,0x44,0x54,0x66,0x43,0x60};
          unsigned char data y[]={0x3f,0x44,0x54,0x66,0x43,0x60}
          其中,x[]和y[]分別代表圖形的X軸和Y軸的坐標,由上述的PLT文件中的數(shù)據(jù)轉化而來。
          3.選擇第一DAC:當DAC的片選端口為低電平時,即選中。
          P1^=8:即選中第一個芯片、不選第二個芯片;
          P1=0xfb:即選中第二個芯片、不選第一個芯片。
          4. x[]和y[]的值分別送到P0端口被DAC鎖存:
          P0=x[i];
          P0=y[i]
          5. x[]和y[]的值同時由DAC轉換輸出。
          6. 延時:光學振鏡偏轉時需要一定的時間,所以在給振鏡端口送電平時,太快則振鏡來不及響應,太慢則影響圖形顯示速度,因此電平之間的延時要取適當。延時值的設置相對于所用設備而言,如DAC、運算放大器等,因此延時須考慮所用設備的性能。

          實驗結果
          控制系統(tǒng)經(jīng)過調(diào)試,單片機可以控制激光廣告儀輸出動態(tài)圖像。在實驗調(diào)試中,使用了綠色激光完成了動態(tài)橢圓縮放和靜態(tài)矩形的演示。動態(tài)顯示的實現(xiàn)原理是控制激光以適當?shù)臅r間間隔依次顯示大中小三個不等的橢圓,調(diào)整顯示速度可造成動態(tài)效果,實現(xiàn)橢圓的縮放。圖4所示顯示大中小三個不等橢圓和矩形照片組。
          通過圖中照片的效果,給出如下幾點說明:
          1、橢圓圓弧光滑連貫:說明圖像中數(shù)據(jù)都被顯示出來,失真很小,在人眼觀察的允許范圍之內(nèi),從矩形直角和圓弧封口的顯示能看出圖像中數(shù)據(jù)已經(jīng)按要求顯示。如果橢圓的圓弧不光滑連貫或直角的角度不標準,即存在失真,說明圖像中有坐標點丟失。針對控制系統(tǒng)來說,就是由坐標點代表的電壓值沒有全部送到光學振鏡,或者光學振鏡對端口電壓來不及反應,而造成圖像失真。在實驗中所用光學振鏡是0.5V/機械偏轉角,如果往振鏡端口傳輸數(shù)據(jù)太快,即延時太短,光學振鏡來不及反應,而造成數(shù)據(jù)丟失。延時長的話,會影響輸出圖像連貫性,不是整個圖像。因此必須要考慮選擇適當?shù)难訒r,在該控制系統(tǒng)中延時幾微秒即滿足振鏡時間要求。
          2、顯示圖像的點數(shù):圖像復雜程度一般是由其點數(shù)決定,圖形越復雜,其描述的點數(shù)也必然越多,因此圖像越復雜就越難顯示。這里存在兩個原因,第一,存放數(shù)據(jù)的存貯器容量有限制,不能存貯很多的數(shù)據(jù),需要做相應的擴展。第二,振鏡偏有轉速和時間響應限制。對人眼來說,要看到是一個完整的連續(xù)的圖像,當數(shù)據(jù)很多時將花費很多時間,使人觀測到的是不完整的圖像,而造成失真。第三單片機數(shù)據(jù)位是8位對應256狀態(tài),當數(shù)據(jù)很多時必須提高數(shù)據(jù)位。
          3、圖像拉絲:即在顯示兩個或多個圖形時,在圖形之間存在不必要的連線。由于沒有關閉激光器而使得本來沒有聯(lián)系的圖形聯(lián)系在一起,這不是圖形失真。在程序中及時關閉激光器,就能解決這個問題,這要求激光電源有比較好的時間響應。

          結語
          該控制系統(tǒng)的良好實現(xiàn)情況表明,單片機系統(tǒng)能實時控制激光廣告儀。該控制系統(tǒng)比較突出的優(yōu)點:第一、順利地解決以前計算機較難解決的圖像封口這一麻煩的問題,用矢量法描述圖形時,8位數(shù)據(jù)精度已經(jīng)滿足解決圖像封口要求,排除了因為數(shù)據(jù)精度不夠而引起圖像封口的可能。第二、有比較好響應速度,能夠滿足目前光學振鏡的響應時間,能按要求進行實時控制。第三、由于C51編程簡單,代碼率高,而對于機器的配置要求不高,降低了激光廣告儀的成本。對于激光在其他方面的應用,也可采用單片機取代計算機實現(xiàn)控制?,F(xiàn)在所做的控制系統(tǒng)存貯容量是4K,已能描繪一些簡單動態(tài)圖像。當采用高速的CPU和高容量Flash存貯器時,就能顯示復雜的圖像,乃至可能做成激光電視和激光電影?!?/P>

          參考文獻
          1 戴梅萼.微型計算機原理及技術應用.清華大學出版社.1999(1)
          2 何立民.單片機應用系統(tǒng)設計.北京航空航天大學出版社.1996(3)
          3 周葉,高榮芳.數(shù)據(jù)結構與C++.西安交通出版社.1999(11)
          4 宛延.C++語言和面向對象程序設計.清華大學出版社.1998(10)
          5 李華等.MCS-51系列單片機使用接口技術.北京航空航天大學出版社.2001(5)
          6 梁合慶.從80x86C語言到8051C語言.南京神脈技術公司出版.1997(6)


          c++相關文章:c++教程


          雙控開關相關文章:雙控開關原理


          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();