DIY handgjorda Hexapod med arduino (Hexdrake) (8 / 19 steg)
Steg 8: programmering
Programvara för detta steg:
Arduino IDE, USC sofware.
Innan programmering med arduino är det nödvändigt att veta gränserna för alla servon och vet att gränsvärden. Till exempel med musen för att dra i skjutreglaget i panelen servo (drar servo panel motsvarande till den kanal som servo är ansluten). Så ansluter USC inuti hexapod med usb till de program jag få alla de max och min värden för varje servo.
Nu är tid att programmera arduino att styra USC. Servo controller är en slav enhet, vilket innebär att det kan ta emot kommandon eller utföra förinställda kommandon. Det kan inte tänka alls. Kommunikationsprotokoll: seriell kommunikation (TTL nivå), överföringshastighet 9600, ingen kontroll bit, 8 databitar, 1 stoppbit att styra servo via servo controller. Kommandot format är:
-Kontrollera en enda servo:
#1P1500T100\r\n
Data 1 hänvisar till servo är kanal.
Data 1500 hänvisar till servo "läge i intervallet 500‐2500.
Data 100 syftar på tiden av utförandet och representerar hastigheten, i intervallet 100‐9999
-Styra flera servon:
#1 P 600 #2P 900 #8P2500T100\r\n
Data 1, 2 och 8 hänvisar till servo är kanaler
Uppgifterna 600, 900 och 2500 avser lokaler för servon som motsvarar tre kanaler
Data 100 hänvisar till tiden av utförandet och representerar hastigheten på tre servon. Oavsett antal servon finns det bara en tid, eller en T. Kommandot körs på samma gång; det vill säga använda alla servon samtidigt.
Inom ramen för varje servo är nödvändigt att beräkna maximal räckvidd eller "steg" för alla horisontella servon hitta den minsta av dem och konvertera det som högst ett steg. Och denna variabel träda i ekvationerna i alla rörelser. Samma sak skulle ha att göra med vertikala servon.
* Ledsen för den dåliga kvaliteten på de tre första filmerna. Jag spelar in dem med en gammal mobiltelefon med dålig videokvalitet.
Ny video: