
Brian Curtis
0
2233
39
Python ha conquistado el mundo de la codificación. Junto con el surgimiento de este nuevo lenguaje, la escena electrónica de bricolaje también ha florecido. Placas de desarrollo y computadoras de placa única de compañías como Arduino ¿Qué es Arduino y qué puede hacer con él? ¿Qué es Arduino y qué puedes hacer con él? El Arduino es un pequeño dispositivo electrónico notable, pero si nunca ha usado uno, ¿qué son exactamente y qué puede hacer con uno? y Raspberry Pi Raspberry Pi: el tutorial no oficial Raspberry Pi: el tutorial no oficial Si usted es un propietario actual de Pi que quiere aprender más o un propietario potencial de este dispositivo del tamaño de una tarjeta de crédito, esta no es una guía que quiera perderse . han cambiado la forma en que las personas crean productos electrónicos caseros. ¿No sería genial poder programar un Arduino con Python??
No hay mejor sensación que combinar dos cosas geniales. Lamentablemente, es imposible programar directamente un Arduino con Python, ya que los tableros no tienen opción para la interpretación a bordo del lenguaje. Sin embargo, lo que es posible es el control directo sobre USB usando un programa Python.
Este artículo le mostrará cómo configurar un Arduino UNO (aunque cualquier placa compatible con Arduino Guía de compra de Arduino: ¿Qué placa debería obtener? Guía de compra de Arduino: ¿Qué placa debería obtener? Hay tantos tipos diferentes de placas Arduino, sería perdonado por estar confundido. ¿Cuál debería comprar para su proyecto? Permítanos ayudarlo, con esta guía de compra de Arduino! puede funcionar aquí) para programar y controlar desde la línea de comandos utilizando programas de Python. Este tutorial está escrito para Windows 10, pero también funciona para Mac y Linux. Incluso podría usar este flujo de trabajo para controlar un Arduino directamente desde una guía de automatización del hogar Raspberry Pi con Raspberry Pi y una guía de automatización del hogar Arduino con Raspberry Pi y Arduino. El mercado de la automatización del hogar está inundado de costosos sistemas de consumo, incompatibles entre sí y costosos de instalar. . Si tienes una Raspberry Pi y un Arduino, básicamente puedes lograr lo mismo en ... para la mejor experiencia de doble bricolaje.
Configurando tu Arduino para Python
Para el proyecto de hoy usaremos un Arduino Uno, junto con la interfaz pyFirmata para Python. Puede usar casi cualquier placa compatible con Arduino para esto, aunque en el momento de escribir solo la interfaz pyFfirmata admite Arduino Uno, Mega, Due y Nano. Si ya es un gurú de Python, puede agregar su propio soporte de placa a pyFirmata; asegúrese de actualizar su GitHub si lo hace!
Si aún no lo ha hecho, instale el IDE de Arduino. Si es completamente nuevo en el mundo de los microcontroladores, nuestra guía para principiantes de Arduino Introducción a Arduino: una guía para principiantes Introducción a Arduino: una guía para principiantes Arduino es una plataforma de creación de prototipos de electrónica de código abierto basada en hardware flexible y fácil de usar y software. Está destinado a artistas, diseñadores, aficionados y cualquier persona interesada en crear objetos o entornos interactivos. te ayudará a tener todo en su lugar.
Conecte su placa Arduino y abra el IDE. Asegúrese de tener la placa y el puerto correctos seleccionados en el Herramientas menú. Cargue el StandardFirmata boceto de ejemplo y subirlo a la pizarra. Esto le permitirá controlar el Arduino directamente siempre que esté conectado a la computadora a través de USB. Siempre que el boceto se cargue en su tablero sin ningún error, está listo para continuar.
Python y control de línea de comando
Usaremos Python 3.4 para controlar nuestro Arduino, ya que el módulo que instalará especifica esto como la última versión compatible. Cualquier versión anterior a esta debería funcionar bien, y se ha informado que las versiones posteriores funcionan. Puede descargar Python 3.4 para Windows 10 desde el sitio de Python Software Foundation. Si desea ejecutar varias versiones de Python, nuestra guía de entornos virtuales de Python Aprenda a usar el entorno virtual de Python Aprenda a usar el entorno virtual de Python Ya sea que sea un desarrollador experimentado de Python, o recién esté comenzando, aprendiendo cómo configurar un entorno virtual es esencial para cualquier proyecto de Python. será capaz de ayudarte.
Una vez que haya instalado Python, queremos agregarlo a la variable PATH de su sistema. Esto nos permitirá ejecutar el código Python directamente desde la línea de comandos sin necesidad de estar en el directorio en el que se instaló. Puede hacerlo abriendo el Panel de control, buscando Ambiente y haga clic en Edite las variables de entorno del sistema.. En la parte inferior de la ventana, seleccione Variables de entorno. Esto abrirá esta ventana:
Si ya ves CAMINO en la lista, haga clic en editar y agregue su Pitón y Python / Scripts directorio. Si no tiene una variable PATH, haga clic en nueva y agréguela. Tenga en cuenta que Python se instaló directamente en el DO:\ aquí. Si lo instaló en otro lugar, deberá modificarlo para reflejar esto. Haga clic en Aceptar nuevamente en la cadena de ventanas, y ya está casi listo para controlar su Arduino con Python!
La grasa mágica
Necesitarás una pieza final del rompecabezas para que Python hable bien con nuestro Arduino. Esto viene en forma de una interfaz de Python llamada pyFirmata. Esta interfaz, creada por Tino de Bruijn, está disponible para descargar desde github, aunque puede instalarla directamente desde la línea de comandos escribiendo:
pip install pyfirmata
Todo bien, debería instalarse y verse así:
Si falla, vaya agregando Python al Variable ambiental sección y asegúrese de haber dado la ruta correcta a su directorio de Python.
Hacer que suceda
Ahora todo está configurado y puede crear un programa Python para que su Arduino lo pruebe. Abra un IDE de su elección. Usaremos Eclipse 8 Eclipse Keyboard Shortcuts Essential para principiantes 8 Eclipse Keyboard Shortcuts Essential para principiantes Tan amigable para los novatos como Eclipse IDE (interfaz), te debes a ti mismo aprender estos atajos de teclado. hoy en día, pero podría usar fácilmente cualquier editor de texto Editores de texto vs. IDE: ¿Cuál es mejor para los programadores? Editores de texto vs. IDE: ¿Cuál es mejor para los programadores? Elegir entre un IDE avanzado y un editor de texto más simple puede ser difícil. Ofrecemos información para ayudarlo a tomar esa decisión. , o incluso un IDE en la nube Codenvy IDE: un IDE en línea para Ruby, HTML, Java, Python y más Codenvy IDE: un IDE en línea para Ruby, HTML, Java, Python y más .
Cree un nuevo script y guárdelo como blink.py. Rompiendo la tradición con el programa estándar de LED parpadeante, va a crear un programa que le indique al usuario la cantidad de veces que desea que el LED parpadee antes de llevarlo a cabo. Es un programa corto, que puede descargar aquí si desea acceder directamente, pero analicemoslo.
En primer lugar, querrá importar lo que necesita de la pyFirmata módulo, junto con el estándar Python Hora módulo.
desde pyfirmata import Arduino, util import time
Ahora querrás configurar la placa Arduino. Este artículo asume que estás usando un Arduino Uno placa, aunque se admiten varias otras placas Arduino. Consulte el github de pyFirmata para obtener detalles sobre el soporte a bordo.
Compruebe qué puerto COM está utilizando en el IDE de Arduino e ingréselo en su código como variable tablero.
tablero = Arduino ("COM3")
Ahora configurará la solicitud de usuario. Aquellos familiarizados con Python reconocerán todo aquí. Imprime una pregunta en la pantalla utilizando el entrada función, y almacena la respuesta como una variable. Una vez que el usuario ha proporcionado un número, el programa informa cuántas veces parpadeará el LED.
loopTimes = input ('Cuántas veces desea que parpadee el LED:') print ("Parpadeo" + loopTimes + "veces")
Para hacer que el LED parpadee la cantidad adecuada de veces, use un en bucle. Si eres nuevo en Python 10 Ejemplos básicos de Python que te ayudarán a aprender rápido 10 Ejemplos básicos de Python que te ayudarán a aprender rápido Este artículo de ejemplos básicos de Python es para aquellos que ya tienen experiencia en programación y simplemente quieren hacer la transición a Python tan rápido como sea posible. , tenga cuidado con la sangría, ya que a diferencia de otros lenguajes, los espacios son parte de la sintaxis. Tenga en cuenta que el pin 13 es el LED incorporado para el Arduino Uno, deberá modificarlo si su placa es diferente.
para x en rango (int (loopTimes)): board.digital [13] .write (1) time.sleep (0.2) board.digital [13] .write (0) time.sleep (0.2)
Lanzarás el loopTimes variable a un entero aquí, ya que la entrada del usuario se almacenará automáticamente como una cadena. En esta demostración simple, estamos asumiendo que el usuario ingresará un valor numérico. Cualquier otra entrada como 'ocho' arrojará un error.
Guarde su script y abra el Símbolo del sistema.
Luces parpadeantes y otras revelaciones
Todo está listo, todo lo que necesita hacer es navegar hasta donde está el script y ejecutarlo. Haz esto escribiendo cd [ruta al directorio del script] y luego escribiendo python blink.py.
Todo bien, su programa comenzará con un ligero retraso cuando Arduino se inicialice, le pedirá un número y luego parpadeará muchas veces con el LED incorporado..
La salida del programa debería verse así:
Tan pronto como presione enter después de la cantidad de parpadeos elegida, el Arduino debe llevar a cabo sus pedidos.
Pequeños comienzos
Este proyecto ha sido un comienzo básico para la comunicación entre Python y una placa Arduino. Este enfoque es muy diferente al flujo de trabajo habitual de cargar scripts en el propio Arduino, sin embargo, abre una forma completamente nueva de trabajar con la plataforma, especialmente si le gusta el lenguaje de programación Python.
Si usa un servidor Linux Los 12 mejores sistemas operativos del servidor Linux y quién debería usarlos Los 12 mejores sistemas operativos del servidor Linux y quién debería usarlos ¿Construir un servidor? Linux es ideal, por lo general ofrece permisos mejorados, mayor flexibilidad y estabilidad. ¿Pero cuál debes elegir? Echa un vistazo a los 12 mejores sistemas operativos de servidor Linux y quién debe usarlos. en casa, este método de comunicación con las placas Arduino podría extender ese servidor a un sistema de automatización del hogar DIY completamente desarrollado. Al combinar scripts de Python que controlan el microcontrolador con un circuito de automatización de bricolaje Ideas del proyecto Arduino para una casa automatizada Ideas del proyecto Arduino para una casa automatizada ¿No sería genial regar su invernadero sin dejar su silla? Un Arduino puede participar como el componente clave de algunos proyectos de automatización del hogar: ¡aquí hay cinco! , Su caja de almacenamiento NAS podría asumir un conjunto completamente nuevo de funciones útiles.
Para que sea la mejor experiencia de bricolaje, ¿por qué no construir su propia caja NAS? ¿Necesita almacenamiento en red? He aquí cómo construir su propia caja NAS ¿Necesita almacenamiento en red? Aquí se explica cómo construir su propio NAS Box NAS significa almacenamiento conectado a la red. A medida que Windows se hizo más fácil de usar con dispositivos conectados a la red, y los precios del hardware cayeron, este término comenzó a usarse en el mercado de consumo. Hoy en día hay una gran variedad ... ¿y lo usa para controlar también sus electrodomésticos? Imagina lo genial que sería presionar play en tu Plex. Tu guía para Plex - The Awesome Media Center Tu guía para Plex - The Awesome Media Center Si tienes muchas películas y programas de TV guardados localmente, debes instalar Plex. Y esta es la única guía para comenzar a usar Plex que necesitará leer. servidor y que las luces se apaguen automáticamente!
¿Ya estás controlando Arduino usando Python? ¿Hay soluciones increíbles que aún no conocemos? Háganos saber en la sección de comentarios a continuación!