Shop OBEX P1 Docs P2 Docs Learn Events
Student project - Help needed! What components to use for robot? — Parallax Forums

Student project - Help needed! What components to use for robot?

edited 2011-10-16 14:45 in Robotics
Hi Everybody,

We are a group of 13 persons from the University of Applied Sciences Northwestern Switzerland. We all just started studying, so our knowledge is quit basic. As a student’s project we have to join a competition. By April we are supposed to complete a computer controlled robot in the size of let’s say 500-700 mm that can do several movements: dance, greet, relax, cheer and do one additional special move. The project name is darwin21.org (unfortunately is all in German).

Therefore we planned to construct a body with arms, legs and head. Each arm or leg has 3 axis. Additional we have to control another 2 axis. So in total it will be 14 axis. This means we have to control and program 14 servos.

In general the movements are fixed programmed and visitors of the exhibition can choose from a touch panel what the robot should do. Additional the visitor can use 6 slide bars to control arm and legs individually. The System is recording the movements and afterwards playing them. The robot should also be controlled via web page. A centralized system can send 6 defined commands (probably in C) to all the projects to have them simultaneously run one of the specific movements (e.g. have them dance all at the same time).

The darwin21.org project organization is providing us a display cabinet, a industrial standard computer (probably running WinXP) and a touch panel.

We are thinking about of using the following components:
14x Parallax (Futaba) Continuous Rotation Servo
1x Parallax Servo Controller (USB)

Do you think that is realistic and can be done with those components?

We would appreciate any hints!

Thanks.

Florian

Comments

  • SRLMSRLM Posts: 5,045
    edited 2008-11-03 15:17
    Depends. The PSC would work best for preset movements, that you can call earlier. To get realtime user input with the PSC, you have two option (using a PC) have the guests fiddle around with the software, or use software that you've written yourself. The most elegant solution is to write your own software and use that, but that can be very tough. I'd recomend using either a BS2e+ or a Propeller to get input, decide what to do, and output to the PSC. Also, make sure that the servos have enough torque for what you want. I tried a simple project last weekend, and it was shot down by some underpowered servos (for how I had them set up).
  • P!-RoP!-Ro Posts: 1,189
    edited 2008-11-04 23:23
    Do you have to control it with the computer, or can you use a microcontroller like the Propeller?

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Pi Guy
  • edited 2008-11-05 10:53
    Hi!

    Thank you for your quick reply. We are absolutely free in what to choose. Our first concept is using a digital card from national instruments that is plugged into a computer. This solution is very expensive. The controller without servos is around 2000 US$. I think this is much too expensive. So I checked out Parallax.

    The robot is doing simple things, just moving his arms and legs. We can built it lightweight and it is not required that it can stand by its own. It's a simple puppet. So I guess the servos with Torque 3.40 kg-cm should be o.k. Alternatively we found quit strong servos, but those are operating at 6 or 6.7 Volts.

    We control the robot with a computer or the suggested Propeller micro chip, we are free.

    But we require the following features:
    1. User can choose from a touch panel (C# programmed, this is predefined already, but we haven’t seen it yet) out of the 6 preset movements.
    2. A main controlling unit can send a C-Command to each computer to have all projects to do the same preset movements (e.g. dance).
    3. The visitor can play with a potentiometer (6 slide bars) (HW is provided), have the computer record it and later play it by the robot.
    4. We plan to control light (e.g. color changing while dancing)
    5. Maybe we will use some sensors (e.g. turn the robot in direction where the visitor is standing)
    6. Maybe it must be controlled via a web interface.

    Is it better to use a Propeller micro chip?

    Thanks,

    Florian
  • allanlane5allanlane5 Posts: 3,815
    edited 2008-11-05 14:07
    I'm a strong believer in "rapid prototyping", myself. To do that with this project, a BOE-Bot would be an excellent resource. It would give you a test platform with two 'modified' continuous rotation servos. You could add one or two 'standard' servo's to give yourself experience with those.

    The BOE-Bot can be an initial "stand-in" device for the 14-servo 'puppet', letting you 'drive it around' by command (instead of the puppet movement). This would let you debug your C-side / WinXP code using a serial port and the BOE-Bot.

    The BOE-Bot would also give you a "real-time" BS2 processor to use to test and verify servos when it comes time to build your 'puppet'.

    For $200 or whatever, it's a very small price to pay compared to the value and proofs-of-concept you'd get out of it for the rest of your project.

    Oh, and for maximum flexibility, get the "Serial" version, not the USB version.· If you don't HAVE a "serial" port, get the separate USB to Serial adapter.· This is a MUCH more flexible and reusable arrangement than the USB-BOE-Bot.

    Post Edited (allanlane5) : 11/5/2008 2:12:37 PM GMT
  • SRLMSRLM Posts: 5,045
    edited 2008-11-05 14:56
    I'd say to use a PC as the main brains, with one or two uCs as slaves to read analog inputs and output the servo controls. I selected this setup because or requirements 1,2, and 6. These can be done with a uC, but chances are that the interface is better suited to a PC.
  • Mike GreenMike Green Posts: 23,101
    edited 2008-11-05 16:28
    If you are willing to use a Propeller, I'd recommend that. It can directly control the servos using the Servo32 library object and has plenty of I/O pins. It can provide several serial I/O ports using the 4 port serial library object as well to talk to the main controlling unit. I'd recommend using some kind of external analog to digital converter rather than the Propeller's direct sigma-delta analog to digital conversion (for reading the potentiometers) because of the number of I/O pins needed (2 per ADC). If you start to run out of I/O pins, it's very easy to add I2C I/O Expanders to add more. These (and an I2C analog to digital converter) can be put on the same I/O pins used for the Propeller's program EEPROM.

    Parallax's PINK internet interface might be a good way to provide this. The Propeller is capable of providing an internet interface (see the YBox2: www.deepdarc.com/ybox2/), but it would be much simpler to use a separate device to provide this. You could use two Propellers, one to control the robot and one to provide the internet interface.

    Post Edited (Mike Green) : 11/5/2008 4:33:58 PM GMT
  • edited 2008-11-06 15:20
    Thanks a lot for all the answers; I will discuss it with my class mates. Favorite solution is so far the expensive controller card from National Instruments. I'll get back to the forum as soon as possible.
  • syleshsylesh Posts: 1
    edited 2011-10-14 01:28
    Thanks for your nice information.
  • GeorgeCollinsGeorgeCollins Posts: 132
    edited 2011-10-16 14:45
    One thing to note-- from your description it sounds like you are thinking about using continuous rotation servos to control arms and legs. You probably want to use 90 degree to 140 degree rotation servos. Continuous rotation servos are very difficult to position at a particular angle, so unless you are coming up with some elaborate mechanical drive train for your robot, you probably want to use servos that travel a limited angle.
Sign In or Register to comment.