Cómo elegir y dónde comprar Arduino. Minirevisión de placas compatibles con Arduino de varias arquitecturas Comparación de Arduino

Ahora veremos tres plataformas para desarrollar aplicaciones integradas: Arduino Uno, RaspberryPi, las compararemos y daremos recomendaciones para elegir la adecuada para su próximo proyecto (Figura 1). En general, para los profesionales, se pueden recomendar los tres.

Estos tres modelos fueron elegidos para la comparación no por casualidad: todos son realmente asequibles, están fabricados en un factor de forma compacto y se pueden usar para crear varios dispositivos digitales. Antes de proceder a la comparación, presentaremos una breve descripción de cada uno de ellos.

El Arduino Uno ha sido considerado un elemento básico en la comunidad de radioaficionados desde hace algún tiempo (Figura 2). Ahora las placas Arduino están disponibles en varios factores de forma, con un conjunto diferente de periféricos. La mayoría de ellos están hechos en un microcontrolador Atmel de 8 bits. Y no hace mucho tiempo, se anunció la placa Arduino Due en un potente microcontrolador ARM con un núcleo Cortex-M3. Para nuestra revisión, Arduino Uno fue elegido como representante de la plataforma Arduino. Para ello se dispone de un entorno de desarrollo sencillo y de una gran base de conocimientos y desarrollos, lo que indica la posibilidad de crear aplicaciones suficientemente funcionales.

La placa Raspberry Pi es nueva en el juego: es una computadora de placa única comercializada como una solución de bajo costo para los desarrolladores integrados en ciernes (Figura 3). A pesar de la apariencia modesta y el bajo costo (alrededor de $ 35), obtienes una computadora real que puede convertirse en la base de muchos proyectos.

BeagleBone es quizás la menos conocida de las tres plataformas, pero sus capacidades merecen la atención de los creadores de aplicaciones integradas. Es una poderosa computadora Linux en un tamaño compacto que admite Android y Ubuntu (Figura 4).

Figura 4

Comparación de tres plataformas de desarrollo.

Las tres placas tienen ciertas características y un conjunto de periféricos que las hacen valiosas para los desarrolladores y diseñadores de sistemas de microcontroladores. A continuación tratamos de compararlos en términos de algunos parámetros importantes (Tabla 1). Puede ver que son las diferencias entre las placas las que hacen que cada una de ellas sea ideal para desarrollar un determinado tipo de aplicación.

Tabla 1. Comparación de características de placas Arduino Uno, BeagleBone, RaspberryPi.

Plataforma arduino uno frambuesa pi hueso Beagle
Modelo R3 Modelo B Revisión A5
Precio estimado 29.95$ 35$ 89$
dimensiones 7,5 × 5,3 cm 8,5 × 5,4 cm 8,6 × 5,3 cm
microcontrolador ATmega328 BRAZO11 BRAZO Cortex-A8
Frecuencia de reloj 16 MHz 700 MHz 700 MHz
RAM 2 KB 256 MB 256 MB
Memoria flash 32 KB tarjeta SD 4 GB (tarjeta SD)
EEPROM 1 KB - -
Tensión de alimentación 7 - 12 voltios 5 voltios 5 voltios
Mínimo
Consumo de energía
42 mA (0,3 W) 700mA (3.5W) 170 mA (0,85 W)
Líneas digitales
E/S
14 8 66
Entradas analógicas 6
(ADC de 10 bits)
- 7
(ADC de 12 bits)
Canales PWM 6 - 8
Interfaz TWI/I2C 2 1 2
interfaz SPI 1 1 1
Interfaz UART 1 1 5
Instrumentos
desarrollo
IDE de Arduino inactivo, cero,
Chirrido/Linux
Rasguño de pitón,
Chirrido, Cloud9/Linux
Puerto Ethernet - 10/100 10/100
Interfaz maestra USB - 2 USB2.0 USB 2.0
Salida de vídeo - HDMI, compuesto -
Salida de audio - HDMI, analógico cosa análoga

Arduino y Raspberry Pi son placas económicas de menos de $40. El BeagleBone tiene un precio de casi tres Arduino Uno. Sin embargo, el Arduino es 40 veces más lento y tiene 128.000 veces menos memoria RAM que los otros dos. Ya en esta etapa, se pueden ver diferencias importantes. Arduino y Raspberry Pi son placas económicas, mientras que Raspberry Pi y BeagleBone son mucho más potentes.

Parece que la Raspberry Pi parece la solución óptima en este momento, pero esto no es del todo cierto: para el trabajo, deberá comprar por separado una tarjeta de memoria SD, que cuesta otros $ 5 - 10 al costo de la placa. Además, a pesar de la misma velocidad de reloj, BeagleBone funciona el doble de rápido que Raspberry Pi. Y por paradójico que parezca, Arduino es la mejor opción, al menos para los principiantes. La razón principal de esto es el sistema operativo Linux que ejecuta las placas Raspberry Pi y BeagleBone. Este software "elegante" convierte las placas en pequeñas computadoras que pueden ejecutar múltiples programas al mismo tiempo y pueden programarse en una variedad de idiomas. El desarrollo de aplicaciones en Arduino es muy sencillo debido a la falta de multitarea y programación en lenguaje C++ de bajo nivel.

Tenga en cuenta una característica interesante de Raspberry Pi y BeagleBone: la capacidad de ejecutar aplicaciones de software desde una tarjeta de memoria (tarjeta SD para Raspberry Pi, microSD para BeagleBone). Esto significa que puede tener diferentes configuraciones del sistema operativo, aplicaciones, compilaciones e imágenes del sistema operativo en diferentes tarjetas de memoria, y la elección de uno u otro proyecto se realiza simplemente reemplazando la tarjeta de memoria. De la misma forma, puedes cambiar el sistema operativo.

Elegir una plataforma para el desarrollo

