Software y matemáticas ASU. software de la ASU

software SCA

El apoyo matemático es necesario para formalizar los procesos de control (con el objetivo de automatizarlos) e implementar algoritmos de control en una computadora. La descripción matemática generalmente incluye:

* descripciones formalizadas de objetos y procesos de gestión;

* algoritmos para resolver problemas de control;

* Software informático utilizado en todos los niveles de gestión.

El proceso de descripción formalizado nos permite obtener una descripción general del objeto de control y del proceso de control en forma de modelos matemáticos formalizados. A partir de estos modelos se desarrollan algoritmos de control.

Los algoritmos de control determinan la secuencia necesaria de acciones durante el control y permiten formalizar la descripción del proceso de control con el fin de su implementación automática. El algoritmo es la base para desarrollar un programa de control informático para el objeto correspondiente.

El software es necesario para implementar algoritmos de control en computadoras específicas que forman parte del GPS ACS. Bajo el control del software, durante el proceso de gestión se garantiza la interacción del ordenador con el personal operativo y el equipo.

Por ejemplo, al regular automáticamente los parámetros de un objeto controlado, el sistema de control implementa las funciones de un controlador automático:

x (t) = y z (t) - y (t);

U(t) = A(x(t)),

donde x(t) es el error del objeto de control; y з (t) – valor especificado del parámetro controlado, y(t) – valor actual del parámetro controlado; U(t) – acción de control; A es un operador que depende de la ley de control.

Con el control automático es posible realizar control proporcional (control P), control proporcional-integral (control PI), control proporcional-integral-derivativo (control PID), control óptimo, control extremo y control adaptativo. El tipo de control seleccionado será determinado por el operador “A”, según el cual la magnitud de la acción de control está determinada por la magnitud del error.

En la figura 2 se muestra un algoritmo generalizado que implementa la tarea de control automático del parámetro Y en una computadora. 206. Cuando comienza la tarea, el programa comienza a cronometrar y sondea el objeto de control. Como resultado del sondeo del objeto, se ingresa el valor actual del parámetro controlado Y(t).

El valor actual del parámetro controlado se compara con el especificado y se determina la discrepancia (error), a partir de cuyo valor se calcula el valor de control requerido. Este control se deriva de la computadora y, al influir en el actuador del objeto, cambia su parámetro de salida según sea necesario.

El algoritmo descrito se implementa como un programa de control para un ordenador. En el caso que nos ocupa, el ordenador puede ser, por ejemplo, un microcontrolador programable. En este caso, el programa se puede escribir en el lenguaje ensamblador del microprocesador utilizado en el microcontrolador. Luego, el programa se traduce en instrucciones de máquina de microprocesador, cuya secuencia se registra en la memoria de sólo lectura (ROM) del microcontrolador.

El desarrollo de software en lenguajes de programación algorítmicos y de máquinas requiere la participación de programadores especializados para resolver problemas, aunque los tecnólogos y gerentes entienden mejor el problema de gestión. Como resultado, surgió la necesidad de desarrollar sistemas automatizados de diseño de software que pudieran ser operados por usuarios que no sean especialistas en el campo de la programación informática.

Estos sistemas se consideran una herramienta para desarrollar software de control de procesos automatizados. En los modernos sistemas automatizados de control de procesos, la interacción entre el operador y el proceso tecnológico se realiza mediante un software comúnmente conocido como SCADA. Sistema SCADA (Sistema de Supervisión, Control y Adquisición de Datos): un sistema para la recopilación de datos y el control del despacho operativo. El sistema SCADA realiza las siguientes funciones principales:

· control de parámetros y recopilación de datos sobre el proceso tecnológico controlado;

· control de procesos, implementado por los operadores basándose en datos y reglas recopilados (criterios), cuya implementación garantiza la eficiencia y seguridad requeridas del proceso.

El sistema SCADA automatiza la recopilación de información sobre el proceso tecnológico, proporciona una interfaz de operador, guarda el historial del proceso y controla automáticamente el proceso en la medida requerida.

Los sistemas SCADA instrumentales son una herramienta para desarrollar software de alto nivel para sistemas de control de procesos automatizados. Un sistema SCADA suele tener soporte incorporado para dispositivos de entrada/salida: controladores de control, sensores y dispositivos de medición fabricados por las empresas líderes mundiales en sistemas de control y adquisición de información. Los sistemas SCADA instrumentales son productos de software de varias empresas y tienen muchas características comunes y diferencias significativas.

Modelos y algoritmos que se utilizan en la operación de sistemas de control automatizados. El control de cualquier objeto es impensable sin desarrollar un modelo que permita comprender la estructura del original, aclarar su composición, estructura, identificar las propiedades básicas, comprender las leyes e interacciones de los elementos constituyentes, su desarrollo en el tiempo, así como interacción con el medio ambiente. El modelo le permite aprender cómo controlar un objeto e identificar las mejores formas de controlarlo bajo determinadas restricciones para lograr su objetivo. Variando los factores externos e internos del modelo, es posible predecir los resultados de la gestión de la construcción e implementar soluciones óptimas. Una secuencia inequívoca de acciones para resolver un problema se llama algoritmo. En el proceso de diseño de un sistema de control automatizado, el desarrollo de un algoritmo pasa por varias etapas, desde la descripción más general que contiene una idea, diseño, etc. a su especificación detallada. La etapa inicial del desarrollo de algoritmos a menudo se denomina diagrama de bloques de resolución de problemas. Suelen contener los bloques más esenciales de operaciones, acciones y conexiones entre ellos. Al resolver problemas en una computadora, la etapa final de la algoritmización es un programa para resolver el problema en comandos ejecutados por el procesador. Un programa y un algoritmo no son lo mismo. Un programa es un algoritmo para resolver un problema que se puede ingresar e implementar en una computadora. Para describir algoritmos, se utilizan varios lenguajes de descripción: lenguajes algorítmicos que difieren en el grado de detalle y la clase de tareas que se describen. La algoritmización de la resolución de problemas es una etapa importante en el desarrollo de sistemas de control automatizados. Esta etapa está estrechamente relacionada con la etapa de establecimiento de objetivos. El algoritmo para resolverlo depende en gran medida de cómo y en qué idioma se formula el problema y cuál es el propósito de su solución.

