Driving more than 4 servos

General discussions and questions abound development of code with MicroPython that is not hardware specific.
Target audience: MicroPython Users.
wagnerc4
Posts: 7
Joined: Wed Jul 01, 2015 3:48 pm

Re: Driving more than 4 servos

Post by wagnerc4 » Fri Jul 03, 2015 7:40 pm

I made a board for drive my micropython tote quadruped robot... attached imgs
And the code for control the servos:

Code: Select all

# timers                                                                                                                                                       
t2 = pyb.Timer(2, prescaler=83, period=19999)
t4 = pyb.Timer(4, prescaler=83, period=19999)
t5 = pyb.Timer(5, prescaler=83, period=19999)
t12 = pyb.Timer(12, prescaler=83, period=19999)
t13 = pyb.Timer(13, prescaler=83, period=19999)
t14 = pyb.Timer(14, prescaler=83, period=19999)

# left                                                                                                                                                         
l1 = t4.channel(3, pyb.Timer.PWM, pin=pyb.Pin.board.Y3)
l2 = t12.channel(1, pyb.Timer.PWM, pin=pyb.Pin.board.Y7)
l3 = t12.channel(2, pyb.Timer.PWM, pin=pyb.Pin.board.Y8)
l4 = t4.channel(1, pyb.Timer.PWM, pin=pyb.Pin.board.X9)
l5 = t4.channel(2, pyb.Timer.PWM, pin=pyb.Pin.board.X10)
l6 = t4.channel(4, pyb.Timer.PWM, pin=pyb.Pin.board.Y4)

# right                                                                                                                                                        
r1 = t5.channel(4, pyb.Timer.PWM, pin=pyb.Pin.board.X4)
r2 = t2.channel(4, pyb.Timer.PWM, pin=pyb.Pin.board.Y10)
r3 = t2.channel(3, pyb.Timer.PWM, pin=pyb.Pin.board.Y9)
r4 = t14.channel(1, pyb.Timer.PWM, pin=pyb.Pin.board.X8)
r5 = t13.channel(1, pyb.Timer.PWM, pin=pyb.Pin.board.X7)
r6 = t5.channel(3, pyb.Timer.PWM, pin=pyb.Pin.board.X3)

l1.pulse_width(1000)
l2.pulse_width(1500)
l3.pulse_width(2000)
l4.pulse_width(1000)
l5.pulse_width(1500)
l6.pulse_width(2000)
r1.pulse_width(1000)
r2.pulse_width(1500)
r3.pulse_width(2000)
r4.pulse_width(1000)
r5.pulse_width(1500)
r6.pulse_width(2000)
Attachments
mp_tote_board2.jpg
mp_tote_board2.jpg (154.78 KiB) Viewed 3387 times
mp_tote_board1.jpg
mp_tote_board1.jpg (151.95 KiB) Viewed 3387 times

wagnerc4
Posts: 7
Joined: Wed Jul 01, 2015 3:48 pm

Re: Driving more than 4 servos

Post by wagnerc4 » Sat Jul 25, 2015 3:00 am

Here I put the code for my micropython quadruped robot:
https://hackaday.io/project/6877-microp ... uped-robot

Post Reply