Para principiantes, recomendamos el Arduino. Hoy en día, la comunidad de Arduino es una gran cantidad de usuarios, una gran cantidad de materiales educativos, soluciones listas para usar y proyectos que puede usar en sus aplicaciones. Además, Arduino ofrece la forma más fácil de interactuar con periféricos externos.

La plataforma Arduino se diseñó originalmente para proporcionar una forma sencilla de conectar varios sensores y actuadores al microcontrolador sin circuitos externos adicionales, por lo que no necesita conocimientos profundos en electrónica para desarrollar aplicaciones y dispositivos simples. Si no has usado un Arduino antes, vale la pena conseguir uno y probarlo. Esta será una gran experiencia que será útil al momento de crear proyectos serios y complejos.

Para dispositivos compactos, recomendamos la plataforma Arduino. Los tres modelos de placa de desarrollo probados son de tamaño pequeño. El único punto negativo es inherente a la Raspberry Pi: la tarjeta de memoria SD instalada en la ranura hace que la placa sea más grande que el resto de los participantes de la prueba (Figura 8).

Como señalamos anteriormente, existen muchas variaciones de placas Arduino (Figura 5), ​​pero todas tienen dos cosas en común: utilizan un microcontrolador Atmel específico y un cargador de arranque Arduino que implementa las funciones básicas de la placa. Para dispositivos compactos (quizás que no requieran una PCB), puede comprar este microcontrolador económico y programar el cargador de arranque en él usando cualquier programador de microcontrolador AVR.

Para desarrollar aplicaciones que requieran conexión a Internet, recomendamos BeagleBone o Raspberry Pi. Ambos dispositivos ejecutan Linux y tienen puertos Ethernet y USB (Figura 6). Usando USB, puede conectar módulos de transmisión de datos inalámbricos y, por lo tanto, realizar las funciones de transmisión de datos inalámbricos y conexión a Internet (Figura 7). Además, el sistema operativo Linux tiene muchos componentes de software incorporados que brindan funciones de red avanzadas.

También es posible implementar aplicaciones habilitadas para Ethernet en la plataforma Arduino usando placas de expansión llamadas Shields, pero la funcionalidad de red de tales aplicaciones será muy limitada. La compra de tarjetas de expansión separadas también requerirá costos financieros adicionales.

Para aplicaciones y sistemas que interactúan con sensores y actuadores externos, recomendamos Arduino o BeagleBoard. Cualquier versión de la plataforma de hardware Arduino implica una simple conexión de sensores externos e interacción con ellos. Para los radioaficionados, están disponibles varias opciones para placas con un voltaje de alimentación de 3,3 V y 5 V, lo que simplifica la conexión de periféricos externos. La placa BeagleBone se alimenta a 3,3 V, por lo que si conecta algunos tipos de dispositivos externos, debe usar resistencias adicionales o circuitos de coincidencia de nivel lógico. Tanto Arduino como BeagleBone tienen una interfaz convertidora de analógico a digital (la resolución del ADC integrado en el microcontrolador de la placa BeagleBoard es ligeramente superior), lo que indica la posibilidad de conectar varios sensores analógicos.

Dicho esto, es importante tener en cuenta que muchos sensores modernos están equipados con interfaces digitales I 2 C o SPI. Las tres placas admiten este tipo de interfaz serial y es muy fácil implementar la interacción con ella.

Para dispositivos alimentados por batería, recomendamos el Arduino. Esta decisión se debe a que Arduino tiene el consumo de energía más bajo, sin embargo, en términos de la relación de potencia de cómputo por vatio, BeagleBoard es un claro líder. Sin embargo, la ventaja de Arduino es que funciona en una amplia gama de voltajes de suministro. Por lo tanto, se pueden utilizar varios tipos de baterías como fuente de alimentación para la placa, el microcontrolador permanece operativo incluso cuando las baterías han agotado su recurso.

Para aplicaciones GUI, se recomienda Raspberry Pi. La computadora de placa única Raspberry Pi realmente entra en una categoría propia, ya que la placa tiene una salida HDMI (Figura 8). Esto significa que puede conectar un mouse y un teclado a la placa y conectar la placa directamente a su televisor. Por lo tanto, obtiene una computadora completamente funcional, que es ideal para usar en terminales POS y quioscos. Por diversión, durante las pruebas, instalamos las herramientas de software de desarrollo de Arduino en la Raspberry Pi, escribimos un pequeño programa y programamos la placa Arduino a través de la interfaz de Raspberry Pi.

Conclusión

Arduino es una plataforma bastante funcional y flexible para desarrollar aplicaciones integradas con grandes oportunidades para interactuar con el mundo exterior. Es excelente para aprender sobre microcontroladores y puede servir como base para pequeños proyectos. Raspberry Pi es la mejor opción para aplicaciones que requieren una pantalla, una interfaz gráfica de usuario y una conexión a Internet.

La plataforma BeagleBone combina a la perfección la flexibilidad de Arduino, el rendimiento del procesador de la placa Rapberry Pi y el sistema operativo Linux (y, de hecho, el rendimiento es superior al de Raspberry Pi). Con amplias E/S, el BeagleBone proporciona una fácil conectividad de red y le permite implementar un servidor web.

Arduino es la plataforma de robótica educativa y de pasatiempos más popular. ¿Qué placa o kit Arduino debería comprar un principiante? ¿Cómo comprar Arduino barato? ¿En qué se diferencian los análogos de Arduino de la placa original? Las respuestas están en nuestra revisión.

arduino o lo que sea-duino

A través de la apertura arduino, su diseño es conocido y puede modificarse libremente. Por lo tanto, cualquier fabricante de tableros puede producir tablero analógico arduino, realizar cambios en la propia placa, sin olvidar la configuración gratuita de kits.