Muy a menudo, se entiende por modelo algo similar a un objeto real (su copia), que posee ciertas propiedades similares. Un modelo suele sustituir a un objeto real en los casos en que esto sea posible y necesario o conveniente. En las condiciones de un sistema de control automatizado, cuya base de funcionamiento es la información, se crean modelos para obtener información sobre las propiedades y el comportamiento de sistemas reales en determinadas condiciones, por lo que la definición de un modelo como sistema, el estudio. del cual sirve como medio para obtener información sobre otro sistema, el original. Además del propósito principal del modelo, que se da en la definición, se pueden agregar 3 propiedades principales que los caracterizan:

1. Modelo – representante de un determinado original

2. El modelo no cubre todas las propiedades del original, sino sólo aquellas que son significativas para el investigador.

3. El modelo corresponde inequívocamente al original; se establece una correspondencia única para determinados objetos dentro de un período de tiempo determinado.

El modelado es un estudio práctico o teórico indirecto de un objeto, en el que no es el objeto en sí el que nos interesa el que se estudia directamente, sino algún modelo auxiliar artificial o natural, que permite, como resultado de su estudio, obtener. .

2 clases de modelos:

1. Físico: representa algún sistema material-físico y difiere del original simulado en tamaño, etc.

2. Resumen: utilizados en sistemas de control automatizados, se crean utilizando medios de descripción y abstracción lingüísticos, lógicos y matemáticos, por lo que no tienen ningún parecido físico con el original, pero están diseñados para contener y generar información a partir del original.

Los más comunes son los modelos matemáticos.

1. Estático y dinámico

2. Determinista y probabilístico

3. Continuo y discreto

4. Modelos de investigación operativa, modelos de juegos, modelos de colas, modelos de simulación.

Las etapas de creación de un modelo, a partir de las cuales se desarrolla el algoritmo y luego el programa, son las siguientes:

1. Declaración del propósito del modelado

2. Obtener y recopilar información sobre la estructura del modelo, la interacción entre los elementos del sistema.

3. Formación de una idea sobre el objeto y las condiciones de su funcionamiento.

4. Descripción matemática, que incluye formalización matemática, creación de modelos matemáticos teniendo en cuenta su solucionabilidad.

5. Métodos para resolver relaciones matemáticas.

6. Algoritmo de solución

7. Solución y su análisis.

8. Comparación de los datos recibidos con los reales.

9. Seguimiento de los resultados del desempeño

10. Ajuste del modelo.

Más comúnmente utilizado modelos de investigación de operaciones.

Investigación operativa es una disciplina científica que estudia métodos

aumentar la eficiencia de los sistemas que funcionan en diversas condiciones.

1. Distribución: tareas relacionadas con la distribución óptima de recursos limitados (problemas de asignación, problemas de transporte).

2. Tareas de gestión de inventarios (minimizando tiempos de entrega, frecuencia, etc.)

3. Los objetivos de la sustitución de equipos son optimizar la vida útil de los equipos, la duración de su uso, el tiempo de sustitución de los equipos y elegir el plan de reparación óptimo para reducir la probabilidad de averías.

4. Racionalización y coordinación: agilizar la secuencia de trabajo junto con los medios para su implementación con el fin de lograr la mínima finalización del trabajo, minimizar el tiempo o costo o el consumo de recursos al realizar un determinado conjunto de trabajos.

5. Problemas a la hora de elegir modos de conducción óptimos.

6. Problemas de colas.

7. Tareas de búsqueda: minimizar el costo de resolución de problemas, etc.

Al resolver todos estos problemas, primero es necesario estudiar el sistema real y compilar su modelo matemático en relación con el método de optimización matemática seleccionado. Luego, el modelo matemático se convierte en una función objetivo que expresa explícitamente el criterio de optimización principal y luego se establecen las restricciones necesarias sobre los criterios secundarios. El significado físico de la función objetivo depende de la esencia del problema de optimización. La función objetivo suele representar el beneficio que se desea maximizar o la minimización de costes.

Las restricciones que aparecen en el modelo matemático representan un sistema de restricciones que estrechan la ODZ. Los métodos de investigación operativa suelen incluir métodos de optimización clásicos: enumeración directa, cálculo diferencial e integral, etc. Métodos de búsqueda: descenso más pronunciado, etc. Métodos de búsqueda de extremos y diversos métodos de programación.

Métodos de teoría de juegos..

teoría de juegos es una teoría matemática del comportamiento óptimo en una situación de conflicto. La tarea principal es determinar las estrategias óptimas.

comportamiento de los participantes.

Conflicto- se define como la presencia de varios objetivos en los elementos del sistema y

intereses relacionados en su comportamiento.

El conflicto está dividido en

antagonista– cuando dos personas persiguen intereses opuestos, y

NO antagonista– cuando los intereses, aunque diferentes, no son opuestos.

Cada juego explora 3 preguntas:

1. ¿Cuál es el comportamiento óptimo de los jugadores en cada juego?

2. ¿Existen estrategias apropiadas?

3. Encontrar la estrategia óptima

Como resultado de la resolución de los problemas, se determina el camino para resolver el problema y se construye un modelo.

Modelado de simulación

Similitud estructural, imitación del original en mayor medida que en modelos anteriores.

A diferencia de los modelos de investigación operativa, que persiguen un extremo, es imposible obtener una solución óptima en el marco de un modelo de simulación. Por lo general (?) Tienen una estructura jerárquica en bloque.

Descripción del software ACS

El software ACS es un conjunto de programas y sistemas de software mediante los cuales los algoritmos de los programas de usuario escritos en lenguajes algorítmicos de alto nivel se convierten en una secuencia de comandos comprensibles por la electrónica de la computadora, se organiza la ejecución automática de las tareas del usuario en la computadora y se utiliza de manera eficiente. de los equipos informáticos está garantizada.

La naturaleza del soporte matemático de los sistemas de control automatizados cambia significativamente a medida que se desarrollan las capacidades de los medios técnicos. Los desarrolladores de ICS, que continúan creando algoritmos y programas para tareas complejas y típicas, cuya preparación es difícil para los usuarios, deben preparar cada vez más herramientas de soporte de software para programadores no profesionales. Esto aumenta los requisitos para los desarrolladores de sistemas de control automatizados en cuanto a su conocimiento de los métodos para preparar y depurar programas y la automatización de la programación.

