Red de conocimiento informático - Problemas con los teléfonos móviles - Código fuente de Qtqdialogexec

Código fuente de Qtqdialogexec

Resumen: Este artículo detalla principalmente el esquema de diseño de una interfaz hombre-máquina de visualización de trenes. A través del análisis, se seleccionó el sistema Linux estable y de código abierto y el software Qt/integrado como plataforma de software para su diseño. Se construye el marco general de la interfaz hombre-máquina de la pantalla del tren, se explica el proceso de construcción y las ideas de programación importantes de cada interfaz y se implementan sus funciones correspondientes.

Palabras clave: interfaz persona-computadora; sistema Linux; Qt/embedded

Número de clasificación de la biblioteca china: U231 Código de identificación del documento: A Número de documento: 1671-7597(2012)0720044 -02 .

0 Introducción

Cuando un tren circula a alta velocidad, el hecho de que el conductor o el personal de mantenimiento conozcan alguna información sobre el estado del tren juega un papel importante en el funcionamiento seguro del tren. Con el rápido desarrollo de los trenes, la información que necesita el personal aumenta día a día. El modo de visualización tradicional basado en instrumentos analógicos y luces indicadoras ya no puede satisfacer las necesidades del desarrollo de los trenes de alta velocidad modernos, lo que ha dado lugar a pantallas inteligentes basadas en placas de desarrollo ARM. Este tipo de pantalla tiene las características de gran capacidad de visualización, capacidad de almacenamiento e interfaz de pantalla programable, lo que hace que la información mostrada en el tren sea concisa y estandarizada. La pantalla inteligente proporciona una interfaz hombre-máquina amigable, y el personal puede configurar los parámetros relevantes del tren, captar información importante sobre el tren y la línea en tiempo real y responder rápidamente a los comandos y advertencias emitidos por otros equipos en el tren.

Por lo tanto, en la potente plataforma de hardware de PC y el sistema operativo Linux, se utilizó el software Qt/embedded para desarrollar una interfaz hombre-máquina adecuada para la visualización de trenes.

1 Selección del sistema operativo

El sistema operativo es la base de desarrollo de todo el sistema software. En términos generales, los sistemas operativos integrados comunes incluyen: VxWorks, WinCE y Linux. El sistema operativo Linux está desarrollado a partir del sistema Unix. Después de años de mejora, tiene características estables y maduras y desempeña un papel destacado en las comunicaciones de red. Además, su característica de código abierto garantiza una buena portabilidad y admite una variedad de herramientas de desarrollo de software, lo que facilita el diseño de aplicaciones. Por ello, este diseño elige Linux como sistema operativo.

2 Selección de plataforma de software

Para la plataforma de desarrollo de software, tenemos principalmente tres opciones: MiniGUI, MicroWindows y Qt/Embedded. Qt/Embedded es un software especialmente diseñado para la aplicación y desarrollo de sistemas gráficos de dispositivos integrados. Utiliza el lenguaje C++ y viene con varias formas de ventanas y componentes, por lo que tiene una buena programación visual. Tiene la misma API en los sistemas Windows y Linux, por lo que tiene buenas propiedades multiplataforma, lo que favorece la portabilidad de aplicaciones. Por lo tanto, este diseño elige Qt/Embedded como plataforma de desarrollo de software.

3 Diseño de la interfaz hombre-máquina

Los usuarios finales de las pantallas de los trenes son los conductores y el personal del tren, por lo que el diseño de su interfaz hombre-máquina debe considerar las siguientes cuestiones.

1) Análisis de necesidades de información de visualización. Cuando un tren circula a alta velocidad, se generarán muchos parámetros e información importantes. Nuestro principio al diseñar la interfaz hombre-máquina de la pantalla del tren es mostrar los parámetros y la información del tren de forma intuitiva, concisa y amigable. Parámetros e información importantes que se muestran en este análisis. Antes de que el tren esté en marcha, la información a la que hay que prestar atención es si las puertas y los interruptores del aire acondicionado de cada vagón están abiertos o cerrados, y la temperatura dentro del vagón. Cuando el tren está en marcha, la información requerida incluye la velocidad actual del tren, el voltaje de la red de contactos, la temperatura del eje, el disyuntor principal, la fuerza de frenado, la fuerza de tracción e información sobre fallas.

2) Diseño estructural de la interfaz persona-ordenador. Según la información de la pantalla analizada anteriormente, la interfaz hombre-máquina se divide principalmente en cinco subinterfaces, a saber, estado de la locomotora, control centralizado, sistema de frenos, sistema de tracción e información de fallas. Entre ellos, se configura una subinterfaz en la interfaz de control centralizado para consultar el estado de cada vehículo. Por lo tanto, la estructura general de la interfaz hombre-máquina se muestra en la Figura 1.

