❶ 電池容量怎麼算
一、最直接演算法:
先得到用電設備的電流,再將電池容量除以用電設備的電流 結果就是可使用的時長。
例如:
一個3000mAH,額定電壓5V的電池給一個功耗2.5W,電壓5V的用電設備供電,它理論的使用時長為:
I=P/U => 2.5w/5v => 0.5A => 500MA。
3000mAh,就是3000MA電流可以放電一小時,
3000/500=6小時。
二、通過電荷量庫侖演算法:
C=IS => 3A*3600s => 10800c 庫侖(電荷量)。
10800c*5v=54000w 電能。
54000w/2.5w=21600/3600s =6h。
(1)電量計演算法C程序擴展閱讀
常見電池
1、干電池
干電池也叫錳鋅電池,所謂干電池是相對於伏打電池而言,所謂錳鋅是指其原材料。針對其它材料的干電池如氧化銀電池,鎳鎘電池而言。錳鋅電池的電壓是1.5V。干電池是消耗化學原料產生電能的。它的電壓不高,所能產生的持續電流不能超過1安培。
2、鉛蓄電池
蓄電池是應用最廣泛的電池之一。用一個玻璃槽或塑料槽,注滿硫酸,再插入兩塊鉛板,一塊與充電機正極相連,一塊與充電機負極相連,經過十幾小時的充電就形成了一塊蓄電池。它的正負極之間有2伏的電壓。蓄電池的好處是可以反復多次使用。另外,由於它的內阻極小,所以可以提供很大的電流。用它給汽車的發動機供電,瞬時電流可達20多安培。蓄電池充電時是將電能貯存起來,放電時又把化學能轉化為電能。
3、鋰電池
鋰電池的優點是單體電池電壓高,比能量大,儲存壽命長(可達10年),高低溫性能好,可在-40~150℃使用。缺點是價格昂貴,安全性不高。另外電壓滯後和安全問題尚待改善。大力發展動力電池和新的正極材料的出現,特別是磷酸亞鐵鋰材料的發展,對鋰電發展有很大幫助。
❷ 電量計算公式是多少
電量的計算公式如下:
(2)電量計演算法C程序擴展閱讀:
無功電量與有功電量:
有功電量是由其他能源轉換過來的電能量,能夠實際做功的,而無功不是。但有功電量不是單獨產生的,發電機發出有功的同時一般總伴隨著無功的產生。
無功雖然不能做功,但是對系統電壓的穩定有非常重要的作用,因此受到重視,電網中有一些設備如調相機專門用來發出無功以穩定電網電壓,所以現在電費中包含有有功電量的電費,同時也包含無功電量的電費。
❸ 電池電量怎麼計算
電量是指用電設備所需用電能的數量,又稱為電能或電功,電能的單位是千瓦·時(kW·h),又稱電度數,W=P*t。
1、用電器的用電量(度)=用電功率總和(W)*用電時間(H)/1000。
2、電瓶電量(WH)=電瓶電壓(V)*電瓶容量(AH)。
3、電池電量(WH)=電池電壓(V)*電池容量(mAH)/1000。
9*0.8=7.2w=0.0072KW,一小時耗電0.0072度。
9*1=9w=0.009KW,一小時耗電0.009度。
那麼24小時共耗電(0.0072+0.009)*24=0.388度。
電池容量是衡量電池性能的重要性能指標之一,它表示在一定條件下(放電率、溫度、終止電壓等)電池放出的電量(可用JS-150D做放電測試),即電池的容量,通常以安培小時為單位(簡稱,以A·H表示,1A·h=3600C)。
電池容量按照不同條件分為實際容量、理論容量與額定容量,電池容量C的計算式為C=∫t0It1dt(在t0到t1時間內對電流I積分),電池分正負極。
❹ 電量的計算公式
1、瓦即瓦特,用「V 」表示,單位是「W"。通俗一點就是耗電量的一個單位,你去看看,如燈泡有刻30W,我們平常就說30瓦。
2、度是用電量的單位,用了一千瓦的用電器用1小時,就是一度電。
3、如果你的燈泡是100瓦的,那一度電就可以用10小時。如果你的電磁爐是1000瓦的,那用一小時就是一度電。
❺ 關於電費計算模型 C語言課程設計
(1)所謂的高峰低谷 是指的用電時間段 比如早晨 用電少的一段時間就人為的規定為 低谷 而晚上因為用電的人多 就規定為高峰
(2)應該是沒關系
(3)變壓器容量 大概是指 一個變壓器能夠供給的最大功率,這里應該是用來限制 最大用電量的
❻ 請c語言大神幫忙!
這個題目要點。
1、收費標准必須為可操作修改。
2、收費標准檔位是不確定的,需要動態數組。(當然用常量,每次手改源代碼就不需要了)
3、收費標準的輸入除第一個閥值,其他要求增量(較上一個閥值),不能直接用於運算。
4、輸入范圍需要有驗證。
最簡易做法是將標準定義成常量,然後需要時修改代碼常量,但這樣對用戶夠不友好,所以我這里把標準定義成結構,定義函數動態申請數組,修改收費標准。
#include<stdio.h>
#include<malloc.h>
typedef struct eq
{
int tn;//表示共有幾檔
float **fb;//表示各檔計費標準的二維數組
}EQ;
int newFb(int tn);//構建收費標准數組地址空間,成功返回1,失敗返回2。(成功自動釋放舊地址,無需單獨釋放)
EQ *init();//初始化計費標准
void showEQ();//列印當前收費標准
int setEQ();//修改收費標准,成功返回1,失敗返回0
float ecost(float amount);//計算電費
EQ *eq=NULL;
int main()
{
int n=0;
float at;
eq=init();
if(!eq)
{
printf("異常終止! ");
return 1;
}
while(1)
{
printf("1、列印收費標准;2、修改收費標准;3、計算電費 ");
n=0;
while(n!=1 && n!=2 && n!=3)
scanf("%d",&n);
switch(n)
{
case 1:showEQ();break;
case 2:
if(!setEQ())
printf("異常!修改失敗! ");
else
printf("修改成功! ");
break;
case 3:printf("請輸入年度用電量:");
scanf("%f",&at);
printf("年度用電費用:%.2f ",ecost(at));
break;
}
}
return 0;
}
float ecost(float amount)//計算電費
{
int i;
float sum=0;
if(amount<=eq->fb[0][0])
return 0;
for(i=eq->tn-1;i>=0;i--)
if(amount>eq->fb[i][0])
{
sum+=(amount-eq->fb[i][0])*eq->fb[i][1];
amount=eq->fb[i][0];
}
return sum;
}
EQ *init()//初始化計費標准,
{
if(eq)
return eq;
eq=(EQ *)malloc(sizeof(EQ));
if(!eq)
return NULL;
eq->tn=4;
eq->fb=NULL;
if(!newFb(4))
{
free(eq);
return NULL;
}
eq->fb[0][0]=0,eq->fb[0][1]=0.6;
eq->fb[1][0]=3000,eq->fb[1][1]=0.7;
eq->fb[2][0]=5000,eq->fb[2][1]=0.9;
eq->fb[3][0]=7000,eq->fb[3][1]=1.2;
return eq;
}
int newFb(int tn)//構建收費標准數組地址空間,成功返回1,失敗返回0。(成功自動釋放舊地址,無需單獨釋放)
{
int i,flag=1;
float **fbSave=NULL;
if(!eq)
return 0;
eq->tn=tn;
if(!eq->fb)//如果有舊地址,保存該地址,用於還原
fbSave=eq->fb;
eq->fb=(float **)malloc(sizeof(float *)*tn);
if(!eq->fb)
flag=2;
for(i=0;flag && i<tn;i++)
{
eq->fb[i]=(float *)malloc(sizeof(float)*2);
if(!eq->fb)
flag=3;
}
if(flag==3)//內存申請失敗,釋放已申請的新地址,還原舊地址
{
for(i=0;i<tn;i++)
free(eq->fb[i]);
free(eq->fb);
eq->fb=fbSave;
return 0;
}
if(flag==2)
{
eq->fb=fbSave;
return 0;
}
return 1;
}
void showEQ()//列印當前收費標准
{
int i;
printf("當前共計%d檔計費標准: ",eq->tn);
for(i=0;i<eq->tn;i++)
printf("電量超過%.0f,%s%.1f(實際金額%.1f) ",eq->fb[i][0],i>0?"每度再增加":"每度",i>0?eq->fb[i][1]-eq->fb[i-1][1]:eq->fb[i][1],eq->fb[i][1]);
printf(" ");
}
int setEQ()//修改收費標准,成功返回1,失敗返回0
{
int i,tn;
float money;
printf("請輸入新的計費檔數(輸入0退出修改):");
scanf("%d",&tn);
if(!tn)
return 0;
if(newFb(tn))
{
for(i=0;i<eq->tn;i++)
{
printf("請輸入第%d檔電量閥值(%s%.0f),及%s(單位元)",i+1,i>0?"必須大於":"大於等於",i>0?eq->fb[i-1][0]:0,i>0?"每度增加收費":"每度收費");
scanf("%f%f",&eq->fb[i][0],&money);
if(i==0 && eq->fb[i][0]<0)
{
printf("輸入錯誤!起始閥值不能小於0!請重新輸入 ");
i--;
continue;
}
if(i>0 && eq->fb[i][0]<=eq->fb[i-1][0])
{
printf("輸入錯誤!當前閥值不能小於上一次的閥值!請重新輸入 ");
i--;
continue;
}
if(i==0)
eq->fb[i][1]=money;
else
eq->fb[i][1]=eq->fb[i-1][1]+money;
}
}
return 1;
}
//PS:你說你代碼運算不對,看看是否把增量當金額來用了。
❼ c語言電量百分比怎麼計算
#include"stdafx.h"
#include<windows.h>
int_tmain(intargc,_TCHAR*argv[])
{
SYSTEM_POWER_STATUSsps;
GetSystemPowerStatus(&sps);
printf("isACpower:%s ",sps.ACLineStatus==1?"yes":"no");
printf("BatteryFlag:%d ",sps.BatteryFlag);
printf("BatteryLifePercent:%d%% ",sps.BatteryLifePercent);
if(sps.ACLineStatus==0)//ifnoacin
{
printf("BatteryLifeTime:%dSeconds=%fh ",
sps.BatteryLifeTime,((float)sps.BatteryLifeTime)/60/60);
printf("BatteryFullLifeTime:%d ",sps.BatteryFullLifeTime);
}
return0;
}
❽ 電量計算公式和單位是什麼
計算方法: 容量C=放電電池(恆流)I×放電時間(小時)T 。
反過來: 放電時間T=容量C/放電電流(恆流)I 。
比如一個電池用500MA(毫安)的恆定電流放了2 個小時,那麼這個電池的容量就等於500MA*2H=1000MAH=1AH 再如一個電池用5安的電流放了2個小時,那麼該電池的容量就是10AH 。
給一個電池進行恆流恆壓充電,然後以恆流放電,放出多少電量就是這個電池的容量,蓄電池,鎳氫電池等,但是鋰電池就不行,它有個最低放電電壓,即放電電壓不能低於2.75V,通常以3.0V為下限保護電壓。
例如鋰電池容量是1000mAh,則充放電電流就1000mA,在電池最高電壓4.2V內放到3.0V,放出來的容量才是電池最真實的容量。
❾ 電量的計算公式
90KW的電機通常都是角接,工作電流是指每相的電流,380v是線電壓,其相電壓為220v.每小時耗電量Q = 電壓X電流X時間X3 = 220 x 130 x 1 x 3 = 85800(瓦.時)即85.8度。
按標稱功率算,耗電量Q= 功率x時間 x 功率因素,不考慮功率因素,約為 90x1 = 90(度)。
電量計算公式:Q=I*t,I=Q/t。
Q:電量,單位庫侖(C)
I:電流,單位安培(A)
t:時間,單位秒(s)
電流強度的微觀表達式:I=nqsv得,q=I/nsv,其中I是電流強度,n是單位體積內的電荷數,s是導體的橫截面積,v是電荷運動的速度。
(9)電量計演算法C程序擴展閱讀:
電學的計算:
一、電阻R
1.電阻等於電阻率乘以(長度除以橫截面積) R=ρ×(L/S);
2.電阻等於電壓除以電流 R=U/I;
3.電阻等於電壓平方除以電功率 R=U²/P。
二、電功W
1.電功等於電流乘電壓乘時間 W=UIt(普通公式) 電功等於電功率乘以時間 W=Pt;
2.電功等於電荷乘電壓 W=UQ;
3.電功等於電流平方乘電阻乘時間 W=I²;Rt(純電阻電路);
4.電功等於電壓平方除以電阻再乘以時間 W=U²/R×t(同上)。
三、電功率P
1.電功率等於電壓乘以電流 P=UI;
2.電功率等於電流平方乘以電阻 P=I²R(純電阻電路);
3.電功率等於電壓平方除以電阻 P=U²/R(同上);
4.電功率等於電功除以時間 P=W/t 5.電功率P=UI。
註:當相同的電阻在同一電路中時,功率會變成之前的四分之一。
四、電熱 Q
1.電熱等於電流平方乘電阻乘時間:Q=I²Rt(純電阻電路);
2.電熱等於電流乘以電壓乘時間:Q=UIt=W(普通公式),
3.電熱等於電壓平方除以電阻再乘以時間:Q=(U²/R)t(純電阻電路)
4.電熱在一般情況下是等於消耗的電能的,前提條件是在純電阻的用電其中。
參考資料來源:網路—電量
❿ C實現電能計算
你這計是的什麼交流還是直流功率,工頻交流功率AD的採集速度100是遠遠不夠的,
另外,交流功率不是這么簡單的計算。
可以一直讓AD采樣,MCU讀取數據後緩存再統一計算,如果這樣,不如即時計算,
然後累計濾波。