Ja, das Projekt ist heftig .. macht mir die Stellgeschwindigkeit der Servos Kopfzerbrechen (Servo1 120° Servo2 60° als Beispiel) in der gleichen Zeit ..
Es wäre blöd wenn ich nun sage: alles kein Problem. Aber diese simultane Ansteuerung der/von Servos hat mich etliche Zeit gekostet . Es läuft ja darauf hinaus, dass man die an sich typbedingte, maximale Servo-Stellgeschwindigkeit von rund 60°/0,15 sec zu einer langsameren und weichen Geschwindigkeit runterbremst. Alles kein Problem ! Das läuft dann bei mir (bei archie) bis zur simultanen Gestik (Video - leider grottenschlecht). Bei letzterer werden vom zentralen Controller = RNControl die einzelnen Steuersequenzen für Arm links, Arm rechts und Kopf zeitlich genau ausgegeben (mittlerweile "gute" Eigenbauplatinen); auch die Stimme (zeitlich genauer Einsatz einer bestimmten Teilsequenz) wird von der Zentrale per I²C an den Kopf geleitet - der steuert entsprechend die Audioelektronik an.

Wie hab ich die Servosynchronisation gemacht?
1) Bekanntlich werden die Servos nur max 10% der Ansteuerungsdauer mit einem genau bemessenen Stellsignal bedient. Ich habe also in der Ansteuerungspause Zeit die "andern" Servos zu bedienen. Ich hab im Archie viele Billigst-Mikroservo (aktuell insges 27 und vier "normalgrosse") verbaut aus der LxBxH 25 mm x 13 mm x 22 mm Baugröße.
2) Die Servos werden im Standardprotokoll betrieben siehe Link oben : alle ca. 20 ms einen Stellpuls.
3) Ich habe eine Servoroutine mit unterschiedlichen Befehlsmöglichkeiten. Der wichtigste Befehl lautet: fahre Servo i von A nach B mit x Inc/Servoperiode. A und B sind meine Pulsteilchen - rund 5000 pro Vollausschlag/>180° des Servos. Etwa 180 inc/Periode bedeutet dabei full speed und weniger als sechs bis acht inc/Periode ist das minimale Ende; ab 10 inc/Periode läufts wirklich bzw gut glatt. Also gibt die Servoroutine das entsprechende Signal aus und macht jeden einzelnen Puls um x inc länger. Der "Rest" zum genauen Ziel ist dann der letzte variable Puls. Danach neue Bewegung oder Stillstand <=> gleichbleibende Pulsdauer.

Ist das verständlich?