Det normala för ett R/C servo är 1-2 ms pulser med 20 ms (50 Hz) intervall. Men hur mycket kan man pressa ner frekvensen innan det kan bli problem?
Jag har ett mycket snabbt servo (Futaba S9352HV) som slår ändpunkt till ändpunkt på 60 ms. Kortare steg går på några få ms. Jag vill ha snabbast möjliga system och de vanliga 20 ms mellan pulserna blir lite långsamt. Men jag vill inte heller få problem om jag byter servo...
Är det någon som har någon slags känsla för långt man kan gå? Finns det risk för problem/skador?
Utan att vara säker så skulle jag anta att en tvåkanalig sändare/mottagare har ett intervall på <10ms och jag kan egentligen inte se hur det skulle kunna bli ett problem överhuvudtaget.
Det som görs den gamla servostyrkretsen (NE544 om jag inte mins fel) var att jämföra servopulsen med en referenspuls på 1,5ms kortare så styrde den åt ena hållet längre så styrde den åt andra hållet.
Så det är faktiskt bara pulslängden som styr vartåt den skall inte intervallet.
Precis, digitala servon brukar oftast bara mäta pulslängden på en I/O, samma med ESC:er. Där räcker det att processorn detekterar en stigande och en fallande flank på signalen. Det brukar gå att köra uppåt 400-500 Hz.
De "gamla" fungerar så att när det kommer en puls startar en intern puls samtidig. Den interna pulsens längd beror på ställningen som servon har och när den inkommande pulsen slutar och den interna slutar på ett annat tidpunkt kommer det en puls till motorn som då rör på sig. Pulslängden och polariteten till motorn beror på skillnaden mellan de två pulser.
Kör man alltså för snabbt hinner det interna pulsandet inte med helt enkelt och det blir bara goja av det hela.
En digital servo (som jag har fattat det) mäter pulsen medelst en µC och kör sedan motorn till positionen passar överens. Får den alltså en puls per halva timme (kan vara överdrivit, kan ju finnas någon time-out) kommer servon att ställa sig i det läge snabbast möjligt, alltså har PRF enbart betydelse för hur fort man kan ändra positionen, inte på hur fort servon ställer in.
Eftersom skillnaden i pulslängd i gamla servon förlängs med en "pulsförlängare" och sedan används den förlängda pulsen som en slags pwm @ 50Hz för för att putta på servot kan man eventuellt snabba upp ett gammalt servo genom att ange en position längre bort än vad man egentligen önskar och sedan ange den riktiga slutpositionen när man börjar närma sig. För långa rörelser fungerar det inte då servot går upp i maxhastighet rätt snabbt, men för kortare rörelse kan det kanske funka.
En annan variant kan eventuellt vara att höja spänningen lite för att få den interna dc-motorn att snurra snabbare. Gamla servon brukar vara specade för 6v men det kanske går att höja den spänningen ytterligare lite, åtminståne tillfälligt
Jag skrev nån gång en fulhackad servodriver som inte vhade speciellt fast uppdateringsfrekvens, som funkade fint med servot på labb-bänken, men absolut inte fungerade med servot jag verkligen skulle använda. Testade med fler servon och det visade sej att det var just uppdateringen som vissa var känsliga för men andra glatt svalde.
Varierande uppdateringsfrekvens men inte snabbare eller långsammare får en del servon att få fnatt mao?
Eller fick du kläm på exakt vad som ej fungerade?
Jag trotr det var att jag låg för långt utanför vad dom klarade av, men grundfelet var ju att beroende på vad som hände mer i loopen blev ju uppdateringen olika hela tiden, jag skrev om det helt sen och löste problemet på det sättet.