Witam, otóż mam pewien mały problem, czy mógłby ktoś pomóc napisać mi formułkę na obliczenie załadowanych mAh lub lepiej Ah. To znaczy jak ładuję akumulator 12V/100Ah to ile w niego weszło ładunku. Dodam że układ jest oparty na atmega328 i są zaprzęgnięte Timer0 oraz Timer1. Timer1 spełnia rolę zegara głównego, a timer0 sekundnika. Sub Odsiarczanie Sekundy = 0 Minuty = 0 Godziny = 0 Licz = 0 Cls Reset Portd.0 Reset Portd.2 Set Portd.1 Start Adc 'Enable Timer0 Lcd " UWAGA!-Proces " Lowerline Lcd "Osiarczanie PB " Waitms 1500 Cls Do 'Reset Nowa_w Locate 1 , 1 Lcd "T=" ; Licznikh : Lcd ":" ; Licznikm Locate 2 , 10 : Lcd "LOAD" Locate 2 , 15 : Lcd " " ; Chr(1) If Nowa_w = 1 Then Wart_bcd = Makebcd(godziny) Locate 2 , 1 Lcd Bcd(wart_bcd) ; ":" Wart_bcd = Makebcd(minuty) Locate 2 , 4 Lcd Bcd(wart_bcd) ; ":" Wart_bcd = Makebcd(sekundy) Locate 2 , 7 Lcd Bcd(wart_bcd) ; Reset Nowa_w End If Rem ######################### Pomiar Prądu i Ah oddanych do odbiornika Srednia1 = 0 For Krok2 = 1 To 10 Adc_1 = Getadc(0) Srednia1 = Srednia1 + Adc_1 Waitus 10 Next Krok2 Srednia1 = Srednia1 / 10 Pradd = Srednia1 * Div_a Pradd = Pradd * 5 Rem ********************** tutaj nie mogę sobie poradzić z tym If Licz > 500 Then ' licznik sekundnik 500*2ms=1sek Mah1 = Pradd Mah = Mah + Mah1 Mah = Mah / 15 ' dzielone przez 15sec Mah2 = Mah End If If Sekundy = 15 Or Sekundy = 30 Or Sekundy = 45 Or Sekundy = 59 Then Cls Locate 1 , 1 : Lcd " Pomiar Ah " Vtxt3 = Fusing(mah2 , "##.&&&") : Lcd Mah2 Locate 2 , 1 : Lcd " I=" Vtxt1 = Fusing(pradd , "##.&&") : Lcd Vtxt1 : Lcd " " Waitms 3000 Cls End If 'End If 'Waitms 10 Rem #################### Zabezpieczenie napięciowe na poziomie 14.4V If Pomiar_1 => Batmax Then Reset Portd.0 ' Przekaźnik 1 Reset Portd.2 ' ID Device Reset Portd.1 'Przekaźnik 2 End If If Pomiar_1 <= 13.80 Then Set Portd.1 Set Portd.2 End If Rem ####################### Zaresjestrowany licznik on/off If Minuty = Licznikm Then If Godziny = Licznikh Then Cls Set Buzer Waitms 250 Reset Buzer Waitms 300 Set Buzer Waitms 250 Reset Buzer Gosub Koniec End If End If Loop Until S3 = 0 'Start Adc 'Set Portd.0 ' Przekaźnik 1 Set Portd.2 ' Tranzystor IRFP260 Reset Portd.1 Cls 'Przekaźnik 2 Gosub Koniec End Sub Bardzo proszę o pomoc lub jakąś regułkę na podstawie której mógłbym się wzorować.
|
|||
Licznik Ah do prostownika
Już sobie z tym licznikiem poradziłem. Gromadzenie danych odbywa się równo co jedną sekundę, a po jednej minucie cała matma i wynik cacy, itd.