Se están mejorando y desarrollando lenguajes de programación de alto nivel y han aparecido lenguajes no procedimentales cercanos a los naturales. Si bien facilitan el trabajo del usuario, estos lenguajes requieren un software de sistema desarrollado, cuyo contenido es cada vez más diferente para los diferentes usuarios y debe determinarse durante el diseño de un sistema específico.

El software matemático suele dividirse en general y especial.

El software general generalmente consta de un sistema operativo, herramientas para mantener el sistema de software en funcionamiento, herramientas de programación y aplicaciones. El software matemático también debe incluir programas de prueba diseñados para monitorear la capacidad de servicio y no se utilizan durante la programación y no la afectan.

El software matemático especial (SMS) está orientado a problemas y se implementa en forma de un conjunto de programas de software que organizan el trabajo de los medios técnicos para realizar las tareas resueltas en el sistema de control automatizado.

A su vez, el software matemático especial se divide en:

En todo el sistema, asegurando el funcionamiento de todo el sistema de control en un modo determinado, incluido el control del funcionamiento de las computadoras y otros medios técnicos en términos de su uso en sistemas de control automatizados, resolviendo una serie de problemas de acuerdo con esquemas estándar. que puede ser necesario para muchos usuarios. La última parte del QS para todo el sistema se implementa en forma de una "biblioteca de programas estándar" que contiene programas para clasificar, editar y resolver problemas matemáticos frecuentes;

Aplicación, formada por programas de aplicación de acuerdo con las características individuales de los problemas a resolver.

El software matemático se construye sobre la base de tipificar algoritmos en clases de problemas y unificar métodos para resolver problemas relacionados, independientemente de los subsistemas en los que se encuentren. Esta agrupación de problemas permite reducir el costo de su soporte matemático, así como crear modelos unificados para la resolución de diversas clases de problemas. Se pueden distinguir las siguientes clases de problemas:

Tareas contables primarias, que suelen ser masivas y, por tanto, la eficacia de su inclusión en el sistema de control automatizado depende de la automatización de la obtención de información legible por máquina;

Los problemas contables y estadísticos se caracterizan por una gran cantidad de operaciones lógicas con un pequeño volumen de operaciones matemáticas simples;

Las tareas contables se caracterizan por una gran cantidad de sumas, restas, operaciones lógicas (clasificación, agrupación, comparación) y la formación de tablas en una forma determinada;

Tareas de información y referencia;

Problemas de cálculos complejos no extremos. Para resolver problemas de este tipo es recomendable utilizar métodos de modelización matemática. Esto reducirá la complejidad no sólo de los cálculos en sí, sino también del trabajo necesario para recopilar la información inicial;

Problemas de previsión. También se utiliza el modelado matemático para resolverlos;

Los problemas de optimización son el uso más eficaz de las técnicas de modelado. Cualquier opción y situación se puede "representar" en la máquina y se puede obtener una evaluación de cada opción en todas las situaciones posibles;

Problemas de modelado topográfico;

Tareas de gestión operativa de procesos productivos;

Problemas de lógica.

Para implementar el soporte matemático se crea un software.

La base del software de NOU DPO “Business Education” es la configuración 1C:Franchisee, por lo que es necesario considerar los mecanismos utilizados en ella que organizan el trabajo de los medios técnicos para realizar las tareas resueltas en el sistema de control automatizado. Lenguaje de programación incorporado 1C: Franquiciado es un lenguaje de programación que se utiliza en la familia de programas 1C:Enterprise. Este lenguaje es un lenguaje precompilado de alto nivel específico de dominio.

La plataforma proporciona un conjunto fijo de clases base enfocadas a resolver problemas típicos en el área de aplicación:

Constante;

Directorio;

Documento;

Registro de documentos;

Enumeración;

Tratamiento;

Plan de cuentas, etc.

Basado en clases base, puede crear cualquier cantidad de clases generadas usando herramientas de configuración visual (no existe la posibilidad de definir una nueva clase mediante programación). Sólo se permite un nivel explícito de herencia de clases. Normalmente, los objetos de clases derivadas representan registros (o algunos conjuntos de registros) en una base de datos. Estas clases forman un "árbol de metadatos". En términos del lenguaje de programación 1C integrado, estas clases se denominan objetos de metadatos.

Se admite la sintaxis de comandos en ruso e inglés.

El lenguaje integrado tiene muchas similitudes con lenguajes como Pascal, Java Script, Basic, pero no es un análogo directo de ninguno de estos lenguajes. Como ya se mencionó, las soluciones de aplicaciones en 1C:Enterprise no están programadas (codificadas) en su totalidad; la mayoría de ellas se describen paramétricamente, en forma de estructuras de metadatos, utilizando un diseñador de formularios, informes, etc. En consecuencia, el lenguaje integrado 1C:Enterprise es un lenguaje de scripting destinado principalmente a programar la lógica empresarial en el contexto del modelo de objetos 1C:Enterprise. En él se programan controladores para diversos eventos que cambian el estado de los objetos del sistema, por ejemplo, controladores para comandos de usuario, controladores para publicar documentos, etc.

Un punto muy importante es que las características de diseño del lenguaje corresponden directamente al modelo de diseño de estructura de datos implementado en 1C:Enterprise. El hecho de que todo el desarrollo de la configuración se lleve a cabo sobre la base del uso de objetos estándar del sistema permite al desarrollador de soluciones de aplicaciones utilizar los objetos correspondientes del lenguaje integrado, que tienen un gran conjunto de funciones y una alta flexibilidad.

Entre las características tecnológicas más importantes del lenguaje integrado:

Precompilación. Antes de la ejecución, los módulos se convierten a código interno;

Almacenamiento en caché de módulos compilados en la memoria;

Escritura suave: el tipo de variables puede cambiar durante la operación;

En ausencia de una descripción de software de los objetos de configuración, la solución de la aplicación puede manipular objetos integrados en la plataforma 1C:Enterprise u objetos descritos por el desarrollador en el proceso de diseño visual del sistema en forma de objetos de metadatos.

Hay varios componentes adicionales que amplían las clases principales, se pueden agregar y modificar libremente; No se recomienda su uso por parte de la empresa desarrolladora. Esto significa que 1C y sus franquiciados rechazan cualquier soporte técnico para configuraciones que utilicen dichos componentes.

Por lo tanto, el componente 1C++ amplía el lenguaje 1C con los medios de una programación orientada a objetos completa. Su uso amplía significativamente las capacidades de configuración de 1C. Este es un producto de software gratuito distribuido bajo la licencia GPL.

