Styra ett RC-servo, hjälp med kod.
- mickeliten
- Inlägg: 311
- Blev medlem: 12 november 2003, 14:41:48
Styra ett RC-servo, hjälp med kod.
Hejsan.
Jag är inte så haj på programmering, så jag tänkte fråga om någon
här kan hjälpa mig.
Jag ska förklara vad jag ska göra. Jag tänker ha ett RC-servo som motor
för att rotera en riktantenn.
Men för att riktantennen inte ska snurra runt runt och "dra i kabeln"
så ska man kunna rotera servot 360 grader åt båda hållen,
men alltså inte mer.
Det ska kunna rotera 360 grader och sedan stoppa.
Jag hade tänkt styra det hela med en Basic Stamp.
Måste jag förklara mer för att ni ska kunna hjälpa mig eller räcker denna
lilla förklaring?
MVH Mikael.
Jag är inte så haj på programmering, så jag tänkte fråga om någon
här kan hjälpa mig.
Jag ska förklara vad jag ska göra. Jag tänker ha ett RC-servo som motor
för att rotera en riktantenn.
Men för att riktantennen inte ska snurra runt runt och "dra i kabeln"
så ska man kunna rotera servot 360 grader åt båda hållen,
men alltså inte mer.
Det ska kunna rotera 360 grader och sedan stoppa.
Jag hade tänkt styra det hela med en Basic Stamp.
Måste jag förklara mer för att ni ska kunna hjälpa mig eller räcker denna
lilla förklaring?
MVH Mikael.
Skicka först en puls som är 1.5mS lång, vänta 20mS, skicka en till puls... osv... Då kommer servot vara i mittläge. Vill du sedan vrida det får du ändra pulslängden på den första pulsen till något annat.
Vill du rotera ett "vanligt" servo 360 grader måste du modifiera det, sök lite i forumet så får du mycket info.
Vill du rotera ett "vanligt" servo 360 grader måste du modifiera det, sök lite i forumet så får du mycket info.
- mickeliten
- Inlägg: 311
- Blev medlem: 12 november 2003, 14:41:48
- mickeliten
- Inlägg: 311
- Blev medlem: 12 november 2003, 14:41:48
Funkar positionsfeedbacken då man modifierat servot för 360° rotation?
Du kan skriva programmet enligt:
Beroende för vad du slänger in för övrig kod så får du balansera med ett "pause" efter för att tajma rätt...
Du kan skriva programmet enligt:
Kod: Markera allt
servo1 var word 'På-tid för servopulsen
servo_pin var portb.0
output servo_pin 'Deklarera som utgång
loop:
servo_pin = 1 ' Hög servopuls
puseus servo1 ' Låt vara hög så här länge (10000-20000µs)
servo_pin = 0 ' Låg servopuls igen
'
' Här lägger du all övrig kod som
' måste ta ca 15-20ms att exekvera.
'
goto loop
end
Beroende för vad du slänger in för övrig kod så får du balansera med ett "pause" efter för att tajma rätt...
Senast redigerad av $tiff 24 oktober 2004, 16:49:43, redigerad totalt 1 gång.
- mickeliten
- Inlägg: 311
- Blev medlem: 12 november 2003, 14:41:48