Kannst du einmal genau posten wie du die Schaltung verbunden hast (Plan vom tatsächlichen Aufbau). Miss die Spannungen und trage sie im Plan ein wo und wie du gemessen hast (wo ist die rote und wo ist die Schwarze Leitung).
MfG Hannes
Leider immer das selbe Ergebnis. Ich werde noch wahnsinnig...
Wenn ich jetzt Compare1a = 0 teste, bekomme ich am Motor immernoch 11,76v bei 12,08v Hauptspannung am VN2
Code:$regfile = "m32def.dat" $crystal = 16000000 Config Portd.4 = Output Config Portd.5 = Output Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up , Prescale = 1 Config PINB.0 = Output Config PINB.1 = Output PORTB.0 = 0 PORTB.1 = 1 Do Compare1a = 0 Loop End
Kannst du einmal genau posten wie du die Schaltung verbunden hast (Plan vom tatsächlichen Aufbau). Miss die Spannungen und trage sie im Plan ein wo und wie du gemessen hast (wo ist die rote und wo ist die Schwarze Leitung).
MfG Hannes
Hier die Bilder mit Messdaten dazu:
Grundschaltung RN-Control <-> RN-VN2 http://www.bilder-space.de/show_img....&size=original
PWM-Messung http://www.bilder-space.de/show_img....&size=original
Motor-Ports am RN-VN2 http://www.bilder-space.de/show_img....&size=original
Ergebnis am Motor2 Anschluss http://www.bilder-space.de/show_img....&size=original
Verwendetes Programm im RN-Control
Ich hatte das Board an einem alten RN-Control angeschlossen, als das RN-Control unachtsamerweise mal auf den Bleiakku (12v) gefallen ist und dabei zerstört wurde.Code:$programmer = 12 $regfile = "m32def.dat" $crystal = 16000000 Config Portd.4 = Output Config Portd.5 = Output Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up , Prescale = 1 Config PINB.0 = Output Config PINB.1 = Output PORTB.0 = 0 PORTB.1 = 1 Do Compare1a = 127 Loop End
Daher meine Vermutung, dass das RN-NV2 vielleicht auch einen "Schlag" abbekommen hat und jetzt fehlerhaft ist?
Geändert von pin117 (19.04.2012 um 14:58 Uhr)
Was soll denn das hier ?
https://www.roboternetz.de/community...RN-VN2-Problem
Du hast hier doch einen Thread, nur weil Du Deine Fehler noch nicht kennst, kannst Du nicht von anderen Fehlern ausgehen.
Das abgebildete Multimeter ist nicht in der Lage eine PWM mit 62,5kHz zu messen und eine PWM verringert auch keine Spannung, sondern die abgegebene Leistung.
Die Spannung bleibt immer gleich und entspricht der Eingangsspannung, außer in einer Position bei 0 oder 255, je nach Clear Up oder Down, dann ist sie 0.
Welche Bascom-Version wird verwendet ? Es gab eine Änderung in 2.0.7.1, bei der die Bezeichner Clear Up/Down den Atmel Datenblättern angepasst wurde.
Um die Logik umzukehren im Config Timer die Clear Up gegen Clear Down tauschen und dann nochmal versuchen.
Oh man, da fällt es wie Schuppen von den Augen....
Du hast natürlich vollkommen recht und seit ich mit der Beispieldatei von der CD-Rom den Fehler hatte, habe ich nur noch Volt gemessen - was nicht geht, wie Du trefflich sagst. Jetzt habe ich die Motoren angeschlossen und natürlich geht es mit denen. Sowohl Compare1a = 127 also auch z.B. 50 langsamer.
Die Version von Bascom bei mir ist die 2.0.7.1. Sollte ich Clear Up besser tauschen? Jetzt scheint es trotzdem derzeit zu gehen?
Wenn 50 langsamer als 127 ist, dann ist die Konfiguration ok und Du musst hier nichts ändern:
Machst Du's trotzdem, kehren sich die erforderlichen Werte für die Compare-Register um.Die Version von Bascom bei mir ist die 2.0.7.1. Sollte ich Clear Up besser tauschen?
verstehe, danke
you made my day
Ich stehe natürlich gleich vor dem nächsten Problem...
Jeder Motor lässt sich einzeln ansteuern, aber nicht beide zusammen. Warum?
Code:$programmer = 12 $regfile = "m32def.dat" $crystal = 16000000 Config Portd.4 = Output 'PWM Motor 1 Config Portd.5 = Output 'PWM Motor 2 Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up , Prescale = 1 Config PINB.0 = Output ' Motor 1 in 1 Config PINB.1 = Output ' Motor 1 in 2 Config PINC.6 = Output ' Motor 2 in 1 Config PINC.7 = Output ' Motor 2 in 2 PORTB.0 = 1 ' Richtung vor PORTB.1 = 0 ' Richtung zurück PORTC.6 = 1 PORTC.7 = 0 PORTD.5 = 1 ' GEHT Pwm1a = 127 Pwm1b = 0 Waitms 400 'GEHT Pwm1a = 0 Pwm1b = 127 Waitms 400 ' GEHT NICHT wenn beide an sind??? Pwm1a = 127 Pwm1b = 127 Waitms 400 'GEHT natürich Pwm1a = 0 Pwm1b = 0 End
Nach stundenlanger Suche hab ich's natürlich rausgefunden kurz nachdem ich hier im Forum wieder gefragt habe...
Der Prescaler muss auf 8, dann gehen beide.
Ich hab zwar nicht verstanden, was der Prescaler macht (die Dokumentation an der Stelle leuchtet mir noch nicht ein). Aber falls mal jemand das Selbe Problem hat...
Der Timer wird vom Prozessortakt versorgt. Der Prescaler ist sozusagen ein Taktteiler, der diesen Prozessortakt um bestimmte, einstellbare Faktoren herunterteilt. Wenn du also einen Prozessortakt von 1 Mhz benutzt und den Prescaler auf 8 stellst, wird der Timer nur noch mit 125 khz versorgt, also um den Faktor 8 langsamer. Alles klar?
Grüße
Thomas
Lesezeichen