Además, existe un proyecto 2C completamente gratuito que no utiliza ningún módulo propietario de 1C u otros fabricantes. Se trata de un núcleo extensible "desde cero" reescrito y distribuido gratuitamente bajo licencia GPL de un sistema tipo 1C, en el que incluso los "objetos integrados" de 1C como directorios y registros son clases redefinidas por el programador de la aplicación.

El lenguaje de la plataforma 2C fue diseñado con el objetivo de lograr la máxima continuidad con los desarrollos existentes para 1C y es una extensión del lenguaje básico de 1C. Al escribir las clases base adecuadas, el lenguaje 2C se puede acercar tanto a 1C 7.7 como a 1C 8.0, aunque 2C: Platform no puede proporcionar una portabilidad 100% automática de las configuraciones de una u otra versión de 1C: Enterprise.

El componente externo .Net Bridge le permite acceder de forma "transparente" desde el lenguaje de programación 1C a ensamblajes y clases integradas de .Net Framework. Admite trabajar con todas las versiones populares de 1C: 7.7/8.0/8.1/8.2.

Descripción del soporte organizativo y legal.

En términos generales, el conjunto de soporte organizacional y legal se puede representar como una estructura que cubre documentos legales que regulan y describen los esquemas de operación de la empresa, materiales instructivos y metodológicos para asegurar el desarrollo y operación de sistemas de control automatizados, así como organizacionales. , documentos administrativos y reglamentarios. Este tipo de apoyo también puede incluir un sistema de formación y reciclaje del personal.

La estructura del apoyo organizacional y legal se presenta en la Figura 2.9.

Figura 2.9 - Estructura del apoyo organizativo y legal

Conclusiones del capítulo

Luego de analizar la estructura funcional de la empresa, se identificó la composición de la parte funcional del sistema de control automatizado y se identificaron las tareas que resuelve cada subsistema.

El análisis de la parte de soporte del sistema de control automatizado determinó soluciones de diseño para soporte informativo, técnico, de software, matemático, organizacional y legal. Se determinaron las áreas que debe proporcionar el sistema de control automatizado: recopilación y procesamiento automatizado de información utilizando métodos de optimización para las principales tareas de gestión, almacenamiento en la memoria de la computadora y uso integrado de información regulatoria, de referencia, operativa y otra información necesaria para la toma de decisiones, organización. del flujo racional de documentos en el centro de control, asignación progresiva de métodos de planificación, contabilidad y análisis del progreso de la producción.

El principal inconveniente del sistema de control automatizado en funcionamiento identificado durante el análisis fue la falta de un subsistema automatizado que reduciría el tiempo de recopilación de información sobre quienes completaron la capacitación y prepararon informes. Así, lo más relevante es la creación de un subsistema automatizado “1C: Centro de Educación Certificada” como componente del subsistema automatizado “Gestión de Relaciones con el Cliente”.

También se debe prestar atención a la disposición de la empresa para implementar el subsistema necesario y modernizar el sistema de control automatizado existente.

El uso generalizado de tecnología informática moderna, la introducción de métodos de optimización y formateo en la actividad económica han cambiado significativamente la tecnología de soporte de información para la gestión.

En las condiciones modernas, el soporte de información para la gestión se lleva a cabo mediante sistemas de control automatizados (ACS).

El sistema de control automatizado (ACS) es un sistema de información diseñado para la implementación automatizada de procesos de gestión.

La puesta en servicio de un sistema de control automatizado debe estar justificada, es decir, debe conducir a resultados técnicos, económicos, sociales o de otro tipo útiles. En particular, el uso de un sistema de control automatizado permite reducir el número de personal de gestión, mejorar la calidad del funcionamiento del objeto de control y del propio control, etc.

Se imponen una serie de requisitos generales al sistema de control automatizado.

En primer lugar, se debe garantizar la compatibilidad de los elementos entre sí, así como con los sistemas automatizados interconectados con este sistema de control automatizado.

El sistema automatizado debe poder adaptarse a la modernización, el desarrollo y la expansión, teniendo en cuenta las perspectivas de futuro.

El sistema de control automatizado debe tener un grado suficiente de confiabilidad para lograr los objetivos establecidos del sistema en condiciones predeterminadas de su uso.

Un sistema de control automatizado debe ser suficientemente adaptable a los cambios en las condiciones de su uso. En este caso, el grado de cambio en las condiciones de uso del sistema, por regla general, se especifica específicamente de antemano.

El sistema de control automatizado debe prever el seguimiento del correcto desempeño de las funciones automatizadas y diagnósticos que indiquen la ubicación, tipo y causa de las violaciones del correcto funcionamiento del sistema.

El sistema de control automatizado debe proporcionar medidas de protección contra acciones incorrectas del personal que conduzcan a una condición de emergencia de un objeto o sistema de control, contra cambios accidentales y destrucción de información y programas, así como contra intervenciones no autorizadas y fugas de información.

Un sistema de control automatizado, como cualquier sistema de información moderno que tenga una estructura compleja y multifacética, se puede dividir en dos componentes: una parte funcional y una parte de soporte.

parte funcional Resuelve aquellas tareas para las cuales se crea cada sistema individual. Estas tareas se convierten en las funciones correspondientes del sistema de control automatizado.

Cualquier sistema de control automatizado durante su funcionamiento debe realizar las siguientes funciones:

    recopilación, procesamiento y análisis de información (señales, mensajes, documentos, etc.) sobre el estado del objeto de control;

    desarrollo de acciones de control (programas, planes, etc.);

    transmisión de acciones de control (señales, instrucciones, documentos) para la ejecución y control de su transmisión;

    implementación y control de acciones de control;

Intercambio de información (documentos, mensajes, etc.) con otros sistemas automatizados relacionados.

La composición de las funciones automatizadas del sistema de control automatizado y el grado de su automatización se determinan de acuerdo con indicadores técnicos y económicos, además de tener en cuenta la necesidad de liberar al personal de realizar acciones repetitivas y crear las condiciones para el uso de sus Habilidades creativas en el proceso de trabajo.

Parte de soporte El sistema de control automatizado se puede dividir en los siguientes componentes:

    software y matemáticas;

    soporte informativo;

    apoyo técnico;

    apoyo metodológico y organizativo;

    apoyo lingüístico;

    dotación de personal.