Dado que Arduino es la marca de un fabricante, los análogos tienen otros nombres, pero generalmente en consonancia con Arduino: Freduino, Freeduino, DCcduino, Xdruino, Funduino, robótica y muchos otros. Además, es posible que la marca no se indique en absoluto, pero habrá una inscripción como para arduino. Los Arduinos originales se fabrican en Italia, la mayoría de los análogos se fabrican en China. También hay desarrollos rusos.

Visualmente, la mayoría de estas placas se ven iguales (el Arduino tiene el logo de una empresa) e incluso tienen el mismo color azul (hay excepciones, pero no muchas, Funduino, por ejemplo, es rojo). Además, las placas analógicas Arduino suelen tener los mismos prefijos en su nombre que el propio Arduino, por ejemplo, DCcduino UNO corresponde a Arduino UNO (lo que es UNO, a continuación).

Análogo sin nombre de Arduino UNO

Los análogos generalmente no son inferiores en calidad, pero se benefician enormemente en precio (más sobre eso a continuación).

Todas las instrucciones, todos los desarrollos metodológicos, lecciones, etc., centrados en Arduino, son totalmente aptos para análogos. Por lo tanto, si la imagen no es nada para ti, ¡entonces siéntete libre de tomar otros duins!

Kit de inicio Arduino

El fabricante recomienda que comience a aprender Arduino con un conjunto Kit de inicio Arduino. Este kit contiene la placa y otros componentes electrónicos necesarios para comenzar con Arduino: LED, resistencias, servo, motor, botón, LCD, piezo, sensores y más.

Para comprar un Arduino Starter Kit de un fabricante oficial, tendrás que pagar unos 80 euros.

Los análogos ganan significativamente en precio con una configuración similar. Los precios más bajos para ellos en las tiendas chinas en línea. Al comparar los precios de los conjuntos, por supuesto, debe tener en cuenta su composición. Entonces, Kit de inicio para Arduino con placa DCcduino en el sitio web de AliExpress cuesta un poco menos de $ 34 - el equipo es similar al original. Equipo un poco más pequeño Kit de inicio para Arduino con placa Robotale en el sitio web de DealExtreme cuesta $28. El envío a Rusia es gratuito en ambos sitios.

Casi cualquiera de estos kits contiene el mínimo necesario para principiantes y es adecuado para dominar los nuestros (los kits pequeños a menudo no tienen fotorresistencia).

Kit de inicio para Arduino

Yo mismo tengo una historia interesante. Pedí un kit de este tipo a DX; como puede ver en la foto, hay un Arduino no original, ¡pero vino un Arduino completamente italiano! Un poco, pero agradable.

Comprar un robot Arduino listo para usar como comienzo para aprender

Ya hemos hablado de comprar robots listos para usar como una forma de familiarizarse con Arduino por primera vez. Hay muchos kits basados ​​en Arduino en el mercado. Para los niños más pequeños, esta forma de conocer Arduino es preferible, ya que es un juguete listo para usar con el que puedes jugar y luego desarmar y usar la placa Arduino y otros componentes en el entrenamiento.

Por supuesto, es posible que el robot terminado no contenga todas las piezas necesarias, pero todo lo que falta se puede comprar por separado. Los componentes simples de bricolaje, como LED y resistencias, se pueden comprar en cualquier tienda de repuestos de radio.

En la foto se ve el popular robot Arduino, que cuesta menos de $100.

coche controlado por bluetooth

Elegir una modificación de Arduino para un principiante

El sitio web oficial del fabricante Arduino presenta 20 modificaciones de la placa Arduino. Entre ellos se encuentran Arduino Uno, Arduino Due, Arduino Leonardo y otros.

Arduino UNO y análogos

Es el más popular, generalmente incluido en los kits descritos anteriormente y, quizás, se le puede llamar placa Arduino estándar. Esta es una de las placas Arduino más baratas.

En la web oficial de Arduino UNO se puede comprar por 20 euros + gastos de envío. En las grandes tiendas en línea rusas, incluidos los distribuidores oficiales, se vende por 1150-1300 rublos. Normalmente en Moscú y San Petersburgo puedes recogerlo por autoenvío (recomendamos tiendas online y DESSY), pero en otras regiones también tendrás que pagar el envío. Resulta caro. Aunque en ocasiones puedes encontrar tiendas con precios bajos en Rusia. La tienda en línea ROBstore ofrece precios bajos y entrega rápida. El precio seguirá siendo más alto que en China, pero será mucho menos esperando el paquete.

El Arduino UNO original también se puede comprar en tiendas chinas, pero es necesario mirar detenidamente las descripciones y la foto (esto no siempre es claramente visible en los textos de descripción). Sin embargo, las descripciones a veces son erróneas (como escribí anteriormente). El precio, por supuesto, es más bajo que en las tiendas rusas.

Como en el caso de los kit kits, puedes comprar análogos de Arduino a muy bajo precio. Por ejemplo, un análogo casi idéntico de DCcduino UNO en dx.com cuesta menos de $ 10, y en aliexpress en general $ 5.50.

DCcduino en AliExpress por $5.5

Otras modificaciones de la placa Arduino

Veamos cuáles de los tableros son convenientes para que un principiante se familiarice con los conceptos básicos de la electrónica.

Vamos por el método de eliminación.

Inmediatamente rechazamos 4 modificaciones del tablero. Hoja de lirio- están destinados a "textiles electrónicos" - coser LED en ropa, etc. Más adelante escribiremos sobre ellos.

Arduino Lilly Pad

Si no planea hacer robots listos para usar, es decir, a menudo cargará programas en la placa, es mucho más conveniente usar placas con un puerto USB; es más conveniente conectarlos a una computadora.

Los puertos USB NO tienen placa: Arduino Mini, Pro, Pro Mini.

