ساخت چاپگر  سه بعدی با آردوینو
Arduino Open Source Platform Unleashes Creativity
In much the same way that GNU, Linux, and other open source software  turned the programming world on its head, open-source hardware  platforms that support Arduino are starting to rewrite the rules of  engagement for many embedded applications. Originally developed for the  do-it-yourself (DIY) and hobbyist communities, the Arduino open-source  electronics prototyping platform is based on flexible, easy-to-use  hardware and software. While still wildly popular among artists,  tinkerers, and other creative types, its low cost of entry, and a  rapidly-growing ecosystem of royalty-free crowd-sourced IP are winning  the loyalty of many commercial developers. In this brief survey, we will  review the hardware and software behind Arduino, and some of the  applications it is powering. 
http://www.digikey.com/Web%20Export/...ource-fig1.jpg  Figure 1: Priced at a small fraction of the cost of a traditional  CNC machine, MakerBot’s Thing-O-Matic 3D printer uses Arduino processor  boards to control its stepper motors, thermal print head and other  electromechanical elements. This product turns inexpensive ABS filament  feedstock into finished objects for prototyping or low-volume production  with dimensional tolerances approaching 0.02 mm. (Courtesy of MakerBot  Industries) 
Arduino history 
Arduino  is not so much a specific product or technology, but an ecosystem of  hardware, software, tools and human resources that have grown up around  Atmel’s megaAVR family of 8-bit MCUs. Its compact boards, C++-derived  programming language and programming environment owe much of their  versatility and ease of use to the Wiring open-source prototyping  platform created in 2003 by Hernando Barrag, a Colombian artist and  programmer. Barrag’s goal was to simplify the development of electronic  systems for hobbyists, artists, researchers, and other non-engineers  while providing easy access to all the bells, whistles and hacks that  seasoned developers need. Based on the 
ATmega1281 and 
ATmega2561 microcontrollers,  the compact, inexpensive Wiring/WiringMini processor boards have been  used to create everything from interactive toys and soccer-playing  robots to controllers for scanning electron microscopes. 
The  Arduino platform was originally developed in Italy by Massimo Banzi and  David Cuartielles in 2005 as a tool for student design projects. It  expanded on the Wiring platform’s capabilities, adding some new  programming features and a standard interconnect system, allowing the  CPU board to be connected to a variety of interchangeable add-on modules  (known as shields). 
Arduino hardware 
Like its predecessor, the Arduino open-source hardware platform is based on Atmel’s versatile 
ATmega MCU family  (Figure 2). ATmega’s modified Harvard-style AVR processor core combines  a rich instruction set with 32 general purpose working registers. All  32 registers are directly connected to the Arithmetic Logic Unit (ALU),  allowing two independent registers to be accessed in a single  instruction cycle. ATmega MCUs are available with either 4 K or 8 Kbytes  of in-system programmable flash (with read-while-write capabilities)  plus various combinations of EEPROM (256/ 512/ 512/ 1 Kbytes) and SRAM  (512/ 1 K/1 K/ 2 Kbytes). 
http://www.digikey.com/Web%20Export/...ource-fig2.jpg  Figure 2: A block diagram of Atmels’ ATmega MCU. (Courtesy of Atmel Microelectronics) 
The  AVR CPU is complimented with a powerful set of hardware functions and  I/O capabilities. Although some MCUs have a slightly different  configuration, with most devices include:
- 23 general purpose I/O lines 
 
- a 6- or 8-channel 10-bit ADC 
 
- six PWM Channels 
 
- a serial programmable USART 
 
- a byte-oriented 2-wire Serial Interface 
 
- an SPI serial port 
 
- three flexible Timer/Counters (with compare modes) 
 
- a real Time Counter with Separate Oscillator 
 
- a programmable Watchdog Timer with internal Oscillator 
 Form factors for all occasions 
The Arduino  bestiary is populated with an ever-growing number of processor boards  that have been developed to accommodate a specific form factor or  application. Most designs include a regulated power supply and a set of  connections to assess its bus signals and control-oriented I/O. One of  the most popular boards created by the Arduino team is the 
Uno  (Figure 3). The board includes a 16 MHz crystal oscillator, a USB  connection, a power jack, an ICSP header, and a reset button. Its  on-chip regulator allows it to be powered with an AC-to-DC adapter or  battery, or from a USB cable connection. 
http://www.digikey.com/Web%20Export/...ource-fig3.jpg  Figure 3: Arduino Uno board. (Courtesy of Arduino.cc) 
 
The Uno Board’s I/O female pin connectors provide access to the  MCU’s 14 digital input/output pins and six analog inputs. Six of the I/O  pins can be used as PWM outputs, a handy feature for everything from  lighting dimmers to motor controllers. These connectors also make it  possible to add auxiliary boards, known as shields, which can contain  additional electronics and I/O connections. 
The Arduino 
Nano  is a slightly more compact board based on the ATmega328 or ATmega168  that was designed specifically to be dropped onto breadboards (Figure  4a). For applications where space is at an even greater premium, the  Arduino Mini (Figure 4b) is also available. Other variants feature  breadboard areas for small circuits or on-board communication  capabilities such as Bluetooth or Ethernet (Figure 4c). One of the most  unique members of the Arduino family is the LilyPad, a board designed  specifically for use in “smart apparel” and e-textiles (Figure 4d). The  washable/wearable processor board can be sewn to fabric and connected to  similarly-mounted power supplies, sensors and actuators using  conductive thread. 
http://www.digikey.com/Web%20Export/...ource-fig4.jpg
Figure  4: Popular variants of the Arduino platform include the Nano (4a), the  Mini (4b), the Arduino Ethernet (4c), and the washable/wearable LilyPad  (4d). (Courtesy Arduino.cc) 
Most of the “official” Arduino board designs are available as 
preassembled boards, 
quick-build kits  and often as bare boards. Commercial designers (and hard-core DIY-ers)  can roll their own boards from open-source hardware CAD files and  download the Arduino software for use under an open-source license  agreement.