-
Sieht doch schon mal nicht schlecht aus.
Das ständige Hin- und Herwackeln kommt wegen der Verzögerung der Webcam. Ich würde das einfach so machen, dass das Servo überhaupt nicht bewegt wird, wenn sich der Laserpunkt innerhalb eines bestimmten Umkreises vom Mittelpunkt befindet, z.B. 5% des Bildes.
Kenn mich mit der Lib des RP6 nicht aus, aber man kann doch bestimmt auch abfragen, ob überhaut ein Zeichen empfangen wurde oder nicht. Damit könnte verhindern, dass das Programm beim warten auf neue Zeichen blockiert, und das Servo ständig mit Impulsen versorgen.
MfG Mark
-
Das mit einen Zielgebiet in der Mitte einzurichten hab ich mir schon überlegt. Jedoch war die Hauptaufgabe bei diesen Projekt eigentlich die Ansteuerung des Roboter mittels Pc und RS 232 Schnittstelle. Die Kameraverfolgung hab ich nur auf die Schnelle eingebaut um das ganze System zu testen... fließt fix in die 2.version ein.
-
So hab gerade versucht auszulesen ob Daten am Port sind welche ausgelesen werden können.... Nach Vorlage von dem Selftest von SlyD. Jetzt mal ne frage wieseo funktionierte
Code:
char receiveBuffer[UART_RECEIVE_BUFFER_SIZE+1];
uint8_t getInputLine(void)
{
static uint8_t buffer_pos = 0;
if(getBufferLength())
{
receiveBuffer[buffer_pos] = readChar();
if(receiveBuffer[buffer_pos]=='\n')
{
receiveBuffer[buffer_pos]='\0';
buffer_pos = 0;
return 1;
}
else if(buffer_pos >= 32)
{
receiveBuffer[32]='\0';
buffer_pos = 0;
return 2;
}
buffer_pos++;
}
return 0;
}
bei Selftest und bei mir sagt er das er readChar() und getBufferLength() nicht kennt...
das sind doch Standardbefehle aus der Lib. Oder?
Gruß Biohazard
-
Hi!
Ich lade hier nur eben Biohazardry's LabView-VIs hoch, incl einer Anleitung von ihm.
Natürlich alles mit seiner Erlaubnis :D
Viele Grüße