Asked — Edited
Resolved Resolved by J11!

Robot 101

Hello I am a Tool&Die Maker by trade, evolved to C.N.C. Cutter Path Developer. Going to be retiring soon and I want to build my first robot. Would like to know about programmable software. It would make my world simple :-) to find something that uses X axis Y axis grid design using a common start point referencing to a X 0.00 , Y 0.00, same as what you would find on C.N.C. machines . Since I will soon be retired I will need to keep the cost low. Any advice you can give would be greatly appreciated.

Thank You Dave P.


ARC Pro

Upgrade to ARC Pro

Stay at the forefront of robot programming innovation with ARC Pro, ensuring your robot is always equipped with the latest advancements.

#1  

Hello, 53stude/Dave. Welcome to the forum. I thought I would give answering your question a shot since I have a passing familiarity with G-Code. The thing I found most insane about the code was the lack of automatic renumbering of the line numbers. Having to allocate them in blocks so you can later edit if you have to was just silly to me. Maybe they have improved on that in more recent years. When I became familiar with it was a number of years ago while I was doing PLC programming in conjunction with milling machines operation. I didn't actually do the G-Code programming but the guy I worked with did and I picked up some of it. G-Code is really a holdover from when computer memory was expensive and all programs had to be very compact. Thus the numbers after the letters to form instructions instead of using actual words. It was, and is still, so ingrained in the industry and people's minds, no one ever dared change it. The closest most people in here get to it is in 3-D printers. There is a conversion process that takes whatever the maker uses to create the 3-D computer model to be printed and translates it to G-Code just before it get's sent to the actual control for the 3-axis machine that forms the basis of the printer.

Anyway, back to the question. The bad news is, no, the programming associated with these robots is not based on a coordinate system as such. The good news is that programming languages all have certain features in common. In G-Code, for example you learned to create a sequential set of steps, following a certain pattern of reasoning. That's basically the same in the language used here. The better news is that you can forget about worrying about line numbers. There are none. At least none that matter where code execution is concerned. The editors that are used here do have line numbers associated with them but that is only for debugging the code. It gives the error checker a way to reference the code line where the fault occurred. The program, in it's execution, doesn't need or use them. You can insert new lines of code anywhere you like and the line numbers will renumber themselves accordingly, but it matters not to what the code does. Unlike early Basic, for example, you don't jump to a particular line number in the code when you want to do things out of a strict sequence. You jump to what is called a "label." A label is just a group of letters preceded by a colon. Don't worry about all that right now, however. I just mention it in passing to illustrate differences to G-Code.

Not only don't you have to worry with line numbers, but you don't have to memorize a plethora of something like G-Codes, associating their number with what they do. In the code here you can use actual words to perform functions and execute commands. For instance, instead of a G00 instruction, you can write something like RapidMotion. In many languages you can not only do that but send along values to be worked with when the RapidMotion instruction is executed. Like this:


RapidMotion(0.12,6.5) with the 0.12 and 6.5 being the
                      X and Y coordinates you wish to
                      use in the movement. 
  This would be like:
N75 G00 X0.12 Y6.5;

A typical instruction here would be:


 Servo(D12,50).  This tells servo #12 to move to position 50.

Not unlike G-Code in that respect but with only 1 axis of movement instead of 3. In robotics controlling servos is what it's all about. They do all the work of moving the robot and it's appendages. There is more to it like speech recognition and making lights flash. But that's the basic idea.

I could go on endlessly but I'll stop here. The thing to keep in mind is that the programming here is only different in form. The steps you go through to make the code work are similar to G-Code. So don't be put off by the fact there is no G-Code-like language to work with. I promise you, once you immerse yourself in the language here (called "Script" language) you will wonder what you ever saw good about G-Code.

There are tutorials on all aspects of the robots used here in the "Learn" section. Just click on the word Learn right here to go there. In fact, you don't even have to worry about the programming language right now ,if ever. (NOW he tells me!) It's true though. The software you will be working in here (EZ-Builder) has been written in such that you will rarely need to do any programming to make your robot do things. It was made for absolute beginners so they could do things right away by simply choosing control blocks and clicking on settings in them. The most you might have to do is type in a name for some things. You can do a huge host of things without ever having to write a single line of code. All the programming is already done and does things behind the scenes.

Follow the tutorials from the beginning and you will see what I mean. When you get stumped post here and there will be someone to help you. That help may be to first point you to a tutorial, but you won't be ignored.

PS: If you are undecided as to which robot to get I would recommend one of the rolling robots, such as, appropriately enough, Roli. :) Roli Rover that is. They are the easiest to maneuver. If you have your heart set on a robot with legs, Try the Galapagos Bot or Six, the spider-like robot. A Robot like JD the biped one can be challenging for the beginner.

Also, if you want one right away (I know I did) Brookstone sells them. They have only recently started carrying them, so they may not have much of a selection, but I know they carry Six. There are other places listed in the "Store" section (at the top) as well.

