Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

C# Robotics platform (i.e. "human sized robot")

Tags:

c#

robotics

Edit: Nominating for reopen as this definitively falls in under FAQ section "matters that are unique to the programming profession".

I want to program robotics in C#. This question is about existing kits/components to do so. I welcome any pointers on where to start. For example: Is Robotics Studio a good platform for this project?

The use will be a hobby project where I program the robot to drive around in my house and perform maintenance (like getting me a glass of water). I want to put my efforts into object recognition and controlling movement (driving, arms, etc). I do not want to spend time building a robot. This is not a robotics project in that sense, it is a software project.

Are there any human sized robots with .Net SDK (or something I can P/Invoke)?

It does not need to be fully adult human sized as long as it can reach stuff on tables and similar. It also doesn't have to look like a human being.

like image 977
Tedd Hansen Avatar asked Mar 27 '11 13:03

Tedd Hansen


2 Answers

Very large robots are expensive, powerful (and power-hungry), heavy, and in many cases absurdly complex. Hobby-oriented robotics focus on devices that won't result in injury and/or death when things go wrong.

This is a bit like asking where you can buy a remote-control helicopter at 1:1 scale.

But to get you started, I'd recommend learning to work with embedded devices so that when you build your army of killer robots (as you undoubtedly will), you'll know how to control the motors, lights, sensors, etc. C# and .NET programmability in embedded devices is not a common thing, but lucky for you, a new chip was recently announced that does just that.

Check out the Fez Domino. It's largely compatible with the more popular Arduino platform, but you program it with .NET instead of C -- which is why it's twice as expensive. Much of the necessary work for controlling motors, lights, sensors, etc., with such a device has already been done for the Arduino platform, and that should largely translate over to the Fez Domino. Though, of course, you'll have to re-write the code in C#.

Even if you want to control your legion of death-bots via full-power computers, you'll often use a micro-controller like these to handle the IO with external devices, since they're better at that sort of thing, and you can communicate with them with simple computer-friendly protocols, like serial over USB.

like image 147
tylerl Avatar answered Sep 27 '22 17:09

tylerl


Start small! As tylerl suggested, the Fez Domino looks like a great board to do some microprocessor work in C#.

Start out doing some smaller projects (if you haven't already). Perhaps build a line following robot using a Netduino or similar. There are countless kits out there, or you can just build your own pretty easily.

Once you've gotten that going, maybe graduate to doing some basic vision processing with a more powerful board (Fez Cobra, etc) or just strap a laptop to a bigger bot (this has a lot of advantages such as great processing power, being able to use the full blown .NET framework instead of just the Micro framework, you can use off the shelf components like web cams, etc).

If you want to become proficient at any kind of development with robotics, you would benefit from some knowledge of electronics. These small projects can help you build that up.

like image 22
RQDQ Avatar answered Sep 27 '22 16:09

RQDQ