久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

求助,根據ds1302得出的時間進行太陽追蹤 單片機程序問題

查看數: 2244 | 評論數: 7 | 收藏 0
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2020-4-6 12:33

正文摘要:

我想根據制作一個可以調節的ds1302時鐘,再根據時鐘計算出太陽高度角和方位角來進行太陽追蹤 可是我的程序卻不能用按鍵將改好的時間寫入ds1302 有高手能看下哪里不正確需要改嗎 單片機源程序如下: #inc ...

回復

ID:671688 發表于 2023-3-9 14:01
求仿真跟程序,學習一下
ID:678200 發表于 2020-4-9 17:57
求仿真跟程序,學習一下
ID:710256 發表于 2020-4-7 12:49
Y_G_G 發表于 2020-4-7 09:36
你這估計是太陽能之類的,那天氣不好的話,太陽能還有什么用呢?沒有太陽,轉哪不都一樣的嗎?有了太陽,就調整 ...

我主要是實現在白天實現全天候的太陽追蹤所以需要兩種方式一起用,至于經度的校正沒有進行,不需要太精確,能力有限,看了一堆資料被一大堆公式繞了進去
ID:401564 發表于 2020-4-7 09:36
astlaqwq 發表于 2020-4-6 20:37
用采光跟蹤只是其中一部分還要與軌跡跟蹤相配合,光強不夠,天氣不好就啟用軌跡跟蹤

你這估計是太陽能之類的,那天氣不好的話,太陽能還有什么用呢?沒有太陽,轉哪不都一樣的嗎?有了太陽,就調整一下不就得了
而且,這經度時間什么的,你算過時區沒有呀?我們用的是北京時間,你家在北京嗎?大年三十的時候,新疆那邊可是晚上八九點才天黑的
冬天和夏天的太陽軌跡也是不一樣的
采光跟蹤已經可以解決很多問題
ID:710256 發表于 2020-4-6 20:37
Y_G_G 發表于 2020-4-6 17:25
用4個光敏電阻通過實時采光跟蹤它不好嗎?
冬天下午3點和夏天的下午3點,這太陽的方向是不一樣的呀

