- 3D-Druck Einstieg und Tipps         
Seite 2 von 5 ErsteErste 1234 ... LetzteLetzte
Ergebnis 11 bis 20 von 47

Thema: Frage zum Pulsein Befehl

  1. #11
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    21.05.2012
    Beiträge
    511
    Anzeige

    Praxistest und DIY Projekte
    Den ersten Motor würde ich dann, nachdem er ja anscheinend funktioniert mit dem Signal, einfach abklemmen.
    Also ich steuer ein rp5 Chassis an.Dies bedeutet ,dass ich beim ersten Kanal zwei Motoren drehe (für vor und zurück).Desshalb kann ich nicht einen Motor abklemmen.

    hat damals meinen Motortreiber gegrillt
    Meiner wird auch schon sehr warm.

    Da du keine LED zur Anzeige des "run" vom µC in diesem Programm hast, sieht man eventuell auch nicht das er mitresetet??
    Habe ich nicht dafür den Summer (PortD.7) ???

    Was soll ich jetzt machen?? Der resettet nicht automatisch.

  2. #12
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    Soltau - Niedersachsen
    Alter
    46
    Beiträge
    1.369
    ja...der Summer tuts wohl an der Stelle auch

    Dann programmiere den doch einfach raus.

    Ich würde die Pausen beim einlesen des signals noch auskommentieren.

    Ich weiß sonst auch nicht weiter.
    Geändert von HeXPloreR (02.01.2013 um 21:39 Uhr)

  3. #13
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    21.05.2012
    Beiträge
    511
    Also ich habe die Pausen noch mal weggemacht,doch es tritt keine Änderung ein.
    Also noch mal die Problemstellung ,damit mir andere vielleicht auch helfen können:Wenn ich den Code RC-Fernsteuerung mit Motoren lade ,funktioniert Kanal 1(Rckanal) langsamer ,als wenn ich nur einen Kanal im Programm habe, und der zweite Kanal (Lala) zuckt nur.
    Zur Information :ich benutze ein rp5 Cassis mit den zwei Motoren.Das bedeutet ,der Kanal 1 ist für vor und zurück ,und der Kanal 2(Lala) ist für das Drehen.
    Frage warum funktionert das nicht??

  4. #14
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    Soltau - Niedersachsen
    Alter
    46
    Beiträge
    1.369
    Also wenn Du mich immer noch fragst, dann meine ich solltest Du die Kanäle trennen - also der eine sagt das es vor oder zurück geht, und der andere Kanal wird zu dem anderen mit eingerechnet um ein drehen zu ermöglichen.

    Jetzt scheint es mir so zu sein, als wenn deine beiden Kanäle sich überschneiden weil sie beide auf PWM1a und PWM1b direkt wirken.

  5. #15
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    21.05.2012
    Beiträge
    511
    Ja ich habe sie jetzt mal so ähnlich getrennt.Ich habe bei Case Rckanal nur die Sachen für PWM 1a gelassen und bei Lala nur PWM 1b.
    Jetzt funktionieren beide Kanäle doch wenn ich gleichzeitig betreibe dreht der eine Motor auf einmal anders herum . Warum ????
    Wie meinst du das mischen sonst ??Hättest du einen Code ??

  6. #16
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    Soltau - Niedersachsen
    Alter
    46
    Beiträge
    1.369
    Poste mal den jetzigen Code hier per codeeinfügefunktion bei erweiterte Antwort - dann braucht man sich den nicht runterladen.

    Leider habe ich keine Code - habe auch nur den von der RN-Control...

  7. #17
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    21.05.2012
    Beiträge
    511
    Hier :

    Code:
    $regfile = "m32def.dat"
    $crystal = 16000000
    $baud = 9600
    $hwstack = 32
    $swstack = 32
    $framesize = 32
    
    Config Portd.7 = Output
    Config Portd.7 = Output
    Config Pinc.6 = Output                                      'Linker Motor Kanal 1
    Config Pinc.7 = Output                                      'Linker Motor Kanal 2
    Config Pind.4 = Output                                      'Linker Motor PWM
    Config Pinb.0 = Output                                      'Rechter Motor Kanal 1
    Config Pinb.1 = Output
    Config Pind.5 = Output
                                          'Rechter Motor PWM
    Config Timer1 = Pwm , Pwm = 10 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up
    Pwm1a = 0
    Pwm1b = 0
    Tccr1b = Tccr1b Or &H02                                     'Prescaler = 8
    
    Dim Rckanal As Word
    Dim Lala As Word
    
    Sound Portd.7 , 400 , 450
    Sound Portd.7 , 400 , 250
    Sound Portd.7 , 400 , 450
    Wait 2
    
    Main:
    
      Waitms 10
      Pulsein Rckanal , Pind , 2 , 1                            'Messung Zeit zwischen 1 und 0 Pegel
      Waitms 10
      Pulsein Lala , Pind , 3 , 1                               'Messung Zeit zwischen 1 und 0 Pegel
      Waitms 10
    
      Select Case Rckanal
    
          Case 90 To 140
          Portc.6 = 1
          Portc.7 = 0
          Portd.4 = 1
    
          Pwm1a = 600
          Waitms 10
    
          Case 160 To 200
          Portc.6 = 1
          Portc.7 = 0
          Portd.4 = 1
    
          Pwm1a = 600
          Waitms 10
    
          Case Else
          Portc.6 = 1
          Portc.7 = 0
          Portd.4 = 1
    
          Pwm1a = 0
          Waitms 10
    
      End Select
    
      Select Case Lala
    
          Case 90 To 140
          Portb.0 = 1
          Portb.1 = 0
          Portd.5 = 1
    
          Pwm1b = 600
          Waitms 10
    
          Case 160 To 200
    
          Portb.0 = 1
          Portb.1 = 0
          Portd.5 = 1
    
          Pwm1b = 600
          Waitms 10
    
          Case Else
    
          Portb.0 = 0
          Portb.1 = 1
          Portd.5 = 1
          Pwm1b = 0
          Waitms 10
    
      End Select
    Goto Main

  8. #18
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    Soltau - Niedersachsen
    Alter
    46
    Beiträge
    1.369
    Versuche mal jeweils im case else die Portd.4 + 5 = 0 zu setzen. PWM ist dann nicht nur 0, sondern ganz am Port aus.

    Wenn das klappt dann denke ich ist es das gleiche was ich mal hatte. Der Zähler vom PWM zählt irgendwie falschrum - glaube so kann man das sagen
    Bei 0 volle Pulle

    Hängt irgendwie zusammen mit:

    Compare A Pwm = Clear Up, Compare B Pwm = Clear Up

    ...aber so weit bin ich noch nicht.

  9. #19
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    21.05.2012
    Beiträge
    511
    wenn ich das so mache :
    Code:
    $regfile = "m32def.dat"
    $crystal = 16000000
    $baud = 9600
    $hwstack = 32
    $swstack = 32
    $framesize = 32
    
    Config Portd.7 = Output
    Config Portd.7 = Output
    Config Pinc.6 = Output                                      'Linker Motor Kanal 1
    Config Pinc.7 = Output                                      'Linker Motor Kanal 2
    Config Pind.4 = Output                                      'Linker Motor PWM
    Config Pinb.0 = Output                                      'Rechter Motor Kanal 1
    Config Pinb.1 = Output
    Config Pind.5 = Output
                                          'Rechter Motor PWM
    Config Timer1 = Pwm , Pwm = 10 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up
    Pwm1a = 0
    Pwm1b = 0
    Tccr1b = Tccr1b Or &H02                                     'Prescaler = 8
    
    Dim Rckanal As Word
    Dim Lala As Word
    
    Sound Portd.7 , 400 , 450
    Sound Portd.7 , 400 , 250
    Sound Portd.7 , 400 , 450
    Wait 2
    
    Main:
    
      Waitms 10
      Pulsein Rckanal , Pind , 2 , 1                            'Messung Zeit zwischen 1 und 0 Pegel
      Waitms 10
      Pulsein Lala , Pind , 3 , 1                               'Messung Zeit zwischen 1 und 0 Pegel
      Waitms 10
    
      Select Case Rckanal
    
          Case 90 To 140
          Portc.6 = 1
          Portc.7 = 0
          Portd.4 = 1
    
          Pwm1a = 600
          Waitms 10
    
          Case 160 To 200
          Portc.6 = 1
          Portc.7 = 0
          Portd.4 = 1
    
          Pwm1a = 600
          Waitms 10
    
          Case Else
          Portc.6 = 1
          Portc.7 = 0
          Portd.4 = 0
    
          Waitms 10
    
      End Select
    
      Select Case Lala
    
          Case 90 To 140
          Portb.0 = 1
          Portb.1 = 0
          Portd.5 = 1
    
          Pwm1b = 600
          Waitms 10
    
          Case 160 To 200
    
          Portb.0 = 1
          Portb.1 = 0
          Portd.5 = 1
    
          Pwm1b = 600
          Waitms 10
    
          Case Else
    
          Portb.0 = 0
          Portb.1 = 1
          Portd.5 = 0
    
          Waitms 10
    
      End Select
    Goto Main
    und dann einmal den Kanal 1 bewege ,dann läuft der Motor zwar an,aber ich kann ihn nicht mehr stoppen .Genau so läuft es mit Kanal 2 auch . Häää ??????

  10. #20
    RN-Premium User Fleißiges Mitglied
    Registriert seit
    19.05.2012
    Ort
    Sigmaringen
    Beiträge
    169
    Lass doch einfach mal die Werte von den 2 Kanälen über Print an die Konsole zurückgeben und schau dir
    an, was die für Werte annehmen... sowas hilft ungemein bei der Fehlersuche.

    Sowas kannst auch mit den anderen werten mal machen um die zu kontrollieren.

    Zitat Zitat von Der Einsteiger Beitrag anzeigen
    wenn ich das so mache :
    Code:
      Waitms 10
      Pulsein Rckanal , Pind , 2 , 1                            'Messung Zeit zwischen 1 und 0 Pegel
      Print Rckanal 
      Waitms 10
      Pulsein Lala , Pind , 3 , 1                               'Messung Zeit zwischen 1 und 0 Pegel
      Print Lala  
      Waitms 10
    und bei...
    Compare A Pwm = Clear Up
    müssen da nicht unterstriche zwischen die wörter ? meckert der nicht beim kompilieren ?

    D.7 ist doppelt configuriert ganz am Anfang.

    ... und die ausgänge der motoren...
    Case 90 To 140
    Portb.0 = 1
    Portb.1 = 0
    Portd.5 = 1


    Pwm1b = 600
    Waitms 10

    Case 160 To 200

    Portb.0 = 1
    Portb.1 = 0
    Portd.5 = 1


    Pwm1b = 600
    Waitms 10
    sind die absichtlich bei 2 Servostellungen identisch geschaltet ?

Seite 2 von 5 ErsteErste 1234 ... LetzteLetzte

Ähnliche Themen

  1. Frage zum Bascom "Sound"-Befehl
    Von DirkP im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 4
    Letzter Beitrag: 06.04.2012, 14:07
  2. Wert berechnen Pulsein-Befehl
    Von RAM im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 3
    Letzter Beitrag: 24.01.2011, 18:05
  3. Arbeiten mit dem PULSEIN-Befehl
    Von Powell im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 0
    Letzter Beitrag: 02.07.2007, 16:14
  4. Frage zum Befehl "readmagcard" bzw. abbruch des pr
    Von sephi23 im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 2
    Letzter Beitrag: 29.06.2006, 09:20
  5. Frage zum Befehl outp!
    Von Decca im Forum C - Programmierung (GCC u.a.)
    Antworten: 7
    Letzter Beitrag: 03.03.2005, 14:52

Berechtigungen

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

12V Akku bauen