Introducción
Si has subido un boceto a tu PLC Arduino y ahora lo detecta como un dispositivo desconocido... o has intentado quemar el cargador de arranque (ver el enlace relacionado) y no ha funcionado, aquí tienes la solución.
Enlaces relacionados
Solución
El primer paso es cerrar todas las ventanas de Arduino IDE y, si es posible, reiniciar el PC, aunque no siempre es necesario. Todas estas acciones deben hacerse con el controlador desconectado del puerto USB del PC.
El segundo paso es abrir un código de demo, por ejemplo el más básico, el LED Blink. Aquí tienes el código Blink:
/* Blink Turns an LED on for one second, then off for one second, repeatedly. Most Arduinos have an on-board LED you can control. On the UNO, MEGA and ZERO it is attached to digital pin 13, on MKR1000 on pin 6. LED_BUILTIN is set to the correct LED pin independent of which board is used. If you want to know what pin the on-board LED is connected to on your Arduino model, check the Technical Specs of your board at: https://www.arduino.cc/en/Main/Products modified 8 May 2014 by Scott Fitzgerald modified 2 Sep 2016 by Arturo Guadalupi modified 8 Sep 2016 by Colby Newman This example code is in the public domain. http://www.arduino.cc/en/Tutorial/Blink */ // the setup function runs once when you press reset or power the board void setup() { // initialize digital pin LED_BUILTIN as an output. pinMode(LED_BUILTIN, OUTPUT); } // the loop function runs over and over again forever void loop() { digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }
Cuando lo tenemos en la ventana de la aplicación, tienes que conectar tu PLC Arduino a través de USB y abrir rápidamente el menú de Herramientas. Verás que es detectado allí y tendrás que seleccionar la placa y el modelo correctos, y el puerto correcto:
Desaparecerá en un momento, pero no te preocupes, es normal. Si vuelves al menú de Herramientas, verás que no tienes a ninguno seleccionado, pero no hagas clic en nada; así, la próxima vez que conectes o reinicies el dispositivo se seleccionará automáticamente.
Ahora, haz clic en el botón de Subir y verás que la compilación está comenzando. Después, espera 2 segundos y presiona el botón Reset de tu PLC. En caso de que no encuentres el botón Reset, puedes desconectar el USB del PC, hacer clic en el botón Upload y luego conectar el USB al cabo de un rato.
Este método suele funcionar porque Arduino hace un arranque justo después de cargar el boceto en su memoria y, justo en este momento, cuando el sistema se inicia, es cuando aparece (en el PC) para ser identificado como un Arduino y no como otro dispositivo USB. Hay que aprovechar este momento y cargar el programa en la memoria para reemplazar el programa defectuoso. La clave es que, después de la compilación, el programa se envía a Arduino y tienes que asegurarte de que, los dos segundos que aparece como un Arduino en el menú Port, coinciden con el momento en que el programa se carga después de la compilación. Como es un pequeño boceto, tarda un mínimo de tiempo en cargarse y el tablero se reprograma.