How Can an Aerospace Engineer Start Learning Hardware Programming for Robotics?

  • Thread starter Thread starter GreenLRan
  • Start date Start date
  • Tags Tags
    Hardware Program
Click For Summary

Discussion Overview

The discussion centers around how an aerospace engineer can begin learning hardware programming for robotics, particularly focusing on the use of microcontrollers and FPGAs. Participants share their experiences and suggest resources for getting started in hardware programming.

Discussion Character

  • Exploratory
  • Technical explanation
  • Debate/contested

Main Points Raised

  • One participant expresses a desire to learn hardware programming and seeks book recommendations, noting their background in Aerospace Engineering and Physics.
  • Another participant suggests using an FPGA board, specifically the Xilinx Spartan 3, and mentions that learning hardware languages like Verilog is easier through experimentation rather than just reading.
  • A different participant advises against starting with FPGAs, arguing that they are complex for beginners and recommending microcontrollers instead, specifically mentioning a book based on Assembly programming for the 8051 microcontroller.
  • Another participant emphasizes that FPGAs are not suitable for introductory robotics, recommending Arduino boards for their simplicity and supportive community, highlighting the ease of use with a C-like syntax.

Areas of Agreement / Disagreement

Participants express differing opinions on the suitability of FPGAs versus microcontrollers for beginners in robotics. There is no consensus on the best starting point or resources for learning hardware programming.

Contextual Notes

Participants mention various resources and tools, but there are no agreed-upon assumptions regarding the best approach to learning hardware programming. The discussion reflects a range of experiences and preferences without resolving the debate on the most effective starting point.

Who May Find This Useful

Aerospace engineers, robotics enthusiasts, and individuals interested in transitioning from software to hardware programming may find this discussion relevant.

GreenLRan
Messages
59
Reaction score
0
I know several languages (C++, Python, FORTRAN, etc..), but most of the programming I have done never has had any real/physical interaction with hardware.

I've never used micro-controllers, and would like to start tinkering around in the robotics field.

Can anyone suggest any good books to get me up and running? I have an Aerospace Engineering and Physics background.

Thanks
 
Physics news on Phys.org
I'm not sure about books, but what worked well for me was getting a simple FPGA board to play around with (Xilinx has some great stuff, e.g. the "spartan 3" board). Any books on 'verilog' would be helpful as well. I'm not sure why, but I found hardware languages to be much easier to learn by experimentation (as apposed to just reading a book), than software languages like C, etc.
 
I would advise against starting with FPGAs, since as a beginner the only thing you can probably do is run the demos. Also there aren't many cheap FPGAs, the cheapest I know of is the Altera Bemicro (also, they are not so easy to interface with arbitrary real hardware unlike microcontrollers) :
http://www.altera.com/b/nios-bemicro-evaluation-kit.html

FPGAs are more flexible but they require a knowledge of an HDL language (VHDL or Verilog) and a good understanding of the hardware and the evaluation board.

Microcontrollers are much simpler, of the books that I used, I found this one to be good (based on Assembly, not C/C++):

https://www.amazon.com/dp/013119402X/?tag=pfamazon01-20

So if you have a simple and cheap 8051 based microcontroller, you can start with that book (or any other book) and look for recipes online to do some projects later.

This is my view, other folks may have different opinions.

note: by a good book, I mean that it sufficed for the course/lecture I was having.
 
FPGAs are all wrong for intro robots stuff, as they teach you to describe the hardware, not talk to it.

For intro robotics, I really can't rec the various Arduino boards enough. Simple C like syntax that gets you talking to a board fast, thinking about port i/o, and doing all sorts of shiny things. Plus there's a great community for it.
 

Similar threads

Replies
7
Views
2K
  • · Replies 9 ·
Replies
9
Views
2K
Replies
2
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 7 ·
Replies
7
Views
3K
  • · Replies 8 ·
Replies
8
Views
3K
  • · Replies 16 ·
Replies
16
Views
5K
  • · Replies 58 ·
2
Replies
58
Views
5K
Replies
16
Views
3K
  • · Replies 19 ·
Replies
19
Views
5K