Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > Hallo zusammen, > ich mußte feststellen, dass es wohl ein Problem sein kann die PLM-Kanaele 0 und 1 von 0% (bzw. gerade initialisiert) auf 100% Tastverhaeltnis zu steuern. Konkret (s.Quelltext unten): Ich initialisiere die PLM Kanaele 0 und 1, setze die timebase auf 25,6 Mikrosekunden und die Periodenlaenge auf 195 Ticks. Direkt danach kann ich die Funktion plm.out nicht mit 195 "fuettern". Das hat lediglich ein Low zur Folge. Erst durch setzen von 194 Ticks dann _zwingend_ ein sleep 5; und nun 195 Ticks gehen beide Ausgaenge auf konstant High. Das ist auch bei einem Sprung von 50% auf 100% Tastverhaeltnis so. D.h. auch hier muss ich erst ueber 194 Ticks gehen. > In umgekehrter Richtung (Tastverhaeltnis reduzieren) klappt der Sprung auf 0% Tastverhaeltnis jederzeit. > > Hat jemand aehnliche Erfahrungen gemacht und weiss vielleicht eine Loesung feur dieses seltsame Verhalten der PLM? Bin fuer jeden Vorschlag dankbar, der mir solche Workarounds erspart. > > Ciao > Theo > > /* > Title: Main-Modul > */ > /*******************************************************************/ > thread main > { > > plm.setmode(0,0); > > plm.setmode(1,0); > > // Kanal 0 und 1 mit timebase (Tickdauer) 6 (25,6 Mikrosekunden) init. > plm.settimebase(0,6); > > // Kanal 0 und 1 mit PeriodLength (Anzahl Ticks pro Periode) init. > // 195 Ticks * 25,6 Mikrosekunden = 5 ms > plm.setperiod(0,195); > > // PLM-Kanaele 0 und 1 mit 100% Einschaltdauer init. > // Die Motorelektronik interpretiert das als Stopp! (Invertierung). > // Geht nicht direkt mit 100% PLM. > plm.out (0,194); > plm.out (1,194); > sleep 5; > plm.out (0,195); > plm.out (1,195); > > // Ende der Initialisierung > > halt; > > } >