Einen Pin mit Gleichspannung ansteuern? Bitte formuliere deine Frage nochmals neu und erkläre uns dein Vorhaben mit etwas mehr Infos.
Hallo, Experten
Ich möchte den PWM Pin meines Robotermotors (probot 128 ) mit Gleichspannung ansteuern. Wie muss ich die Code verändern und hält die H-Brücke (L293D) und (CD4093) die Spannung aus ?
Gruß MaxCode:'---[ Drive Setup ]------------------------------------------------------------- Sub DRIVE_INIT() Port_DataDirBit(Motor_Enable,PORT_OUT) 'Port Enable Motor = Output DRIVE_OFF() Timer_T1PWMX(256,128,128,PS_8) 'Config For channel A und B Timer1 Timer_T1PWA(128) 'Pulse/Break = 50/50 channel-A Timer_T1PWB(128) 'Pulse/Break = 50/50 channel-B End Sub
Einen Pin mit Gleichspannung ansteuern? Bitte formuliere deine Frage nochmals neu und erkläre uns dein Vorhaben mit etwas mehr Infos.
Grüße
Thomas
Hallo
Der Pro bot 128 steuert die Motoren mit PWM an also der Stromkreis wird immer wieder geschlossen und geöffnet. Außerdem besitzt er eine H-Brücke mit der er die Drehrichtung des Motors ändert. ich habe jetzt ein
anti- Staubtuch unter dem Roboter befestigt, so dass er meine Fußboden von Staub befreit. Dieses funktioniert mit einem selber geschriebenen Programm , was ich aus System - Check Programmen zusammengewürfelt habe . meine nächste Idee wird sein ,dass er sich nicht mehr mit den IR LEDs steuert sondern mit einem Ultraschallsensor. Das Buch von dem Franzis Verlag hilft mir dabei.Und ein Kompass Modul wird noch befestigt ,dass er selbstständig an die Ladestation fahren kann. Meine Frage ist jetzt , ob ich die Motoren mit dem verändern der Liberty in Basic so verändern kann ,dass die Motoren eine konstante Spannung bekommen und keine Pulsierende , die im Motor ein Piepen erzeugt. Bedacht habe ich außerdem das die Spannung auf ganze 5 Volt ansteigen wird und die Motoren aus dem Grund einen Widerstand benötigen. Ich habe schon versucht die größten puls Pausen und die Kleinsten zu nehmen. Bei den Großen sind zu viele Verluste aufgetreten und beide sind nach 5 Minuten noch ne gute halbe Stunde im Ohr zu hören . Die Tick dauer :
PS0_1 (1)
67,8 ns
PS0_8 (2)
542,5 ns
PS0_32 (3)
2,17 µs
PS0_64 (4)
4,34 µs
PS0_128 (5)
8,68 µs
PS0_256 (6)
17,36 µs
PS0_1024 (7)
69,44 µs
Liberty Code :Gruß maxCode:'---[ Drive Setup ]------------------------------------------------------------- Sub DRIVE_INIT() Port_DataDirBit(Motor_Enable,PORT_OUT) 'Port Enable Motor = Output DRIVE_OFF() Timer_T1PWMX(256,128,128,PS_8) 'Config For channel A und B Timer1 Timer_T1PWA(128) 'Pulse/Break = 50/50 channel-A Timer_T1PWB(128) 'Pulse/Break = 50/50 channel-B End Sub
Okay, aber wie willst du dann die Geschwinigkeit einstellen oder die Fahrtrichtung verändern? Auch Anfahr- und Bremsrampen sind so nicht möglich. Damit du die PWM nicht mehr hörst kannst du auch eventuell die Frequenz in den für uns Menschen nicht mehr wahrnehmbaren Bereich verschieben.
Grüße
Thomas
Das verändern der Fahrtrichtung erfolgt doch durch das Umpolen der Motor H-Brücke. Indem sich nur ein Motor bewegt dreht sich der Roboter. Ich möchte es nur mal ausprobieren ob es ohne PWM auch geht. An den Motoren wird noch ein Poti befestigt , der die Geschwindigkeit kalibriert. Ich muss doch dafür nur den Port anschalten also auf low oder ? bzw so :und im Drive Setup ^^ nehme ich die Timer für die pulse raus , dass der Port nur an istCode:'---[ Drive ON ]---------------------------------------------------------------- Sub DRIVE_ON() Port_WriteBit(Motor_Enable,1) 'Port = Low End Sub
Gruß Arne
Das wird eine heftig ruckartige Drehung. Und Geschwindigkeit einstellen geht ohne PWM überhaupt nicht mehr. Was willst du mit dem Poti machen? Wenn du den Motorstrom über ein Poti laufen lassen willst, wirst du ein etwas größeres Poti benötigen, denn da entsteht massig Verlustleistung.
Grüße
Thomas
Okay ohne PWM geht es nicht. Die Zahnräder am Motor würden auf dauer durch die ruckartigen Umdrehungen schaden nehmen und die Akkus sind schneller leer. Trotzdem danke für deine Antworten. Ich mache mich dann wieder ans Werk.
Gruß Arne
Wie würdest du die PWM-Frequenz verändern ? nur die Pulse ?
Lesezeichen