Software y matemáticas Es uno de los componentes más importantes de un sistema de información moderno. El software consta de todas las herramientas de software utilizadas tanto directamente para realizar las tareas asignadas al sistema como para garantizar el funcionamiento normal de todo el conjunto de medios técnicos utilizados. El software es un conjunto de algoritmos, métodos y modelos matemáticos que se utilizan en el funcionamiento de un sistema de información.

El software del ACS debe ser suficiente para realizar todas sus funciones, implementado mediante tecnología informática. Además, debe haber medios disponibles para organizar todos los procesos de procesamiento de datos requeridos, permitiendo la ejecución oportuna de todas las funciones automatizadas en todos los modos operativos del sistema de control automatizado.

El software ACS debe tener las siguientes propiedades:

Suficiencia funcional (integridad);

Fiabilidad (incluida la recuperabilidad y disponibilidad de herramientas de detección de errores);

    adaptabilidad a condiciones cambiantes;

    la capacidad de modificar el sistema si es necesario;

    modularidad de la construcción;

    facilidad de uso.

Como regla general, el software del sistema de control automatizado se construye sobre la base de paquetes de software de aplicación ya existentes. Dicho software permite descargar y verificar piezas y le permite reemplazar algunos programas sin corregir otros.

Se imponen una serie de requisitos al software ACS que permiten lograr un funcionamiento confiable del sistema en su conjunto. En particular, el software se selecciona y configura de tal manera que la ausencia de datos individuales no afecta el desempeño de las funciones del sistema de control automatizado en cuya implementación no se utilizan estos datos. Es obligatorio tomar medidas para proteger contra errores al ingresar y procesar información, asegurando la calidad especificada de desempeño de las funciones del sistema automatizado.

El software utilizado debe contar con herramientas para diagnosticar los medios técnicos del sistema de control automatizado y monitorear la confiabilidad de la información de entrada.

El software general del sistema de control automatizado debe permitir la configuración de componentes individuales de software especial y un mayor desarrollo del software del sistema sin interrumpir el proceso de su funcionamiento. Todos los programas de software especiales para un sistema de control automatizado específico deben ser compatibles tanto entre sí como con su software general. Además, es necesario proteger la parte del software ya generada y cargada contra cambios accidentales.

Soporte de información incluye todo el conjunto de información a partir de la cual funcionará el sistema de control automatizado, incluidos datos sobre el contenido, el sistema de codificación, los métodos de direccionamiento, los formatos de datos y la forma de presentación de la información recibida y emitida por el sistema de control automatizado.

La totalidad de los conjuntos de información del ACS está organizada en forma de bases de datos en soporte informático. La información contenida en las bases de datos debe actualizarse constantemente de acuerdo con la frecuencia de su uso durante la operación del sistema. Se proporcionan las medidas necesarias para restaurar conjuntos de información en caso de falla de cualquier medio técnico del sistema de control automatizado, así como medidas para controlar la identidad de la información del mismo nombre en las bases de datos.

Apoyo técnico constituye un conjunto de todos los medios técnicos utilizados en el funcionamiento del sistema de información. Los medios técnicos modernos son muy diversos y permiten resolver una amplia gama de problemas.

Se pueden distinguir los siguientes grupos de medios técnicos que aseguran el funcionamiento de los sistemas de información modernos:

Instalaciones informáticas (ordenadores de diversas prestaciones y finalidades);

    medios de comunicación;

    medios de tecnología organizacional.

La tecnología informática se utiliza en todas las etapas del procesamiento y almacenamiento de la información y es la base para la integración de todos los medios técnicos en un único sistema automatizado.

Los medios de comunicación están destinados, en primer lugar, a transmitir información y, en algunos casos, funcionan en conjunto con la tecnología informática.

Los equipos de oficina permiten realizar diversas acciones con información (por ejemplo, presentación en diversas formas, copia, etc.), así como operaciones auxiliares en el marco de diversas tareas de soporte informativo para las actividades de gestión.

Los medios técnicos del sistema automatizado de control, al interactuar con otros sistemas, deberán ser compatibles en interfaces con los correspondientes medios técnicos de estos sistemas y los sistemas de comunicación utilizados.

Cualquier medio técnico del sistema de control automático debe permitir su sustitución por un medio técnico similar sin ajuste ni cambios de diseño en otros medios técnicos del sistema de control automático.

Apoyo metodológico y organizativo. es un conjunto de métodos, herramientas y documentos especiales que establecen el procedimiento para el trabajo conjunto de los medios técnicos del sistema de control automatizado y el personal que lo atiende, así como la interacción del personal entre sí en el proceso de trabajo con el sistema. Este tipo de soporte también incluye diversos métodos y medios para organizar y realizar la capacitación del personal sobre cómo trabajar con este sistema de información (por ejemplo, métodos de enseñanza, programas de cursos y ejercicios prácticos, ayudas técnicas para la capacitación, etc.).

El principal objetivo del apoyo metodológico y organizativo es mantener la funcionalidad del sistema de información y la posibilidad de su mayor desarrollo. Las instrucciones incluidas en el soporte metodológico y organizativo del sistema de control automatizado deben definir claramente las acciones del personal al realizar todas las funciones del sistema en todos los modos de operación. Además, las instrucciones deben contener instrucciones específicas sobre acciones en caso de situaciones de emergencia o interrupción de las condiciones normales de funcionamiento del sistema de control automatizado.

Las instrucciones también desempeñan el papel de soporte legal para los sistemas de control automatizados. Establecen la fuerza legal de la información sobre los soportes de datos y los documentos utilizados en el funcionamiento del sistema de control automatizado y creados por el sistema. Las instrucciones regulan las relaciones jurídicas entre las personas que forman parte del personal de ACS (derechos, deberes y responsabilidades), así como entre el personal de este ACS y el personal de otros sistemas que interactúan con este ACS.

Apoyo lingüístico es un conjunto de lenguajes de comunicación entre el personal de mantenimiento del sistema de control automatizado y sus usuarios con el soporte técnico, software, matemático e informativo del sistema, así como los términos y definiciones utilizados en el mismo.

Con la ayuda del soporte lingüístico se logra la comodidad, la claridad y la estabilidad de la comunicación entre los usuarios y las herramientas de automatización. Un requisito previo es la disponibilidad de medios para corregir los errores que surgen cuando los usuarios se comunican con los medios técnicos del sistema de control automatizado.