Si desea conocer los conceptos básicos de la electrónica, las placas "elegantes" no son muy adecuadas para usted: Esplora, BT, Ethernet, Tre, Yun, Robot.

Permanecer UNO, Leonardo, Debido, Micro, Mega ADK, Mega 2560, Nano, Fio.

Si se insertan Shields para ampliar la placa (en su forma se ejecutan drivers de motores, placas con conectores adicionales, etc.), hay que tener en cuenta que tienen un formato estándar que Micro y Fio no tienen.

Debo decir que el Arduino Nano también tiene un tamaño no estándar, pero es fácil de insertar en la placa de pruebas: sus patas están ubicadas en la parte inferior de la placa.

Comparemos los precios de las placas restantes en Arduino Store:

  • UNO - 20 euros,
  • Leonardo - 18 euros,
  • Debido - 36 euros,
  • Mega 2560 - 29 euros,
  • Mega ADK - 44 euros,
  • Nano - 33 euros.

En las tiendas chinas mencionadas anteriormente, puede encontrar análogos a un precio significativamente más bajo.

Arduino a menudo se conoce como una computadora de placa única. Y es con la elección de una computadora que un principiante es mejor en comparación con la elección de una placa Arduino.

Las tarifas son diferentes:

  • microcontrolador y la frecuencia de su trabajo(ATmega328 - 16 MHz, ATmega32u4 - 16 MHz, ATmega2560 - 16 MHz y otros),
  • voltaje de entrada y salida a la placa,
  • el número de entradas y salidas analógicas,
  • la cantidad de puertos digitales, incluidos los que admiten PWM,
  • cantidad de memoria flash.

La cantidad de puertos en la placa determina la cantidad máxima de dispositivos conectados a ella (sensores, motores, etc.), y la cantidad de memoria flash limita la duración del programa cargado en ella.

Analógico Arduino Leonardo

Breves características de algunos tableros:

: microcontrolador ATmega328, 14 puertos digitales, incl. 6 con PWM, 6 entradas analógicas, memoria Flash de 32 KB, puerto USB tipo B.

Arduino debido: microcontrolador AT91SAM3X8E, 54 puertos digitales, incl. 12 con PWM, 12 entradas analógicas y 2 salidas analógicas, memoria Flash de 512 KB, 2 puertos microUSB.

ArduinoLeonardo: microcontrolador ATmega32u4, 20 puertos digitales, incl. 7 con PWM, 12 entradas analógicas, memoria Flash de 32 KB, puerto MicroUSB.

Todos los precios son a partir de la fecha de publicación.

Hay muchas variedades de placas Arudino: Nano, Mini, Uno, Leonardo, Mega, Lilypad... Es difícil para un principiante comprender su diversidad. En este artículo hablaré sobre los tipos de placas Arduino. Al final del artículo hay enlaces a vendedores que he verificado donde puedes comprar una placa Arduino. Haga clic en para saltar rápidamente a la tabla con enlaces.

Las principales diferencias entre las placas Arduino:

Arduino difieren entre sí:

  • Talla
  • número de pines
  • tamaño de la memoria

Tamaño del tablero, afecta principalmente a la conveniencia de trabajar con él. La placa más común: Arduino Uno (y su versión actualizada de Arduino Leonardo) tienen un tamaño aproximado de 6 × 5 cm, lo que le permite prescindir de una lupa al crear un prototipo en una placa de prueba y obtener dispositivos de trabajo bastante compactos. El Arduino Nano es muy compacto. Su tamaño es de solo 4,4 × 1,9 cm, mientras que su funcionalidad no es diferente de las tablas grandes. El Arduino Nano también se adhiere bien a la protoboard gracias a los pines macho. En un intento por hacer que las placas sean aún más pequeñas, las versiones de Arduino Micro (un clon de Arduino Uno lanzado en una placa de 4,8 x 1,77 cm) y Arduino Mini (falta la configuración mínima; no hay un conector USB para alimentar y cargar la firmware, el firmware se carga a través de un adaptador especial. Dato curioso: arduino mini es mucho más pequeño que micro, mientras que micro es casi del mismo tamaño que nano. Entonces, el nombre de los modelos de placa es solo los nombres de los modelos de placa y no Refleja el tamaño real. También hay un enorme Arduino Mega de 10,2 x 5,3 centímetros. Ella recibió ese tamaño por una razón. Hay hasta 70 pines en el tablero.

Número de pines determina la cantidad de periféricos externos que puede conectar a la placa: LED, servos, varios sensores, módulos, botones y mucho más. Las tarjetas tienen salidas digitales y analógicas. Las salidas digitales sólo pueden tomar 2 valores: ALTO y BAJO. ALTO corresponde a la presencia de corriente en la salida, BAJO a la ausencia. Querían encender el LED: transfirieron la salida al estado ALTO. Apareció un voltaje en la salida y el LED se iluminó. Emitido BAJO y el LED se apagó. Las salidas digitales también pueden leer valores, de manera similar, solo 2 estados. Si la salida desde el exterior (por ejemplo, desde un botón) se alimenta con voltaje ~ + 5V, entonces el controlador considera el valor ALTO. El voltaje inferior a 5 voltios se detectará como BAJO.
Las salidas analógicas le permiten leer el valor del voltaje aplicado en el rango de 0 a 1024. Donde 0 es 0 voltios, 1024 es 5 voltios. El rango de medición se puede cambiar aplicando un voltaje de referencia al pin AREF dedicado. En este caso, cualquier salida analógica se puede utilizar como digital. Pero lo digital no se puede usar como analógico.

Las salidas digitales también pueden admitir: un modo especial de operación para controlar el brillo del LED o la velocidad del motor. Sin embargo, aquí todo es simple: nano, mini y uno tienen seis salidas con soporte PWM. Leonardo y micro están equipados con siete pines PWM, y solo el gigantesco Arduino Mega 2560 toma la delantera con catorce pines PWM.

Memoria, a primera vista, un parámetro muy importante. Sin embargo, no trate la placa como una computadora. No necesita mucha memoria operativa e incluso más permanente. No entraré en detalles sobre esto. Porque el Arduino Nano “más pobre” en este sentido tiene solo 32 kilobytes de memoria permanente y 2 kilobytes de RAM, pero para cuando el programa que escribiste para el microcontrolador ya no quepa en estos 32 kilobytes de memoria permanente, ya estarás bien versado en todo por su cuenta, y no necesitará este artículo. En serio: 32 kilobytes es solo una memoria enorme para un programa de microcontrolador.

La cantidad de memoria no volátil, un parámetro más interesante. La memoria no volátil, como su nombre lo indica, almacena datos independientemente de la presencia de energía. En este caso, los valores de las variables en su programa se almacenan en la RAM, que se borra cuando se reinicia el controlador. Además de la memoria no volátil para almacenar el programa en sí, se asigna un área de memoria separada (también conocida como EEPROM), que le permite guardar los valores de las variables directamente desde el programa del controlador en una celda especial. Luego, después de reiniciar, el dispositivo podrá restaurar el estado en el que estaba antes de que se apagara. La mayoría de los controladores le permiten almacenar solo 1 kilobyte de datos. Además del pequeño volumen, también hay un límite en el número de operaciones de escritura. Un total de 10.000 veces puede escribir datos en una celda (puede leer datos cualquier número de veces). 10.000 - a primera vista, no tan poco. El registro se realiza en celdas de 1 byte. En total, tenemos 1.000 celdas. Por ejemplo, si sondea un determinado sensor solo una vez por minuto y almacena su valor en la memoria y cada vez en una nueva celda, el dispositivo funcionará (((100 000 * 1000) / 60) / 24) / 365 = 190 años. Sin embargo, la mayoría de las veces tiene que escribir datos en una celda (por ejemplo, la cantidad de segundos). Y luego el recurso ya se reduce a 2,5 meses de funcionamiento continuo, y esto es para grabar una vez por minuto. Si surge la tarea de actualizar el valor una vez por segundo, en solo 27 horas se dañará la EEPROM. Por lo tanto, la memoria no volátil se utiliza para almacenar configuraciones y otros valores que rara vez se actualizan. Y es más conveniente escribir las lecturas del sensor o un registro de operación del dispositivo en una tarjeta SD (por cierto, tengo que conectar una tarjeta SD a Arduino).

elige un tablero

La placa más popular es Arduino Uno. Tiene sentido comparar todos los demás tableros con él. Este es un tablero pequeño. Hay 14 entradas/salidas digitales y 6 analógicas a lo largo de los bordes de la placa.

La placa de 6,9 ​​x 5,3 cm es la más adecuada para el prototipado rápido. Los conectores no demasiado grandes y convenientes para conectar los cables de la placa de prueba lo hacen muy conveniente para los principiantes. Los llamados escudos (Shield): en el 99% de los casos, se crearon específicamente para su instalación en la placa Arduino Uno. Ahora otra placa, Arduino Leonardo, que es una continuación ideológica de UNO, está ganando distribución. Tiene pequeñas diferencias en la asignación de algunos pines especiales y se conecta a la computadora con un cable micro USB mucho más compacto. La mayoría de los escudos UNO también se ajustan al Leonardo, pero puede haber algunas sorpresas desagradables debido a la inconsistencia de algunos de los pines.

Esta es realmente la mejor opción para la placa Arduino. Si está comprando una placa por primera vez y solo quiere probar suerte, su elección es Arduino Uno o Leonardo. La mayoría de los kits listos para usar, por cierto, por esta razón, están equipados con la placa UNO. Le contaré más sobre la selección de un conjunto confeccionado al final del artículo.

Una variación bastante interesante es el Arduino Nano. Esta placa mide solo 4,4 cm x 1,9 cm y es totalmente compatible con Leonardo en términos de funcionalidad. Incluso se venden adaptadores especiales para conectar escudos de UNO a Nano. Las placas son idénticas en cuanto al número de pines, la cantidad de memoria y la velocidad. Nano, gracias a su tamaño en miniatura, es cómodo de usar en un dispositivo terminado para ahorrar espacio en un estuche estrecho. Arduino Nano está equipado con pines en lugar de agujeros para conectar cables de conexión. Esto se suma a la molestia de crear prototipos (la placa debe instalarse en una placa de prueba y ocupa espacio, pero ayuda cuando se transfiere el prototipo a un dispositivo real. Simplemente puede soldar los cables a los pines del controlador.

Arduino Mega es la placa más grande de la familia Arduino. Más memoria, gran cantidad de pines (¡70!). Esta placa está diseñada para dispositivos complejos a los que planea conectar una variedad de periféricos. De hecho, el nombre correcto de la placa es Arduino Mega 2560. Pero dado que Arduino Mega (sin los números en el nombre) ahora se considera obsoleto, es prácticamente imposible comprarlo y, para abreviar, la placa simplemente se llama Arduino Mega. . Pero en realidad, la placa resulta inútil como cuando se crea un prototipo. así como en el dispositivo terminado. En el prototipo, su gran tamaño interfiere sobre todo, y para el dispositivo terminado puede ser útil, tal vez, solo la cantidad de pines, pero puede obtener fácilmente pines adicionales en cualquier otra placa usando o, si no hay suficiente PWM alfileres, puedes usar. La única ventaja real de Mega sobre otras placas es la cantidad de memoria para cargar el programa. Una vez necesitaba mostrar una gran cantidad de información gráfica en la línea de ejecución y el programa ocupaba casi 100Kb. El proyecto duraba un par de días y no quería reescribir el algoritmo para almacenar información en una tarjeta SD. Aquí es donde Mega vino a mi rescate.

Dónde comprar una placa Arduino

Arduino fue desarrollado originalmente por ingenieros italianos. El autor de la idea es Massimo Banzi. Fue la placa fabricada en Italia la que se consideró el Arduino original. Más tarde, se produjo una división en el equipo de desarrollo y las placas originales se producen tanto en Italia como en EE. UU. Sin embargo, inicialmente los dibujos de Arduino comenzaron a distribuirse bajo una licencia libre. Esto significa que cualquiera puede producir tableros que repitan exactamente el diseño del original. Los derechos de autor cubren solo el propio nombre de Arduino. Es por eso que hay una gran cantidad de modificaciones y versiones alternativas de la placa de terceros. Por supuesto, China, como verdadero centro de producción de productos electrónicos, actualmente ofrece muchas placas compatibles con arduino. Personalmente, recomiendo no pagar de más miles de rublos por el original, sino prestar atención a una copia del tablero a un precio asequible. En serio, la placa Arduino Mini más barata, la original de fábrica en Italia, cuesta 1400 rublos en Rusia, mientras que el clon chino se puede pedir por 2 dólares con envío gratis. Es más conveniente comprar tablas en la popular plataforma en línea Aliexpress. Al final del artículo, he recopilado para usted enlaces para ordenar tableros y varios sensores que yo mismo ordené y me aseguré de su calidad. También allí encontrará enlaces para pedir kits listos para comenzar a explorar el mundo de Arduino. Si por alguna razón tiene la intención de comprar una placa original, vaya al sitio web de Amperka. Definitivamente hay tableros originales.

Salir

Si eres un principiante, entonces compra el Arduino Leonardo sin dudarlo.
Si ya tiene algunos prototipos y planea convertirlos en dispositivos terminados, eche un vistazo al Arduino Nano.
Si te has estado rascando la cabeza, pero aún no has descubierto cómo meter todo el relleno del dispositivo en una caja estrecha, usa el ultracompacto Arduino Mini.

Una pequeña tabla comparativa de las principales características:

Pagartamaño cmNúmero de pines (digital/analógico)La cantidad de memoria permanente, KBLa cantidad de RAM, KBLa cantidad de memoria no volátil para almacenar valores de variables, KBFrecuencia de reloj, MHz
4,4 × 1,914 / 8 30 2 1 16
arduino mini1,8 × 3,314 / 8 16 1 0,5 16
6,9 × 5,314 / 6 32 2 1 16
6,6 × 5,220 / 12 32 2,5 1 16
11×5.254 / 16 128 8 4 16

placas arduino

NombreEstado

Todos los que usan microcontroladores Arduino están familiarizados con el tema del ahorro de primera mano. Sin embargo, comprar placas chinas de fabricantes desconocidos con la esperanza de que al menos algunas funcionen como se anuncia no es la mejor estrategia. Pero entre las muchas piezas de hierro inútiles, también puede encontrar un digno reemplazo barato para arduino stm32, que ya se ha hecho famoso en sus círculos.

Veamos si esta placa vale hasta $ 10 con la entrega de su popularidad y lo que puede brindarle al usuario, en comparación con la versión habitual de Arduino PRO. Para ello, analizaremos ambos microcontroladores y haremos una lista de todas sus ventajas y desventajas para que puedas responder por ti mismo si vale la pena gastar dinero en arduino stm32 ide.

Comparemos las dos placas por sus parámetros técnicos:

Especificaciones STM32F103C8T6 arduino nano
Frecuencia del controlador, MHz 72 16
Memoria de programa, KB 64 32
comida 3.3 5
RAM, KB 20 2
USB 2.0 No
DMA No
PODER No
RTC No
UART 3 1
Firmware a través de USB No
Precio, $ 2.1 1.8

Como podemos ver, en muchos aspectos, arduino pierde frente a stm32. A continuación, intentaremos comparar tableros desde diferentes ángulos.

Pros y contras de los microcontroladores Arduino y STM32

Comencemos con las ventajas de un favorito prematuro: el propio arduino. Y el más importante de ellos es conocido por todos los que trabajaron con este chip y sus contrapartes: su propio ecosistema. Puede encontrar respuestas a todas sus preguntas en Internet, porque la base de conocimientos y la cantidad de usuarios de microcontroladores, incluso en el segmento CIS, es increíble. Y esto significa que no tiene que buscar instrucciones en inglés, lo que no se puede decir sobre stm32f103c8t6 arduino. Una gran cantidad de usuarios también implica una amplia funcionalidad de software, de la cual los propios fabricantes solo proporcionan una parte.

La base de fans crea docenas de bibliotecas todos los días, para que puedas hacer realidad cualquiera de tus ideas. Algunas soluciones de circuito con el microcontrolador stm8s001j3 pueden no complacer a los principiantes en este asunto, mientras que arduino intenta complacer al nuevo usuario tanto como sea posible y no presenta ninguna dificultad.

De aquí emergen escudos asequibles, facilidad de uso, de la que no pueden presumir los microcontroladores stm, y programación sencilla bajo Atmel, sin necesidad de aprender todas las sutilezas del lenguaje en la práctica. Pues los más avanzados agradecerán la EEPROM que viene con la caja, de la que no puede presumir el microcontrolador stm32.

Sin embargo, como en otros lugares, tiene sus inconvenientes:

  1. El bajo umbral de entrada implica una gran cantidad de curvas y bibliotecas mal afinadas, trabajando casi en sus últimas piernas. Habiendo tropezado con dicho software un par de veces y depurándolo durante un par de días, decide que es más fácil escribir el suyo propio.
  2. La siguiente ventaja de stm32 arduino no proporciona una depuración normal, por lo que la búsqueda de errores en las mismas bibliotecas torcidas lleva tanto tiempo.
  3. El rendimiento normal en Atmega es un mito y, de hecho, deberá esquivar y rechazar muchas características del producto para que funcione sin retrasos. Tampoco se encuentran programadores normales, y los que se pueden conectar consumen demasiados recursos. Debido a esto, las artesanías de Arduino son famosas por su interfaz torcida y retrasada con un largo tiempo de respuesta, si estamos hablando de algo más complicado que un diablo electrónico o un diseño de un microcontrolador y un sensor de movimiento.
  4. Muchos productos torcidos y francamente inútiles en estos tableros, especialmente de los chinos, solo empeoran la imagen de Arduino.
  5. Por supuesto, no puedes encontrar libros normales sobre microcontroladores stm32, pero arduino no proporciona mucha información profesional, además de foros donde los propios usuarios están involucrados en la depuración.
  6. Y el entorno de desarrollo de software requiere un rendimiento simplemente increíble, incomparable con cualquier cosa en el mercado. Además, no está del todo claro adónde van todos los recursos consumidos. Y en consecuencia, el culpable es la optimización aterradora.

Por otro lado, el usuario obtiene arduino stm32f103 y arduino stm8, un controlador de alto rendimiento que simplifica la transición del microcontrolador stm32 al microcontrolador milandr y muchos periféricos adicionales.

El diseño de la placa se ve facilitado en gran medida por el libre movimiento de las piernas, el entorno de desarrollo de stock es una herramienta bastante poderosa y la depuración está diseñada desde el principio para funcionar sin problemas incluso en entornos extranjeros. Se le proporcionan gráficos y puntos coloridos, sin mencionar la información textual. Fácil portabilidad de código, la capacidad de ejecutar controladores individuales a 41 Mbps y puertos USB en casi todas partes. Todo esto puede atraer fácilmente a los desarrolladores más avanzados, pero también deberían familiarizarse con una serie de desventajas:

  1. Alto umbral de entrada, se requiere una buena base para un uso normal.
  2. Las bibliotecas también están presentes, pero la mayoría de ellas están desactualizadas o hechas por cada uno personalmente para sí mismos. Es más fácil crear el tuyo propio. Pero si recuerda los problemas de Arduino, es probable que ya sepa cómo hacerlo.
  3. Espacios más bajos y semántica generalmente fea en comparación con las funciones simples de la competencia.
  4. C99 aún está lejos de C++, e inmediatamente sentirás todas las dificultades de la transición. Sin embargo, muchos argumentan que después de un tiempo, por el contrario, están contentos con ese matiz.
  5. En general, el bajo costo de las placas en comparación con Arduino.

Oportunidades para mejorar la "usabilidad" de STM32 al nivel de Arduino

Sin embargo, no todo es tan malo como puede parecer. Inicialmente, las placas STM32 se pueden programar en el entorno de desarrollo de Arduino, aunque esta no es la mejor solución. Cabe recordar que de esta manera recortas funcionalidad, usas muchas muletas y te pegas un tiro en la rodilla.

Sin embargo, durante la transición, este es un matiz bastante útil que le permite dominar todos los encantos sin problemas. La semántica de C99 puede no ser de su agrado durante las primeras semanas, por lo tanto es mejor buscar un traductor, porque el entorno Arduino destruye por completo el punto de comprar otro microcontrolador.

Depuración del microcontrolador STM32

Como ya se mencionó, la depuración de microcontroladores es digna de diatribas individuales y respuestas entusiastas. Nada más sacarlo de la caja, obtiene un dispositivo que se puede depurar libremente en cualquier entorno, las variables se muestran en la consola y los gráficos de información convenientes le permiten detectar visualmente un error. Esto es especialmente conveniente cuando la cantidad de código simplemente no le permite recorrerlo paso a paso.

Después de cambiar a STM32, eventualmente se olvidará por completo de la salida de datos a través de la consola, porque vendrán soluciones mucho más razonables y prácticas para reemplazar estas plantillas.

En el siguiente material, explicaremos paso a paso cómo utilizar el IDE de Arduino para la placa STM32.

Ya ha habido varios artículos en el blog temático sobre cómo elegir el primer microcontrolador y comenzar a trabajar con él. No menos interesantes fueron los comentarios a tales artículos. Uno de los pensamientos que se ha planteado allí varias veces es que no todos los que tienen interés en los MCU provienen de los transistores. Algunos (Dios no lo quiera, más) les llegan desde el lado de la programación (aplicada). No es razonable recomendar a esas personas que tomen un soldador, ya tienen cosas que pueden "soldar". Así llegamos a la palabra "Arduino", que muchos ya han escuchado. Entre los experimentados con soldadores hay - Arduino es una bufanda en el AVR para los perezosos. ¿Es tan? Este artículo es un intento de mostrar claramente que Arduino no se trata de AVR ni de pereza, Arduino es una plataforma electrónico-mecánica independiente de la arquitectura de componentes compatibles, en términos de importancia (relativa) no menos importante que (en un momento) IBM S/ 360, PC IBM o USB.

AVR está más vivo que todos los vivos

Habiendo llegado a la segunda parte de la revisión, el lector verá que las placas compatibles con Arduino en los potentes controladores modernos de 32 bits no cuestan mucho más, y a veces incluso menos, que en la arquitectura AVR original. Y sin embargo, primero AVR. ¿Por qué? Porque los maestros dicen que tarde o temprano querrás armar tu dispositivo. Y les creo. Creo que algún día tomaré un ATtiny de 8 patas en un paquete DIP, lo pegaré en una caja de cartón y encenderé el soldador. Y sabré qué hacer a continuación; después de todo, ya hice un prototipo de todo en el Arduino AVR.
Arduino Duemilanove
Esta es la penúltima versión del Arduino oficial, y la mayoría de las placas compatibles que hay actualmente en el mercado están basadas en circuitos Duemilanove. Incluye el microcontrolador ATmega 328 (en la última década (léase: antes de 2010) también se instaló el ATmega 168) y el convertidor USB a serie FTDI FT232RL. $25

arduino uno
La versión actual del Arduino oficial. Si bien hay pocas implementaciones alternativas en el mercado, pero están comenzando a aparecer, se incluye una en esta revisión. La principal diferencia con Duemilanove es el reemplazo del popular y, por lo tanto, económico chip FT232RL con ... ATmega8U2. Sí, sí, en realidad hay dos microcontroladores AVR en Uno y uno con hardware USB. ¿Por qué dos, por qué no poner uno? Una cuestión de compatibilidad, amabilidad para principiantes y para desarrollos propios. Al parecer, los microcontroladores con hardware USB solo están disponibles en carcasas SMD, por lo que no será sencillo utilizar uno en tus desarrollos o sustituir uno averiado en la placa. Por lo tanto, es mejor usar el viejo ATmega328 en un conector DIP y dejar el ATmega8U2 para el futuro. A juzgar por la confianza con la que Uno está ganando terreno, para el futuro cercano. $30
Iteaduino
Hay muchos clones del Arduino Duemilanove que en realidad lo copian uno a uno. Pero esperamos progreso y mejora de la competencia, y no una simple “estafa” permitida por una licencia abierta. Iteaduino es un buen ejemplo de desarrolladores que han "hecho su tarea". Muchos componentes electrónicos requieren una fuente de alimentación de 3,3 V, lo que requiere un emparejamiento de nivel adicional cuando se trabaja con un Arduino clásico. Iteaduino, por otro lado, te permite alimentar la placa con 3.3v o 5v a elegir (con un interruptor en la placa). La "sal" de usar Arduino está, por supuesto, en la conexión de dispositivos de E / S externos, y para dispositivos simples, el estándar de interfaz GVS (Ground-Voltage-Signal) se ha desarrollado de facto. Para una conexión agradable (sin una red de cables) de tales dispositivos al Arduino clásico, deberá comprar un escudo, y en Iteaduino hay conectores correspondientes directamente en el tablero. Además, se ha mejorado la ergonomía: en el Arduino original, cuando el escudo está encendido, no se puede acceder al botón Reset (por eso muchos escudos lo duplican) y el LED es difícil de ver, mientras que en Iteaduino están colocados. en el borde del tablero con accesibilidad. $25

Seeeduino Stalker v2
Gracias al estándar Arduino, puede crear no solo tableros de uso general, sino también tableros especializados que aún se pueden expandir fácilmente con los componentes existentes. Una de las aplicaciones ideales para Arduino es el desarrollo de nodos de agentes inalámbricos autónomos para un sistema de gestión y control distribuido. Las placas Seeeduino Stalker están diseñadas para esta aplicación. En la versión 2, la placa tiene un controlador de carga de batería de litio con la capacidad de conectar un panel solar, un reloj en tiempo real (RTC) alimentado por un supercondensador, una ranura microSD, un enchufe *Bee (en el XBee original para el protocolo ZigBee, pero ya existe un BTBee en ese mismo factor de forma) y conectores I2C. $39
Ruggeduino
¿Eres un principiante al que le gusta cambiar la energía y agarrar GPIO desnudos con manos electrificadas? ¿O conecta los sensores con cables de 20 metros y, a veces, cae un rayo? ¿O está utilizando Arduino con fines de producción, donde los requisitos de protección y confiabilidad son más altos? Ruggeduino te ayudará, una mirada será suficiente para imbuirte de respeto y comprender que este es un Arduino industrial real. $40

RoMeo todo en uno
Tablero para robótica, contiene en el tablero muchos conectores de interfaz, controlador de motor, botones. $36
ArtesaníaDuino
La versión rusa de Arduino con ergonomía mejorada (acceso a LED y Reset) y características: la placa tiene un conector para todos los pines del chip FT232, lo que permite su uso para aplicaciones bitbang (programador de varios MK, JTAG, etc. ), y la capacidad de soldar pines adicionales para instalar CraftDuino en una placa de prueba sin soldadura. $30

Mas rápido, mas alto, más fuerte

Entonces, salimos del AVR, pero todos nuestros escudos, sensores, servos están con nosotros. Y no los haremos desaparecer, porque son para Arduino, no para AVR. También continuaremos sin sucumbir a los estereotipos de que solo hay algún tipo de ARM y algún tipo de Cortex. ¡Todo es mucho más interesante!
ChipKIT Uno32
Cada estudiante que AVR es bueno y PIC es malo. Sin embargo, esto no debería extenderse a todas las familias MK. PIC32 es un procesador bastante normal con arquitectura MIPS. Y MIPS es una de las arquitecturas RISC líderes. En comparación con ARM, tiene una ventaja: no es tan popular en los medios, por lo que las regalías de MIPS son más bajas, los procesadores son más baratos en promedio y lideran los segmentos del mercado hotelero, como los enrutadores. Por ejemplo, una placa empaquetada no compatible con Arduino con host Ethernet, WiFi y USB cuesta menos de $ 50, incluso en este país, ARM nunca soñaría con tal cosa, pero ahora estamos buscando compatibilidad con Arduino, y ChipKIT no lo hará. aburrido a 80 MHz. 20EUR

netduino
Cortex esperará de nuevo. En el escenario: el ARM clásico, el núcleo ARM7, representado por un chip de su proveedor favorito AT91SAM7X512-AU. ¡A sus 48 MHz, incluso hace clic en .NET Micro Framework! $35
FEZ Panda II
Por supuesto, el código administrado es más fácil de escribir, por lo que el desfile de .NET MF continúa. Esta placa viene con un chip de marketing "USBizi", que resulta ser un NXP LPC2387 con el firmware adecuado. A 72 MHz, probablemente podría reproducir archivos MP3. Solo que no en código .NET, por supuesto. $40