welchen schaltplan hast du denn für deine us erweiterung gewählt, den aus dem Buch "Mehr Spaß mit ASURO"?
Nein hab ich nicht, da ich alles mit dem AVR Studio mache und die lib und die inc's miteinbinde. Da benenne ich jedes file extra und nie "test"....
Ich hab die 2.71.zip runtergeladen, in c:/programme/Asurolib_2.71/ entpackt und miteingebunden....
komisch sowas....
ich glaub allerdings nicht, dass es am poti liegt....
Ähm ich habe alles auf Lochraster gemacht, deswegen sieht die Platine von unten auch entsprechend aus. Kann es sein, dass ich da irgendwelche Störungen bekomme?
Ich hab den Schaltplan auch selber auf die Platine gemacht, das heißt das die Anordnung der Bauteile auch nicht die dollste ist, aber die US Platine funktioniert... -nur halt mit irgendwelchen Störungen, die ich nicht zuordnen kann!
gruß
welchen schaltplan hast du denn für deine us erweiterung gewählt, den aus dem Buch "Mehr Spaß mit ASURO"?
Wenn dein US-Modul funktioniert müsste dann etwas kommen wie:Zitat von braendieman
distanz in cm: 20
distanz in cm: 25
.
.
.
In diesem Fall ermittelt dein Bausatz KEINE Werte. Ich vermute mal dass sich ein Hardwarefehler eingeschlichen hat.
@hansi
Ich benutze den aus dem Buch... Mehr Spaß mit Asuro I
@pinsel
Ich kann ja halt nichts falsches finden an der Erweiterung.... Aber es kommen ja auch drei Warnungen beim compilieren, die sind ja auch nicht einfach so da? Da muss doch irgendwas noch dazu faul sein...
Ich mein der Ultraschall funktioniert ja eigentlich, nur sind halt immer Störungen drauf...
Hab auch schon gedacht, das die Frequenz vom US Sender falsch ist und er dann sein eigenes Echo zu früh hört.... versteht ihr?
Ich habe das gleiche problem...
Edit: Jetzt nicht mehr, wenn man alles richtig einfügt wie auf
http://www.henkessoft.de/Roboter/ASURO.htm
beschrieben, dann gehts!
Hier ein Programm ohne Chirp, dann kannst du testen ob es an der hardware liegt
Code:// ******************************************* // * Ultraschall für ASURO * // * Roboter versucht Hindernissen * // * auszuweichen * // * Achtung: asuro.c ist geändert * // * (c) 2005Robin Gruber * // * Details zum Code in: * // * "Mehr Spaß mit ASURO, Band I" * // ******************************************* #include "asuro_us.h" void LocalInit(void) { // Change Oscillator-frequency to 40kHz, no toggling of IO-pin TCCR2 = (1 << WGM21) | (1 << CS20); OCR2 = 0x64; // 40kHz @8MHz // ADC off ADCSRA = 0; // Analog Comparaot ACSR = 0x02; // Generate Interrupt on falling Edge ADMUX=0x03; // Multiplexer for Comparator to ADC pin 3 SFIOR|=(1<<ACME); DDRD&=~(1<<6); } void Ping(unsigned char length) { count72kHz=0; TCCR2 = (1 << WGM21) | (1 << COM20) | (1 << CS20); while (count72kHz<length) { OCR2=0x64+length/2-count72kHz; }; TCCR2 = (1 << WGM21) | (1 << CS20); OCR2=0x64; } int main(void) { int pos; int posmarker; int odata[2]; Init(); LocalInit(); while(1) { // OdometrieData(odata); posmarker=0; Ping(20); for (pos=0; pos<100; pos++) { Sleep(10); if ((ACSR&(1<<ACI))!=0) { if (posmarker==0) {posmarker=pos;} } ACSR|=(1<<ACI); } if (posmarker>10) { StatusLED(GREEN); MotorDir(FWD,FWD); MotorSpeed(200,200); } else { StatusLED(RED); MotorDir(FWD,RWD); MotorSpeed(0,200); Sleep(20000); } } return 0; }
ähm wenn cih dien prgramm bei mir drauf-flash dann fährt das rechte rad immer nur rückwärts- led immer nur rot und manchmal fährt auch das linke rad ien stücken vorwährts
ups... funktioniert dein asuro ohne us-platine noch?
Ich lade es mal runter und flashe bei mir nochmal... edit kommt gleich
Dein Asuro denkt die ganze zeit das er zu nah an etwas dran steht!!!
bei mir funktioniert es!
flash mal das hier drauf und öffne den hyperterminal, dann wird angezeit wie weit der asuro von einem hindernis weg ist. mit dem trimmer kannst du dann mal nen bisschen spielen bis es passt, danach sollte das obige programm funktioniern
ok thx jetzt weiß ich schonmal in welche richtung ich gehn muss weil er zeigt mir an:
Distance in cm: 0
obwohl die nächste wand locker 25 cm weg is
ich experimentier etz ertmal mit dem poti und mach dann ein edit
edit: ok am poti liegt es auch nicht weil ich kann es drehen wie ich will immer kommen 0cm raus, also wird es wahrscheinlich ein hardware-fehler sein oda?![]()
Ja, dann muss es an der Hardware liegen. Kontrolliere alle Bauteile (Position, Funktion) und Lötstellen mittels Multimeter. Wenn du keine vorgeätzte Platine hast, zusätzlich alle Verbindungen.
da kommst du jetzt nicht drum rum... fehler suchen ist immer toll!
IC richtig rum(hatte beim ersten start vergessen ihn in den sockel zu setzten... lol)? Analoge Masse verbunden(die hätte ich fast vergessen)?
richtigen sensor an richtige stelle und richtig gepolt?.. wenns davon nichts ist.... viel spaß beim suchen
Lesezeichen