When prototyping an idea, it’s important to choose components that will help prove the concept, allow the design to be evaluated and give a basis from which the final product can be derived. There are many options for hardware to use in prototypes, from the costly, proprietary packages like National Instruments to the low-cost and open source options like Arduino, and the multilingual, mid-cost solutions like Phidgets.
Different projects have different requirements, but Phidgets safely falls in the middle of the two extremes providing easy integration and cost-effectiveness. However, both National Instruments and Arduino type products can be useful depending on your goal.
2. Prototype : “a model through which a
new design can be evaluated and a final
product can be derived”
3. Abstract
When prototyping an idea, it’s important to choose components that will help prove the concept, allow
the design to be evaluated and give a basis from which the final product can be derived. There are
many options for hardware to use in prototypes, from the costly, proprietary packages like National
Instruments to the low-cost and open source options like Arduino, and the multilingual, mid-cost
solutions like Phidgets.
Different projects have different requirements, but Phidgets safely falls in the middle of the two
extremes providing easy integration and cost-effectiveness. However, both National Instruments and
Arduino type products can be useful depending on your goal.
4. Factors in Choosing Hardware for
Prototyping
Prototyping is an important stage of design. It allows the evaluation of an idea while enabling
development of the final implementation. If done well, it will catch issues and allow the design to be
optimized for the user before large scale implementation occurs.
Hardware selection should be based on what enables software development and system integration;
allows quick development; will prove the concept; could be used in the final design; and lowers
development risks, time and cost.
Research done by RosenFeld Media shows that when people are prototyping, the three factors that
contribute greatest to what tools and methods they use are the time and effort required to produce a
working prototype; the ability to create usable prototypes for testing; and the price. Other factors like
the ability to create working source code and the learning curve also play a role, and many designers
will have their own requirements as well. At the bottom line, a solution must be efficient and effective.
5. Available Hardware for Prototyping
The most common hardware platforms used by engineers and designers today are Arduino (and
similar development boards), Phidgets and National Instruments.
Arduino is a microcontroller, and the term often refers to any generic microcontroller development
board. With these boards, the firmware is written by the user with free tools (like the Arduino IDE and
the Processing language). The advantage of Arduino specifically, and part of what makes it so popular
when compared to other development boards, is that there is a standard connector scheme that allows
shields to be attached. Shields enable connections to motors, cameras, displays, sensors, et cetera,
and are usually necessary in prototypes.
6. Available Hardware for Prototyping:
Phidgets
Phidgets are USB sensors and controllers that connect computers to the real world. The name
Phidgets is a portmanteau of physical and widgets, meaning a physical component that enables a user
to perform a function or access a service, in this case, reading environmental conditions or controlling
physical devices such as motors. Communication with Phidgets can be done in the same language as
the source code for the application being developed. This allows users to draw on existing libraries
and extensions for any given language without having to develop a bridge between these different
environments.
7. Available Hardware for Prototyping:
National Instruments
National Instruments develops industry-standard computers and hardware and fosters a very
technically capable community with more than 35,000 customers. National Instruments’ products are
intended for engineers and scientists needing to measure and control in areas that require a high
degree of precision and accuracy. They provide an integrated hardware and software platform with a
graphical system design that abstracts complexity, focused on allowing quicker design, development
and deployment.
8. Available Hardware for Prototyping
Phidgets’ and NI’s products take design to the modular level. Each product is well-designed to safe-
guard against electromagnetic interference, overvoltage, undervoltage, electrostatic discharge and
grounding issues. This makes it easy to integrate parts into a large system and produce a reliable
design quickly. This level of care is not generally found in arduino-type boards and their shields,
especially when considering those made by unofficial, third-party companies. It’s important to note that
non-electrical engineers may not be able to spot the higher quality models of shields from the poorly
designed ones, which could cause issues and malfunctions.
9. Considering Key Factors in the
Decision
The time and effort required for developing a working prototype depends heavily on experience
and the complexity of the idea being developed. Because of Arduino’s popularity, many designers
have experience with their development environment. The Arduino language is based on C/C++ and
uses a Java based language called Processing to enable communication between computers and
Arduino. Arduino also requires some electronics know-how to evaluate the shields and to implement
them and any peripherals. For designers with coding experience, who haven’t used hardware
extensively, Phidgets is the only hardware with considerable language support, which includes an API
for C#, C/C++, Java, Python, Visual Basic, Ruby, LabVIEW, Max/MSP and more. National Instruments
hardware is programmed using LabVIEW software, which maintains popularity in some engineering
and science fields.
10. Considering Key Factors in the
Decision
The ability to create a usable prototype for testing is possible with any of the hardware options in
the discussion. Many people do development with Arduino, and ample tutorials and example code
exist online for people wanting to get started. As with third-party shields, not all code is going to be
well-written. Phidgets releases example code for most products in several languages that can easily
be adapted for any project. National Instruments supplies various toolkits, tutorials and ready-to-run
examples, along with fostering an online community they call KnowledgeBase, which is contributed to
by numerous engineers and scientists.
Price plays a key role in what hardware designers choose to use for their prototype. Arduino offers the
most cost-effective solutions, but Phidgets does not trail too far behind. Both offer starter kits for about
$100 USD, and the tools needed for programming come free. National Instruments comes with a
larger price tag, with an evaluation kit costing $425 USD, which includes an evaluation version of
LabVIEW for programming.
11.
12. Considering the Final
Implementation
Creating a usable design should be a top priority for designers. More than half of prototypes end up
using the same hardware in the final implementation, which means the end-use must be considered.
The most obvious consideration is whether the design can be stand-alone or computer dependent.
With Arduino and National Instruments, all of the code can reside on the device, allowing it to
standalone. Phidgets are peripherals, so the application code runs on a computer, which must always
be connected to the device. Several prototypes have attached Phidgets to a Raspberry Pi, which runs
the application, allowing for a fairly cost-effective and portable design.
Another consideration is responsiveness. Since Phidgets are peripherals, reaction requires a
roundtrip through the computer operating system and your application, giving a practically
imperceptible lag of 10-30 milliseconds. On Arduino, the code runs on the microcontroller so –
assuming the code is well written – lag can be controlled down to mere microseconds. For the most
responsive service, some National Instruments products have real-time performance in the
nanoseconds.
13. Considering the Final
Implementation
The vast majority of systems do not need microsecond-level real-time performance. FAA certified flight
simulators have time constraints that are easily met by Phidgets, and systems from industrial control
monitoring systems to data loggers can easily operate on half a second of lag. Even live interactive art
has been done with Phidgets, without perceptible delay in responsiveness, but some artists may be
more choosey. Certain types of medical applications, transportation systems, nuclear plant/reactor
monitoring and other mission critical applications rely more on nanosecond performance.
Keep the final application – if it needs to be standalone and what level of responsiveness is required –
in mind. While there are many aspects to choosing hardware for the prototype, remember that more
than half of prototypes end up using the same hardware in the final implementation, so choosing a
solution that can be put into the final product is a huge benefit.
14. Finally, Selecting the Prototyping
Solution
Choosing the right hardware for prototyping enables quick development and efficient design. The key
factors that will influence the decision are the time and effort required for developing a working
prototype, the ability to create a usable prototype for testing, and the price. All three hardware
solutions presented can meet these requirements, but for someone unfamiliar with the language and
software provided by Arduino or National Instruments or needing to connect to other resources
through the application, Phidgets is the best fit, and still comes at a reasonable price.
15. Phidgets believes in getting problems solved quickly and projects finished on time.
That’s why we specialize in making affordable, easy to use sensors and controllers that
require minimal electronics knowledge. Just use the comprehensive API and code examples,
which make it easy to get the parts working right away. There’s no need for proprietary
software, Phidgets work in many popular programming languages and on practically any
operating system.
Plug in. Code. Solve the problem.
www.phidgets.com • 1-403-282-7335 • Calgary, Alberta, Canada