RoboterCC - Robotic Code Compiler
Forum Robot Kits NIBO 2 NDS3 - Unerklärliches Verhalten

Welcome

Nachrichten

Sie sind nicht eingeloggt.

Werbung

Letzte Themen

  • Keine Beiträge vorhanden

Site-Statistic

  • 7433 private projects
  • 378 public projects
  • 16180353 lines compiled
  • 58212 builds
NIBO @ facebook YouTube Twitter
Willkommen, Gast
Benutzername: Passwort: Angemeldet bleiben:

THEMA: NDS3 - Unerklärliches Verhalten

Aw: NDS3 - Unerklärliches Verhalten 11 Jahre 5 Monate her #1661

  • BirgerT
  • BirgerTs Avatar
  • OFFLINE
  • Gold Boarder
  • Beiträge: 325
..ich habe kein NDS3 und kenne auch den move-Befehl nicht..
Durch das while ist jetzt eine Endlosschleife enstanden, also
led rot an, nds move, warten bis fertig, led aus - led rot an nds move.. usw.
Geht die rote LED überhaupt aus?
Was paassiert, wenn am Ende noch ein Delay(1000); eingefügt wird?

Vielleicht ist die 180 Grad Ehrenrunde ein Feature der Init Funktion?!

Und ich würde das "sei" an den Anfang der while-schleife packen.
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: NDS3 - Unerklärliches Verhalten 11 Jahre 5 Monate her #1662

  • BirgerT
  • BirgerTs Avatar
  • OFFLINE
  • Gold Boarder
  • Beiträge: 325
:offtopic: :oops: Ich konnte es mir nicht verkneifen, die 1000ste Antwort zu posten :evil:
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: NDS3 - Unerklärliches Verhalten 11 Jahre 5 Monate her #1663

  • hgs07
  • hgs07s Avatar
  • OFFLINE
  • Junior Boarder
  • Beiträge: 15
Hallo BirgerT,
das 'sei()' würde ich schon außerhalb der Schleife lassen. Die nds3_init() Funktion ist nicht der Grund für die "Ehrenrunde". Läßt man den Init (nur zu Testzwecken) weg, so bleibt die "Ehrenrunde".
Aktueller Programmablauf (letzter Codeschnipsel): 180Grad-Scan des Scankopfes, dann praktisch zeitgleich Sensorposition nach vorn und kurzes Aufblitzen der roten LED. Einen Augenblick später leuchtet die LED und bleibt dauerhaft an.
An der Entfernung oder Erklärung der "Ehrenrunde" wäre ich weiter interessiert.
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: NDS3 - Unerklärliches Verhalten 11 Jahre 5 Monate her #1668

  • BirgerT
  • BirgerTs Avatar
  • OFFLINE
  • Gold Boarder
  • Beiträge: 325
Also gut, ich habe mal einen Blick in das nds3.c geworfen (Installationsverzeichnis - Sources - nds3.c)
Da ist für das nds3_init nur ein leerer Methodenrumpf drin, also da passiert derzeit gar nix, kannst den Aufruf sparen, oder besser durch nds3_reset ersetzen.

Und wenn man sich den Rest anschaut und mit dem Programm von hgs vergleicht, folgere ich, dass bevor das nds3_busy kommt, schon etliche mal das nds3_move aufgerufen wurde. Die Befehle gehen alle über den i2c, und der braucht bestimmt einige Zeit, bis er sagen kann "so jetzt bin ich busy", und das Hauptprogramm ruft derweil "move, move, move", und die Senderoutine in i2c_master.c schreit "Error, Error, Error".. aber das hört keiner.

Versuch mal ein delay(20) zwischen dem move und dem while(busy)..

Ich habe kein NDS3 und will auch keins mehr.
Der maximale mögliche Winkel ist 255, weil nur ein uint8 übertragen wird.

Alternativ gäbe es da noch eine Funktion nds3_move_servo(uint16_t usec); aber da fehlt irgendwie die Richtung :sick:
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: NDS3 - Unerklärliches Verhalten 11 Jahre 5 Monate her #1675

  • BirgerT
  • BirgerTs Avatar
  • OFFLINE
  • Gold Boarder
  • Beiträge: 325
OK - irgendwie lässt mich das Thema doch nicht los..
Ich wünschte mir, dass die Libs und das Wiki genauso toll und informativ wären, wie die Bauanleitungen.
Wo finde ich eigentlich die Sourcen für den Tiny auf dem nds3?
Auf dem Board sind ja Lötinseln der freien Pins verfügbar, also müsste man den Tiny ja auch selber programmieren können?!

Und an hgs07:
Nutze doch mal die Suchfunktion mit nds3; hast Du das nds3_calibration ausgeführt und die Calibrierdaten abgespeichert?
Was macht der Kopf, wenn Du das move mal auskommentierst - fährt der dann auch eine Ehrenrunde?
Ach - in den Beispielprogrammen von workwind wird auch kein nds3_Init verwendet..
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: NDS3 - Unerklärliches Verhalten 11 Jahre 5 Monate her #1678

  • hgs07
  • hgs07s Avatar
  • OFFLINE
  • Junior Boarder
  • Beiträge: 15
Hallo BirgerT,
mit Suchfunktion meinst du vielleicht eine Kombination von nds3_measure(..),
nds3_read(..) und nds3_distance[..]? Habe diese mal kurz versucht, scheint aber noch mehr Zeit darin zu investieren zu sein. Benutze nds3_get_distanc() mit den copro IR-Funktionen. nds2_calibration musste ich schon oft benutzen, um neu zu kalibrieren (auch die ATtiny84 Firmware des NDS3 habe ich schon zweimal aufgespielt). Programmierfehler im eigenen Coding können leicht die gespeicherten Calibrierdaten abschießen, ist mir mehrmals passiert. Scheint mir vom Systemdesign her nicht sehr glücklich gelöst zu sein.
Der Administrator hat öffentliche Schreibrechte deaktiviert.
Ladezeit der Seite: 0.040 Sekunden

Werbung