- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 31 bis 40 von 40

Thema: linker Antrieb klemmt + Base stürzt ab

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #35
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    62
    Beiträge
    5.799
    Blog-Einträge
    8
    Hallo

    Wie SlyD schon schreibt, diese Funktionen sind im orginalen Base-Slaveprogamm nicht vorhanden:

    #define CMD_SET_MOTOR_PWR 13
    #define CMD_SET_MOTOR_DIR 14

    Wichtig ist, dass beide Funktionen die Motorparameter libkonform ändern sonst klappt es nicht mit dem task_motionControl() in der Slave-Hauptschleife. Hier eine von mir geschriebene Funktion um die Motoren direkt anzusteuern im direkten Vergleich zum setMotorPower() aus der RP6RobotBaseLib:
    Code:
    // Achtung! Die PWM-Werte werden hier OHNE Rampe verändert!
    void setMotorPWM(uint8_t power_links, uint8_t power_rechts)
    {
    extern uint8_t mleft_ptmp, mright_ptmp;
    
    	if(power_links > 210) power_links = 210;
    	if(power_rechts > 210) power_rechts = 210;
    	mleft_power=mleft_ptmp=power_links;
    	mright_power=mright_ptmp=power_rechts;
    
    	OCR1BL = power_links;
    	OCR1AL = power_rechts;
    
    	if(power_links || power_rechts)
    		TCCR1A = (1 << WGM11) | (1 << COM1A1) | (1 << COM1B1);
    	else
    		TCCR1A = 0;
    }
    
    void setMotorPower(uint8_t left_power, uint8_t right_power)
    {
    	if(left_power > 210) left_power = 210;
    	if(right_power > 210) right_power = 210;
    	mright_power = right_power;
    	mleft_power = left_power;
    }
    Vielleicht hilfts?

    Gruß

    mic

    [Edit]
    Ach, das steht ja auch in der Beschreibung von setMotorPower():
    * -------------------------------------------------------------
    * IT IS A BETTER IDEA NOT TO USE THIS FUNCTION AT ALL!
    * Use moveAtSpeed together with task_motionControl instead.
    * YOU CAN NOT USE setMotorPower AND setMotorDir WHEN YOU USE
    * task_motionControl! This will not work!
    * -------------------------------------------------------------
    http://translate.google.de/translate...+will+not+work!
    Geändert von radbruch (18.05.2011 um 13:45 Uhr)
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

Ähnliche Themen

  1. LCD an RP6-Base
    Von radbruch im Forum Robby RP6
    Antworten: 5
    Letzter Beitrag: 09.11.2010, 21:11
  2. Zusammenspiel der BASE und M32 Control
    Von inka im Forum Robby RP6
    Antworten: 5
    Letzter Beitrag: 01.09.2010, 12:04
  3. bascom und ATTINY 85 PB0 klemmt
    Von kolisson im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 0
    Letzter Beitrag: 12.05.2009, 02:33
  4. RP6 Robot Base Hardware
    Von Dirk im Forum Robby RP6
    Antworten: 27
    Letzter Beitrag: 19.10.2007, 17:00
  5. Uart zwischen zwei Megas klemmt - - wieder einmal
    Von Murus im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 7
    Letzter Beitrag: 06.05.2007, 16:12

Stichworte

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress