An open source hardware company: Arduino
Arduino is an open source platform. It is an easy to use hardware and software. This is available under the Creative Commons Attribution-Share-Alike license. Basically, Arduino designs files that are easily available on the internet and that their software is open source. This platform can be used for both personal and business purposes, provided that credits are attributed to the Arduino brand, and project files are also available under the same license.
The project emerged in Interaction Design Institute Ivrea in Ivrea, Italy in 2005 from a group of developers led by Massimo Banzi and David Cuartielles. The objective was to create a low-cost, easy to work platform that could be used by everyone especially the students to develop their prototypes efficiently and at low cost. The main advantage is fast processing and easy interface.
Arduino can sense the environment by receiving input from variety of sensors. It can also attract the surroundings by controlling lights, motors and other actuators.
The Arduino platform may be very powerful to use but it is quite basic. The two main components it includes are;
Hardware- it includes microcontroller, which is also known as the circuit board. This part can be physically programmed.
Software- this is the environment in which we use the board, which is going to run right on our computer. We can use this board to upload and write programming codes.
Who uses Arduino?
Arduino is used by wide array of people for various projects and hobbies, as well as for professional purposes. It is considered to be simple and straightforward for beginners, it is deep and rich enough to help beginners to grow.
Teachers and students use Arduino, and indeed are the intended consumer base for the products, as Arduino offers a low cost way to build scientific instruments. This allows teachers and students to practice and demonstrate chemistry and physics principles, as well as get started with programming and building robots.
Musicians and artists use Arduino technologies to experiment with new instruments or techniques in the art.
Designers and architects might use Arduino microcontrollers to build prototypes and interactive models of what they want to develop on a full scale.
The main reasons for using the Arduino platform in projects are as follows:
- Low cost prototyping
- Easy to program
- Tutorials and many articles available on internet for easy access
- No experience or extensive prior knowledge of electronics/programming required
- Free stimulation software available
- Extensive community of developers and hobbyists
Arduino is not the only electronic prototyping platform in the market. The other being Beagle Bone, Raspberry and Pi. All the electronic platforms use different microcontrollers and each has different hardware design characteristics.
Programming is a common set of skill that usually transfer across projects, but being an Arduino programmer, we generally are not building these skills. In order to be a good Arduino programmer, one should not stop only at Arduino programming. The fundamental languages which power this language are C and C++.
So, to be a good Arduino programmer, the best thing is to start working on projects that are not Arduino based.
History
Arduino was neither designed by large electrical corporations nor by group of computer science majors. Instead, it was designed by a group of students and instructors looking for solution to their problem to animate their art works.
Modern art projects usually require synchronized moving parts, which necessitates precise automation, which in turn requires some type of microcontroller system. Because many art students are not well versed enough with programming language, they would have to purchase microcontroller chips and design electronic circuits to make them run was quite a difficult task. A group of students at the Interaction Design Institute Ivera, Italy worked on a project to help minimize the amount of coding art students had to write to automate their artistic creations.
This resulted in the Wiring Project, which produced a standard microcontroller circuit board, along with standard programming environment, called processing. Created in 2003, the wiring and processing projects gained a lot of acceptance, but were quite expensive for most of the students to practice their experiment.
After a few years of tweaking the wiring project, in 2005 a group of designers which was led by Massimo Banzi and David Cuartielles came up with the Arduino project. The Arduino project was basically built on the basic features of the wiring project, but the main difference was that the Arduino project was relatively cheaper than the wiring project.
Every part of the Arduino project was designed for simple and non-technical people. The hardware interface is somewhat forgiving. In simple terms, if you attach a wrong wire in a wrong port, the Arduino unit would not be blown up. If accidently AT mega microcontroller chip is blown up, the Arduino is designed in such a way that can easily replace the microcontroller chip and the person would not have to purchase an entire Arduino unit again.
Hardware and tools
This open source platform is helpful for anyone who wants to program small computers. These tiny machines are called microcontrollers and they help in improving the level of interactivity. This is used in a lot of devices/products that we use in our daily lives. These include tooth brushes, remote controls and toys.
The role of these sensors is to listen to the physical world. It converts the energy that we release once we press the buttons, shout, or even when we wave our arms. This energy is converted into electrical signals. Examples of sensors that we touch with our hands are knobs and buttons, but there are many different types of sensors. Devices that can change electrical energy into physical energy are called actuators.
Microcontrollers talk to actuators and listen to the sensors. It helps in deciding on what to perform regarding the type of program we have written. The electronics and microcontrollers we connect to them are merely a prototype of our projects.
This open source software is a dynamic component that enhances the usability. The main function of Arduino is to help is to help people build different devices.