Hallo Dirk .
Vilen dank !! genau da liegt der Hund ahnscheinend begraben . :O)
Frag lieber nicht wozu ich was brauche , ich bin mich gerade in das Basic von Robby am einarbeiten und habe wahrscheindlich noch einige define's drin die es gar nicht braucht .![]()
Das mit den mess werten ist wierklich eine gute feststellung . Ich werde mir dazu noch eine lösung überlegen (naja eben 1 mal messen in ne Variable übertragen den wert und den diese nach den listen werten abfragen .. so in etwa ) .
Ich werde erst mal das Programm nun umschreiben (brocht ja ned viel ) und austesten , wen es in dieser form mal funktioniert , werde ich das mit der 1 mal messung realisieren (guter Vorschlag ! ;O) ) und wen das auch klappt wollte ich das Programm auch auf die Lade ströme erweitern noch so das diese auch via 8 Led's angezeigt werden ..
Ganz toll währe natürlich die Werte auf dem LCD auszu geben aber man kann ja nich gleich "Version 10" auf anhib coden .. ^^
Ich lasse von mir hören wen es geht und ich auch ne neuere, (hoffentlich) funktionierende Version vom Erweiterungs 1 Loader posten kann .
aber so weit sehr gut !!! =D>
cu
edit :
so gesagt getan :
Also so weit so gut !! ^^ *freui* ES funktioniert ! dank dir Dirk :O)Code:'IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII 'IIIIIIIIII MOBILE ROBOT EVALUATION PROGRAM IIIIIIIIIIII 'IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII ' Erweitertes PROGRAMM ZUR ÜBERWACHUNG DES LADEVORGANGS ' Dieses Programm ist für den Robby RP5 mit erweiterungs Platine. ' Basis Program war das CHARGE TOOL von Robby . ' Frei für benutzung für alle, erweiterung , weitergeben natürlich auch frei :O) ' Aber haftbarkeit für etwelche Schäden werden abgelehnt. ' Status funktional . :O) ( mit hielfe von Dirk @ https://www.roboternetz.de/ ) ' Version 0.4 ' ACHTUNG: ' Wenn Sie den Akku des Roboters laden, MUSS der Schalter so geschaltet sein, ' dass der Roboter in Betrieb ist !!! ' Andernfalls würde eine zu hohe Ladespannung leicht zur Zerstörung der ' empfindlichen Elektronik führen. ' Starten Sie das Programm BEVOR sie das Ladegerät anstecken, weil ' beim Start eine Calibrierung durchgeführt wird und dabei kein Ladestrom ' fliessen darf. ' --------------------------------------------------------------------- ' FUNKTION DES PROGRAMMS '---------------------------------------------------------------------- ' Der Bezeichner SYS_VOLTS ist der A/D-Wandler, der die Akkuspannung misst. ' Ein Digit entspricht dabei 39,2 mV, der Messbereich geht bis 10 V ' Die Akkuspannung wird als Balkenanzeige mit den Leuchtdioden angezeigt. ' Die Schwellen sind folgendermassen eingestellt: ' LED 1 - blinkend:7,1736 V / LED 1 - leuchend:7,3304 V ' LED 2 - blinkend:7,4872 V / LED 2 - leuchend:7,6440 V ' LED 3 - blinkend:7,8008 V / LED 3 - leuchend:7,9576 V ' LED 4 - blinkend:8,1144 V / LED 4 - leuchend:8,2712 V ' LED 5 - blinkend:8,4280 V / LED 5 - leuchend:8,5848 V ' LED 6 - blinkend:8,6632 V / LED 6 - leuchend:8,7808 V ' LED 7 - blinkend:8,8592 V / LED 7 - leuchend:8,9376 V ' LED 8 - blinkend:8,9768 V / LED 8 - leuchend:9,0160 V ' Wenn alle Leuchtdioden dauernd leuchten, ist die Ladung beendet und ' wird mit dem Beeper gemeldet. '-------------------------- '------ I/O PORTS --------- '-------------------------- '- INTERFACE LCD/EXTPORT -- define sdio port[1] define sclio port[3] define strobe port[4] define LSTROBE port[7] ' Hier hab ich erweitert ....... '-- INTERFACE COM/NAV ----- define DATALINE port[1] define CLOCKLINE port[2] '-------------------------- '------ SENSORS --------- '-------------------------- define LIGHT_L ad[7] define LIGHT_R ad[6] define SYS_VOLTS ad[3] define CHRG_CURRENT ad[2] define SYS_CURRENT ad[1] define MIC ad[4] define TOUCH ad[5] '--------------------------- '------ DRIVE ------------- '--------------------------- define SPEED_L da[1] define SPEED_R da[2] define REV_L port[6] define REV_R port[5] '-------------------------- '---- SYSTEM MEMORY ------- '-------------------------- '--- INTERFACE BUFFER ---- define LBYTE byte[1] define HBYTE byte[2] define SUBCMD byte[3] '---- OPERATION DATA ------ define EXTPORT byte[4] define LED1_F bit[29] define LED2_F bit[30] define LED3_F bit[31] define LED4_F bit[32] define SYSTEM_STATUS byte[5] define LEDPORT byte[6] ' Hier hab ich erweitert ....... define L1_F bit[41] ' Hier hab ich erweitert ....... define L2_F bit[42] ' Hier hab ich erweitert ....... define L3_F bit[43] ' Hier hab ich erweitert ....... define L4_F bit[44] ' Hier hab ich erweitert ....... define L5_F bit[45] ' Hier hab ich erweitert ....... define L6_F bit[46] ' Hier hab ich erweitert ....... define L7_F bit[47] ' Hier hab ich erweitert ....... define L8_F bit[48] ' Hier hab ich erweitert ....... '--- SYSTEMROUTINEN ----------- define PLM_SLOW &H01C4 define SYSTEM &H01C9 define LED_DRIVE &H01CA ' Hier hab ich erweitert ....... define COMNAV &H0154 '-------------------------- '---- USER MEMORY ------- '-------------------------- define OFFSET byte[6] '---------- INIT--------------- gosub SUBSYS_PWR_ON:REV_L=off:REV_R=off beep 368,10,0:pause 50 if SYS_VOLTS>=CHRG_CURRENT then goto WATCH_AKKU OFFSET=CHRG_CURRENT-SYS_VOLTS '-------------------------------------------- '--- LADEÜBERWACHUNG FÜR DEN AKKU --- '-------------------------------------------- #WATCH_AKKU pause 20 if SYS_VOLTS > 230 then goto LED8ON:gosub LOFF if SYS_VOLTS > 229 then goto LED8BLINK:gosub LOFF if SYS_VOLTS > 228 then goto LED7ON:gosub LOFF if SYS_VOLTS > 226 then goto LED7BLINK:gosub LOFF if SYS_VOLTS > 224 then goto LED6ON:gosub LOFF if SYS_VOLTS > 221 then goto LED6BLINK:gosub LOFF if SYS_VOLTS > 219 then goto LED5ON:gosub LOFF if SYS_VOLTS > 215 then goto LED5BLINK:gosub LOFF if SYS_VOLTS > 211 then goto LED4ON:gosub LOFF if SYS_VOLTS > 207 then goto LED4BLINK:gosub LOFF if SYS_VOLTS > 203 then goto LED3ON:gosub LOFF if SYS_VOLTS > 199 then goto LED3BLINK:gosub LOFF if SYS_VOLTS > 195 then goto LED2ON:gosub LOFF if SYS_VOLTS > 191 then goto LED2BLINK:gosub LOFF if SYS_VOLTS > 187 then goto LED1ON:gosub LOFF if SYS_VOLTS > 183 then goto LED1BLINK:gosub LOFF goto WATCH_AKKU #LED8ON gosub L1ON:gosub L2ON:gosub L3ON:gosub L4ON:gosub L5ON:gosub L6ON:gosub L7ON:gosub L8ON:goto WATCH_AKKU #LED8BLINK gosub L1ON:gosub L2ON:gosub L3ON:gosub L4ON:gosub L5ON:gosub L6ON:gosub L7ON:gosub L8ON:pause 20:gosub L8OFF:pause 20:goto WATCH_AKKU #LED7ON gosub L8OFF:gosub L1ON:gosub L2ON:gosub L3ON:gosub L4ON:gosub L5ON:gosub L6ON:gosub L7ON:goto WATCH_AKKU #LED7BLINK gosub L8OFF:gosub L1ON:gosub L2ON:gosub L3ON:gosub L4ON:gosub L5ON:gosub L6ON:gosub L7ON:pause 20:gosub L7OFF:pause 20:goto WATCH_AKKU #LED6ON gosub L8OFF:gosub L7OFF:gosub L1ON:gosub L2ON:gosub L3ON:gosub L4ON:gosub L5ON:gosub L6ON:goto WATCH_AKKU #LED6BLINK gosub L8OFF:gosub L7OFF:gosub L1ON:gosub L2ON:gosub L3ON:gosub L4ON:gosub L5ON:gosub L6ON:pause 20:gosub L6OFF:pause 20:goto WATCH_AKKU #LED5ON gosub L8OFF:gosub L7OFF:gosub L6OFF:gosub L1ON:gosub L2ON:gosub L3ON:gosub L4ON:gosub L5ON:goto WATCH_AKKU #LED5BLINK gosub L8OFF:gosub L7OFF:gosub L6OFF:gosub L1ON:gosub L2ON:gosub L3ON:gosub L4ON:gosub L5ON:pause 20:gosub L5OFF:pause 20:goto WATCH_AKKU #LED4ON gosub L8OFF:gosub L7OFF:gosub L6OFF:gosub L5OFF:gosub L1ON:gosub L2ON:gosub L3ON:gosub L4ON:goto WATCH_AKKU #LED4BLINK gosub L8OFF:gosub L7OFF:gosub L6OFF:gosub L5OFF:gosub L1ON:gosub L2ON:gosub L3ON:gosub L4ON:pause 20:gosub L4OFF:pause 20:goto WATCH_AKKU #LED3ON gosub L8OFF:gosub L7OFF:gosub L6OFF:gosub L5OFF:gosub L4OFF:gosub L1ON:gosub L2ON:gosub L3ON:goto WATCH_AKKU #LED3BLINK gosub L8OFF:gosub L7OFF:gosub L6OFF:gosub L5OFF:gosub L4OFF:gosub L1ON:gosub L2ON:gosub L3ON:pause 20:gosub L3OFF:pause 20:goto WATCH_AKKU #LED2ON gosub L8OFF:gosub L7OFF:gosub L6OFF:gosub L5OFF:gosub L4OFF:gosub L3OFF:gosub L1ON:gosub L2ON:goto WATCH_AKKU #LED2BLINK gosub L8OFF:gosub L7OFF:gosub L6OFF:gosub L5OFF:gosub L4OFF:gosub L3OFF:gosub L1ON:gosub L2ON:pause 20:gosub L2OFF:pause 20:goto WATCH_AKKU #LED1ON gosub L8OFF:gosub L7OFF:gosub L6OFF:gosub L5OFF:gosub L4OFF:gosub L3OFF:gosub L2OFF:gosub L1ON:goto WATCH_AKKU #LED1BLINK gosub L8OFF:gosub L7OFF:gosub L6OFF:gosub L5OFF:gosub L4OFF:gosub L3OFF:gosub L2OFF:gosub L1ON:pause 20:gosub L1OFF:pause 20:goto WATCH_AKKU '--- LEDS AUF DER BASIS ERWEITERUNG ------ #L1ON L1_F=on:goto LEDPORT_WRITE #L1OFF L1_F=off :goto LEDPORT_WRITE #L2ON L2_F=on:goto LEDPORT_WRITE #L2OFF L2_F=off :goto LEDPORT_WRITE #L3ON L3_F=on:goto LEDPORT_WRITE #L3OFF L3_F=off :goto LEDPORT_WRITE #L4ON L4_F=on:goto LEDPORT_WRITE #L4OFF L4_F=off :goto LEDPORT_WRITE #L5ON L5_F=on:goto LEDPORT_WRITE #L5OFF L5_F=off :goto LEDPORT_WRITE #L6ON L6_F=on:goto LEDPORT_WRITE #L6OFF L6_F=off :goto LEDPORT_WRITE #L7ON L7_F=on:goto LEDPORT_WRITE #L7OFF L7_F=off :goto LEDPORT_WRITE #L8ON L8_F=on:goto LEDPORT_WRITE #L8OFF L8_F=off :goto LEDPORT_WRITE #LOFF LEDPORT=0:RETURN #LEDPORT_WRITE SYS LED_DRIVE:pulse LSTROBE:RETURN 'IIIIII SYSTEMROUTINEN SYSTEM IIIIIIIIIIII #SUBSYS_PWR_ON sdio=on:sclio=on:strobe=off:EXTPORT=(EXTPORT and &HFE)or 8 sys SYSTEM:return #SUBSYS_PWR_OFF EXTPORT=(EXTPORT and &HF7)or 1:sys SYSTEM deact sdio:deact sclio:return '---------COM/NAV GERÄTEREIBER ------------- syscode "p5driv12.s19"
Aber wie ich bemerken muss leuchten nun immer die 4 Standart leds was es ja auch ned bringt , wenigstens ned wen da nicht die lade strom stärke angezeigt wird wenigstens .. ^^ ( dazu auch der OFFSET )
Ansonsten bleibt nur noch zu sagen das man die "p5driv12.s19" braucht um das Program ablaufen lassen zu können . Ich werde mir die Sache wegen den 4 Basis Leds mal angucken .
Brauchen den so Led's viel "strom" ? nicht das eine zu massige Anzeige zu massig Lade strom verbraucht ?!?







Zitieren

Lesezeichen