Hallo

Das scheint die einzige Erklärung für den Effekt zu sein, der übrigens so ähnlich aussah wie dein 50Hz-Effekt. Die Ausreiser waren nur kürzer und seltener. Das kann dann nicht nur an einer anderen Abtastfrequenz liegen, denn bei mehr Werten pro Zeit sollten ja dann auch mehr Fehler pro Zeit auftreten. Meine Werte von gestern habe ich unter Kunstlicht bei für mich "normalen" Lichtverhältnissen eingelesen. Hier noch meine Odo-Werte bei stehendem (,weil festgeklebten,) Ritzel:

Code:
Senden der Odometriedaten 16.7.07 mic

456  667
214  670
214  670
215  671
215  671
215  671
215  671
215  671
216  671
216  671
216  671
216  671
216  671
216  671
216  671
216  671
216  671
216  671
216  671
216  671
217  671
217  671
217  671
217  671
217  671
217  671
217  671
217  671
217  671
217  671
217  671
217  671
217  671
217  671
217  671
217  671
217  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
218  671
219  672
220  672
220  672
220  672
220  672
220  672
(Man sieht auch schön den Lesefehler beim ersten Wert)

Hier noch das Programm:
Code:
#include "ir-asuro.h"

uint16_t data[2];

int main(void)
{
	Init();
	StatusLED(RED);
	SerWrite("\n\n\rSenden der Odometriedaten 16.7.07 mic\n\n\r",43);
	StatusLED(YELLOW);
	while(1)
	{
		OdometrieData(data);
		PrintInt(data[0]);
		SerWrite(" ",1);
		PrintInt(data[1]);
		SerWrite("\n\r",2);
	}
	return(0);
}
Und noch die Version meiner Library:

Code:
/*******************************************************************************
*
* File Name:   asuro.c
* Project  :   ASURO
*
* Description: This file contains ASURO main features
*
* Ver.     Date         Author           Comments
* -------  ----------   --------------   ------------------------------
* 1.00	   14.08.2003   Jan Grewe		 build
* 2.00     14.10.2003   Jan Grewe        LEFT_VEL, RIGHT_VEL -> MotorSpeed(unsigned char left_speed, unsigned char right_speed);
*										 LeftRwd(),LeftFwd(),RightRwd(),RigthFwd() -> MotorDir(unsigned char left_dir, unsigned char right_dir);
*                                        GREEN_ON,GREEN_OFF,RED_ON,RED_OFF -> StatusLED(unsigned char color);
*                                        LED_RED_ON, LED_RED_OFF -> FrontLED(unsigned char color);
*                                        Blink(unsigned char left, unsigned char right) -> BackLED(unsigned char left, unsigned char right);
*                                        Alles in Funktionen gefasst => leichter verständlich ?!?!
* 2.10     17.10.2003   Jan Grewe        new Timer funktion void Sleep(unsigned char time36kHz)  
*
* Copyright (c) 2003 DLR Robotics & Mechatronics
*****************************************************************************/
/****************************************************************************
*
* File Name:   asuro.c
* Project  :   asuro library "Robotrixer Buxtehude"
*
* Description: This file contains additional functions:
*
* signal (SIG_ADC)                 interrupt/signal routine for encoder-counter
* signal (SIG_INTERRUPT1)          signal for switches
* Encoder_Init()                   initializing encoder-counter
* Encoder_Start()                  start autoencoding
* Encoder_Stop()                   stop autoencoding
* Encoder_Set(int,int)             set encodervalue
* Msleep(int delay)                wait for delay in milliseconds
* Gettime()                        get systemtime in milliseconds
* PrintInt(int)
*
* modifications in Sleep, SIG_OUTPUT_COMPARE2, PollSwitch, LineData
*
* Ver.     Date         Author           Comments
* -------  ----------   --------------   ------------------------------
* beta1	   31.03.2005   Robotrixer		 asuro library
* -------  ----------   --------------   ------------------------------
* the encoder source is based on RechteckDemo.c ver 2.0 by Jan Grewe 22.10.2003 
* Copyright (c) 2003 DLR Robotics & Mechatronics

*****************************************************************************/
/****************************************************************************
*
* File Name:   asuro.c
* Project  :   asuro library modified for IR collision detector
*
* Description: modifications made in following functions:
*
* SIGNAL (SIG_OUTPUT_COMPARE2)	->	SIGNAL (SIG_OVERFLOW2)
* Gettime()							counts now 36kHz
* Init()							timer2 modified for adjustable duty cycle
* Batterie()						bug fixed
* Sleep()							counts now 36kHz
* Msleep()							counts now 36kHz
*
* Ver.     Date         Author           Comments
* -------  ----------   --------------   ------------------------------
* beta2	   11.06.2005   Waste   		 asuro library
* -------  ----------   --------------   ------------------------------
*****************************************************************************/
/***************************************************************************
*                                                                         *
*   This program is free software; you can redistribute it and/or modify  *
*   it under the terms of the GNU General Public License as published by  *
*   the Free Software Foundation; either version 2 of the License, or     *
*   any later version.                                                    *
***************************************************************************/
Schade (oder gut?), dass man nichts mehr vom Effekt sieht.

Gruß

mic