El proceso de control de la automatización se puede realizar de varias formas. En un caso, una organización puede instalar y utilizar herramientas informáticas de procesamiento de información sólo para simplificar algunas operaciones rutinarias del proceso de procesamiento de documentos. Al mismo tiempo, los principios y métodos generales de trabajar con información se mantienen sin cambios. Este camino no es eficaz porque no utiliza plenamente las capacidades de las tecnologías de la información modernas.

Un enfoque fundamentalmente diferente es la creación de sistemas complejos para automatizar las actividades de gestión. Estos sistemas incluyen no sólo herramientas de procesamiento de documentos, sino también sistemas de gestión de bases de datos, sistemas expertos, modernas herramientas de telecomunicaciones y mucho más. La creación de tales sistemas puede aumentar significativamente la eficiencia de la gestión de la organización.

En las condiciones operativas modernas de las organizaciones, los requisitos de velocidad de entrega de información al consumidor y la velocidad de procesamiento de la información están aumentando significativamente. Por lo tanto, se crean sistemas de control automatizados distribuidos de múltiples niveles. Ejemplos de tales sistemas son servicios bancarios, fiscales, estadísticos, de suministro y otros, cuyo soporte de información se lleva a cabo mediante la creación de bases de datos electrónicas y bancos de datos, construidos teniendo en cuenta la Estructuras organizativas, funcionales y de información del objeto. Para implementarlos se utilizan herramientas y sistemas de procesamiento distribuido de información, construidos sobre la base de estaciones de trabajo locales automatizadas conectadas por canales de comunicación de alto rendimiento.

Estos sistemas de control automatizados distribuidos de varios niveles permiten resolver eficazmente los problemas de procesamiento de información operativa y trabajar con documentos, ayudar a analizar situaciones del mercado y desarrollar decisiones de gestión.

El uso de un sistema de gestión automatizado ayuda a mejorar la productividad de una organización en particular y garantiza un cierto nivel de calidad de gestión. La mayor eficiencia de los sistemas de control automatizados se logra optimizando los planes de trabajo de las empresas e industrias en su conjunto.

De gran importancia son el rápido desarrollo de decisiones operativas, la maniobra precisa de recursos materiales, financieros y de otro tipo, y otros factores. Por tanto, el proceso de gestión mediante sistemas automatizados se basa en modelos económicos y organizativos que, en mayor o menor medida, reflejan las propiedades estructurales y dinámicas del objeto (empresa, organización, firma). La adecuación del modelo es condición indispensable para su aplicación. La adecuación se entiende, en primer lugar, como su conformidad con el objeto en términos de comportamiento en condiciones que imitan la situación real. Además, el modelo debe reflejar el comportamiento del objeto modelado en términos de sus características y propiedades que son esenciales para resolver el problema. Obviamente, es imposible lograr una repetición completa del objeto en el modelo. Sin embargo, se pueden descuidar algunos detalles que no son esenciales para analizar la situación y tomar la decisión de gestión adecuada.


6.1 Software ACS El software ACS se entiende como un conjunto de diversos métodos matemáticos, modelos, algoritmos y paquetes de software que aseguran el funcionamiento del ACS de acuerdo con su finalidad prevista. El término software para sistemas de control automatizados se refiere a los aspectos matemáticos, lingüísticos y de software de los sistemas de control automatizados. Una característica del software del sistema de control automatizado es: -aumento del coste relativo del software en comparación con el complejo de medios técnicos (CTS) del sistema de control automático; -tipificación (unificación) razonable del software de aplicación; -amplio uso de PPP, carcasas estándar, etc.


Soporte matemático para sistemas de control automatizados El soporte matemático (MS) se puede dividir en tres partes: software informático (o interno); software matemático especial (o externo); software de teleprocesamiento MO interno incluye sistemas operativos (MS DOS), sistemas de programación y pruebas (programas para verificar el correcto funcionamiento de los dispositivos informáticos),



Software ACS Sistema operativo (SO): un conjunto de programas que controlan el proceso de resolución de problemas. La carga óptima de todos los nodos informáticos y dispositivos externos es la tarea principal del sistema operativo. El sistema operativo incluye una serie de programas, los principales de los cuales son: despachador, supervisor y programas de utilidad. Dispatcher es un programa que proporciona un determinado modo de funcionamiento de la computadora. Supervisor es un programa que asegura la operación asignada a la máquina por un operador humano en el marco del modo establecido para ella. Las utilidades incluyen programas para ingresar datos fuente; programas para editar y mostrar resultados; programas para la comunicación entre el sistema operativo y un operador humano, etc. Los sistemas operativos se distinguen según su finalidad prevista en: generales para resolver una amplia gama de problemas y problemáticos. Dependiendo de la organización de la resolución de problemas en una computadora, se distinguen los siguientes modos de funcionamiento del sistema operativo: individual, por lotes, multiprogramación, tiempo compartido.


En modo individual, el ordenador está permanente o temporalmente a disposición de un usuario. El procesamiento por lotes supone que el usuario no tiene acceso directo a la computadora. Las tareas preparadas por él en forma de programas y datos originales son cargadas por el operador en la computadora y resueltas en lotes. La multiprogramación implica la capacidad de resolver simultáneamente varias tareas utilizando diferentes programas, teniendo en cuenta la prioridad. En este caso, se resuelve una tarea en cada momento. Si mientras se resuelve un problema se hace necesario resolver otro de mayor prioridad, entonces se interrumpe la solución del problema, se resuelve el segundo problema, luego de resolverlo se continúa resolviendo el primero desde el lugar donde se encontraba el problema. se produjo la parada, etc. El modo de tiempo compartido implica la resolución de varias tareas simultáneamente.


Software ACS. Los principales objetivos del sistema operativo son: aumentar el rendimiento de los sistemas informáticos (CS) procesando un flujo de entrada continuo de tareas y compartiendo recursos del CS con tareas que se ejecutan simultáneamente en el sistema operativo (efecto de multiprogramación); planificar aeronaves de acuerdo con las prioridades de tareas individuales, mantener registros y monitorear el uso de recursos; proporcionar a los programadores herramientas para desarrollar y depurar programas; proporcionar al operador medios de control de la aeronave.


