United Kingdom
Asked — Edited

16 Channel Servo Driver

User-inserted image

I came across this and was wondering, could this be used with an EZ-B? If so, what would be needed to get this working? It states that it's i2c so not strictly sure what would be needed to be done to control servos connected to this board.

16 Channel servo driver


ARC Pro

Upgrade to ARC Pro

Elevate your robot's capabilities to the next level with Synthiam ARC Pro, unlocking a world of possibilities in robot programming.

United Kingdom
#2  

Thanks @Technopro.

The data sheet was on the product page link, but I see you found it. I had a look though the sheet, but I'm still non the wiser. Apart from the v4 LED array, the only thing I've done with i2c was to use an LCD screen, and I needed help with that to set it up. Good to now that this driver can work directly with the EZ-B though.

#3  

Looking at it, it looks more to be an LED driver board than a servo control board.

You'll probably need to use either of these commands:

I2CWrite( boardIndex, deviceAddress, data, .... ) Send a series of ASCII data to the specified device hex address over the i2c interface. This command will Start i2c, Write Data, and Stop i2c. boardIndex is the EZ-B you wish to use (0 is first EZ-B) Device Hex Address of i2c device must be in 0x00 format. Data can be Hex (0x09), string ("string"), or decimal (188) Example: I2CWrite(0, 0x09, 0x02, 0x05, 0x06) Example: I2CWrite(0, 0x09, 244) Example: I2CWrite(0, 0x09, "This is text + $variable)

I2CWriteBinary( boardIndex, deviceAddress, variable ) Send a series of binary data to the specified device hex address over the i2c interface from the provided variable array. This command will Start i2c, Write Data, and Stop i2c. boardIndex is the EZ-B you wish to use (0 is first EZ-B) Device Hex Address of i2c device must be in 0x00 format. Variable is an array with data that you wish to send Example: I2CWriteBinary(0, 0x09, $variable)

I don't have enough knowledge in i2c to be of help, but what I've given you so far should be correct.

United Kingdom
#4  

Thanks again for your input. Apparently, these drivers can drive LED's and/or servos, so the dates sheet is correct.

United Kingdom
#5  

I've looked through the data sheet again, and I'm just not clear on how I can control individual servos to their min and max positions. Any ideas anyone?

#6  

From what I see in the data sheet you would have to setup the outputs to match what is done in the EZB4. It's all pulse with modulation control, both for the led's and the servos. Here is a video that may help: https://www.youtube.com/watch?v=kY8iJ84J4GE

United Kingdom
#7  

@WBS.

Wow, your up late (or really early whatever the case may be):P

Thanks for the video link, although it wasn't much help as I'd seen it before, and I get how PWM works. I guess what I'm looking for is someone to give me a step by step to hooking one of these up the the v4, then show how to move servos with it. I know Dynamixels work in a somewhat similar way, but they have their own individual addresses so to speak.

I don't have one of these drivers yet as I figured I'd ask if it can be used directly with a v4 first. I have seen an old thread on the forum (can't find it now) that talked about using one of these drivers, but that was using an Arduino hooked up to a v4.

Thanks anyway.

United Kingdom
#8  

Good luck with that board, I have one from a while ago which I was going to use with my V3 but it never went anywhere since I couldn't get the I2C commands to do what was expected.

Plug in to an Arduino, use serial/I2C to control it and it may be a lot easier since the Arduino library exists for it.

United Kingdom
#9  

I guess thats why there has not been a lot of talk about it on here. Good to know I guess.

Thanks Rich.