新聞中心

EEPW首頁 > 電源與新能源 > 設(shè)計應(yīng)用 > 智能追光鋰電充電系統(tǒng)設(shè)計

智能追光鋰電充電系統(tǒng)設(shè)計

作者: 時間:2014-07-24 來源:網(wǎng)絡(luò) 收藏

(7)追光控制

本文引用地址:http://m.butianyuan.cn/article/258302.htm

方案一:采用雙舵機,搭建舵機云臺。此方法可以全方位的追光,但是在實際使用中,舵機存在“搶電”的現(xiàn)象,會給供電電壓帶來較大的波動,甚至會產(chǎn)生較強的抖動,不利于控制,也不利于電能的收集。

方案二:只采用一個舵機,并結(jié)合機械追光。經(jīng)查閱資料,當電池板與地平面的角度和當?shù)氐木S度相同時,光能利用率最大。本方案中利用的機械部件,可人為的調(diào)節(jié)電池板與地平面的角度,再通過控制伺服舵機實現(xiàn)追光。

通過比較,我們選用方案二。方案二更節(jié)約電能,同時,在電池板的不同位置放置三個光敏電阻,利用光敏電阻對環(huán)境亮暗的敏感性設(shè)計尋找光源傳感器,即光敏電阻和已知電阻的分壓電路,采集光敏電阻端和已知電阻端電壓,通過模擬量的電壓分析,即可模糊地判斷光線的強弱。與另兩路尋光傳感器電路中得到的電壓值相比較,即可判斷出光源的位置。利用單舵機機械結(jié)構(gòu)實時把光源位置方向鎖在正中間光敏電阻所對的方向。

圖17光敏電阻檢測

由于光敏電阻對環(huán)境的敏感性,導致環(huán)境中的散光造成的同一規(guī)格的光敏電阻在相同照度下電阻值不同。為此,在每個光敏電阻前加黑色筒狀遮體,使光敏電阻的基準電阻值基本相同,為檢測光源時三者電阻值的比較有統(tǒng)一標準,提高光源檢測的精確度。

采集的電壓值為模擬量,提高了光源檢測的空間精度,模擬量亦可以作比較,賦相應(yīng)的比例系數(shù)、微分系數(shù)代入舵機控制軟件模塊。光敏電阻檢測光源電路圖如圖17所示。

在實際使用中發(fā)現(xiàn),當出現(xiàn)外界干擾信號,供電電源的電壓不足等情況時,會造成舵機抖動,所以我們采用獨立的單片機和獨立的電源完成追

光,避免了信號干擾和電壓不足產(chǎn)生的抖動,同時,也避免了因舵機“搶電”造成的其他模塊電壓不穩(wěn)定的問題。

獨立電源來自鋰電池,通過PT1301 IC芯片升壓后供舵機使用,并且添加負載指示燈(藍色)和鋰電池電壓過低報警指示燈(黃色)。詳細資料請參見附錄二。

其中,主要程序如下:

#define steer_center 60

#define right_limit 100

#define left_limit 20

#define KP 10 //比例系數(shù)

sbit pwm=P3^7;

uchar rg1,rg2,rg3;

uchar last_pwm_value_init; //上一次舵機輸出值初始化

uchar control_pwm; //舵機PWM輸出值

uchar last_control_pwm; //上一次舵機PWM輸出值

void get_analog() //采集三路光敏電阻采光系統(tǒng)中的電壓值

{

rg1=GetADCResult(0);

rg2=GetADCResult(1);

rg3=GetADCResult(2);

}

uchar analog_analyse()

{

get_analog();

if(last_pwm_value_init==0)

{

last_control_pwm=steer_center;

last_pwm_value_init=1; //初始化完成

}

if(rg2-rg1>0rg3>=rg2)

control_pwm=last_control_pwm-(rg2-rg1)*KP/80;

else if(rg2-rg3>0rg1>=rg2)

control_pwm=last_control_pwm+(rg2-rg3)*KP/80;

else if(rg1-rg2>0rg3-rg2>0)

{

if(rg280)

{

control_pwm=last_control_pwm;

}

//else //control_pwm=last_control_pwm+(rg1-rg2)*8/80-(rg3-rg2)*8/80; //也進行角度調(diào)節(jié)

}

else

control_pwm=steer_center;

if(control_pwm=left_limit)

control_pwm=left_limit;

else if(control_pwm>=right_limit)

control_pwm=right_limit;

last_control_pwm=control_pwm; //保存上一次舵機輸出值

return control_pwm;}

void main()

{

uchar PWM;

InitADC(); //AD初始化

Init_PCA(); //PCA擴展定時器初始化

while(1)

{

PWM=analog_analyse();

jd=PWM;

Delay(12);

}

}

void PCA_ISR()interrupt 7

{

CCF1=0;

CCAP1L=value;

CCAP1H=value>>8;

value+=25;

if(cnt = jd) //判斷0.025ms次數(shù)是否小于角度標識jd=20-100

pwm=1; //小于,PWM輸出高電平

else

pwm=0; //大于則輸出低電平

if (cnt>=800)

cnt=0;

else

cnt++; //0.025ms次數(shù)加1 ,次數(shù)始終保持為800 即保持周期為20ms

}

(8)主控單元

方案一:采用AVR 單片機 ,的I/O口是真正的I/O口,能正確反映I/O口輸入/輸出的真實情況。工業(yè)級產(chǎn)品,具有大電流(灌電流)10~40 mA,可直接驅(qū)動可控硅SCR或繼電器,節(jié)省了外圍驅(qū)動器件。

內(nèi)帶模擬比較器,I/O口可用作A/D轉(zhuǎn)換,可組成廉價的A/D轉(zhuǎn)換器。ATmega48/8/16等器件具有8路10位A/D。

部分可組成零外設(shè)元件單片機系統(tǒng),使該類單片機無外加元器件即可工作,簡單方便,成本又低。

圖18 AVR MCU管腳分布

AVR單片機可重設(shè)啟動復位,以提高單片機工作的可靠性。有看門狗定時器實行安全保護,可防止程序走亂(飛),提高了產(chǎn)品的抗干擾能力。AVR MCU管腳分布如圖18所示。

方案二:采用新一代增強型8051單片機STC12C5A60S2,此單片機具有兩路PWM/PCA功能;8路10位A/D采集,轉(zhuǎn)換速度25萬次/秒;雙串口;內(nèi)部集成MAX810專用復位電路;具有60K的用戶程序空間;內(nèi)部集成掉電檢測電路;可擴展為4個16位定時器;7路外部中斷;工作頻率范圍為0-35MHZ,相當于普通8051的0-420MHZ;指令代碼完全兼容傳統(tǒng)的8051單片機。

綜上兩種方案,因所需的A/D檢測通道較多,我們選用方案二中的STC12C5A60S2單片機作為主控芯片。

風力發(fā)電機相關(guān)文章:風力發(fā)電機原理


評論


相關(guān)推薦

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

關(guān)閉