I would like to get started with Robotics and just had a few basic questions. Now, I have been programming for a long time, and feel pretty
comfortable with everything from assembly to C#/Java.
I have never dealt with robotics, however, this year i volunteered to help a local high school who was competing in a robotics competition (i’m in college). I basically programmed the autonomous part of the competition.
While I was there the students hooked up all the stuff so could just code, etc. I was just wondering if someone could give me a simple overview of how this stuff works and what languages are compatible with the robots that lynxmotion offers.
I am interested in programming autonomous robots, not really remote controlled stuff, and I particularly like the hexapods. So I was just wondering if by ordering a robot from lynx if i was limiting myself to only simple task since i keep hearing about this ATOM BASIC ide or watever, i don’t want a graphical programming language, i would like to get down and program on the lower levels. Is this possible with these robots?
Sorry about the questions, just trying to figure out where to start.
I will start off by saying Lynxmotion makes the mechanical parts easy so you can focus on the programming. Which of the hexapods interests you the most? Any of the 3DOF (degree of freedom) hexapods, (this just means the legs have three servo motors) can be controlled from our SSC-32 servo controller, and a host microcontroller. The Basic Atom processor can handle all fo the math for the inverse kinematics for translation and rotation, and accept serial commands for all of the functions you see the robots do in the videos. These serial commands can come from any device capable of sending serial data. You can also replace the Bot Board and Basic Atom with another processor of your choice, but you will have to write a lot of code to get this up and walking.
You mentioned programing in a low level language. I belive the Basic Atom Pro can be programed in C.
Also, you can add several sensors to the bot board but again, code needs to be written to make use of them. Its best to start simple and build on that. I started with a single servo not mounted to anything and practiced making it move at different speeds, and then added some sensors such as a photo cell and made simple programs to make the servo move based on the sensor outputs. At least this way one can gain an understanding of how hardware and software come together as one.
Yes the Bot Board and the SSC-32 can both accept up to 4 sharp GP2D12 proximity detectors. They are direct plug and play for the Bot Board. If you are an experienced programmer then you shuld be able to add sensors to the existing PowerPod generated code.
Many of us here have written code to handle pretty much any of the most common types of sensors, such as the PING Ultrasonic Ranger, Sharp IR Ranger, etc.
You are really only limited by the amount of program memory the microcontroller you choose has and your imagination.
I have code for my WALTER rover and the Basic Atom that handles the PING, Sharp IR, and IRPD sensors, plus a pan/tilt sensor base. It’s all FREE to use as you see fit. My code is all in subroutines that make it easy to transfer to another program. I’ve tried to keep everything as modular as possible. I want to convert everything to work with the Atom PRO also, but have not got that done yet.
Thanks for the help everyone. All this stuff sounds amazing. I’ve been reading around and I see that nasa released some of their robotics libraries, so that looks like something i might look into. Any ideas on where to start, i eventually want to make something complex but i know i have to start small. What kind of sensor would you use to detect when a person or some live object, not like a wall, is in front of you?
hi, i was thinking of using a hitachi microcontroller to download a program and then send it to the ssc 32 for my lynx 6. what steps do i need to keep in mind while interfacing the two? would really appreciate the help