Stap 5: Codering de controller
1. start: Grote servo neer, linker servo achterdek, juiste servo vooruit
2. grote servo, liet de forward, juiste servo servo aft.
3. Herhaal deze procedure.
Hier is de code in cursief:
' {$STAMP BS2} VAR Word Counter ' gebruikt als index in voor/volgende lussen ' *** wakker en schudden een been - gewoon voor de lol *** PAUZE 7000 ' tijd toegestaan voor de set-up van de camera, kan worden verwijderd ' van 777 naar 927 verplaatsen (omhoog) = 1 tot en met 4 maart ' Houd positie 927 ' verplaatsen van 927 naar 627 ' Houd positie op 627 ' van 627 naar 927 verplaatsen (omhoog) VOLGENDE ' 927 overstappen naar 777 (statisch) PAUZE 1000 ' crank zal regelen naar 777 statische positie moeten laden ' *** drie benen schudden *** ' swing van 750 naar 900 positie (vooruit) VOOR schreden = 1 tot en met 3 ' swing vooruit van 600 tot 900 positie ' swing uit 900 naar 750 positie
' {$PBASIC 2.5}
' wakker door het bewegen van de benen dan wandelingen fwd, terug, en draait links en rechts een geprogrammeerde aantal keren
' OPMERKING! Servo moet worden gevoed vanuit een andere bron dan de Vdd (+ 5VDC)
' USB-poort is vooruit. zwarte poot (links voorste been) wordt gebruikt om te verwijzen naar posities. Zie hieronder
' been schommel: 900 = fwd, 750 = mid, 600 = terug-rocker servo lift: 927 = omhoog, 777 neutraal/statische 627 = omlaag
VAR Nib passen ' gebruikt als index in de herhaalde lusjes
VAR Word vertragen ' ms tussen pulsen. Min ~ 8. Raar > 50. Normaal = 20
herhalingen VAR Word ' aantal keer herhalen van de pols in de lus.
Snelheid van VAR Byte ' Dit is effectief wandelen snelheid, 20 = Hallo-snelheid, 1 = laagste snelheid
LongSteps VAR Nib ' Opmerking limiet van 16 stappen
VAR Nib maart ' aantal tijden te marcheren in plaats aan begin
OutPinRedServo VAR Nib
OutPinGreenServo VAR Nib
OutPinLiftServo VAR Nib
OutPinLiftServo = 12 ' lift servo signaal lijn verbinden met deze pin
OutPinGreenServo = 10 ' groene servo signaal lijn verbinden met deze pin
OutPinRedServo = 11 ' rode servo signaal lijn verbinden met deze pin
herhalingen = 150
Snelheid = 4
LongSteps = 3
vertraging = 10' dit dalen zal als de tijd vordert simuleren wakker
FOR counter = 1 TO herhalingen
PULSOUT OutPinLiftServo, 777 + teller ' 777 is horizontale positie van de crank arm, we willen eindigen op 927
PAUZE vertraging
VOLGENDE ' finish op 927
FOR counter = 1 TO herhalingen * 2 stap 4
PULSOUT OutPinLiftServo, 927 ' houden op 927
PAUZE vertraging
VOLGENDE
FOR counter = 1 TO (herhalingen * 2) ' beweging lift servo alleen
PULSOUT OutPinLiftServo,(927-counter) ' wilt laten eindigen op 627
PAUZE vertraging
VOLGENDE ' finish op 627
FOR counter = 1 TO herhalingen * 2 stap 4
PULSOUT OutPinLiftServo, 627
PAUZE vertraging
VOLGENDE
FOR counter = 1 TO (herhalingen * 2) ' beweging lift servo alleen
PULSOUT OutPinLiftServo, (627 + teller) ' wilt laten eindigen op 927
PAUZE vertraging
VOLGENDE ' finish op 927
vertraging vertraging/2 = ' versnellen langzaam te simuleren waking up - vertraging gaat naar nul
FOR counter = 1 TO (reps) ' beweging lift servo alleen
PULSOUT OutPinLiftServo, (927 - counter) ' wilt laten eindigen op 777
VOLGENDE ' finish op 900 fwd en 777 statische
vertraging = 32
' van 777 naar 927 verplaatsen (omhoog)
FOR counter = 1 TO (reps) ' beweging lift servo alleen
PULSOUT OutPinLiftServo, (777 + teller) ' wilt eindigen op 927
PAUZE 10
VOLGENDE
FOR counter = 1 TO (reps) stap snelheid ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 927 ' Houd 627 opmerking dat 777 zich neutraal op Hitec 765HB lift servo
PULSOUT OutPinRedServo, (750 + teller) ' eind 900 positie (vooruit) fwd
PULSOUT OutPinGreenServo, (750 + teller) ' eind 900
PAUZE vertraging
VOLGENDE ' finish op 900 fwd en 927 up
' swing terug van 900 naar 600 positie
FOR counter = 1 TO (herhalingen * 2) stap snelheid ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 927 ' houden van 627 down-Let erop dat 777 neutraal op Hitec 765HB lift servo is
PULSOUT OutPinRedServo, (900 - counter) ' eind 600 terug
PULSOUT OutPinGreenServo, (900 - counter) ' eind 600
PAUZE vertraging
VOLGENDE ' finish bergop 600 terug en 627 down
FOR counter = 1 TO (herhalingen * 2) stap snelheid ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 927 ' Houd 927 opmerking dat 777 zich neutraal op Hitec 765HB lift servo
PULSOUT OutPinRedServo, (600 + teller) ' eind 900
PULSOUT OutPinGreenServo, (600 + teller) ' eind 900
PAUZE vertraging
VOLGENDE ' finish op 900 fwd en 927 up
vertraging vertraging/2 = ' snelheid voor elke cyclus
VOLGENDE
FOR counter = 1 TO (reps) stap snelheid ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 927 ' Houd 627 opmerking dat 777 zich neutraal op Hitec 765HB lift servo
PULSOUT OutPinRedServo, (900 - counter) ' einde bij 750
PULSOUT OutPinGreenServo, (900 - counter) ' einde bij 750
PAUZE vertraging
VOLGENDE
' 927 overstappen naar 777 (statisch)
FOR counter = 1 TO (reps) ' beweging lift servo alleen
PULSOUT OutPinLiftServo, (927 - counter) ' wilt laten eindigen op 777
VOLGENDE ' finish op 900 fwd en 777 statische
PAUZE 1000 ' regelen naar statische positie 777 en 750
' *** einde van waking up en schudden een been - finish op 750 mid en 627 static ***
' *** begin van Ga ongecompliceerd ***
vertraging = 10 ' reset en een beetje langzamer bewegen
' van 777 naar 927 verplaatsen (omhoog)
FOR counter = 1 TO (reps) ' beweging lift servo alleen
PULSOUT OutPinLiftServo, (777 + teller) ' wilt eindigen op 927
VOLGENDE
' swing van 750 naar 900 positie (vooruit)
FOR counter = 1 TO (reps) stap snelheid ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 927 ' Houd 627 opmerking dat 777 zich neutraal op Hitec 765HB lift servo
PULSOUT OutPinRedServo, (750 + teller) ' eind 900 positie (vooruit) fwd
PULSOUT OutPinGreenServo, (750 + teller) ' eind 900
PAUZE vertraging
VOLGENDE ' finish op 900 fwd en 927 up
' omlaag van 927 tot 627 ()
FOR counter = 1 TO (herhalingen * 2) ' beweging lift servo alleen
PULSOUT OutPinLiftServo, (927 - counter) ' wilt einde op 627 down
VOLGENDE ' finish op 900 fwd en 627 down
VOOR schreden = 1 te Longsteps ' volledige schommel lopen vooruit voor LongSteps cycli
' swing terug van 900 naar 600 positie
FOR counter = 1 TO (herhalingen * 2) stap snelheid ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 627 ' houden van 627 down-Let erop dat 777 neutraal op Hitec 765HB lift servo is
PULSOUT OutPinRedServo, (900 - counter) ' eind 600 terug
PULSOUT OutPinGreenServo, (900 - counter) ' eind 600
PAUZE vertraging
VOLGENDE ' finish bergop 600 terug en 627 down
' van 627 naar 927 verplaatsen (omhoog)
FOR counter = 1 TO (herhalingen * 2) ' beweging lift servo alleen
PULSOUT OutPinLiftServo, (627 + teller) ' wilt eindigen op 927
VOLGENDE ' eindigen op 600 terug en 927
' swing vooruit van 600 tot 900 positie
FOR counter = 1 TO (herhalingen * 2) stap snelheid ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 927 ' Houd 927 opmerking dat 777 zich neutraal op Hitec 765HB lift servo
PULSOUT OutPinRedServo, (600 + teller) ' eind 900
PULSOUT OutPinGreenServo, (600 + teller) ' eind 900
PAUZE vertraging
VOLGENDE ' finish op 900 fwd en 927 up
' omlaag van 927 tot 627 ()
FOR counter = 1 TO (herhalingen * 2) ' beweging lift servo alleen
PULSOUT OutPinLiftServo, (927 - counter) ' wilt einde op 627 down
VOLGENDE ' finish op 900 fwd en 627 down
VOLGENDE ' einde van volledige voorwaartse schreden - uiteinden 900 fwd en 627 down
' swing uit 900 naar 750 positie
FOR counter = 1 TO (reps) stap snelheid ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 627 ' Houd 627 opmerking dat 777 zich neutraal op Hitec 765HB lift servo
PULSOUT OutPinRedServo, (900 - counter) ' einde bij 750
PULSOUT OutPinGreenServo, (900 - counter) ' einde bij 750
PAUZE vertraging
VOLGENDE
PAUZE 1000 ' tijd om af te wikkelen naar statische positie
' *** ultimo go ongecompliceerd - finish op 750 mid en 627 static ***
' *** begin van gaan rechtstreeks naar achteren ***
vertraging = 10
' verplaatsen van 627 naar 927
FOR counter = 1 TO herhalingen
PULSOUT OutPinLiftServo, (777 + teller) ' 777 is horizontale positie van de crank arm, we willen eindigen op 927
VOLGENDE ' afwerking op 750 en 927 up
' swing van 750 naar 600 positie
FOR counter = 1 TO (reps) stap snelheid ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 927 ' Houd 927 opmerking dat 777 zich neutraal op Hitec 765HB lift servo
PULSOUT OutPinRedServo, (750 - counter) ' einde op 600 positie (achterzijde)
PULSOUT OutPinGreenServo, (750 - counter) ' eind 600
PAUZE vertraging
VOLGENDE ' eindigen op 600 terug en 927
' omlaag van 927 tot 627 ()
FOR counter = 1 TO (herhalingen * 2) ' beweging lift servo alleen
PULSOUT OutPinLiftServo, 927-teller ' wilt einde op 627 down
VOLGENDE ' finish bergop 600 terug en 627 down
VOOR schreden = 1 TO LongSteps ' volledige swing LongSteps schreden vooruit lopen
' swing vooruit van 600 tot 900 plaatsen (vooruit)
FOR counter = 1 TO (herhalingen * 2) stap snelheid ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 627 ' Houd 627 opmerking dat 777 zich neutraal op Hitec 765HB lift servo
PULSOUT OutPinRedServo, (600 + teller) ' eind 900
PULSOUT OutPinGreenServo, (600 + teller) ' eind 900
PAUZE vertraging
VOLGENDE ' finish op 900 fwd en 627 down
' van 627 naar 927 verplaatsen (omhoog)
FOR counter = 1 TO (herhalingen * 2)
PULSOUT OutPinLiftServo, (627 + teller) ' we willen eindigen op 927
VOLGENDE ' finish op 900 fwd en 927 up
' swing terug van 900 naar 600 positie
FOR counter = 1 TO (herhalingen * 2) stap snelheid ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 927 ' Houd 927 opmerking dat 777 zich neutraal op Hitec 765HB lift servo
PULSOUT OutPinRedServo, (900 - counter) ' eind 600
PULSOUT OutPinGreenServo, (900 - counter) ' eind 600
PAUZE vertraging
VOLGENDE ' eindigen op 600 terug en 927
' omlaag van 927 tot 627 ()
FOR counter = 1 TO (herhalingen * 2) ' beweging lift servo alleen
PULSOUT OutPinLiftServo, 927-teller ' wilt einde op 627 down
VOLGENDE ' finish bergop 600 terug en 627 down
VOLGENDE ' einde van volledige voorwaartse schreden met blk been terug op 600 en down op 627
' swing vooruit van 600 tot 750 positie
FOR counter = 1 TO (reps) stap snelheid ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 627 ' Houd 627 opmerking dat 777 zich neutraal op Hitec 765HB lift servo
PULSOUT OutPinRedServo, (600 + teller) ' einde bij 750
PULSOUT OutPinGreenServo, (600 + teller) ' einde bij 750
PAUZE vertraging
VOLGENDE ' finish bergop 750 mid en 627 down
' *** ultimo go recht achteruit - finish bergop 750 en 627 statische ***
' *** begin van voorwaarts rechtsaf ***
' van 777 naar 927 verplaatsen (omhoog)
FOR counter = 1 TO herhalingen
PULSOUT OutPinLiftServo, (777 + teller) ' 777 is horizontale positie van de crank arm, we willen eindigen op 927
PAUZE vertraging
VOLGENDE ' finish op 927
' Opmerking centrum links been veroorzaakt eigenlijk spin te wenden tot de hier
FOR counter = 1 TO (reps) stap 1 ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 927 ' Houd 627 opmerking dat 777 zich neutraal op Hitec 765HB lift servo
PULSOUT OutPinRedServo, (750 + teller) ' eind 900 positie (vooruit) fwd
PAUZE vertraging
VOLGENDE ' afwerking op 900 fwd en 927 up - opmerking die triade been links eindigt op 600 terug
VOOR schreden = 1 tot en met 4 ' 4 schreden = 90 graden
' omlaag van 927 tot 627 ()
FOR counter = 1 TO (herhalingen * 2) ' beweging lift servo alleen
PULSOUT OutPinLiftServo, (927 - counter) ' wilt einde op 627 down
VOLGENDE ' finish op 900 fwd en 627 down
' swing terug van 900 naar 600 positie - Opmerking groene servo tijdens beurt niet beweegt naar rechts
FOR counter = 1 TO (herhalingen * 2) stap snelheid ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 627 ' houden van 627 down-Let erop dat 777 neutraal op Hitec 765HB lift servo is
PULSOUT OutPinRedServo, (900 - counter) ' eind 600 terug
PAUZE vertraging
VOLGENDE ' finish op 600 terug en 627 down - opmerking dat centrum linkerbeen afwerkingen op 900 fwd
' van 627 naar 927 verplaatsen (omhoog)
FOR counter = 1 TO (herhalingen * 2) ' beweging lift servo alleen
PULSOUT OutPinLiftServo, (627 + teller) ' wilt eindigen op 927
VOLGENDE ' eindigen op 600 terug en 927
' swing vooruit van 600 tot 900 plaatsen (vooruit)
FOR counter = 1 TO (herhalingen * 2) stap snelheid ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 927 ' Houd 927 opmerking dat 777 zich neutraal op Hitec 765HB lift servo
PULSOUT OutPinRedServo, (600 + teller) ' eind 900
PAUZE vertraging
VOLGENDE ' finish op 900 fwd en 927 up
VOLGENDE
' eindigen in mid swing en neutrale lift - swing zwart been terug van 900 tot 750 medio schommel positie
FOR counter = 1 TO (reps) stap snelheid ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 927 ' houden van 927 down-Let erop dat 777 neutraal op Hitec 765HB lift servo is
PULSOUT OutPinRedServo, (900 - counter) ' einde bij 750 mid positie
PAUZE vertraging
VOLGENDE ' eindigen op 750 en 927 up - opmerking dat centrum linkerbeen afwerkingen op 900 fwd
PAUZE 1000 ' lift servo naar ga naar neutrale positie - finish op 750 mid en 777 neutraal toestaan
' *** einde van voorwaarts rechtsaf - finish op 750 mid en 777 static ***
' *** begin van forwardd linksaf ***
' zet lift servo zwart been tot 627 die rechts middelste been sluizen naar beneden ook vergrendelen
FOR counter = 1 TO (reps) ' beweging lift servo alleen
PULSOUT OutPinLiftServo, (777 - counter) ' wilt einde op 627 down
VOLGENDE ' finish bergop 750 terug en 627 down
' swing zwart been van 750 naar 600 positie die beweegt ook rechts middelste been terug veroorzaakt spider linksaf
FOR counter = 1 TO (reps) stap snelheid ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 627 ' Houd 927 opmerking dat 777 zich neutraal op Hitec 765HB lift servo
PULSOUT OutPinGreenServo, (750 - counter) ' eind 600
PAUZE vertraging
VOLGENDE ' finish bergop 600 terug en 627 down
VOOR schreden = 1 tot en met 4 ' 4 schreden = 90 graden
' van 627 naar 927 verplaatsen (omhoog)
FOR counter = 1 TO (herhalingen * 2) ' beweging lift servo alleen
PULSOUT OutPinLiftServo, (627 + teller) ' wilt eindigen op 927
VOLGENDE ' eindigen op 600 terug en 927
' swing vooruit van 600 tot 900 plaatsen (vooruit)
FOR counter = 1 TO (herhalingen * 2) stap snelheid ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 927 ' Houd 927 opmerking dat 777 zich neutraal op Hitec 765HB lift servo
PULSOUT OutPinGreenServo, (600 + teller) ' eind 900
PAUZE vertraging
VOLGENDE ' finish op 900 fwd en 927 up
' omlaag van 927 tot 627 ()
FOR counter = 1 TO (herhalingen * 2) ' beweging lift servo alleen
PULSOUT OutPinLiftServo, (927 - counter) ' wilt einde op 627 down
VOLGENDE ' finish op 900 fwd en 627 down
' swing terug van 900 naar 600 positie - Opmerking groene servo niet tijdens beurt naar rechts verplaatst
FOR counter = 1 TO (herhalingen * 2) stap snelheid ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 627 ' houden van 627 down-Let erop dat 777 neutraal op Hitec 765HB lift servo is
PULSOUT OutPinGreenServo, (900 - counter) ' eind 600 terug
PAUZE vertraging
VOLGENDE ' finish bergop 600 terug en 627 down
VOLGENDE
' van 627 naar 927 verplaatsen (omhoog)
FOR counter = 1 TO (herhalingen * 2)
PULSOUT OutPinLiftServo, (627 + teller) ' we willen eindigen op 927
VOLGENDE ' eindigen op 600 terug en 927
' swing van 600 tot 750 positie
FOR counter = 1 TO (reps) stap snelheid ' verplaatsen benen servo & update heffen servo
PULSOUT OutPinLiftServo, 927 ' Houd 927 opmerking dat 777 zich neutraal op Hitec 765HB lift servo
PULSOUT OutPinGreenServo, (600 + teller) ' einde bij 750
PAUZE vertraging
VOLGENDE ' finish bergop 750 mid en 627 down
PAUZE 1000 ' lift servo naar ga naar neutrale positie - finish op 750 mid en 777 neutraal toestaan
' *** einde van voorwaartse draai links - finish op 750 mid en 777 static ***