- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Ergebnis 1 bis 4 von 4

Thema: Hilfe bei Programmierung

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #2
    Erfahrener Benutzer Roboter-Spezialist Avatar von RolfD
    Registriert seit
    07.02.2011
    Beiträge
    414
    Hallo Wenkstar,
    das Programm hat mal rein garnichts schönes...
    Zitat Zitat von wenckstar Beitrag anzeigen
    FWDBWD.c:12: error: expected ')' before ';' token
    expected heißt "erwartet", es fehlt wohl ein ) vor dem ;?
    Zitat Zitat von wenckstar Beitrag anzeigen
    move(30,FWD,Dist_MM(300);
    wieviel Klammern gehen da also auf und wie viele zu?
    Bei BWD genau so....

    moveAtSpeed(0,0);
    dürfte nach dem move Befehl auch wenig Sinn machen, vielleicht guckst du dir mal an was in der RP6RobotBaseLib.c
    zur Funktion "moveAtSpeed" und "move" steht... oder exerzierst erst mal alle Beispielprogramme und Libs durch.. incl. lesen und verstehen der Sources.

    Mal abgesehen davon, das "move" 4 Parameter hat wie in den Lib Sources zu sehen und nicht 3 wie in deinem Aufruf,
    FWDBWD.c:19: error: too few arguments to function 'move'
    begehst du noch einen logischen Fehler obwohl der Compiler dies schon anmeckert.

    Du möchtest das der Bot sich 300mm vorwärts bewegt und stehen bleibt, dann 300mm zurück fährt und stehen bleibt.
    Dazu schickst du einen verkorksten Move Befehl ab.. und dann ein moveAtSpeed(0,0); also quasi als "Stop" Befehl.

    Das ist wie wenn ich Dir sage, "gehe 10 Schritte" ... was machst du nach den 10 Schritten normalerweise? Stehenbleiben? Aha! Und dann wenn du stehst sag ich dann noch mal "stehen bleiben" oder wie?

    Genau das machst du da im Programm. Logisch falsch! Steht auch genau so im Source...

    * This function allows you to tell the robot to drive a specific distance
    * at a given speed and then stop.
    Ein extra Stop macht nur bei einer unbefristeten Bewegung wirklich Sinn z.B. an einem Hindernis... und dazu muss man auch erst mal die Interuptstruktur, blocking, Odometrieauswertungen usw. verstanden haben.
    Nebenbei - es gibt auch einen echten Stop Befehl... auch im Lib Source zu finden.

    Das sind Anfängerfehler aber nicht ohne Grund wird Anfängern auch dringenst empfohlen, sich die Beispiele genau anzugucken.
    Dieser Tip ist nicht nur als sinn- und zweckfreie "nice to do" Aufgabe gedacht.

    Der Compiler sagt dir ausserdem doch deutlich wo es klemmt... les das bitte auch und behebe es selbstständig. In dem kurzen Stück Programm stecken schon 4 syntaktische und 2 logische Fehler so wie 2 warnings wegen ungenutzter Vars und einem Denkfehler zum Ablauf, du achtest nicht auf die Compilermessages und schaust dir auch nicht die gut dokumentierten Funktionsköpfe in den Libs an. Es gehört schon etwas mehr Präzision zum programmieren. Schön ... ist was anders.

    Gruß Rolf
    Geändert von RolfD (10.04.2012 um 00:43 Uhr)
    Sind Sie auch ambivalent?

Ähnliche Themen

  1. Hilfe bei Programmierung
    Von margrit im Forum Asuro
    Antworten: 2
    Letzter Beitrag: 06.04.2011, 16:29
  2. Hilfe, 1. Programmierung
    Von Barracuda_cy im Forum Assembler-Programmierung
    Antworten: 10
    Letzter Beitrag: 18.05.2008, 18:34
  3. Hilfe bei Programmierung
    Von TG12Mrobo im Forum Robby RP6
    Antworten: 5
    Letzter Beitrag: 18.11.2007, 19:52
  4. Hilfe bei Programmierung
    Von patrik_backh im Forum Elektronik
    Antworten: 3
    Letzter Beitrag: 18.12.2006, 12:35
  5. Hilfe bei Isp Programmierung
    Von Proworx im Forum Elektronik
    Antworten: 1
    Letzter Beitrag: 05.06.2005, 07:18

Berechtigungen

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

12V Akku bauen