用采光跟蹤只是其中一部分還要與軌跡跟蹤相配合,光強不夠,天氣不好就啟用軌跡跟蹤
ID:710256 發表于 2020-4-6 17:51
這是算太陽角度,和主程序,望大佬指正

  1. /*計算太陽角度*/
  2. void anglecalculate()
  3. {  
  4.    int     leap;
  5.    uint    year,mon,day;
  6.    uint    hour,min,sec;
  7.    uint    DayAdd;
  8.    uchar   DecAngle,HourAngle,DecAngle1;
  9.    uchar   EleAngle,AziAngle,AziAngle1;
  10.    year=(time[6]>>4)*10+(time[6]&0x0f)+2000;
  11.    mon=(time[4]>>4)*10+(time[4]&0x0f);
  12.    day=(time[3]>>4)*10+(time[3]&0x0f);
  13.    hour=(time[2]>>4)*10+(time[2]&0x0f);
  14.    min=(time[1]>>4)*10+(time[1]&0x0f);
  15.    sec=(time[0]>>4)*10+(time[0]&0x0f);
  16.    leap=(year%4==0&&year%100!=0)||(year%400==0);閏年計算
  17.    switch(mon)
  18.           {
  19.             case 1:
  20.                   DayAdd=(day);break;
  21.             case 2:
  22.                   DayAdd=31+day;break;
  23.             case 3:
  24.                           DayAdd=31+28+day;break;
  25.             case 4:
  26.                           DayAdd=31+28+31+day;break;
  27.             case 5:
  28.                           DayAdd=31+28+31+30+day;break;
  29.             case 6:
  30.                           DayAdd=31+28+31+30+31+day;break;
  31.             case 7:
  32.                           DayAdd=31+28+31+30+31+30+day;break;
  33.             case 8:
  34.                       DayAdd=31+28+31+30+31+30+31+day;break;
  35.             case 9:
  36.                           DayAdd=31+28+31+30+31+30+31+31+day;break;
  37.             case 10:
  38.                           DayAdd=31+28+31+30+31+30+31+31+30+day;break;
  39.             case 11:
  40.                           DayAdd=31+28+31+30+31+30+31+31+30+31+day;break;
  41.             case 12:
  42.                           DayAdd=31+28+31+30+31+30+31+31+30+31+30+day;break;
  43.                 default:
  44.                       break;         /*cout<<"月份輸入錯誤!*/
  45.           }
  46.   if(leap&&(mon>=3))
  47.   DayAdd=DayAdd+1; //當前天數  
  48.   DecAngle=(23.45*sin(2*PI*(284+DayAdd)/365))*PI/180;//計算赤緯角
  49.   DecAngle1=(23.45*sin(2*PI*(284+DayAdd+1)/365))*PI/180;//計算第二天赤緯角
  50.   HourAngle=(12-(hour)-(min)/60.0-(sec)/3600.0)*PI/12;//計算時角
  51.   EleAngle=asin(sin(LAT)*sin(DecAngle)+cos(LAT )*cos(DecAngle)*cos(HourAngle));//計算高度角
  52.   AziAngle=acos((sin(EleAngle)*sin(LAT )-sin(DecAngle))/(cos(EleAngle)*cos(LAT )));//計算方位角
  53.   AziAngle1=acos((0-sin(DecAngle1))/cos(LAT ));//計算第二天的方位角
  54.   angle[0]=EleAngle;
  55.   angle[1]=AziAngle;
  56.   angle[2]=AziAngle1;
  57.   
  58.      
  59. }/*視日軌跡追蹤*/
  60. void trackgo()
  61. {
  62.     uchar h,f;
  63.     uchar y,z;
  64.     uchar p,q;
  65.     uchar c=0,d=0;

  66.    
  67.     h=angle[0];//得到高度角
  68.     f=angle[1];//得到方位角
  69.     y=(f-c)/5;//計算方位電機需旋轉圈數
  70.     z=(h-d)/1;//計算高度電機需旋轉圈數
  71.     c=f;
  72.     d=h;
  73.     if(y!=0)
  74.     {              
  75.       for(p=0;p<y;p++)
  76.        {
  77.         GoA1();
  78.        }
  79.      }
  80.     else
  81.      {  
  82.        if(z!=0)
  83.         {            
  84.          for(q=0;q<z;q++)
  85.           {
  86.             GoB1();
  87.            }
  88.          }
  89.       }            
  90.     P2=0x00;
  91. }
  92. //函數:void main()功能:主函數,初始化
  93. void main()
  94. {
  95.     uchar psec=0xaa;
  96.     uchar time_30s=0;
  97.     uint getdata;
  98.     float temp;
  99.    
  100.     P2=0x00;
  101.         time_500ms = 0;
  102.         flag_js = 0;
  103.         count1 = 1;
  104.         count2 = 1;

  105.     InitDS1302();
  106.     timer_init();
  107.     Out_Init();
  108.    LCD_init();
  109.        
  110.     delay_ms(50);

  111.     E_W_ANGLE=read2543(0x00);
  112.     S_N_ANGLE=read2543(0x10);
  113.     LIGHT_DETECTION=read2543(0x20);
  114.    
  115.         while(1)
  116.         {
  117.       
  118.        if(time_500ms == 50)
  119.        {
  120.             time_500ms=0;
  121.             DS1302BurstRead(time);//獲得時間
  122.             key();
  123.             anglecalculate();
  124.             if(psec!=time[0])
  125.              {                       
  126.                            disp(flag_js); //用液晶顯示時間
  127.                psec=time[0];
  128.               }
  129.             time_30s++;
  130.         
  131.             if(time_30s==6)//3s判定一次方位
  132.              {
  133.                  time_30s=0;
  134.                  getdata=read2543(0x20);
  135.                  getdata=read2543(0x20);
  136.                  getdata=read2543(0x20);
  137.                  temp=(float)getdata/4095*500;
  138.                  LIGHT_DETECTION=temp;//當前光照強度
  139.                  temp=0;

  140.                  if(LIGHT_DETECTION<300&&LIGHT_DETECTION>100)//光強不足啟用視日軌跡追蹤
  141.                   {
  142.                      trackgo();           
  143.                    }            
  144.             }
  145.       
  146.             startgo();
  147.        }
  148.         }
  149. }
復制代碼
ID:401564 發表于 2020-4-6 17:25
用4個光敏電阻通過實時采光跟蹤它不好嗎?
冬天下午3點和夏天的下午3點,這太陽的方向是不一樣的呀

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩一区二区三区在线 | 国产一区二区三区 | 国产男女猛烈无遮掩视频免费网站 | 亚洲精品一区二三区不卡 | 亚洲最大成人综合 | 亚洲日韩中文字幕 | 欧美日韩久久精品 | 亚洲一区二区视频在线观看 | 在线亚洲人成电影网站色www | aa级毛片毛片免费观看久 | 精品国产一区二区三区性色 | 国产一区二区在线播放视频 | 国产精品久久久久久久午夜片 | 国产一区二区三区在线 | 中文字幕精品一区二区三区精品 | 日日想夜夜操 | 999精品视频 | 国产一区二 | 久久久精品综合 | 国产亚洲精品成人av久久ww | 午夜精品一区二区三区在线观看 | 国产精品成人一区二区三区 | 99精品国产一区二区三区 | 99精品视频一区二区三区 | 黄色成人在线网站 | 欧美黄色免费网站 | 欧美精品在线播放 | 欧美综合视频在线 | 色欧美综合 | 午夜免费精品视频 | 成人免费观看男女羞羞视频 | v亚洲| 欧美日韩精品久久久免费观看 | 国产1区2区在线观看 | 精品国偷自产在线 | 欧美在线观看一区二区 | 一级片在线观看视频 | 欧美精品成人 | 国产激情片在线观看 | 久久精品国产亚洲夜色av网站 | 亚洲三级av |