1. Hardware description languages ​​(HDLs)
Hardware description language is generally used to describe electrical programming. These languages ​​are quite familiar to some robotics experts, because they are used to FPGAs (FieldProgrammableGateArrays) programming. FPGAs allow you to develop electronic hardware without actually producing a silicon chip, which is a faster and easier choice for some developments. If you have not developed an electronic prototype product, you may never use HDLs. Even so, it is necessary to understand this programming language, because they are very different from other programming languages. One important point: All operations in HDLs are concurrent, rather than sequential operations based on processor-based programming languages.
2.Assembly
Assembly allows you to program on 0 and 1 digits. Basically this is the lowest programming language. Just recently, the lowest level of electronics required Assembly for programming. With the rise of Arduino and other microcontrollers such as microcontrollers, now you can use C++/C++ to easily program at the bottom. This means that Assembly may become even more unnecessary for most robotics experts.
3. MATLAB
MATLAB and its related open source resources, such as Octave, are particularly liked by some robotics engineers. It is used to analyze data and develop control systems. There is also a very popular robot toolbox-MATLAB. I know some experts who can develop entire robotic systems using only MATLAB. If you want to analyze data, generate advanced images, or implement control systems, you might want to learn MATLAB.
4. C#/.NET
C# is a special programming language provided by Microsoft. I put C#/.NET here, mainly because of the Microsoft RoboTIcs Developer Studio. The main development language of this package is C#. If you are going to use this system, then you probably have to use C#.
5. Java
As an electronic engineer, I am always surprised that some computer science degree courses use Java as the first programming language for students to learn. Java hides the underlying storage function from programmers, which makes it easier to write than some languages ​​(such as C language), but it also means that you will have less understanding of the operating logic of the underlying code. If you have a background in computer science and switch to robotics (a lot of people do, especially in the field of research), you may have learned Java. Like C# and MATLAB, Java is an interpreted language, which means it will not be compiled into machine code. In contrast, the Java virtual machine interprets instructions at runtime. Using Java, theoretically allows you to run the same code on different machines, thanks to the Java Virtual Machine. In practice, this is not always feasible and sometimes causes the code to run slowly. But Java is very popular in some robotics, so you may need it.
6. Python
In recent years, there has been a huge resurgence of people learning Python, especially in the field of robotics. One reason may be that Python (and C++) are the two main programming languages ​​in ROS. Unlike Java, Python's focus is on ease of use. Python does not require a lot of time to do routine things, such as defining and coercing variable types. These are normal things in programming. In addition, Python has a large number of free libraries, which means you don't have to "reinvent the wheel" when you need to implement some basic functions. And because Python allows simple binding with C/C++ code. This means that the performance of the heavy part of the code can be embedded in these languages ​​to avoid performance loss. As more and more electronic products start to support Python "out of the box" (together with RaspberryPi), we may see more Python in robots.
Note: The Raspberry Pi FoundaTIon: A small charitable organization in the UK established to promote technology, not to sell technology for profit.
7. C/C++
Finally we have reached the number 1 robot programming language! Many people think that C and C++ are a good starting point for new roboticists. why? Because many hardware libraries use these two languages. These two languages ​​allow interaction with low-level hardware, allow real-time performance, and are very mature programming languages. Nowadays, you may use C++ more than C because the former has more functions. C++ is basically an extension of C. It is useful to learn a little bit of C first, especially if you find that a hardware library is written in C. C/C++ is not as easy to use as Python or MATLAB. Similarly, it will take a lot of time to implement the same function in C, and it will also require more lines of code. However, because robots rely heavily on real-time performance, C and C++ are the programming languages ​​closest to the "standard language" of our robotics experts.
36W Desktop Power Adapter,12V3A Desktop Power Adapter,12V3A Plug Power Adapter,Desktop Adapter12V3A 12V4A
Guangdong Mingxin Power Technologies Co.,Ltd. , https://www.mxpowersupply.com