tiene seriales serial recibir puertos por mega enviar datos cuantos comunicacion serial-port hardware serial-communication

serial-port - recibir - puertos seriales arduino mega



¿Hay algún patrón de diseño para manejar las comunicaciones del puerto serie? (2)

Estamos trabajando con algunas nuevas herramientas de corte que pueden tener sus parámetros de hardware alterados a través del puerto serie en lugar de solo un panel de control.

Cuando se modifican los parámetros del hardware, el hardware tardará unos segundos en reconfigurarse y luego indicará que está listo para ser utilizado.

Nuestra configuración anterior a esto implicó que el operador haga clic en un comando Cortar placa o Parte. El software mostrará un diálogo que le permite al operador cambiar cualquier cosa relacionada con el movimiento (velocidad, demoras, etc.) y mostrar en qué configuración debe estar el hardware. Después de que el operador verifique todo, hace clic en Aceptar y la máquina comienza a cortar.

Para el nuevo hardware, sacamos la configuración actual si hay un cambio que transmitimos y arrojamos un cuadro de diálogo que muestra la nueva configuración junto con un indicador que muestra si el hardware está listo. No todo está automatizado a través del puerto serie, por lo que en algún momento el cuadro de diálogo debe permanecer allí hasta que el operador haga clic en Aceptar. Otras veces puede descargarse solo cuando el hardware indica que es correcto.

Mi problema (y la pregunta) es que hacer esto a través de los puertos serie es extremadamente lento. También es la primera vez que hacemos este tipo de trabajo. Me preocupa que me falta alguna solución para hacer que todo sea más receptivo. No es una opción utilizar una alternativa a la serie ya que compramos el hardware de corte de un tercero.

Otra cosa que me gustaría hacer es tener la opción de mostrar un cuadro de diálogo de estado y dejarlo en funcionamiento sin que la comunicación en serie atasque el resto del sistema.

Consejos para la API de Win32 o .NET son lo que estoy buscando.


Una opción sería ejecutar la comunicación del puerto serie en una secuencia separada y hacer que esa secuencia informe su estado al hilo de la interfaz gráfica de usuario. (Invocar)

Así es como recientemente codifiqué un sistema de deslizamiento de tarjetas HID. Un hilo registra los deslizamientos de tarjetas en una lista. Otro hilo escribe esto en un sistema de base de datos. Cada uno informa al hilo de la GUI.


Depende de cuán interactivo sea el control de la máquina: ¿puede enviar un movimiento a xy, cortar a xy o necesita monitorear constantemente la máquina y arrancar y parar motores?

Si la máquina es relativamente inteligente, la trataría como un trazador. Crea una lista de comandos en tu GUI y luego preséntalos. De esta manera, es fácil probar la GUI independientemente de la máquina.

También puede tener una aplicación de prueba que toma la lista de comandos y la traza en una pantalla como verificación antes de cortar material costoso. Incluso podría ser posible convertir los comandos en algo así como HPGL o SVG y mostrarlos directamente.