Good luck and above all have fun. While learning is a big part of it all, so is having a good time doing it!

#2  

Hello @53stude

Welcome to the forum. You will find your overall background in Tool and Die work, machine tools and cutter path development will give you an good base understanding for your future in your robotic builds.

The EZ robots are simple to build and the software basics are easy to learn and use. Buying a robot like @WBS00001 mentioned will allow you to learn the basics. What is nice is you can modify the basic robot you buy with additional servos and EZ bits and build other listed robots or one of your own design.

I had bought an Adventure Bot and a development kit which with the purchase of additional parts became a JD. The camera tracking function is great to play with and opens many ideas.

The basic cost of these robot is reasonable for the amount of power the EZB v4 gives you. They are real robots, not blinky, flashy type toys which need tons of code to do very little. Look at the projects in the Robot Showcase and the videos here on the site to help you pick something to meet your likes. Review the tutorials to see what can be done. Again a local Brookstone store can supply your needs, or here on this site. I think Maker Shed sells also.

The main thing is have fun and know you will be busy during your retirement build cool things.

Ron R

#3  

@53stude

Welcome to the community. The responses given so far have been spot on.

It is difficult for someone with your background to wrap their heads around what is happening with these robots. Programmers in general have a hard time accepting that things can really be this easy. I know that I did at first and have seen this with multiple people.

I want to give you some information that might be helpful to you. EZ robot uses the tethered approach to robotics. All amazing robots use this approach. Some people are put off initially when they find out that EZ-Robot products need a computer attached to them to function. Please don't let this affect you. When you research what is possible with a tethered vs untethered robot, you will see that if you want to make powerful robots, the tethered approach is the way to go. As an example, an untethered robot might wonder aimlessly in a house using sensors to make decisions as to what to do next based on these sensor readings. It might follow a line and have some very basic human interaction. This architecture is very limited. Tethered robots are able to use anything that your computer uses on top of an array of sensors to detect its local surroundings. The internet is full of useful information that you might want to incorporate into your robot. Your computer is many times stronger than your robot controller. Your computer has local storage and many other advantages to allow it to get access to a world of information. Tethered robots are able to not only self navigate, but do things like get you cooking instructions or find a local store and navigate to it. It really opens up the possibilities of what you are able to build. EZ-B robot controllers are tethered via wifi connection. This prevents wires from being used for tethering. Additionally, an onboard computer could be added to your robot if it were of adequate size, making it a self contained system.

There are some situations where the EZ-B may need to communicate with subsystems. This would be something like using a neopixel light ring or some sensor that blasts a lot of information back to the EZ-B needlessly. These subsystems can be developed using the very popular arduino platform or really any other platform. I only mention this because after you get into robotics pretty deeply, you may want to build your own design and the EZ-B is great for that. There are some considerations that need to be taken into account when doing this though.

ARC is to robotics what the Mac or Windows was to computers in the 80's. It takes the need to understand a lot of the commands out of the hands of the user and puts them in ready to use controls. If you want to get into more programming, all of these functions are exposed through the use of an SDK. It isn't necessary to use the SDK to make amazing robots. It is simply an option for those who love to program.

I have watched people who have absolutely no knowledge of programming or of robotics build some amazing robot platforms. Some of these people are very young, have learning disabilities and other handicaps (although I am of the opinion that we all are handicapped in some way). I had a hard time understanding how this was possible until I downloaded ARC and started playing with it. I encourage you to do the same as it is free software. There is no need to wait until you have a robot in your hands before starting to learn about what the platform is capable of.

The other thing that I would like to add is that this community is full of very helpful people. Some of us step away from time to time to work on other projects but I know that we are still watching the community and offer assistance where we can. Someone in this community has probably faced the same challenge that you are experiencing as you work on your robot. Please ask questions not only to get help, but to also continue to build the knowledge base that this community is.

Welcome again.
David

#4  

WBS00001 to answer your question here is a picture

User-inserted image

I would like to exchange e-mails or find me on google+

#5  

@53stude I'm sorry Dave, but I can't do that ... :D Just kidding. Seriously though, I don't follow what the picture means or to what question I asked that it relates. Are you meaning to "robotize" the electric wheelchair? Use it as a base for a robot? I'm lost here.

#6  

That youtube video should make it clear as mud :D

Retro fit the Jazzy to a 22" 5 h.p. Briggs & Stratton lawn mower equipped with a car alternator

#7  

Anthony XLRobots That's what I did, new demo jazzy $160.00 works great. A few I looked at for $200 needed batteries.

#8  

What you need to drive a Jazzy with an EZ-B is basically the same as you need to convert it to R/C. I high amp H-Bridge. Sabertooth 2x25 should do (the Jazzy motors are 20amp, so 25amp H-bridge gives you enough overhead).

Alan