Electronics > Mechanical & Automation Engineering

Programm language for robotic

<< < (6/7) > >>

The OP wanted to get into it, and asked this:

--- Quote ---i want to learn a programming language. Which language i must learn for programming robots or autonomous cars? Can i learn robotic language with an Arduino?
--- End quote ---

--- Quote from: brucehoult on March 22, 2020, 12:56:59 am ---Playing around at home or at uni is very different from your "Most autonomous car projects from the well-known companies", assuming that by "well-known companies" you meant Tesla, Mercedes, Google etc rather than SparkFun.

--- End quote ---
What you say just discourages for no reason, given the phrasing of the OPs question.

What you call "playing around in uni" is the research that is the precursor for what we have today. Optimizing and refining are another question (though obviously, there is still a *lot* to do, even in professional systems, today).

Unis who collaborate with the "big" companies do actually use what I mentioned previously. The algorithms are the same, the approaches, too. Actually MIT has an online course which does just that, and collaborates with Tesla. Mercedes collaborates with unis as well, and they do exactly that.
Other unis collaborate with emergency services. Then there is the DARPA challenge.

All of them do/did train and test with laptops/PCs originally, look it up. Over time they added accelerators, but it was not how it started. I know, because I participated (embedded AI accelerators are still new -- today NVIDIA is one of the largest players in the automotive market). A lot of training happens on PCs using simulations. But as mentioned already, you can have accelerators in small form factors today, such as the Jetson. The processing power suffices.

My point being: you can perfectly get started without needing a real car. It's how most "real" companies did it, too. A lot of research even focuses just on the collected training data (and simulations). Calling that playing around is just unwarranted arrogance.

No, I'm not discouraging anyone from doing anything, and *especially* not from playing around with cheap hardware. Most of what I do myself is that kind of playing around -- no arrogance involved, it's a great way to learn.

What I am doing is disagreeing with your assertion that laptops, K210 boards or even the Jetson are what serious autonomous driving companies such as Tesla are using.

I think we agree on what matters most, then. I don't think the rest is worth debating, just that I saw how things developed over time as several projects started, before they got more professional. I am not making it up, and I am not playing, either. *shrugs*

Anyways, peace.

Edit, have some links:
and more generally:


This also shows that Jetson is meant as en entry product for development:

Then there are these links:

The hardware shares a lot in common, the software can be used on various platforms, the major difference are performance and connectivity options. When you look at the timeline of the product development (of the hardware accelerators), they are quite new. Software development for autonomous driving however is not that recent. Even GPU computing in professional contexts is relatively new. I.e., there was no other option but using normal computers and laptops (and embedded controllers for sensors). I would consider that serious work (and development).

That's just what a quick search could find, a lot of projects have no public website.
Tesla decided to get as much in house as possible, this is not what most manufacturers do, and not how Tesla started either.


--- Quote ---Tesla’s current onboard computer in HW 2.0 Model S and Model X vehicles is based on Nvidia’s Drive PX2 platform for autonomous driving
--- End quote ---

Don't get stuck on one language, there are many to choose from and all have advantages and disadvantages depending on the use.

In college I started with Pic microcontrollers and programmed them with assembly (Parallax's 8051 like at the time) and designed a complex robot where it had a network of tiny PIC micontrollers which could more parts and read sensors and perform 'reflex' actions quickly which communicating with another central processor (68k at the time) running a higher level language.  So I was planning for at least two languages just for one robot.

My 2 cents would be to learn C++/Python and start playing around with ROS. One of the great things about ROS is you can start programming robots without any robotic hardware at all! Gazebo is a simulator that connects really well with ROS to let you simulate many robots that most of us could never dream of affording. You can "program" the robot in C++ or Python.

To get real, fundamental knowledge about how robots work, I would recommend building a 2 wheeled differential drive robot from scratch. You will lean a lot from this process. Try getting it to drive in a straight line! Not as easy as it might sound.


[0] Message Index

[#] Next page

[*] Previous page

There was an error while thanking
Go to full version