I hate to use buzz words BUT - device/platform independence, abstraction, partitioning, scalability are key.
Current implementation must not inhibit future innovation (no cookie cutter approach - no saying, "we can't make a color printer because all our drivers would have to change, we might even have to use [a] new processor(s)"
Bells and whistles are different than features and functions.
By partitioning a design and taking the above 'buzz words' into account as a design philosophy, Pre-Planned Product Improvements (P^3I) are not inhibited, but rather encouraged.
Robots that walk have come a long way from simple barebones walking machines or pairs of legs without an upper body and head. Much of the research these days focuses on making more humanoid robots. But they are not all created equal.
The IEEE Computer Society has named the top 10 trends for 2014. You can expect the convergence of cloud computing and mobile devices, advances in health care data and devices, as well as privacy issues in social media to make the headlines. And 3D printing came out of nowhere to make a big splash.
For industrial control applications, or even a simple assembly line, that machine can go almost 24/7 without a break. But what happens when the task is a little more complex? That’s where the “smart” machine would come in. The smart machine is one that has some simple (or complex in some cases) processing capability to be able to adapt to changing conditions. Such machines are suited for a host of applications, including automotive, aerospace, defense, medical, computers and electronics, telecommunications, consumer goods, and so on. This discussion will examine what’s possible with smart machines, and what tradeoffs need to be made to implement such a solution.