Other robots from Synthiam community

Djandco's Djandco's Wall.E
Hi, This is my take on the EZ-B Wall.e While I wait for my kit to arrive I thought I would share some ideas. The first...

Bhouston's Bob's Inmoov
Ive always wished I had started a Project Showcase type of thread when I started running my InMoov robot with EZ-Robot....

Steve's James, Commodore 64 Retro Robot That Learns And Uses...
Been trying to keep busy, so I dragged my 35 year old Retro Robot upstairs, and got him operating again. With the 6...
@ZXen:
this statement worries me:
First of all i'm not an electric engineer, and most people here provide their opinion based in user experience or based in other's opinion (Internet, EZ robots tutorials, posts etc)
Is a very high risk decision to decide whatever direction based in our opinions.
Common sense says "the correct solution is the one it works", but that is not so simple.
If you are building a solution/product to work with EZ-Robots hardware e.g. EZB Controller, ARC and you have doubts, and you want to be 99.9% sure the solution will work you will need to discuss that with EZ-Robots, probably an offline discussion, and get some kind of agreement about which path is the one will work for you with EZR hardware.
I've been in different forums PIC, Arduinos, Propellers, Raspberry and EZ-Robot, and each forum there are conflicting opinions.
One will say SPI is the best protocol, other will say is not.
The reason why SPI didn't worked for a specific micro-controller was an existent bug on the micro-controller plus some low level software limitations.
So most people on their forum (including the company evangelists) said SPI was not the best protocol, and brainwashed everyone.
Coming to EZB does not matter if SPI is best protocol, EZB does not support SPI, so people here (myself included) will endorse Serial, or I2C.
If you have a better experience with Serial versus I2C and you don't know why or is not simple to fix the issue, you will say Serial is the best and safest bet.
I'm not saying which one is better...
to make it simple we are all biased
Next post i'll give you my biased opinion.
Thanks for your wisdom. I don't understand the terminology. Today I've learned the word 'protocol' and have now heard of a lot of them without knowing anything about them.
Lots of people say i2c is 'quirky' and problematic. DJ is successful and breathes this stuff and suggested UART. I've only dealt with PWM so I know nothing about all the others.
I found a video about some of them: https://www.youtube.com/watch?v=5y4NMzjLXus. This instructor uses the term 'interfaces' instead of 'protocols'. Also, he is impartial and seems to dislike i2c.
The EZB-V5 will probably have more ports if I choose something that doesn't exist on the V4 yet because DJ keeps adding stuff (and hopefully the gigantic power base won't exist any more).
Servos protocols:
allows daisy chain some examples:
RC PPM Streams: http://rcarduino.blogspot.com/2012/11/how-to-read-rc-receiver-ppm-stream.html
Hitec HMI Interface: Extended Pulse mode to add position feedback and change settings Bidirectional Serial Interface at 19200 bps
currently EZB only supports single servo PPM
http://support.robotis.com/en/product/dynamixel/dxl_mx_main.htm
Dynamixel servos use a half duplex serial communication using a trisate buffer is not a full duplex serial protocol.
2.1) Dynamixel servos AX family uses a single data pin.
EZB supports dynamixel servos
2.2) other dynamixel servos requires 2 pins (data+, data-) i believe the data- is a inverted data+ signal, allows longer cables, and error correction.
I'm not sure if EZB supports these.
http://www.robotshop.com/en/herkulex-drs-0101-robot-servo.html
Similar to the Dynamixel, 4 pins and Full duplex UART (RX,TX)
if is a regular uart, you can connect to EZB and via plugin emulate a V-Port (DJ's Tip)
Openservo specification is based in I2C protocol:
https://www.sparkfun.com/products/retired/9014
The board is retired, i think the reason is a niche product, you need to open your servo, take the board off, replace it etc. Is not so easy.
if a company like Sparkfun invested time and resources to build and sell, there is potential, but looking to the comments, you understand is not so easy to support, basically because there are so many servos in the market and some are good, other not.
They have the specs open.
My opinion:
i like I2C protocol, probably because it's so simple and allows multiple devices.
EZB + I2C:
based on my user experience, and others opinions EZB does not deal very well with I2C errors (bad wiring, protocol errors, invalid responses etc), and if the EZB gets stuck you need to unplug the power (reboot via browser does not work).
so if you want to avoid issues you have two options:
choose another communication method: Full duplex Serial, well endorsed by the EZB community.
add a micro-controller to handle low level I2C communications and the micro-controller communicates with EZB via Serial, and if does not work blame the I2C or the micro-controller code, or the wires except the EZB
BUT based in what i read so far, also sharing Richard concerns, i think is high risk move, design specific hardware when you don't have space/investment for errors.
I would first study the Dynamixel & Herkulex, although they are not cheap.
*** Disclaimer: I'm not an electric engineer, neither professional roboticist. I only play with robots and hardware outside my work (Software Developer) and when my kids let me.
Thanks so much for all that info! I am spending thousands of dollars making new servos, so I need to decide the easiest and most reliable daisy chain system. Mine will look more like this:
We will be using a magnetic encoder rather than a potentiometer for infinite rotation. The peak current may be around 10A per module because we might use dense rare earth magnet DC motors for extra speed and torque. I had I2C in mind because a robotics guy recommended it to me over PWM. The wiring for power will cater to 50-100A and run directly through the leggo-connected daisy chain of servos and any other connected modules, straight to the power supply so the EZB doesn't say, 'My battery is low' until the world ends. The data lines will run to the EZB or another board. I would like to use the EZB but I'll probably trust the mech. engineer at the end of the day. I sent him an email to say UART might be better. I've also just learned of TWI, USART, and RS-485. How many are there?
The terminology on the three videos I just watched was way over my head. Are 'protocol', 'interface' and 'peripheral bus' all the same thing?
Also, will we need to make our own circuit boards for the servos or can existing ones be bought easily? My mechanical engineer suggested making one but its more time and money. I figured they could be sourced easily enough?
https://www.youtube.com/watch?v=e8uEKWpVf10 Atmel AVR microcontoller chips are used in Dynamixel servos. That might answer the question of whether we need to create our own chips or simply source them. This video explaining UART is really good.
I think is a little of both, and depends on the perspective.
Interface is more related to the hardware or component side, if you don't know the protocol i would say the interface is one wire or two wires.
When you mention protocol implicit you will know how many wires you will need.
peripheral bus: means an external bus to connect devices
SPI (Serial Peripheral Interface) the master controls the clock/speed requires minimum 3 wires: Clock, MOSI, MISO It's a single master multiple slave BUS each slave device requires a slave select wire: 3 devices = (3+3), 8 devices = (3+8)
I2C (Inter-Integrated Circuit) the clock is predefined: requires 2 wires only: SLA, SDL is multi-master, multi-slave BUS device each device has an address.
Serial Communication: the clock is predefined: Full Duplex - 2 wires: TX + RX Single direction: 1 wire (Tx->Rx) Half Duplex - 1 wire (e.g. Dynamixel 1 Data pin) Half Duplex - 2 wires (e.g. Dynamixel 2 Data pins - Differential Signaling) RS485 Full Duplex - 4 wires (RX-2 TX-2) RS485 Single Direction: 2 wires (TX->RX)
You will need to design your pcb and the circuit, building can be outsourced.
Don't minimize the work and the know how you will need to build your own servos.
I won't be building them, the company will - I just need to understand whether too much time and money is going to be spent unnecessarily. If dynamixel use existing chips that they've plugged in, then surely I don't need to go out and create new chips. The video told me they use Amtel AVR chips. I don't know if thats just one component of the circuit board.
You are very knowledgeable. I've watched a couple of scary too much information videos just now. One of them was about half duplex, but I needed pre-requisite knowledge so it was way over my head. At least Im beginning to recognise words. I also thought that 10A was really high draw for a servo but Ive discovered that its common for 12-24V servos when bearing a full load. The power supply and wiring will need to be massive to cater to all this current. My robomannequin uses only 15 servos but at 10A each, the power supply for this basic model would be 150A. I don't need that much power for a wrist or elbow so hopefully it would use a low current for light things. 24V at 10A would give you around 44N.m with low speed gearing. But considering weight bearing usages such as a human crane in a hospital, they need to be rated to lift 500kg. 44 N.m equals about 450 kg.cm torque. A full robot with legs might need 30 servos. 30 servos x 24V x10A = 7,200W power supply.
Even a 24V 200A 5000W power supply costs US$1100 before currency exchange, delivery and tax, they are large and heavy, and the electricity bill for switching on the robot could be very expensive for the user. I'm hoping it hardly ever needs to draw that much current unless its building a car or a house. https://wholesaler.alibaba.com/product-detail/-PowerNex-Mean-Well-RST-5000_60490236130.html?spm=a2700.7724857.0.0.ipiidV
These specs on the Dynamixel Pros give me some perspective. https://www.youtube.com/watch?v=rmqyOCefhGA
Due to compatibility with EZB and interchangeability with Dynamixel peripherals, I'm leaning towards UART at the moment. Even UART is complicated. PPM seems the simplest.
Hey guys, I really enjoyed this topic about communication types... I never really got into all the different Interfaces, seems to be worth exploring!
@Zxen good luck with your project, seems to be a major thing building and marketing it! Hope you'll find the right peer group once it is ready to go!