- fchao-Sinus-Wechselrichter AliExpress         
Seite 11 von 19 ErsteErste ... 910111213 ... LetzteLetzte
Ergebnis 101 bis 110 von 188

Thema: Asuro: Umbau der IR-Schnittstelle zur Hinderniserkennung

  1. #101
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    39
    Beiträge
    3.416
    Anzeige

    Powerstation Test
    ich wollt mich nochmal zu wort melden ... ich habe meine Liniensensoren umgebaut (präzisockel statt direkt anlöten und winkelsockel nach vorn) und die rote LED durch ne IR-LED ersetzt .. ich mach kurz hintereinander 3 abfragen, mit IR ohne IR und wieder mit IR ich vergleiche die beiden IR werte, um nicht eventuell einem schnellen lichtwechsel zum opfer zu fallen, sind diese werte annähernd gleich zieh cih den "dunkelwert" ab und habe eine differenz, die ist FAST immer konstant, wenn die aussenbeleuchtung zu hell wird kommt nurnoch 0 raus, aber das liegt vermutlich daran das die FTransistoren dann voll durchschalten und es zwischen 1024hell und 1024dunkel keine unterschied mehr gibt ^^

  2. #102
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    37
    Beiträge
    4.063
    gute idee mit den dppelten werten. so kannst du relativ sicher ausschliessen dass falsche werte dazwischen sind. kannst du dazu evtl einen codeschnipsel posten?
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  3. #103

    bitte hilfe

    hallo,
    bitte kan mir jemand helfen!!!!
    ich baue gerade einen asuro in der schule und will auch die lichtsensor funktion haben.
    ich brauche die libs von waste.
    es steht zwa das sie im anhang sind aber ich kan den anhang bwz die lib nicht finden.
    habt ihr sonst noch irgentwelche tips was ich beim asuro verbessern kann??

    gruß inflames

  4. #104
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    61
    Beiträge
    5.799
    Blog-Einträge
    8
    Hallo

    Ab Version 2.3 ist die Abstandsmessung nach waste Bestandteil der Lib:

    http://downloads.sourceforge.net/asu...3&big_mirror=0

    Das ist die Änderung beim Timer:
    Code:
    	//-------- seriell interface programmed in boot routine and already running -------
    	//  prepare 36kHz for IR - Communication
    	TCCR2 = (1 << WGM20) | (1 << WGM21) | (1 << COM20) | (1 << COM21) | (1 << CS20);
    	OCR2  = 0x91; // duty cycle for 36kHz
    	TIMSK |= (1 << TOIE2); // 36kHz counter for sleep
    (Aus init() in asuro.c: IR-PWM und 36kHz-Timer)

    Alle Libs:

    http://sourceforge.net/project/showf...kage_id=172835

    Ich verwende übrigens auch Version 2.3

    Gruß

    mic
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  5. #105
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    29.05.2005
    Beiträge
    1.018
    Hallo zusammen.

    Ich wollte hier nur mal kurz auf den Thread von oberallgeier (Abstandsmessung ähnlich wie IR-Schnittstelle des asuro) hinweisen, da dort ja auch einiges in Punkto IR-Abstandsmessung läuft.
    Angesprochen war dort unter anderem, dass die Messung iterativ erfolgen könnte. Es sind einige grundsätzliche technische Überlegungen vorhanden, und außerdem ist viel vom User OT zu lesen.

    Wer also noch auf Abstandsuche ist, kann hier Abstände im Timerinterrupt finden.
    Ja, ja, hätte ich auch hier unterbringen können

    Gruß Sternthaler
    Lieber Asuro programieren als arbeiten gehen.

  6. #106
    Neuer Benutzer Öfters hier
    Registriert seit
    06.04.2008
    Ort
    zu Hause
    Beiträge
    12
    Hi Leute!

    Ich mach zur Zeit eine Belegarbeit mit dem Asuro,allerdings in Assembler.
    Assembler finde ich teilweise viel einfacher und verständlicher als C und der größte Vorteil ist,die Programme haben nur 1/10 der Größe eines vergleichbaren C Programmes.

    Nun zu meiner Frage: ich werd nicht so richtig schlau aus der IRCollision in der Lib. Waste hat im Forum geschrieben er macht die PWM mittels dem OCR2,das liegt nahe,da der OC2 pin ja direkt an der Sendediode liegt.
    Aber wo sind die Grundeinstellungen des Timers an sich versteckt?
    Hab die includes durchsucht,und bin auf nichts gestossen. Man muss dem Timer doch durch Setzen der verschiedenen Bits sagen das er PWM machen soll,inklusive Vorteiler,TOP-Wert usw.

    Wäre nett wenn jemand mal ne Hilfestellung gibt!

    Übrigens: Hab meinen Umbau nach Waste's Vorlage gemacht und muss sagen ,Absolut genial.
    Der Thread zur Kompensation des Umgebungslichtes war für die Belegarbeit auch sehr hilfreich. Wir haben den Asuro im Kreis fahren lassen während die FrontLED mit bestimmten Takt blinkt. In einem gewissen Frequenzbereich wird die Differenz der beiden Messungen(also mit und ohne LED) nahezu konstant. Daraus folgt,wenn man Asuro fahren lässt und die FrontLED blinkt in gefundenem Hz-Bereich,ist das Umgebungslicht erfolgreich ausgegrenzt.

    Also Grüße und postet mal wenn einer was hat über die Timer2 Grundeinstellung für PWM

  7. #107
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    29.05.2005
    Beiträge
    1.018
    Hallo Arthur S.

    die Grundeinstellung zum Timer findest du in der Init()-Funktion.

    Für die IR-Abstandmessung werden, in der dazugehörenden Initialisierungsfunktion, nur einige Pins umkonfiguriert und die Änderung zum PWM-Ändern passiert in der Messfunktion selber. Das ist der OCR2-Wert, der dort angepasst wird. Dieser Beinflusst nun das Takten so, dass eben eine PWM entsteht.

    Gruß Sternthaler
    Lieber Asuro programieren als arbeiten gehen.

  8. #108
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.652
    Ciao sagt der JoeamBerg

  9. #109
    Neuer Benutzer Öfters hier
    Registriert seit
    06.04.2008
    Ort
    zu Hause
    Beiträge
    12
    Also erst mal danke,dass ihr euch gemeldet habt.

    @Sternthaler: Ich hab mal in die Beispieldatei IRCollisiontest reingeschaut.
    da heißt dann die Funktion void InitIRDetect(void).Hab aber nichts gesehen,sie müsste sich doch entweder in der stdlib.h oder in der asuro.h befinden. Die werden ja per include eingebunden.
    Es muss ja schließlich möglich sein die PWM auch in Assembler mit Timer2 hinzubekommen.

    Gruß

    wie die Pwm ansich funzt ist klar,ich bekomm sie nur net zum laufen^^

  10. #110
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    15.02.2008
    Ort
    Bremen
    Alter
    44
    Beiträge
    119
    Da musst du wohl genauer gucken

    Die Datei test.c des IRCollisiontest fängt damit an:

    Code:
    void InitIRDetect(void)
    {  
      UCSRB = 0;
      DDRD |= (1 << DDD1);	// Port D1 als Ausgang
      PORTD &= ~(1 << PD1);	// PD1 auf LOW
      OCR2 = ocr2;
    }
    edit: Allerdings ist der Aufruf in meiner Version auskommentiert und der Inhalt der Funktion bereits im main() verstreut ...

Seite 11 von 19 ErsteErste ... 910111213 ... LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiFePO4 Speicher Test