Very interesting topic. I could go on for hours talking on it… but I have to go to a meeting in ten minutes or so
When I started my research, the first thing my professor told me was never to make blanket statements. He went on to say that never make assertions implying that you are making an absolute statement. Always blame the results … The results indicate that… and so on.
Well, the article, and responses to it, are not totally crap. Unless you try to understand the system dynamics, you can never say whether a particular controller is going to work for it or not. The problem is that people are too quick to jump to the conclusion that .NET micro is only fast enough for thermal processes, and won’t work for physical systems. Look at the self balancing robot that I’m working on. I’ve had hours long discussions on whether .NET MF will be able to handle it or not. So I just went ahead and did it. I’ve also done some detailed analysis of real-time response of different microcontroller platforms, which I may put here some time.
At the same time, you can’t expect .NET MF to get DO-178B certification. So I understand where Chris is coming from. Also, you can’t blame C# for making systems slow. C# is just a tool. The speed at which a complex C# application will execute on a 10-core machine will certainly beat 8-bit microcontroller running a real-time OS.
As for timing, consider this. If the frequency of the system is in msecs, then a small variation in timing (jitter) in microsecs can be treated as noise (if you think about it, it will come to you). Normally, noise level in sensors is higher than this noise introduced due to timing. In most of the processes, even physical systems (where you don’t require DO-178B compliance), it will work. Reliability for critical processes is another thing. If the process is critical (I’ve worked with such processes too), I’ll stick to assembly for full control over timing.
p.s. I am not married to .NET MF, and won’t use it for all my applications, but I’m really impressed with it. Quite an improvement over BASIC STAMP introduced back in 1993 If you’ve been in the software development industry long enough, you’ll appreciate it.