Software ACS El sistema de programación está diseñado para automatizar el proceso de tareas de programación, contiene traductores de lenguajes algorítmicos de varios niveles y tipos y programas de servicio; El sistema de programas de utilidad (pruebas) está diseñado para monitorear el correcto funcionamiento de la aeronave, detectar fallas y analizar los tipos y causas de las fallas. El MO especial (externo) incluye PPP, programas para tareas específicas de sistemas de control automatizados y un programa de despacho del sistema. Los PPP son paquetes de software funcionalmente completos destinados a resolver una determinada clase de problemas.


Soporte matemático para sistemas de control automatizados Los programas para tareas específicas de sistemas de control automatizados se pueden dividir en 3 clases: programas comunes a todas las industrias (industria, transporte, comercio, etc.); programas comunes a las empresas de la industria de la aviación; programas específicos para cada empresa (ARZ, asociación de producción de aviación, etc.). Las tareas de clase 1 incluyen las siguientes tareas: (nómina, contabilidad de personal, contabilidad de inventarios, etc.). El segundo incluye tareas de control de despacho (cálculo de modos de funcionamiento de equipos, cálculo de potencia de vehículos, etc.). El tercero incluye tareas específicas de reparación de aeronaves (producción de repuestos durante las reparaciones, preparación de las aeronaves para los vuelos, etc.). Una gran cantidad de programas con diferentes propósitos y significados requieren su organización a lo largo de todo el sistema, y ​​esto se realiza mediante un programa de despacho del sistema.


MO se construye sobre la base de escribir algoritmos en clases de problemas y unificar métodos para resolver problemas relacionados. Este enfoque permite reducir el costo del aprendizaje automático, así como crear modelos unificados para resolver diversas clases de problemas. La primera clase de tareas incluye tareas contables primarias (masivas) (recurrencia de liquidaciones con suscriptores - millones por año, cálculos de nómina - cientos de miles por año, etc.). Ejemplos de tareas contables primarias: contabilidad diaria, decenal, mensual y anual de la recepción y consumo de combustibles y lubricantes por aerolíneas, unidades, etc.; horas de vuelo diarias, semanales y mensuales de las aeronaves; contabilidad y análisis de fallas de equipos de aviación; contabilidad de movimientos e inventarios de activos materiales, etc.


La contabilidad primaria permite acumular en el camino una gran cantidad de información, cuya posterior generalización permitirá obtener datos estadísticos completos necesarios para la toma de decisiones. Estas tareas forman una clase de tareas contables y estadísticas, que también incluyen tareas de planificación regulatoria. La característica matemática de estos problemas es una gran cantidad de operaciones lógicas con una pequeña cantidad de operaciones matemáticas simples. Entre las tareas de esta clase podemos destacar: preparación de todas las formas de informes estadísticos y contables; cálculo de costos de productos; cálculos de necesidades de combustibles y lubricantes, etc. Un gran grupo de los enumerados son tareas contables caracterizadas por una gran cantidad de sumas, restas, operaciones lógicas (clasificación, agrupación, comparación) y la formación de tablas de una forma determinada. software SCA


El modelado matemático se utiliza ampliamente en tres clases de problemas fundamentalmente diferentes: cálculos complejos no extremos, previsión y optimización. En un sistema de control automatizado, una persona conserva las funciones de toma de decisiones con base en los datos emitidos por el sistema de control automatizado, observación directa del proceso controlado (objeto) (control), desarrollo y establecimiento de reglas decisivas (criterios, estándares, niveles límite de cantidades controladas), mejora de la gestión y sus formas, análisis de resultados de funcionamiento informático y elaboración de medidas para mejorar el funcionamiento del sistema.


6.3 Los lenguajes de programación para describir tareas en sistemas de control automatizados son lenguajes de alto nivel (es decir, lenguajes que no son de máquina), que se han convertido en una especie de puente de conexión entre los humanos y el lenguaje de máquina de la computadora. Los lenguajes de alto nivel funcionan a través de programas de traducción que ingresan "código fuente" (un híbrido de palabras en inglés y expresiones matemáticas que es leído por una máquina) y, en última instancia, hacen que la computadora ejecute los comandos correspondientes que se dan en lenguaje de máquina. Hay dos tipos principales de compiladores: intérpretes, que escanean y verifican el código fuente en un solo paso, y compiladores, que escanean el código fuente para producir texto de programa en lenguaje de máquina que luego se ejecuta por separado. Intérpretes Una ventaja de la implementación de un intérprete que se cita con frecuencia es. que permite un “régimen directo”. El modo directo le permite preguntarle a la computadora un problema como PRINT *3/2.1 y le devuelve la respuesta tan pronto como presiona ENTER (esto le permite usar una computadora de $3,000 como una calculadora de $10). Además, los intérpretes tienen atributos especiales que facilitan la depuración. Puede, por ejemplo, interrumpir el procesamiento de un programa intérprete, mostrar el contenido de ciertas variables, hojear el programa y luego continuar con la ejecución. Compiladores Un compilador es un traductor de lenguaje de texto a máquina que lee el texto fuente. Lo evalúa según la estructura sintáctica del lenguaje y lo traduce al lenguaje de máquina. En otras palabras, el compilador no ejecuta programas, sino que los construye. Los intérpretes no pueden separarse de los programas que ejecutan; los compiladores hacen su trabajo y abandonan la escena. Cuando trabaje con un lenguaje compilado como Turbo BASIC, encontrará necesario pensar en sus programas en términos de dos fases principales de su vida: el período de compilación y el período de ejecución.


2. CLASIFICACIÓN DE LENGUAJES DE PROGRAMACIÓN 2.1. Lenguajes orientados a máquinas Los lenguajes orientados a máquinas son lenguajes cuyos conjuntos de operadores y medios visuales dependen significativamente de las características de la computadora (lenguaje interno, estructura de la memoria, etc.). Los lenguajes orientados a máquinas le permiten utilizar todas las capacidades y características de los lenguajes dependientes de máquinas: - alta calidad de los programas creados (compacto y velocidad de ejecución); - la capacidad de utilizar recursos de hardware específicos; - previsibilidad del código objeto y de los pedidos de memoria; - para crear programas eficaces, es necesario conocer el sistema de comando y las características operativas de esta computadora; - el laborioso proceso de escribir programas (especialmente en lenguajes de máquina y JSC), que está mal protegido contra errores; - baja velocidad de programación; - la imposibilidad de utilizar directamente programas compilados en estos lenguajes en otro tipo de ordenadores.


