CrazyEngineers
  • silverscorpion
    silverscorpion

    MemberApr 2, 2009

    Learn robotics...

    Hi Ceans,
    This thread is due to the requset of some fellow CEans, to teach basic robotics. I'm not an expert in robotics, but i do know something in it, and I've built quite a few of them. I wish to share my experiences in robotics, and also wish it serves as a tutorial for newbies in robotics.

    Everybody is welcome to give any suggestions or point out mistakes and correct me. Also, if you know something better than me, then you can teach me. I'll be happy with that. Now, I might not be able to post the articles continuously or on a regular basis., But I'll somehow do it whenever I get time.

    Everyone aspiring to build a bot are welcome to try out and feel free to ask questions.
    Tutorials will begin soon. Keep your fingers crossed..😁
    Replies
Howdy guest!
Dear guest, you must be logged-in to participate on CrazyEngineers. We would love to have you as a member of our community. Consider creating an account or login.
Replies
  • Kaustubh Katdare

    AdministratorApr 2, 2009

    Man! This was needed! Please do make sure you start a new thread for each tutorial.

    Great initiative!
    Are you sure? This action cannot be undone.
    Cancel
  • ms_cs

    MemberApr 2, 2009

    😁...Nice...Start it soon silverscorpion
    Are you sure? This action cannot be undone.
    Cancel
  • shalini_goel14

    MemberApr 2, 2009

    Good thread Scorpion. 😁
    Well I will just like to know how in actual this robot kind of stuff is made 😕
    Are you sure? This action cannot be undone.
    Cancel
  • Black_Rose

    MemberApr 2, 2009

    Hey sounds good look forward to reading this thread *goes to subscribe*
    Are you sure? This action cannot be undone.
    Cancel
  • sauravgoswami

    MemberApr 3, 2009

    nice initiative,a request, we hope your tutotials will be better than those coaching classes!!!
    Are you sure? This action cannot be undone.
    Cancel
  • scorpionmaks

    MemberApr 3, 2009

    Good initiative ! sounds interesting...
    Are you sure? This action cannot be undone.
    Cancel
  • vinod12345madhu

    MemberApr 3, 2009

    this will be a very useful website scorpion....
    Are you sure? This action cannot be undone.
    Cancel
  • vinod12345madhu

    MemberApr 3, 2009

    i am very much intreasted in robotics... please start from the basic tutorials
    thanks
    Are you sure? This action cannot be undone.
    Cancel
  • hinduja.prasad

    MemberApr 4, 2009

    yeah please.........start soon that's a great idea..........i request you to start from line folower robots.😎
    Are you sure? This action cannot be undone.
    Cancel
  • Harshad Italiya

    MemberApr 4, 2009

    Nice Initiative Scorpian!!

    Cheers

    Godfather
    Are you sure? This action cannot be undone.
    Cancel
  • silverscorpion

    MemberApr 4, 2009

    Well, here we go. I start by providing a basic idea of a robot and it's
    intricacies. I don't wish to go to technical details in the first tutorial.


    1. A robot may not injure a human being or, through inaction, allow a human being to come to harm.
    2. A robot must obey orders given to it by human beings, except where such orders would conflict with the First Law.
    3. A robot must protect its own existence as long as such protection does not conflict with the First or Second Law.

    Well, no points for guessing what the above statements are. And for those
    who can't identify what these are, I seriously suggest you start reading
    Isaac Asimov books. Or at least watch more sci-fi movies.

    Moving on, let's first know what is a robot. If I was asked to define a
    robot, I would say that it can't be defined. A robot can have wheels. Or it
    can have legs! Even better, it may be stationary also. And, it may be
    autonomous, taking decisions and working on it's own. Or, it may be
    manually controlled using a remote. So, you see, a robot can be anything
    and can do anything. There's no strict or loose definition for a robot, as far
    as I know.


    So, I'd start by defining at least the types of robots.

    1) Classified based on the level of complexity and professionalism involved,
    I will classify robots into two-namely, hobby robots and industrial
    robots
    .

    Hobby robots
    - I couldn't get a better name for the category - are done
    as a hobby by enthusiasts, for pleasure or for some competitions or
    projects. They are not reliable.

    Industrial robots
    are used in the industry for automation, like for welding
    or painting or other tedious tasks requiring precision and reliability. They
    employ complex control systems to ensure the robot is reliable, ie, it doesnt
    fail for any change in the environment.
    I haven't yet ventured into industrial robots and so, we'll be concentrating
    on simple robots here.

    2) Based on the control mechanism, I'd classify robots into three-
    autonomous, semi-autonomous and manual.

    Manual robots
    are controlled by humans, by remote wireless control or by
    a computer, may be.

    Autonomous robot are controlled by micro processors, without human
    intervention.

    Now, semi-autonomous robots are controlled by a computer software.
    As an example, I can cite a robot that's controlled by the computer by the
    use of MATLAB or Visual Basic or some similar software. Ideally, these are
    same as autonomous robots, but I'd like to have an extra classification.


    Now, there's a separate category of robots called BEAM robots or solar
    bots. Although all the bots mentioned above can use solar energy, BEAM
    robots are markedly different. I'll explain about BEAM later. Now, just know
    that they are just another separate category of robots and the field of
    BEAM robotics is as deep and matured as any other mainstream engineering
    field.

    I'd like to go on and on, but I guess the post will be too long then, and
    you'd lose patience. So, I stop here for my first class, and I'll continue
    soon.

    Hope you all like this. Continue your support for this. And do ask any
    questions regarding today's class.

    And lastly, the three statements in the beginning of the lecture are the
    three laws of robotics, introduced in the book, I Robot by Isaac Asimov.
    Are you sure? This action cannot be undone.
    Cancel
  • ms_cs

    MemberApr 4, 2009

    😎Very Nice...

    Is it possible to have a manual robots or semi autonomous robots which can be controlled by computer using java ??

    Which are the computer languages are used to program the robot?
    Are you sure? This action cannot be undone.
    Cancel
  • silverscorpion

    MemberApr 4, 2009

    Manual robots do not need programming languages to control them.

    And as for semi autonomous robots, yes, you can control them using Java. In fact, almost any programming language can be used to do that.
    All you need to do is connect your robot to the computer by some means, which would obviously be through some ports. LIke USB port or parallel port, or your RS232. And then, the next step is to send signals to the port through some programming languages.
    If you can send and receive signals from a port, you can interface your bot with that port.
    Are you sure? This action cannot be undone.
    Cancel
  • silverscorpion

    MemberApr 4, 2009

    And I'd also mention that, the most commonly used languages are C and MATLAB. I've also seen some bots controlled by Visual Basic and rarely, C++ too. I'm yet to see a bot programmed using JAVA. I dont know why it's not used, but I'm sure that Java can also be used in much the same way.

    The reason for C and VB being used largely, is that DLL files for controlling parallel ports and serial ports readily exist in the internet, and you can easily interface.
    Matlab is used for it's extensive image processing capability. Image processing based robots will be easy to build using matlab than by any other languages.

    Also, of the ports I've mentioned, parallel port is obviously the easiest to work with, and next comes the serial port or the RS232. USB is the hardest. It's not at all easy to interface anything with a USB port, by ourselves. So, it's better to start of woth parallel port, which is what we will bw doing.

    Hope I cleared your doubts. Cheers!!
    Are you sure? This action cannot be undone.
    Cancel
  • ananth22290

    MemberApr 4, 2009

    Wow that was really useful!!!!!!
    Awaiting ur next tutorial
    Are you sure? This action cannot be undone.
    Cancel
  • Kaustubh Katdare

    AdministratorApr 4, 2009

    New tutorials into new threads, please 😀
    Are you sure? This action cannot be undone.
    Cancel
  • ms_cs

    MemberApr 4, 2009

    silverscorpion
    And I'd also mention that, the most commonly used languages are C and MATLAB. I've also seen some bots controlled by Visual Basic and rarely, C++ too. I'm yet to see a bot programmed using JAVA. I dont know why it's not used, but I'm sure that Java can also be used in much the same way.

    The reason for C and VB being used largely, is that DLL files for controlling parallel ports and serial ports readily exist in the internet, and you can easily interface.
    Matlab is used for it's extensive image processing capability. Image processing based robots will be easy to build using matlab than by any other languages.

    Also, of the ports I've mentioned, parallel port is obviously the easiest to work with, and next comes the serial port or the RS232. USB is the hardest. It's not at all easy to interface anything with a USB port, by ourselves. So, it's better to start of woth parallel port, which is what we will bw doing.

    Hope I cleared your doubts. Cheers!!
    Thank you..My doubts are cleared:smile:
    Are you sure? This action cannot be undone.
    Cancel
  • sarveshgupta

    MemberApr 5, 2009

    silverscorpion
    Manual robots do not need programming languages to control them.

    And as for semi autonomous robots, yes, you can control them using Java. In fact, almost any programming language can be used to do that.
    All you need to do is connect your robot to the computer by some means, which would obviously be through some ports. LIke USB port or parallel port, or your RS232. And then, the next step is to send signals to the port through some programming languages.
    If you can send and receive signals from a port, you can interface your bot with that port.
    can you explain a little more about the ports..?😲
    Are you sure? This action cannot be undone.
    Cancel
  • silverscorpion

    MemberApr 5, 2009

    You mean the paralle ports and RS232? What do you want to explain? Be clear in your
    query.

    And if you wanna know about port interfacing, you'll have to wait till we get there in
    our tutorial. But you can check the forum for the same.

    I remember, xheavenlyx has written an excellent tutorial about parallel port interfacing.
    Search for that in the forums.
    Are you sure? This action cannot be undone.
    Cancel
  • Harshad Italiya

    MemberApr 5, 2009

    Awesome Work There SS.
    Are you sure? This action cannot be undone.
    Cancel
  • shalini_goel14

    MemberApr 5, 2009

    Hey Scorpion

    Few questions from my side:

    1. Have you ever made any robot using Java.
    2 Can we try one using Java during this tutorial class itself?
    3. Can you clear the difference between autonomous and semi autonomous robots?
    4. What do these ports do? Do we need these ports thing in autonomous kind of robots also?
    5. Do Autonomous robots require programming?

    Thanks
    Are you sure? This action cannot be undone.
    Cancel
  • silverscorpion

    MemberApr 6, 2009

    ok, a volley of questions.. I like that..

    Answering one by one,,,

    1) No. I've never made a bot using Java. The languages I've used so far are C and MATLAB.

    2) Well, I feel there's nothing special to 'try' using Java. I've done it using C, and I'll show you how it can be done. As for Java, I don't know Java. So, may be you can show me how to do it, based on how I did it in C. (Am I clear??)

    3) Autonomous and semi autonomous.. Well, to put it simply, autonomous bots are completely self contained. They dont require external assistance to work.

    Let's take an example. Let's say you make an image processing robot. There's a camera and there's live video feed arriving to you. You feed the video to MATLAB, process it in the computer, and through the computer, issue commands to the robot to move. That is semi autonomous.
    The same image processing, if performed by DSP processors or other powerful processors in the robot itself, without use of computer, it's fully autonomous.

    The same is true for all types like line followers or micro mice etc..

    4) The ports are basically used to issue commands to the robot on wat it should do. They are also used for collecting info about the environment from the robot. Port is simply a communication channel between the computer and the robot. And obviously, we dont need ports for fully autonomous bots.

    5) Absolutely. Autonomous robots require programming, and programming is the most important part in design of autonomous bots. Your program will be serving as the brain of the robot.

    All doubts cleared?? It'll all be more clear when I give you the next lesson. I'll tell you about the basic framework of a robot. Wait for that..
    Cheers!! 😀😀
    Are you sure? This action cannot be undone.
    Cancel
  • ms_cs

    MemberApr 6, 2009

    One More doubt ...😕...
    Is it possible to issue the command from system , by using any wireless technology ?
    Then ,,,Whether bluetooth technology is used? What are the other technologies we have to control the robots from the computer system?
    Are you sure? This action cannot be undone.
    Cancel
  • shalini_goel14

    MemberApr 6, 2009

    Hey thanks a lot Scorpion for answering my questions so well. 😀

    Conclusion is "autonomous" type of robots are difficult ones right? I would surely like to make such a robot in Java ? 😉

    One more question, what kind of robots are more common and easy to make?
    Are you sure? This action cannot be undone.
    Cancel
  • ms_cs

    MemberApr 6, 2009

    I heard that,,,Java is initially used only for embedded side projects which was called as Oak...
    If I am wrong ..do correct me guys..
    Are you sure? This action cannot be undone.
    Cancel
  • silverscorpion

    MemberApr 6, 2009

    @Shalini: There are lots of issues in building a robot. It's not that autonomous bots are outright difficult, and manual bots are easy. Everything depends on what you want your robots to do, and how you are gonna make it do it.
    There are a lot of trade offs involved in any robot.


    @ms_cs :
    Yes, bluetooth can be used to control robots from the system. Infact, they are commonly used nowadays. And about other wireless technologies, any sophisticated technology can be used, as long as you can make a sufficiently complex transmitter receiver pair. You can use infra red to control bots because, it's really easy to generate and receive IR rays. You can buy an RF module and use it too. Not so difficult. But as you move on, more complex technologies require proportionately complex circuits. Even AM or FM can be used.
    Are you sure? This action cannot be undone.
    Cancel
  • Black_Rose

    MemberApr 7, 2009

    Silver scorpion, an interesting and informative read. Look forward to the next one. =)
    Are you sure? This action cannot be undone.
    Cancel
  • silverscorpion

    MemberApr 7, 2009

    Hi all,
    The next tutorial is up.
    Please take a look.
    Are you sure? This action cannot be undone.
    Cancel
  • deeps31

    MemberApr 7, 2009

    Hello,

    me myself a 1st year mechanical engineering student, interested in robotics, i have a built a simple light sensing & responding robot using atmega8 MCU, but i used a bread board. I would like to know how to use a PCB instead of bread board.

    Thanks & regards
    Are you sure? This action cannot be undone.
    Cancel
  • silverscorpion

    MemberApr 7, 2009

    I infer you have no experience in soldering. Am i right?

    Making a pcb given you have the circuit diagram is not difficult at all.
    You can just decide on your own layout for the components, place them on a blank board, and solder the connections yourselves.
    Or you can do a full fledged printed circuit board by using a copper coated wafer and a chemical solution.
    Even better, you can guve the circuit to a PCB maker and get the PCB fabricated. it's not too costly, and you can be sure that the PCB will work.

    Usually, a ckt will work in breadboard, but after soldering, there'll be some bugs. That wont happen if you fabricate the PCB in a shop.
    But you can do it yourself too..
    Are you sure? This action cannot be undone.
    Cancel
  • silverscorpion

    MemberApr 7, 2009

    Whatever be the case, you cannot begin soldering or dong a pcb straight away. You have top test the circuit in a bread board first, and only after you are sure that the ckt works for all cases, you should go on about soldering.

    Have I cleared your doubts??
    Are you sure? This action cannot be undone.
    Cancel
  • et_vsd

    MemberApr 7, 2009

    well.. grt going.. u r a good teacher..
    Are you sure? This action cannot be undone.
    Cancel
  • Ashraf HZ

    MemberApr 8, 2009

    Regarding soldering, SS.. maybe you can add pics or even videos on how to solder a component? That would be interesting 😀

    I'll try adding them if I have time after my exams
    Are you sure? This action cannot be undone.
    Cancel
  • silverscorpion

    MemberApr 8, 2009

    ash
    Regarding soldering, SS.. maybe you can add pics or even videos on how to solder a component? That would be interesting 😀

    I'll try adding them if I have time after my exams
    Sure thing. Will look into it...😁
    Are you sure? This action cannot be undone.
    Cancel
  • deeps31

    MemberApr 8, 2009

    Hi,

    Thanks ton for the replies, i really did not expect such prompt replies! u people rock--cheers CEforums 😀 & i do have some experience in soldering, had to solder that parallel port programmer circuit, and you need not waste time posting snaps & vids on soldering for the sake of me...anyways thanks...i tried the circuit on a breadboard & it was working fine, but there was a small problem , the MCU would not just fit properly into the holes, i must apply some pressure on it to make it work...any remedies for this? i tried twitching the pins but it just would not fit. & i'm just a starter, could you suggest some projects to work on...& it would be really nice if you can put up a topic exclusively for coding...

    Once again thanks a ton CE!!!!

    Regards

    Deepak

    long live CE 😀
    Are you sure? This action cannot be undone.
    Cancel
  • vinod12345madhu

    MemberApr 9, 2009

    i want to know weather we can use a webcam conected to a bot and watch live video trnsfer on a tv screen or a pc?



    thanks
    Are you sure? This action cannot be undone.
    Cancel
  • silverscorpion

    MemberApr 9, 2009

    For all you soldering newbies, here's a great and extensive tutorial on soldering. Very nice and elaborate. Enjoy!!

    #-Link-Snipped-#

    Cheers!!
    Are you sure? This action cannot be undone.
    Cancel
  • silverscorpion

    MemberApr 9, 2009

    deeps31
    Hi,

    Thanks ton for the replies, i really did not expect such prompt replies! u people rock--cheers CEforums 😀 & i do have some experience in soldering, had to solder that parallel port programmer circuit, and you need not waste time posting snaps & vids on soldering for the sake of me...anyways thanks...i tried the circuit on a breadboard & it was working fine, but there was a small problem , the MCU would not just fit properly into the holes, i must apply some pressure on it to make it work...any remedies for this? i tried twitching the pins but it just would not fit. & i'm just a starter, could you suggest some projects to work on...& it would be really nice if you can put up a topic exclusively for coding...

    Once again thanks a ton CE!!!!

    Regards

    Deepak

    long live CE 😀

    Oh, that's ok..
    As for MUC positioning, it'll be difficult to do it in bread board, and I think You can do nothing about it. You'll have to get used to it.But, be careful while taking out the MUC from bread board. If you break or bend some pins in it, then it's gonna be difficult.

    About the projects for starters, I presume it's in robotics. I'd suggest you start from Line follower. And since you are from mechanical stream, I'd say you do a mechanical oriented robot after line follower. Like, sumo robot or something that lifts weight, for ex.

    I'll over coding in a while. But, if you think about it, MUC coding is really easy. You dont have to go for assembly programming if you feel it's difficult. You can also doit in C. And C is very easy. You'll be using only loops and if's. Nothing else.
    Are you sure? This action cannot be undone.
    Cancel
  • silverscorpion

    MemberApr 9, 2009

    vinod12345madhu
    i want to know weather we can use a webcam conected to a bot and watch live video trnsfer on a tv screen or a pc?

    Yes, You can do it. And more too..

    You can use image processing programs like MATLAB or OpenCV to do this. Actually, MATLAB is so simple that you can interface the camera ant the bot with your computer in a jiffy.

    And then, you can transfer live video feed to the PC and view it, or capture snapshots from the camera and do some image processing, etc. The possibilities are limitless..
    Are you sure? This action cannot be undone.
    Cancel
  • vinod12345madhu

    MemberApr 9, 2009

    thanks a lot...
    Are you sure? This action cannot be undone.
    Cancel
  • vinod12345madhu

    MemberApr 9, 2009

    thanks a lot... silverscorpion
    Are you sure? This action cannot be undone.
    Cancel
  • vinod12345madhu

    MemberApr 11, 2009

    is there any website or blog which provides simple instructions for making a small bot
    Are you sure? This action cannot be undone.
    Cancel
  • ms_cs

    MemberApr 11, 2009

    SS Will Help you with the links...
    Are you sure? This action cannot be undone.
    Cancel
  • rahul pathak

    MemberJul 21, 2009

    i need help for make six leg robot
    Are you sure? This action cannot be undone.
    Cancel
  • silenthorde

    MemberJul 21, 2009

    Hello silver scorpion

    Great endeavour, keep it coming.....

    Id love to learn about PCB designing.....from scratch....Cn u dedicate a thread for that as well
    Are you sure? This action cannot be undone.
    Cancel
  • cooltwins

    MemberAug 4, 2009

    That is an awesome initiative

    i have been searching for good stuff on robotics for the past few days

    looking forward to it 😀
    Are you sure? This action cannot be undone.
    Cancel
  • decarus

    MemberAug 14, 2009

    hi. Wanna ask is it possible to control(program) one of the motor like for example its knee to move at a certain degree for one condition and other degree for other condition . If its possible what kind of motor is that ? what program is used to control ?
    Are you sure? This action cannot be undone.
    Cancel
  • arjunoids

    MemberAug 15, 2009

    havent u started yet?
    Are you sure? This action cannot be undone.
    Cancel
  • parjanyaroy

    MemberAug 15, 2009

    hie all ....

    first of all ..... this is a gr8 thread .... thnx a ton for starting it

    now i'm a newbie in robotics (2nd year in Elec..nd i dont have much of an idea regarding microcontrollers and how to program them. I only know the basics of C and C++ nd at present m learning MATLAB ... so ... is it possible to build bots without knowledge of microcontrollers ??

    thnx a ton in advance 😀
    Are you sure? This action cannot be undone.
    Cancel
  • rushi53

    MemberAug 18, 2009

    thanks for initiating this topic
    keep on posting
    Are you sure? This action cannot be undone.
    Cancel
  • jvivin1990

    MemberJan 17, 2010

    hi all,

    i have started building a line follower for a competition.but the constraint given is a black line(width 20cm) in a white background.
    my idea with 4 ir sensors works only for thin black lines.in this case how can we build such wide robots ?
    how much sensors will be needed? is there exists any alternative idea?

    pls reply competition is nearing...
    Are you sure? This action cannot be undone.
    Cancel
  • abhishekverma

    MemberFeb 28, 2010

    oh great!!!!!!!!!!!!!! u hv read my mind i guess!!!!
    Are you sure? This action cannot be undone.
    Cancel
  • lordisdeepak

    MemberMar 25, 2010

    jvivin1990
    hi all,

    i have started building a line follower for a competition.but the constraint given is a black line(width 20cm) in a white background.
    my idea with 4 ir sensors works only for thin black lines.in this case how can we build such wide robots ?
    how much sensors will be needed? is there exists any alternative idea?

    pls reply competition is nearing...
    hello jvivin,
    you can use 4 sensors in case of wide strip you have to follow do programming accordingly.
    i don't know any other alternative in this case.
    Are you sure? This action cannot be undone.
    Cancel
  • arjun poduval

    MemberSep 9, 2010

    hi,
    i wanted to construct a fire-fighting robot.. To start with, i have two queries:

    1. The concept of fire-fighting robot is patented and its been used in competitions too.. But is it commercial yet?

    2. I have very less experience with the programming concept of robotics.. Could you give me some technical helping hand??
    Are you sure? This action cannot be undone.
    Cancel
Home Channels Search Login Register