Puede generar un proyecto para Arduino usando ChatGPT, un modelo de lenguaje entrenado por OpenAI. Arduino es una plataforma de desarrollo de código abierto que permite a los usuarios crear proyectos interactivos con sensores, actuadores y dispositivos de control. Para integrar ambas plataformas, el modelo debe recibir información sobre el proyecto deseado, como el tipo de sensores y dispositivos utilizados, el propósito del proyecto y las especificaciones de control. Luego, el modelo puede generar código fuente, cargarlo en una placa Arduino y ejecutarlo de inmediato.
Tabla de contenido
¿Cómo “hablo” con ChatGPT?
Por ejemplo, si desea crear un proyecto que utilice un sensor de temperatura y una pantalla LCD para mostrar la temperatura detectada, puede proporcionar al modelo la siguiente información:
“Quiero crear un proyecto para Arduino que use un sensor de temperatura y una pantalla LCD para mostrar la temperatura detectada. El código debe leer los datos del sensor y mostrarlos en la pantalla”.
Luego, el modelo puede generar el código fuente para un proyecto que se adapte a sus necesidades específicas. Por supuesto, puede realizar tantos cambios en el código como desee. Sin embargo, aunque ChatGPT es un modelo de lenguaje muy sofisticado, es importante tener en cuenta que es posible que el primer intento no genere el código correcto y que la lista generada deba modificarse para lograr el resultado deseado. Los futuros modelos de inteligencia artificial prometen resultados más sofisticados, pero lo que nos ofrecen los motores actuales es sensacional. Además, es muy importante que el usuario tenga conocimientos de programación y Arduino, e incluso de electrónica, para poder utilizar correctamente el código generado.
Nuestra solicitud: control de dos pantallas mediante técnicas de multiplexación
Se puede utilizar un número limitado de pines debido a las técnicas de multiplexación. microcontrolador Se utiliza para controlar muchos dispositivos, como pantallas de 7 segmentos. En teoría, controlar dos pantallas de 7 segmentos requiere 14 pines (7 pines para cada pantalla), pero usando técnicas de multiplexación (consulte el esquema general en la Figura 1), solo se requieren 8 pines. Esta técnica consiste en mostrar brevemente cada pantalla y repetir esta operación rápidamente para todas las pantallas. De esta forma, el ojo humano percibe todas las pantallas que están encendidas al mismo tiempo. Para controlar dos pantallas de 7 segmentos utilizando técnicas de multiplexación, se deben seguir los siguientes pasos:
- Inicialice los pines del microcontrolador como salidas y asigne los valores correspondientes a los segmentos de la pantalla.
- Define una variable que rastrea la pantalla actualmente seleccionada
- Procese todas las pantallas usando un ciclo iterativo
- Dentro del bucle de iteración, use la instrucción de selección para establecer el pin correspondiente a la pantalla seleccionada actualmente.
- Use la función de “retraso” para mantener encendida la pantalla actualmente seleccionada (por un corto tiempo).
- Incrementa la variable que rastrea la pantalla actualmente seleccionada para que la siguiente pantalla aparezca en el siguiente ciclo.
- Repita rápidamente los pasos 3 a 6 hasta que el ojo humano pueda ver todas las pantallas que están encendidas al mismo tiempo.
Es importante tener en cuenta que el tiempo de retardo debe ser corto para que la indicación parpadeante sea imperceptible para el ojo humano. Ciertas bibliotecas también se pueden usar para multiplexar para simplificar la escritura de código y acelerar la ejecución del programa.
ChatGPT ahora funciona
Ahora está listo para pedirle a ChatGPT que comience a producir el proyecto en cuestión. Como se mencionó anteriormente, un proyecto consta de los siguientes componentes:
- Placa Arduino Uno (o versión compatible)
- Dos pantallas de cátodo común de 7 segmentos
- Siete resistencias de 220 ohmios y 0,25 vatios
- Dos transistores 2N2222 (o equivalente)
- Dos resistencias de 2,2 kΩ y 0,25 vatios.
Los sistemas de inteligencia artificial funcionan de maravilla, pero las solicitudes de los usuarios deben presentarse de forma clara y detallada, y tal vez no preocuparse demasiado por la sintaxis. Lo que importa es la cantidad de información que se pasa al modelo.
Cualquiera que comience un proyecto como este debe conocer los conceptos básicos de electrónica. Por lo tanto, como mínimo, debe diseñar un proyecto de circuito eléctrico con todas las conexiones eléctricas y los componentes electrónicos necesarios. Todos los puertos digitales de este proyecto están configurados como salidas. Con el diagrama de cableado real que se muestra en la Figura 2 listo, puede comenzar a enviar solicitudes a ChatGPT para implementar su proyecto.
Después de acceder al sitio chatGPT en https://chat.openai.com/chat, debe iniciar sesión para usar el servicio. Puede hacer preguntas en un estilo ‘humano’ en cualquier idioma internacional. Para este proyecto, ingrese el siguiente texto en el cuadro chatGPT.
“Escriba una lista en un Arduino Uno que cuente regresivamente de 99 a 0 con una pausa de 1 segundo entre un número y el siguiente. Dos pantallas LED de 7 segmentos se controlan mediante multiplexación a través de dos transistores NPN. Las dos pantallas tienen un cátodo común. No use una biblioteca externa. Los segmentos de la pantalla deben conectarse al Arduino de la siguiente manera: a = 2, b = 3, c = 4, d = 5, e = 6, f = 7, g = 8 , digit1 = 9, digit2 = 10. Gracias”.
Esta solicitud, que también se muestra en la Figura 3, contiene suficiente información para que el bot comprenda completamente la solicitud. El sitio actualmente tiene millones de visitantes y el tráfico es enorme. En la práctica, la respuesta puede tardar un poco más. En muchos casos deberá repetir la solicitud por el mismo motivo. Espera unos segundos y ChatGPT te dará una respuesta muy humana y profesional usando terminología apropiada al tema. La respuesta también incluye una larga lista de fuentes de Arduino listas para cargarse en el dispositivo. La lista es muy precisa y rara vez requiere la intervención de un programador humano.
Prueba final del proyecto.
Después de ensamblar correctamente los componentes electrónicos, realizar todas las conexiones eléctricas y cargar el programa ejecutable en el Arduino (consulte la lista de fuentes en la Figura 4), está listo para probar su prototipo. Cuando se enciende, las dos pantallas LED de 7 segmentos se iluminan y muestran una cuenta regresiva de dos dígitos de 99 a 0 a una velocidad de un segundo. Es interesante observar cómo se calcula el valor de dos dígitos mostrado con respecto al lugar de las decenas y las unidades. Puede usar el operador de factor (%) para separar el lugar de las decenas y las unidades de un número de dos dígitos. Módulo devuelve el resto de dividir un número por otro. Para separar el lugar de las decenas y las unidades de un número de dos dígitos, puede usar las dos fórmulas siguientes:
Así, la variable ‘decenas’ contiene los dígitos de las decenas del número original y la variable ‘unos’ contiene el número de unidades del número original. Otra característica especial de las listas es repetir la visualización de dos dígitos varias veces un número específico de veces. Esta técnica le permite determinar cuánto tiempo se muestran los dígitos y, por lo tanto, la velocidad del conteo.
Conclusión
Aunque los logros de la tecnología de inteligencia artificial son encomiables, la tecnología aún está en pañales y se espera una gran revolución en el campo en un futuro próximo. GPT-3 (Generative Pre-trained Transformer 3) es un modelo de lenguaje desarrollado por OpenAI entrenado en grandes cantidades de datos. GPT-3 se utiliza para generar texto en una amplia gama de aplicaciones, como la generación de documentos, la traducción automática, la conversión de texto a voz y la respuesta a preguntas. También se destaca por su capacidad para generar texto plausible y coherente y su capacidad para comprender el contexto y el uso del lenguaje. En el futuro, se supone que el GPT-4 final será un modelo de lenguaje aún más sofisticado que el GPT-3, con una mejor capacidad para comprender el contexto y el uso del lenguaje, una mejor capacidad para generar texto plausible y consistente, y una mejor capacidad para manejar una amplia gama de aplicaciones. En conclusión, ChatGPT resulta ser una poderosa herramienta para crear proyectos completos para Arduino. La función de generación automática de código ahorra tiempo y esfuerzo a los desarrolladores y mejora la eficiencia y la calidad de su trabajo. Además, al comprender las preguntas y responderlas de forma natural, los usuarios pueden obtener fácilmente respuestas a sus preguntas y orientación sobre sus proyectos. Se espera que el uso de ChatGPT sea más frecuente en la electrónica y en el Internet de las cosas en el futuro. Hoy en día, la inteligencia artificial puede ayudar a crear firmware para microcontroladores de varias maneras. Es importante recordar que la IA solo se puede usar para respaldar el desarrollo de firmware y aún no puede reemplazar por completo el trabajo de los programadores humanos.
código de descarga