Figura 1 Diagrama de estructura principal

4 Implementación del software

Qt es una potente herramienta de desarrollo de interfaz gráfica en el sistema Linux y admite firmemente la programación visual. Su diseñador (Qt Designer) proporciona un IDE con una buena interfaz de interacción persona-computadora. Por lo tanto, utilizamos principalmente este IDE y sus funciones API reservadas para incrustar gráficamente los controles necesarios en Qt Designer como un complemento para que los usuarios generen la interfaz requerida. La siguiente imagen es la interfaz hombre-máquina.

Figura 2 Interfaz hombre-computadora

A continuación se explican varias tecnologías clave en la implementación de software de interfaz hombre-computadora.

4.1 Escribir un programa de ventanas múltiples

En la interfaz de control centralizado, diseñamos una función de consulta. La función es presionar el botón de consulta y aparecerá una subventana de consulta. arriba para mostrar cada carro, es conveniente que podamos verificar si la puerta y el aire acondicionado están encendidos o apagados. El proceso es aproximadamente el siguiente:

1) Cree un nuevo archivo de proyecto, utilizando la clase de interfaz del diseñador QT como archivo, la clase Diálogo sin botones como plantilla de interfaz y luego agréguelo a nuestro archivo humano. Proyecto de interfaz de máquina.

2) Agregue un botón de botones en la interfaz de control centralizado, cambie su nombre a Consulta, luego haga clic derecho en el botón, seleccione la opción Ir a la ranura y seleccione hecho clic (en la señal emergente cuadro de selección) señal, construyendo así una función de ranura PushButtons_clicked (), y luego escriba el siguiente código en la función de ranura.

void widget::on _ PushButton _ clicked()

{

cxcx cx//Crea un objeto cx de la nueva clase.

if(CX . exec()= = q dialog::Accepted)//Utiliza la señal recibida para determinar si presionar.

{

CX . show(); //Si se presiona, muestra esta ventana.

}

De lo contrario, devuelve 0;

}

3) Finalmente, haga una declaración de función al comienzo del programa principal. #include "cxcx. h", completando así la escritura del programa de ventanas múltiples en este diseño y realizando sus funciones.

4.2 Visualización en tiempo real de la hora del sistema

Hay dos formas de extraer y mostrar la hora del sistema en la interfaz hombre-máquina, una es utilizar el mecanismo de eventos y la otra. es establecer la asociación usted mismo. Este diseño utiliza el método de establecer asociación y el proceso es el siguiente:

1) Agregue una etiqueta labe1 a la interfaz principal y establezca su contenido de visualización en "0000-00-00 00:00: 00 horas del domingo".

2) Agregue la declaración de la función slot en el archivo de encabezado del programa principal.

Ranura especial:

actualización del temporizador nulo();

3) Agregue el archivo de encabezado #include en el archivo fuente del programa principal para incluir todo archivos en QtCore. Agregue el siguiente código en el constructor:

q timer * timer = new q timer(this); //Crea un nuevo temporizador

Connect(timer, SIGNAL(timeout()) ), this, SLOT(time

RUP date())); //Asociar señales y slots

Timer->Start(1000);//Timer Inicia conteo, 1000ms significa 1 segundo.

4) Finalmente implemente la función de actualización.

Void MainWindow::timerUpDate()

{

QDateTime time = QDateTime::current datetime() //Obtener la hora del sistema

QString str = time . tostring(" xxxx-NN-DD hh:NN:ss dddd "); //Establece el formato de hora del sistema

ui-& gt;labe 1->;setText (str ); //Mostrar la hora en la etiqueta

}

5 Conclusión

La interfaz hombre-máquina de visualización del tren diseñada en este artículo puede mostrar la operación del tren. procese de forma intuitiva y concisa Para información importante en el sistema, el software de diseño gráfico Qt/incrustado utilizado tiene una buena programación visual. Es muy conveniente agregar una barra de visualización de información, lo que mejora enormemente la facilidad de uso de la interfaz. Estos brindan mucha comodidad para capacitar a los conductores y al personal.

Referencias:

[1] Liu Jun, Investigación e implementación de una pantalla inteligente de trenes que admita TCN [D]: Universidad Central del Sur, 2009.

Hui Yu, Li Yong, diseño y desarrollo de sistema Linux integrado ARM[M]. Prensa de la industria de maquinaria, 2001.

[3] No te atrevas a trabajar duro, diseño de sistemas de gráficos integrados [J]. Prensa de la Universidad de Aeronáutica y Astronáutica de Beijing, 2005.

[4]Liu Kai, Programación Qt[M].

Acerca del autor:

Wan Kun (1989-), hombre, de Nanchang, Jiangxi, es un estudiante de posgrado que se dedica principalmente a la investigación sobre sistemas integrados y redes de comunicación de trenes.