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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ATmega8的雙軸太陽跟蹤器設(shè)計(jì)

          基于ATmega8的雙軸太陽跟蹤器設(shè)計(jì)

          作者: 時(shí)間:2010-04-23 來源:網(wǎng)絡(luò) 收藏


          2 器軟件
          器軟件采用單片機(jī)C語言,選用ICCAVR編譯器,主要包括主程序、光電子程序、視日運(yùn)動(dòng)軌跡跟蹤子程序等。
          2.1 跟蹤主程序
          主程序初始化單片機(jī)相關(guān)功能模塊,巡回檢測(cè)光電檢測(cè)模塊的信號(hào),判斷當(dāng)前工作在光電跟蹤還是視日運(yùn)動(dòng)軌跡跟蹤控制方式,進(jìn)而驅(qū)動(dòng)步進(jìn)電機(jī)驅(qū)動(dòng)器控制能利用裝置始終正對(duì)太陽。其主程序流程如圖5所示。

          本文引用地址:http://www.ex-cimer.com/article/173362.htm


          2.2 光電跟蹤子程序
          光電檢測(cè)模塊探測(cè)太陽位置,通過的ADCx引腳送入單片機(jī),經(jīng)過A/D轉(zhuǎn)換通過信號(hào)差值判斷太陽能利用裝置是否正對(duì)太陽,直到調(diào)整太陽能利用裝置對(duì)準(zhǔn)太陽,然后再返回主程序。光電跟蹤子程序流程如圖6所示。


          2.3 視日運(yùn)動(dòng)跟蹤子程序
          所謂程序跟蹤就是跟蹤太陽高度角和方位角。雖然太陽的位置時(shí)刻都在變化,但其運(yùn)行具有嚴(yán)格的規(guī)律性,在地平坐標(biāo)中,太陽的位置可由高度角α與方位角ψ來確定。

          式中,δ為太陽赤緯角;φ為當(dāng)?shù)氐木暥冉?;ω為時(shí)角。
          太陽赤緯角與時(shí)角由本地時(shí)間確定,而對(duì)于確定的地點(diǎn),本地的緯度角也是確定的,因此只要輸入當(dāng)?shù)叵嚓P(guān)地理位置與時(shí)間信息就可確定此時(shí)刻的太陽位置。視日運(yùn)動(dòng)軌跡跟蹤子程序流程如圖7所示。



          3 結(jié)束語

          該太陽跟蹤器以單片機(jī)為核心,外圍電路簡單,性能穩(wěn)定可靠,跟蹤精度高,能自動(dòng)識(shí)別天氣狀況,使光電跟蹤和視日運(yùn)動(dòng)軌跡跟蹤控制方式的優(yōu)點(diǎn)得到有效互補(bǔ),但在抗風(fēng)和掉電保護(hù)等方面還需進(jìn)一步研究。由于該太陽跟蹤器結(jié)構(gòu)簡單,價(jià)格低廉,所以具有發(fā)展?jié)摿?,可廣泛應(yīng)用于太陽灶、太陽能光伏(平板和聚光)發(fā)電系統(tǒng)、太陽能聚焦熱水器系統(tǒng)、太陽能制氫、太陽能集能器等那些需實(shí)時(shí)精確跟蹤太陽的應(yīng)用領(lǐng)域。


          上一頁 1 2 下一頁

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁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); })();