My intention for this robot has always been to use the PIC chips as the computing power. Each leg was to be controlled by its own processor that knows just enough to operate a leg according to the instructions it receives from the brain. The basic idea being that when I came to implement the control algorithms I wouldn't need to worry about the mechanics of moving a leg 'safely' or correctly because the leg controller wouldn't let the brain do anything 'dangerous'. This would simplify the control algorithms but I was still concerned I wouldn't be able to express the complexity I wanted in assembler or C without a lot of time and learning.
Scott Hanselman recently published a podcast about the .net micro framework. I'm very familiar with C# (a .net language) and the development environment as I've spent the bulk of the last 6 or 7 years of my professional life working with it. Visual Studio is, almost without a doubt, the best development environment currently available. The coding support and tools, the debugging and ease of use all contribute to making it a tool that allows you to focus on the problem at hand rather than tool.
The micro framework brings a powerful language and development environment to a very small platform. There is growing support for the micro framework in the market place with a large variety of devices. The platform I'm most interested in for this project is the Netduino, a derivative of the already popular Arduino.
The most attractive feature of this piece of hardware is the plug'n'play aspect. Everything I've seen so far indicates you plug in the USB cable, power it up, start Visual Studio and you're away. As I'm more about the software than the hardware this is very attractive.
My local Arduino supplier, Mindkits, has many Arduino parts (which are compatible with the Netduino) but doesn't supply the Netduino yet (although they are considering it). I have ordered one from Sparkfun which should arrive sometime next week.
My first experiment will be to see if I can get the Netduino to talk I2C to the PIC. Once that works I'll connect another PIC and see if it can talk to both PICs. With that done I'll be well on the way to have a mobile platform.
No comments:
Post a Comment