Shop OBEX P1 Docs P2 Docs Learn Events
Where is the Properller Robot 1337 spin code ? — Parallax Forums

Where is the Properller Robot 1337 spin code ?

Villegas, CarlosVillegas, Carlos Posts: 3
edited 2007-02-10 23:54 in Propeller 1
Hello,

I am trying to locate the propeller spin code associated with "robot 1337"· (http://www.parallax.com/propeller/custapps/app_1337bot.asp) because as a reaserch project I want to try something similar. Can you please assist me with this as I already have looked at the Forum and have not been able to find it.

Thank you,

Carlos Villegas

Comments

  • Ken GraceyKen Gracey Posts: 7,387
    edited 2007-02-09 00:01
    Carlos,

    It appears that Daniel Mataruna didn't make his code available when he submitted it to Parallax. I'll send this thread to Lauren and see if she can connect you to the 1337 Robot designer.

    Ken Gracey
    Parallax, Inc.
  • Lauren DavisLauren Davis Posts: 313
    edited 2007-02-09 00:27
    Hi Carlos,

    I sent you a private message regarding your question.

    Sincerely,

    Lauren Davis
    Parallax, Inc.
  • Villegas, CarlosVillegas, Carlos Posts: 3
    edited 2007-02-09 00:47
    Thank you
  • acantostegaacantostega Posts: 105
    edited 2007-02-10 23:54
    Hi! Sorry I didn't answer before, I'm on vacation at the beach at the moment with only sporadical access to the internet, but I'm happy to answer questions (and I did submit my code [noparse]:)[/noparse]) Sent you a mail. Just in case anyone else looks for extra info, here's what I had to say:

    Well, what can I say? As I mentioned in the writeup, my main source of
    inspiration was the book by "Mobile robots: from inspiration to
    implementation" by Flynn & Jones. That book has a lot of info on the
    robots on the sort of scale mine was, along with code in C that is
    easily portable to the Prop. Aside form software it also has info on
    the electrical and mechanical aspects of small mobile robots which can
    be useful.
    Another good book with more emphasis on the software side of things
    and the same approach is Robot Programming : A Practical Guide to
    Behavior-Based Robotics by Jones (the same Jones!). You'll see that
    my code closely parallels some pseudo code there.
    Note that in my code as well as those books the code "subsumption
    style" rather than pure subsumption as described by Rodney Brooks.
    This "style" is good enough for most purposes and I don't think
    implementing "pure" subsumption is worth it.
    I haven't update the code since, but as I mentioned there are lot of
    things I would improve. One is that I would try to separate the code
    in various "objects" (beware that Spin "objects" are vastly simpler
    than Java/C++ objects -- forget polymorphism, inheritance, dynamic
    memory allocation, etc. Some just call them modules instead of
    objects). While functionally it would't do anything it would make
    stuff more readable and more reuseable.
    For example I might make an LCD object, a "motor" object, switch object, etc.
    Another thing that might be good is closed loop motor control -- PID
    or at least PI. Those Vex motors I used weren't really "symmetric",
    which is why I had to give different control values for the servo in
    each side -- and the robot still didn't go straight. With a closed
    loop control the movements of the robot could be made smoother, for
    example making it "arc" instead of "hard turn" to avoid an obstacle.
    Yet another thing -- you'll see I didn't really try to control
    concurrency problems. I just hoped there wouldn't be any. It seems to
    be the case, but one could look better. I'm referring to the fact that
    the value sent to the motors by the arbitrator is being modified at
    the same time by the behaviors. One could try to use Prop's semaphores
    or some buffering scheme.
    Umm part lists -- for some reason the link was removed, but I used
    Wulfden's Propeller robot controller: http://www.wulfden.org/PRC/
    Save for a few "glue" circuits (which are in the writeup) that's all I
    used for electronics. It saved me a bunch of time.
    I don't know what you're project is, but note that an MCU (even the
    Prop) w/ subsumption style architecture is well adapted for
    relatively simple tasks -- for more complex tasks, involving planning.
    localization and what not, usually full-blown PCs are used, along with
    different, three layer architectures. Introduction to Autonomous
    Mobile Robots by Siegwart and Illah R. Nourbakhsh is a good reference
    for more "advanced" robotics.

    Post Edited (acantostega) : 2/11/2007 12:01:00 AM GMT
Sign In or Register to comment.