RobotMichi
16.05.2009, 14:19
Hallo, Leute
Ist es möglich, den Roboter auch farbige Ausgaben im Terminal machen zu lassen?
Ich habe nämlich ein kleines Programm geschrieben, das die Akkuspannung ausliest und ausgibt. Da hätte ich gerne dass Ausgaben wie
Akkuspannung OK
oder
Warnung! Akku ist bald leer!
erzeugt werden.
Leider bin ich mit diesem Programm schon beim nächsten Problem angelangt: Die Ausgaben stimmen nicht mit denen im Logbuch des RP6Loaders überein.
Der Quelltext des Programmes sieht so aus:
#include "RP6RobotBaseLib.h"
int main(void)
{
float k,k1;
writeString("\n Messung des Akkuzustandes \n");
writeString("\n");
initRobotBase();
powerON();
startStopwatch1();
while(1)
{
task_RP6System();
if(getStopwatch1() > 1000)
{
// move(120, FWD, DIST_MM(300), true);
writeString(" Akkuspannung: ");
k=adcBat/100;
k1=adcBat % 100;
writeInteger(k, DEC);
writeString(",");
writeInteger(k1,DEC);
writeString(" V");
setStopwatch1(0);
if(adcBat < 600)
{
setLEDs(0b110110);
writeString(" Warnung: Akku fast leer!!\n");
}
else
{setLEDs(0b001001);
writeString(" Akkuspannung OK!\n");
}
}
}
return 0;
}
Das mit "k" und "k1" hab ich nur gemacht, weil ich den Robo sonst nicht dazu gebracht hätte, Dezimalzahlen auszugeben!
Wäre nett, wenn mir jemand helfen könnte!
lg
Michi
Ist es möglich, den Roboter auch farbige Ausgaben im Terminal machen zu lassen?
Ich habe nämlich ein kleines Programm geschrieben, das die Akkuspannung ausliest und ausgibt. Da hätte ich gerne dass Ausgaben wie
Akkuspannung OK
oder
Warnung! Akku ist bald leer!
erzeugt werden.
Leider bin ich mit diesem Programm schon beim nächsten Problem angelangt: Die Ausgaben stimmen nicht mit denen im Logbuch des RP6Loaders überein.
Der Quelltext des Programmes sieht so aus:
#include "RP6RobotBaseLib.h"
int main(void)
{
float k,k1;
writeString("\n Messung des Akkuzustandes \n");
writeString("\n");
initRobotBase();
powerON();
startStopwatch1();
while(1)
{
task_RP6System();
if(getStopwatch1() > 1000)
{
// move(120, FWD, DIST_MM(300), true);
writeString(" Akkuspannung: ");
k=adcBat/100;
k1=adcBat % 100;
writeInteger(k, DEC);
writeString(",");
writeInteger(k1,DEC);
writeString(" V");
setStopwatch1(0);
if(adcBat < 600)
{
setLEDs(0b110110);
writeString(" Warnung: Akku fast leer!!\n");
}
else
{setLEDs(0b001001);
writeString(" Akkuspannung OK!\n");
}
}
}
return 0;
}
Das mit "k" und "k1" hab ich nur gemacht, weil ich den Robo sonst nicht dazu gebracht hätte, Dezimalzahlen auszugeben!
Wäre nett, wenn mir jemand helfen könnte!
lg
Michi