Los lenguajes orientados a máquinas se dividen en clases según el grado de programación automática: Lenguaje de máquina La computadora tiene su propio lenguaje de máquina específico (en adelante, ML), está prescrito para realizar operaciones específicas en los operandos que definen, por lo tanto ML es un lenguaje de comandos. Sin embargo, algunas familias de ordenadores (por ejemplo, ES Computers, IBM/370/, etc.) disponen de un único ME para ordenadores de diferente potencia. El comando de cualquiera de ellos proporciona información sobre la ubicación de los operandos y el tipo de operación que se realiza. Lenguajes de codificación simbólica Los lenguajes de codificación simbólica (en adelante SCL), al igual que ML, son lenguajes de comando. Sin embargo, los códigos de operación y las direcciones en las instrucciones de la máquina, que son una secuencia de dígitos binarios (en el código interno) u octales (usados ​​a menudo al escribir programas), se reemplazan en YSC por símbolos (identificadores), cuya forma de escritura ayuda al programador. Recuerde más fácilmente el contenido semántico de la operación. Esto garantiza una reducción significativa en la cantidad de errores al redactar programas de Autocode. También hay lenguajes que incluyen todas las capacidades de YSC, mediante la introducción ampliada de comandos macro: se denominan Autocodes. Los códigos automáticos desarrollados se denominan ensambladores. Los programas de servicio, etc., por regla general, se escriben en lenguajes como Macro ensamblador. Un lenguaje que es un medio para reemplazar una secuencia de símbolos que describen la ejecución de las acciones requeridas por la computadora en una forma más comprimida se llama Macro (. herramienta de repuesto). Básicamente, una macro está diseñada para acortar la entrada original del programa. El componente de software que permite que funcionen las macros se llama procesador de macros.


2.2. Lenguajes independientes de la máquina Los lenguajes independientes de la máquina son un medio para describir algoritmos para resolver problemas e información a procesar. Son cómodos de utilizar para una amplia gama de usuarios y no requieren que conozcan los detalles de la organización del funcionamiento de computadoras y aviones. Estos lenguajes se denominan lenguajes de programación de alto nivel. Los programas compilados en dichos lenguajes son secuencias de declaraciones estructuradas según las reglas de visualización del lenguaje (tareas, segmentos, bloques, etc.). Los operadores de lenguaje describen las acciones que el sistema debe realizar después de traducir el programa a ML. El programador no pudo describir en detalle el proceso computacional a nivel de instrucciones de máquina, sino centrarse en las características principales del algoritmo. Lenguajes orientados a problemas Con la expansión de las áreas de aplicación de la tecnología informática, surgió la necesidad. surgió para formalizar la presentación de la formulación y solución de nuevas clases de problemas. Fue necesario crear lenguajes de programación que, utilizando notaciones y terminología de esta área, permitieran describir los algoritmos de solución requeridos para los problemas asignados, se convirtieron en lenguajes orientados a problemas; Estos lenguajes, lenguajes enfocados a resolver problemas específicos, deben proporcionar al programador los medios para formular de manera breve y clara un problema y obtener resultados en la forma requerida. Hay muchos lenguajes problemáticos, por ejemplo: Fortran, Algol - lenguajes. ​​creado para resolver problemas matemáticos; Simula, Slang - para modelar; Lisp, Snoball: para trabajar con estructuras de listas.


Lenguajes universales Se han creado lenguajes universales para una amplia gama de tareas: comerciales, científicas, modelado, etc. El primer lenguaje universal fue desarrollado por IBM, que se convirtió en Pl/1 en la secuencia de lenguajes. El segundo lenguaje universal más poderoso se llama ALGOL-68. Le permite trabajar con caracteres, dígitos, números de punto fijo y punto flotante. PL/1 cuenta con un desarrollado sistema de operadores para la gestión de formatos, para trabajar con campos de longitud variable, con datos organizados en estructuras complejas y para el uso eficiente de los canales de comunicación. El lenguaje tiene en cuenta las capacidades de interrupción incluidas en muchas máquinas y cuenta con operadores adecuados. Se ofrece la posibilidad de ejecución paralela de secciones del programa. Los programas en Pl/1 se compilan mediante procedimientos automáticos. El lenguaje utiliza muchas características de Fortran, Algol y Cobol. Sin embargo, permite no solo una asignación de memoria dinámica, sino también controlada y estadística. Lenguajes conversacionales La aparición de nuevas capacidades técnicas ha planteado una tarea a los programadores de sistemas: crear herramientas de software que aseguren la interacción operativa entre una persona y una computadora; se llaman lenguajes de diálogo. Este trabajo se llevó a cabo en dos direcciones. Se crearon lenguajes de control especiales para proporcionar un impacto operativo en la finalización de las tareas, que se compilaron en lenguajes no desarrollados previamente (sin diálogo). También se desarrollaron lenguajes que, además de con fines de gestión, proporcionarían una descripción de algoritmos para la resolución de problemas.


La necesidad de garantizar una interacción rápida con el usuario requería almacenar una copia del programa fuente en la memoria de la computadora incluso después de recibir el programa objeto en código de máquina. Al realizar cambios en un programa utilizando un lenguaje interactivo, el sistema de programación, utilizando tablas especiales, establece la relación entre las estructuras de los programas fuente y objeto. Esto le permite realizar los cambios editoriales necesarios en el programa objeto. Un ejemplo de lenguajes conversacionales es el BASIC. BASIC utiliza notación similar a las expresiones matemáticas ordinarias. Muchos operadores son versiones simplificadas de los operadores de Fortran. Por tanto, este lenguaje permite resolver una gama bastante amplia de problemas. Los lenguajes no procedimentales constituyen un grupo de lenguajes que describen la organización de los datos procesados ​​mediante algoritmos fijos (lenguajes tabulares y generadores de informes), y Idiomas para comunicarse con sistemas operativos. Al permitir describir claramente tanto la tarea como las acciones necesarias para resolverla, las tablas de decisiones permiten determinar claramente qué condiciones deben cumplirse antes de pasar a cualquier acción. Una tabla de decisión, que describe una situación determinada, contiene todos los diagramas de bloques posibles de implementaciones de algoritmos de solución. Los métodos tabulares son fácilmente dominados por especialistas de cualquier profesión. Los programas escritos en lenguaje tabular describen convenientemente situaciones complejas que surgen durante el análisis del sistema.




Arriba