guuuut... ich denke so müsste das gehen^^
Code:' Ich versuch mich hier mal an einer Anzeige für meine Solaranlage (inselbetrieb) ' also mit Batterie/wechselrichter ect. ' ' Angezeigt werden sollen Modulspannung und Strom, die daraus resultierende Leistung und ' der Batteriestrom sowie der Laststrom und die daraus resultierende Leistung. ' Zudem noch die Leistung, die gerade entnommen oder gepuffert wird. Also die Differenz ' zwischen ein- und ausgehender Leistung. ' ' Felix Herzberger 2008 ' ' $regfile = "m8def.dat" $crystal = 1000000 Config Adc = Free , Prescaler = Auto Start Adc Dim A1 As Word Do A1 = Getadc(0) ' Die Spannung kommt am ADC Port 1 rein. A1 = A1 * 5000 ' Referenz: 5V A1 = A1 / 1024 ' Jetzt haben wird die Spannung, die am Port anliegt in mA A1 = A1 / 0.001 ' der Shunt hat den Wert 0,001 Ohm, A1 ist nun der fliessende Strom in mA Loop Dim A2 As Word Do A2 = Getadc(1) A2 = A2 * 5000 A2 = A2 / 1024 A2 = A2 / 0.001 Loop Dim V1 As Word Do V1 = Getadc(2) V1 = V1 * 5000 V1 = V1 / 1024 V1 = V1 * 5 Loop Dim V2 As Word Do V2 = Getadc(3) V2 = V2 * 5000 V2 = V2 / 1024 V2 = V2 * 5 Loop Dim P1 As Word Do P1 = V1 * A1 Loop Dim P2 As Word Do P2 = V2 * V1 Loop Dim D1 As Word Do D1 = P1 - P2 Loop ' Ausgerechnet sind die Werte nun und werden auf dem Display dargestellt Config Lcd = 20 * 2 Config Lcdpin = Pin , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.3 , E = Portd.5 , Rs = Portd.4 Do Cls 'loesche das LCD Display Locate 1 , 1 'Cursor auf 1 Zeile, 1 Spalte Lcd "Solaranlage" 'String auf Display anzeigen Waitms 3000 Cls Waitms 10 Locate 1 , 1 Lcd "Modulspannung:" Locate 2 , 1 Lcd "V" Locate 2 , 3 Lcd V1 Waitms 3000 Cls Waitms 10 Locate 1 , 1 Lcd "Modulstrom:" Locate 2 , 1 Lcd "A" Locate 2 , 3 Lcd A1 Waitms 3000 Cls Waitms 10 Locate 1 , 1 Lcd "Modulleistung:" Locate 2 , 1 Lcd "W" Locate 2 , 3 Lcd P1 Waitms 3000 Cls Waitms 10 Locate 1 , 1 Lcd "Batt. Spannung:" Locate 2 , 1 Lcd "V" Locate 2 , 3 Lcd V1 Waitms 3000 Cls Waitms 10 Locate 1 , 1 Lcd "Laststrom:" Locate 2 , 1 Lcd "A" Locate 2 , 3 Lcd A2 Waitms 3000 Cls Waitms 10 Locate 1 , 1 Lcd "Lastleistung:" Locate 2 , 1 Lcd "W" Locate 2 , 3 Lcd P2 Waitms 3000 Cls Locate 1 , 1 Lcd "Leistungsdifferenz" Locate 2 , 1 Lcd "P" Locate 2 , 3 Lcd D1 Waitms 3000 Loop End







Zitieren

Lesezeichen