Thursday, 18 August 2016

6 Must Know Robotics Programming Languages for coding a Robotic Project


To draw a sketch on your mind only imagination in sufficient but here we are talking about robotic. For a robotic project it is important to know some computer language by which you can program your bot. Initially when I have started working on robotic model for some robotic competitions, I was totally unaware of these languages. I have started my work with relay logic. It was a most basic thing in electronic and as an electronic engineer I was expert with relay logic. It was the time of year 2000 when internet connection was not so cheap as compare to now. So there was no scope of additional knowledge, in-fact at that time we are working on only hardware with some homemade PCBs.

By the way here I will explain about some programming language which is in “Must Know” category for a robotic Project.

1. C/C++: 

C and C++ are well known programming languages, now a day you will get a lot of tool for learning these languages. You can also download free compiler for C & C++. If you are a newbie for robotic it is good to start from C/C++. Both languages have many similarities but C++ is upgraded version of C language from library point of view.
Best recommended book of C++ is “The C++ Programming Language (4th Edition)” by Bjarne Stroustrup and if you want to start from beginner level go for “C++: The Ultimate Beginner’s Guide!” by Andrew Johansen
Recently I have seen a cross robotic programming platform, it is ROBOTC. It is also based on C language with graphical interface. It is easy to use development environment.
Now many micro controller boards are supporting C languages for controller programming so it is also a bonus point for C/C++ learner.

2. Python:

Python is a general purpose, high level programming language. It is design to increase readability of complex code. In Python you can easily express code in few lines but in C or C++ it will require writing a long complex code.
Book “Learning Python, 5th Edition” provides a good material for Python learner. It covers almost everything you need to know about programming in Python, object/ variable Types & Operations, Statements and Syntax, Functions and Generators, Modules and Packages and much more.
I really like the first chapter, why people use Python. If you’re a beginner, this can help you a lot.
Python is normally used in Web & internet development, email processing, Socket Programming and frame work development such as Django and Pyramid. Versatility of Python is due to its larger library. Now a days Python is using for embedded system
Programming.
Raspberry PI, (a UK based foundation for Hardware development) is also using Python for his electronic board. Check Out given link https://www.raspberrypi.org/learning/python-intro/

3. Lisp:

LISP (List Processing Language) First appeared in 1958. And now after a lot of development (in last 6 decade) it is Hy. Initially it was used for Mathematical notation of computer program. It was developed on the bases of lamda calculas. LISP is using for Artificial Intelligence Programming. LISP is also an essential part of ROS (Robot Operation System).
If you want to work in AI type of thing as a professional, it will be a good choice for learning. “Practical Common LISP” is a good book to understand LISP but Artificial Intelligence & Robotic is not included in this book.

4. Assembly:

Coding in assembly gives you a imagination of every step of controller processing. During collage days it was my one of the favorite language. But problem is that, writing a complex code in assembly is very much tricky and hard. So if you have option for other languages, go for it. But if you are working in Robotic Project, it is assumed that you can read program which is written in assembly language. In recent past mostly all micro controller required low level Assembly language but after development of Arduino board now Assembly language is out of fashion because now these board supports C/C++.

5. DOT NET:

Dot net is a platform to provide an object oriented environment to develop windows application. Here .NET framework contains two components, one of them is “Common Language Runtime” (CLR) and other is “Framework Class Library” (FCL). Its interoperability plays the most important role in its success.
.NET is not directly used in Robotics but it helps to run devices with window application. Here in .NET framework with the help of VB & C# you can do SOCKET & Port level programming. Even I have also done a lot of Parallel Port and Serial port programming on .NET frame work. It is really awesome. If you are working on “Internet of things” (IoT). It will be very helpful to design and execute your project.
For the development of .NET application you need to know about VB or C#. As robotics point of view I recommend “Microsoft Robotics Developer Studio”. Here C# will definitely help you.

6. MATLAB:

MATLAB is not a language it is a tool and it is design to solve engineering problems on the basis of mathematical calculation.
Basically it simulates your control algorithm / design and gives you the result. Complete robotic system can be design in MATLAB and after its stability test, manufactures start on physical level. If you want to analyse data, produce advanced graphs or implement control systems, you will probably want to learn MATLAB.

Source: www.yantraeducation.com
 www,wikipedia.com

No comments:

Post a Comment