ES2287217T3 - Metodo de iniciacion de multiples dispositivos y un sistema de control para controlar multiples dispositivos. - Google Patents

Metodo de iniciacion de multiples dispositivos y un sistema de control para controlar multiples dispositivos. Download PDF

Info

Publication number
ES2287217T3
ES2287217T3 ES02028166T ES02028166T ES2287217T3 ES 2287217 T3 ES2287217 T3 ES 2287217T3 ES 02028166 T ES02028166 T ES 02028166T ES 02028166 T ES02028166 T ES 02028166T ES 2287217 T3 ES2287217 T3 ES 2287217T3
Authority
ES
Spain
Prior art keywords
initiation
request
printer
activated
multiple devices
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
ES02028166T
Other languages
English (en)
Inventor
Hiroaki Hayashi
Atsushi Sakai
Toshiyuki Sugimoto
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Application granted granted Critical
Publication of ES2287217T3 publication Critical patent/ES2287217T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Power Sources (AREA)
  • Multi Processors (AREA)
  • Stored Programmes (AREA)
  • Selective Calling Equipment (AREA)

Abstract

Un método para iniciar múltiples dispositivos (14, 16, 18) de un sistema de control para controlar múltiples dispositivos, en el que el sistema de control comprende un sistema de ordenador capaz de ejecutar programas escritos en un lenguaje de programación orientado a objetos y cada uno de los múltiples dispositivos (14, 16, 18) tiene un respectivo objeto (34a-34c) asociado con el mismo, emitiendo el objeto una solicitud de iniciación para iniciar el correspondiente dispositivo, que comprende: (a) recibir una solicitud de iniciación respectiva para cada dispositivo; (b) ejecutar un proceso de iniciación común para múltiples solicitudes de iniciación recibidas en la etapa (a); y (c) emitir un informe de finalización de proceso de iniciación después de que el proceso de iniciación común finaliza y enviar el informe de finalización a cada objeto (34a-34c) desde el que fue recibida una solicitud de iniciación en la etapa (a), en el que: cada objeto (34a-34c) emite una primera clase de solicitudde iniciación en respuesta a la potencia al dispositivo correspondiente (14, 16, 18) que está siendo activado; la primera clase de solicitudes de iniciación recibidas en la etapa (a) contiene un ID de solicitud de iniciación que toma el mismo valor para todos los dispositivos (14, 16, 18) que fueron activados simultáneamente; y la etapa (b) ejecuta dicho proceso de iniciación común para todas las solicitudes de iniciación que tienen la misma solicitud de iniciación ID.

Description

Método de iniciación de múltiples dispositivos y un sistema de control para controlar múltiples dispositivos.
La presente invención se refiere a un método de iniciación de dispositivos individuales en un sistema de control que controla múltiples dispositivos, a un programa para ejecutar este método sobre un ordenador, y a un medio de almacenamiento de datos para portar este programa. La invención también se refiere a un sistema de control adecuado para controlar los múltiples dispositivos después de que los dispositivos hayan sido iniciados apropiadamente.
El documento WO 99/34287 expone un método para iniciar tareas de ordenador que van a ser realizadas por uno o más procesadores en un sistema de ordenador. El método incluye las etapas de configurar las unidades de memoria asociadas con los procesadores como está especificado por los datos de definición de mapa de memoria: crear colas de mensaje de sistema como está especificado por la información de cola de mensaje; crear semáforos de sistema de funcionamiento como está especificado por los datos de definición de semáforo; crear cada una de las tareas de ordenador como está especificado por los datos de definición de tareas; iniciar cada tarea de ordenador; señalizar la finalización de la etapa de iniciación para cada una de las tareas de ordenador; y radiodifundir un mensaje para indicar la finalización de todas las etapas de iniciación asociadas con las tareas de ordenador. Un programa de control de iniciación incluye un objeto de iniciación común para crear, iniciar y sincronizar las tareas de ordenador, y un objeto de iniciación de hardware específico para proporcionar datos de definición al objeto de iniciación común, en donde los datos de definición están asociados con el sistema de funcionamiento común y las tareas de ordenador van a ser realizadas por el sistema de ordenador.
Los programas escritos en el lenguaje de programación orientado a objetos Java® se ejecutan sobre una Máquina Virtual de Java (JVM). Las aplicaciones de Java pueden por tanto ser utilizadas sobre todo el sistema de funcionamiento (OS) que soporta la JVM, en lo que se refiere al tipo de versión del OS. Una aplicación de software se puede utilizar en múltiples sistemas de funcionamiento, por lo tanto, no necesita ser desarrollado separadamente para cada diferente OS, y el desarrollo de la aplicación es, de este modo, de coste más efectivo. Además, debido a que una aplicación de software común puede ser proporcionada para diferentes sistemas de funcionamiento, los usuarios tienen acceso a una más amplia selección de software y se puede continuar utilizando el software existente incluso después de modernizar el OS.
Los sistemas POS, tales como los utilizados en las cajas registradoras en grandes almacenes están configurados mediante la conexión de una impresora, un cajón de caja registradora, y otros dispositivos periféricos a un ordenador principal o host tal como un ordenador personal. Las funciones de un sistema POS se consiguen ejecutando sobre el ordenador principal un programa de aplicación para controlar los dispositivos periféricos. Si el programa de aplicación ejecutado por el ordenador principal en este tipo de sistema POS está escrito en Java, los nuevos sistemas POS pueden ser configurados fácilmente utilizando el hardware existente. Además, los costes de desarrollo de software se pueden reducir de manera que la carga financiera (coste) para el usuario es menor.
La Fig. 1 es un diagrama de sistema de un sistema POS 100 construido con una aplicación Java (referida más adelante como un sistema JavaPOS). Como se muestra en la Fig. 1, este sistema JavaPOS 100 tiene dispositivos tales como una impresora 14, un cajón de caja registradora 16, y un dispositivo MICR 18 conectado a un ordenador principal 12 (MICR = Reconocimiento de carácter de Tinta Magnético). El sistema JavaPOS 100 es capaz de procesar cheques, y el dispositivo MICR 18 ejecuta un proceso MICR para leer información impresa como caracteres de tinta magnéticos sobre la parte delantera del cheque.
El OS del ordenador principal 12 soporta la JVM 30. La JVM 30 tiene un objeto de control de dispositivo (DCO) 32 para cada categoría de dispositivo (para cada tipo de dispositivo tal como impresora, cajón de caja registradora, y dispositivo MICR) y una clase de servicio de dispositivo para cada modelo de dispositivo. Los objetos de control 32 están dispuestos como parte del sistema para cada categoría de dispositivo, y las clases de servicio son suministradas por el fabricante del dispositivo para cada modelo de dispositivo. Los objetos de servicio de dispositivo (DSO 43) son derivados desde las respectivas clases de servicio de dispositivo como se expondrá más adelante. Para distinguir los objetos de control 32 y los objetos de servicio 34 dispuestos para la impresora 14, el cajón de caja registradora 16, y el dispositivo MICR 18 de uno a otro, estos están referenciados más adelante como el DCO 32a de impresora, el DCO 32b de cajón de caja registradora, el DCO 32 c de MICR, y el DSO 34a de impresora, el DSO 34b de cajón de caja registradora, y el DSO 34c de MICR.
Un programa de aplicación (aplicación de POS) 36 para conseguir la funcionalidad de un sistema POS controlando una entrada y salida de dispositivo se ejecuta en la JVM 30. Para utilizar la impresora 14, por ejemplo, la aplicación POS 36 primero declara la utilización de la impresora 14, y después crea una instancia de la clase de dispositivo de impresora para obtener el DSO 34 para la impresora 14. Cuando la aplicación POS 36 después emite una orden de impresión, los datos de impresión se transmiten al DCO 32a de impresora, y el DCO 32a de impresora invoca al DSO 34a de impresora. El DSO 34a de impresora envía entonces los datos de impresión a través del accionador de puerto 35 a la impresora 14, y el proceso de impresión se pone en marcha. Las rutinas de impresión pueden, por tanto, estar escritas, cuando la aplicación de POS 38 está escrita, sin saber el modelo de impresora 14. El DSO 34 de este modo absorbe las diferencias entre los modelos de dispositivo, y funciona como un bloque de construcción en la fabricación de una aplicación POS de dispositivo independiente 36.
El procedimiento general en un sistema de JavaPOS 100 como se ha descrito anteriormente, cuando la potencia para un dispositivo individual es activada, es iniciar el dispositivo mediante el DSO 34 dispuesto para ese modelo de dispositivo. En otras palabras, cada DSO 34 incluye una rutina de iniciación para ejecutar este proceso de iniciación, y cuando un dispositivo particular es activado, la rutina de iniciación del correspondiente DSO 34 se ejecuta. En el proceso de iniciación el ordenador principal 12 pregunta a cada dispositivo por el modelo de dispositivo y funciones, por ejemplo, y ajusta cada dispositivo a un estado particular.
En general, sin embargo, un sistema POS tiene un dispositivo principal específico (a menudo la impresora) con los otros dispositivos conectados al dispositivo principal. La Fig. 12 es un diagrama de sistema que muestra la configuración de tal sistema de JavaPOS. La potencia es suministrada desde el dispositivo principal a los otros dispositivos en esta configuración de sistema de control. Si la impresora 14 es el dispositivo principal del sistema de JavaPOS 110 como se muestra en la Fig. 2, por ejemplo, la potencia es suministrada desde la impresora 14 al cajón de la caja registradora 16 y el dispositivo MICR 18. Cuando la potencia de la impresora 14 está activada, el suministro de potencia a los otros dispositivos conectados a la impresora 14 es automáticamente activado al mismo tiempo. En otras palabras, la potencia es suministrada para muchos dispositivos simultáneamente. Los procesos de iniciación para los dispositivos son por tanto ejecutados simultáneamente en paralelo por los respectivos DSOs 34 cuando los dispositivos son activados.
Sin embargo, el proceso de iniciación se ejecuta por cada DSO 34 sin sincronización con ningún otro DSO 34 (esto es, sin consideración de cualesquiera otros procesos DSO 34 que se puedan estar ejecutando). Como resultado, si, mientras un DSO 34 está ejecutando un proceso de iniciación, el ordenador principal 12 vuelve a responder al proceso de iniciación ejecutado por otro DSO 34, cada DSO 34 que ejecuta un proceso de iniciación es incapaz de determinar si el ordenador principal está respondiendo a su propio proceso de iniciación o al proceso de iniciación de otro DSO 34, y los procesos de iniciación pueden no ejecutarse correctamente.
Por ejemplo, si el DSO 34c de MICR solicita la versión ROM del dispositivo MICR 18 durante el proceso de iniciación y sustancialmente al mismo tiempo el DSO 34a de impresora solicita el modelo de la impresora 14, las respuestas a estas solicitudes son retornadas tanto al DSO 34c de MICR como al DSO 34a de impresora. El DSO 34c de MICR y el DSO 34a de impresora son incapaces de determinar si la respuesta contiene la versión ROM del dispositivo MICR 18 o el modelo de impresora 14.
La presente invención se dirige a resolver este problema, y un objeto de la invención es hacer posible que los procesos de iniciación se ejecuten adecuadamente en respuesta a las solicitudes de iniciación para múltiples dispositivos.
Este objeto se consigue con un método como el reivindicado en la reivindicación 1, un sistema de control como el reivindicado en la reivindicación 8 y un programa como el reivindicado en la reivindicación 11. Las realizaciones preferidas de la invención son materia de objeto de las reivindicaciones dependientes.
El método de esta invención ejecuta un proceso de iniciación común para las solicitudes de iniciación recibidas para múltiples dispositivos. De este modo, se pueden evitar los problemas de funcionamiento surgidos de la iniciación incorrecta debido a la iniciación no sincronizada de múltiples dispositivos cuando un proceso de iniciación separado se ejecuta en respuesta a cada solicitud de iniciación. La presente invención puede así iniciar adecuadamente múltiples dispositivos incluso cuando sean recibidas solicitudes de iniciación simultánea procedentes de los dispositivos.
Se ha de entender que un proceso de iniciación como el utilizado aquí significa que cualquier proceso que deba ser ejecutado primero para hacer posible el control del dispositivo, incluyendo, por ejemplo, obtener el modelo, función, o estado del dispositivo, o ajustar los estados de dispositivo específicos.
El sistema de control está preferiblemente construido a partir de un sistema de ordenador capaz de ejecutar programas escritos en un lenguaje de programación orientado a objetos. La etapa de recepción de solicitud de iniciación recibe de este modo una solicitud de iniciación de dispositivo procedente de objetos que corresponden a cada uno de los múltiples dispositivos, y la etapa de transmisión de informe de finalización envía el informe de finalización a cada objeto que envió una solicitud de iniciación.
Otros objetos y logros junto con un entendimiento más completo de la invención se harán evidentes y se apreciarán con referencia a la descripción siguiente de las realizaciones preferidas tomadas en combinación con los dibujos adjuntos.
La Fig. 1 es un diagrama de sistema de un sistema JavaPOS;
la Fig. 2 es un diagrama de un sistema JavaPOS convencional;
la Fig. 3 es un diagrama de sistema de un sistema de JavaPOS de acuerdo con una realización preferida de la invención;
la Fig. 4 es un diagrama de bloque de una impresora;
la Fig. 5 muestra un ejemplo de configuración de datos de estado;
la Fig. 6 muestra la configuración de los parámetros de orden en una orden de ajuste de función ASB;
la Fig. 7 es un diagrama esquemático de procesos ejecutados cuando la potencia está activada en cada dispositivo en un sistema JavaPOS de acuerdo con una realización preferida de la invención; y
la Fig. 8 es una carta de flujo de un proceso de iniciación ejecutado por el objeto de iniciación de la invención.
La Fig. 3 es un diagrama de configuración de sistema de un sistema JavaPOS 10 de acuerdo con una realización preferida de la invención. Se ha de observar que las partes similares están designadas con números de referencia similares en la Fig. 3, Fig. 1 y Fig. 2. Como se muestra en la Fig. 3, este sistema JavaPOS 10 incluye un ordenador principal o host 12, una impresora 14, un cajón de caja registradora 16, y un dispositivo MICR 18. La impresora 14 está conectada directamente al ordenador principal 12. El cajón de caja registradora 16 y el dispositivo de MICR 18 están conectados a través de la impresora 14 al ordenador principal 12. Como se muestra en la figura, las líneas de suministro de potencia 24 al cajón de caja registradora 16 y al dispositivo MICR 18 están conectadas a la impresora 14; cuando el conmutador de suministro de potencia 26 de la impresora 14 está activado, la potencia es suministrada simultáneamente a cada uno de los otros dispositivos.
Como en el sistema JavaPOS 100 mostrado en la Fig. 1, el OS del ordenador principal 12 en el sistema JavaPOS 10 soporta la JVM 30, y una clase de servicio de dispositivo está prevista para cada categoría de dispositivo y están dispuestos objetos de control de dispositivo DCO 32 para cada modelo de dispositivo en la JVM 30. Una aplicación POS 36 para controlar la entrada y salida del dispositivo de control y por tanto conseguir la funcionalidad de un sistema POS se ejecuta también bajo la JVM 30. Adicionalmente previsto en el sistema JavaPOS 10 de acuerdo con esta realización de la invención existe una clase de interpretación de datos recibidos y una clase de iniciación. Nótese que la clase de interpretación de datos recibidos está representada en las Figuras por un objeto de interpretación de datos recibidos 40 como una instancia de la clase. De manera similar, la clase de iniciación está representada por un objeto de iniciación 42 como una instancia de la clase.
El objeto de interpretación de datos recibidos 40 (referido como objeto RDI aquí) funciona para interpretar las señales de respuesta de una impresora 14 y transmitir cada señal al objeto apropiado.
El objeto de iniciación 42 recoge las solicitudes de iniciación procedentes de cada DSO 34 y ejecuta los procesos de iniciación.
La aplicación DCO 32, DSO 32, POS, el objeto RDI 40, y el objeto de iniciación 42 en esta realización preferida de la invención (o las clases asociadas respectivamente) son programas estrictos en el lenguaje de programación Java y almacenados en una ROM, o un disco duro, u otro dispositivo de almacenamiento accesible por el ordenador principal 12.
Como se describe a continuación, las órdenes son enviadas desde el objeto de iniciación 42 a la impresora 14 y las respuestas son recibidas desde la impresora 14 en el proceso de iniciación. Antes de describir más el proceso de iniciación, se describe a continuación una configuración ejemplo de impresora 14.
La Fig. 4 es un diagrama de bloque de un ejemplo de impresora 14. Como se muestra en la Fig. 4 la impresora 14 tiene una CPU 50. La CPU 50 está conectada a un ordenador principal 12 a través de la interfaz 52. Conectados a la CPU 50 hay una ROM 54, RAM 56, unidad de impresión 58, unidad de detección de papel 60, unidad de detección de cubierta 62, unidad de detección de error 64, conmutadores de panel 66 y conectadores 68 y 70.
Un programa de control y disposiciones de carácter de impresora para la impresora 14, y un programa de control y datos para el dispositivo MICR 18 están almacenados en la ROM 54. La ROM 54 es por tanto utilizada tanto por la impresora 14 como por el dispositivo MICR 18. Una memoria temporal de recepción para almacenar órdenes y datos de impresora recibidos desde el ordenador principal 12 están previstos en la RAM 56.
La unidad de impresión 58 tiene una cabeza de impresión, motores para accionar la cabeza de impresión, y dispositivos de control relacionados, y funciona para imprimir de acuerdo con las órdenes procedentes de la CPU 50.
La unidad de detección de papel 60 tiene sensores para detectar la posición del medio de grabación, tal como formas de la ficha y papel de rollo, dentro de la impresora, e informa de los resultados de la detección a la CPU 50.
La unidad de detección 62 tiene un sensor para detectar si la cubierta de impresora está abierta o cerrada, e informa del estado de la cubierta abierta/cerrada a la CPU 50.
La unidad de detección de error 64 tiene sensores para detectar si la cabeza de impresora está en su posición alojada o no, para detectar la posición de un cortador de papel automático, para detectar errores tales como atascos de papel, etc. Los resultados de detección de estos sensores son enviados a la CPU 50.
El cajón de caja registradora 16 y el dispositivo MICR 18 están conectados a los conectadores 68 y 70, respectivamente, y la CPU 50 detecta si el cajón de caja registradora 16 está abierto o cerrado en base al nivel de voltaje en un terminal predeterminado del conectador 68.
Si la CPU 50 determina que la cubierta de impresora está abierta, no hay papel (forma de ficha o papel de rollo) en la impresora, o detecta un error, deja la impresora 14 fuera de línea.
La impresora 14 también tiene una función de informe de estado automática, referida aquí como función ASB (ASB = Auto Status Back). La función ASB informa automáticamente del estado de la impresora actual al ordenador principal 12 cada vez que se produce un cambio en el estado de la impresora 14. Los estados de impresora enviados por la función ASB en este ejemplo de la impresora 14 son (1) el estado abierto/cerrado del cajón de caja registradora 16, (2) el estado en línea/fuera de línea, (3) el estado de error, (4) el estado de detector de papel, (5) el estado de detector de forma de ficha y el estado de forma de ficha, y (6) el estado de funcionamiento de conmutadores de panel.
La Fig. 5 muestra una configuración de datos de estado ejemplo. En este ejemplo los datos de estado son de 4 bits de longitud, y cada uno de los estados anteriores (1) a (6) está representado por el ajuste de uno o más bits. La CPU 50 detecta cada estado en base a la salida de la unidad de detección de papel 60, la unidad de detección de cubierta 62, la unidad de detección de error 64, y los conmutadores de panel 66, y el nivel de voltaje en la terminal predeterminada de los conectadores 68, y por consiguiente establece los correspondientes bits de estado 1 ó 0.
Cuando se suministra potencia a la impresora, la función ASB está deshabilitada. La función ASB puede ser habilitada por el ordenador principal enviando una orden de ajuste ASB a la impresora 14. La orden de ajuste de función ASB contiene un byte (o bits) de datos de orden. La función ASB puede ser ajustada a un estado habilitado o deshabilitado para cada uno de los estado anteriores (1) a (6) en base a los valores de estos parámetros de orden.
La Fig. 6 muestra la configuración de los parámetros de orden. Como se muestra en la figura, cada categoría de estado corresponde a un bit de parámetro de orden, y la función ASB está habilitada para cada categoría para la cual el bit de parámetro es 1.
Cuando la CPU 50 recibe una orden de ajuste de función ASB procedente del ordenador 12, informa de los datos de estado actual al ordenador principal 12 si la función ASB está habilitada para cualquiera de las categorías de estado por el correspondiente parámetro de orden. Después, cada vez que un estado contendido en una categoría de estado para la cual la función ASB está habilitada cambia, la CPU 50 envía los datos de estado al ordenador principal 12.
Como se ha descrito anteriormente, la aplicación POS 36 que se ejecuta en el ordenador principal 12 declara el uso de la impresora 14 cada vez que se inicia para usar la impresora 14, y después crea una instancia de la clase de servicio de dispositivo de impresora, a saber el DSO 34a, de acuerdo con esta declaración. Cuando la aplicación POS 36 después distribuye una orden de impresión, los datos de impresión son transmitidos al DCO 32a de impresora, y el proceso de impresión se ejecuta como resultado de este DCO 32a de impresora llamando a la DSO 34a de impresora.
Cuando el DSO 34a de impresora es creado genera datos de orden de atributo de carácter. Cada vez que la aplicación POS 36 envía atributos de carácter de impresora (tales como la fuente, tamaño tipo, color, y estilos) para la impresora 14, los datos de orden de atributo de carácter son cargados de acuerdo con estos atributos de carácter de impresión. Los datos de orden de atributo de carácter de este modo siempre representan información referente a los ajustes de atributo de carácter actual de la impresora 14. Como se describe adicionalmente a continuación, los datos de orden de atributo de carácter son transmitidos al objeto de iniciación 42 cuando la iniciación solicitada cuando el DSO 34a de impresora es creado, y es utilizado durante el proceso de iniciación para restaurar los atributos de carácter de la impresora 14 a los ajustes utilizados antes de que se activara la potencia de la impresora.
El proceso de iniciación ejecutado mediante el objeto de iniciación 42 se describe a continuación.
La Fig. 7 representa a grandes rasgos el proceso ejecutado en el sistema JavaPOS 10 de acuerdo con esta realización de la invención cuando el conmutador de suministro de potencia 26 está activado (esto es, cuando la potencia es suministrada simultáneamente a la impresora 14, el cajón de caja registradora 16, y el dispositivo MICR 18). Como se muestra el la figura, cuando el conmutador de suministro de potencia 26 está activado (S100) se envía una señal de potencia activada a la JVM 30 sobre el ordenador principal 12 (S102), y se transmite desde la JVM 30 al objeto RDI 40 (S104). El objeto RDI 40 genera un nuevo número ID (un valor de 1 ó mayor) no generado todavía y en uso de acuerdo con una regla específica, tal como secuencialmente desde 1 ó aleatoriamente, añade este número ID a la señal de potencia activada, y se transmite a cada instancia de DSO 34 ya creado (S106).
Cuando el DSO 34 recibe la señal de potencia activada y el número ID, envía una solicitud de iniciación que contiene el número ID al objeto de iniciación 42 (S108). Esto hace que el objeto de iniciación 42 ejecute un proceso de iniciación por lo que las órdenes de iniciación son enviadas a la impresora 14 (S110) y las correspondientes respuestas de orden son recibidas (S112) como se describirá con más detalle a continuación. Las respuestas procedentes de la impresora 14 son recibidas a través del objeto RDI 40. Más concretamente, el objeto RDI 40 interpreta los datos enviados desde la impresora 14, determina si los datos son una respuesta a una orden de iniciación, y transmite respuestas para órdenes de iniciación al objeto de iniciación 42.
Cada DSO 34 emite, cuando se ejecuta durante el primer momento después de haber sido creado como una instancia de la clase correspondiente, una primera solicitud de iniciación al objeto de iniciación 42. Un primer proceso de iniciación es ejecutado en respuesta a esta primera solicitud de iniciación. Se ha de entender que esta primera iniciación es ejecutada cuando la potencia suministrada a los dispositivos 14, 16 está activada durante el primer momento después de que el programa de aplicación POS se haya iniciado. Si, después de eso y mientras el programa de aplicación POS está todavía ejecutándose, los dispositivos son desconectados y después conectados de nuevo, otro proceso de iniciación es ejecutado cada vez. Cada uno de estos otros procesos de iniciación serán referidos como una iniciación de activación de potencia en lo que sigue para distinguirlos de la primera iniciación.
Cuando los DSOs 34 emiten la primera solicitud de iniciación al objeto de iniciación 42 establecen el número ID en 0. Por el contrario, el objeto RDI 40 establece el número ID en un valor de 1 ó mayor para cada proceso de iniciación de activación de potencia siguiente. El primer proceso de iniciación ejecutado en respuesta a la primera solicitud de iniciación por el DSO 34a de impresora transmite los datos de orden de atributo de carácter procedentes del DSO 34a de impresora al objeto de iniciación 42.
Los DSOs 34 también prohiben todos los procesos que transmiten datos a los dispositivos desde el momento en el que la señal de activación de ponencia es detectada en la etapa S106 hasta el momento en el que se recibe el informe de finalización de una iniciación en la etapa S114 (descrita a continuación). Esto evita en envío de datos distintos a los datos de iniciación durante el proceso de iniciación ejecutado por el objeto de iniciación 42 a cualquier dispositivo que no haya completado su iniciación.
La Figura 8 es una carta de flujo del proceso de iniciación ejecutado por la clase de iniciación.
Este proceso empieza (S200) detectando si el número ID añadido a la solicitud de iniciación es 0. Si el número ID procedente de un DSO 34 es 0 esta es la primera solicitud de iniciación emitida por una instancia (DSO) de la clase de servicio de dispositivo después de que la instancia haya sido creada, y el procedimiento continua con la etapa S202. Sin embargo, si el número ID en la etapa S200 no es 0, se sabe que la solicitud de iniciación es una solicitud de iniciación de activación de potencia. Si un proceso de iniciación ya ha sido completado para el mismo número ID o si está todavía ejecutándose es después determinado (S204). Si el proceso de iniciación ya ha sido completado o se está ejecutando, un nuevo proceso de iniciación no se debería ejecutar y el proceso finaliza. Además, si un proceso de iniciación no ha sido completado para el mismo número ID y no está ejecutándose en la etapa S204, la operación continua desde la etapa S202.
Las etapas S200 y S204 evitan de este modo la superposición (conflicto) de procesos de iniciación para las solicitudes de iniciación que contienen el mismo número ID (esto es, las solicitudes de iniciación para dispositivos para los cuales la potencia ha sido conectada simultáneamente), a la vez que también asegura que un proceso de iniciación es ejecutado para cada solicitud de iniciación afirmada cuando una instancia DSO 34 se ejecuta durante el primer momento.
Una orden de limpieza de memoria temporal es después enviada a la impresora 14 en la etapa S202. Cuando la CPU 50 de las impresoras recibe una orden de limpieza de memoria temporal, limpia la memoria temporal de recepción de la RAM 56.
Una orden de ajuste de función ASB con el parámetro de orden "FF" (todos los bits ajustados a 1) es después enviada a la impresora 14 (S206). Cuando la CPU 50 recibe esta orden de ajuste de función ASB habilita la función ASB para todos los estados controlados, y envía los datos de estado actuales al ordenador principal 12.
Después se determina si los datos de estado fueron recibidos desde la impresora 14 en respuesta a la orden de ajuste de función ASB (S208). Si los datos de estado fueron recibidos, se ejecuta la etapa S210.
Una orden de confirmación de dispositivo es entonces enviada en la etapa S210. Cuando la CPU 50 recibe la orden de confirmación de dispositivo devuelve un código de dispositivo que indica el modelo de impresora al ordenador principal 12.
Después se determina si fue recibido un código de dispositivo procedente de la impresora 14 (S212). Si fue recibido un código de dispositivo, el modelo de impresora 14 indicado por el código de dispositivo es comprobado para la compatibilidad con el sistema JavaPOS 10 (S214). Si la impresora 14 es un modelo compatible, el control pasa a S216.
Una orden de confirmación de versión de ROM en entonces enviada a la impresora 14 (S216). Cuando la CPU recibe la orden de confirmación de versión de ROM recupera y envía en número de versión de ROM 54 al ordenador principal 12.
Se determina si el número de versión de ROM fue recibido desde la impresora 14 (S218). Si fue recibido, el control se mueve a la etapa S220.
Una orden de confirmación de función es después enviada a la impresora 14 (S229). Cuando la CPU 50 recibe la orden de confirmación de función devuelve un código de función que inicia las funciones de impresora (tales como si la impresora tiene un cortador de papel automático, una cabeza de impresión de endose, y una capacidad de lenguaje japonés) al ordenador principal 12.
\newpage
Se determina si el código de función fue recibido desde la impresora 14 (S222). Si el código de función fue recibido, se detecta si los datos de orden de atributo de carácter están presentes (esto es, si el DSO 34a de impresora ya ha sido creado) (S224). Si los datos de orden de atributo de carácter no son detectados, el proceso de iniciación del objeto de iniciación 42 finaliza. Si los datos de orden de atributo de carácter son detectados (la etapa S224 devuelve sí), una orden de atributo de carácter ajustado para el ajuste de los atributos de carácter de acuerdo con los datos de atributo de carácter es enviada a la impresora 14 (S226), y el proceso de iniciación del objeto de iniciación 42 finaliza. Enviando de este modo que esta orden de atributo de carácter de ajuste en la etapa S226 los atributos de carácter de la impresora 14 pueden ser restablecidos a los mismos atributos utilizados antes de que la impresora fuera desconectada. Si los datos de orden de atributo de carácter no están presentes (significa que un DSO de impresora 34a no ha sido creado para la impresora 14) la orden de atributo de carácter de ajuste no está establecida y el proceso de iniciación es más rápido.
Si la respuesta procedente de la impresora 14 no se detecta en la etapa S208, S212, S218 ó S222, o si se determina que la impresora 14 no es un modelo compatible en la etapa S214, se ejecuta un proceso de manipulación de error en la etapa S228.
Si el numero ID es un valor distinto de 0, este proceso de manipulación de error reintenta la iniciación repitiendo el proceso de iniciación desde la etapa S200. Si el número ID es 0, el proceso de manipulación de error devuelve un error al DSO 34 que emitió la solicitud de iniciación.
Cuando el objeto de iniciación 42 completa el proceso de iniciación mostrado en la Fig. 8, envía el número ID incluido en la solicitud de iniciación junto con un informe de finalización de iniciación a cada DSO 34 en la etapa S114 (Fig. 7), y cada DSO 34 que recibe el informe de finalización de iniciación pregunta al objeto de iniciación 42 por la información referencia al respectivo dispositivo. El objeto de iniciación 42 envía la información solicitada por cada DSO 34 procedente de la información (datos de estado, versión ROM, código de dispositivo de impresora y código de función) recibida de la impresora 14 al respectivo DSO 34. El DSO 34 de este modo obtiene la información referente al respectivo dispositivo y puede después controlar apropiadamente ese dispositivo.
Como se ha descrito anteriormente, cuando las solicitudes de iniciación son recibidas desde los objetos de servicios de dispositivo DSO 34, el objeto de iniciación 42 de esta realización de la invención reúne todas las solicitudes de iniciación y ejecuta un único proceso de iniciación. Como resultado, cuando las solicitudes de iniciación múltiples son emitidas cuando la potencia es activada, cada dispositivo puede ser iniciado apropiadamente sin que un proceso de iniciación individual este siendo ejecutado para cada DSO 34. En otras palabras, mientras que los procesos de iniciación de la técnica anterior no se ejecutaban correctamente debido a una falta de sincronización entre los procesos de iniciación cuando un proceso de iniciación individual era ejecutado para cada DSO 34 como se ha descrito anteriormente, el método de la presente invención ejecuta un proceso de iniciación común para los múltiples procesos de iniciación y por tanto, evita este problema de la técnica anterior.
Además, un número ID es añadido a la solicitud de iniciación desde cada DSO 34, y el número ID es establecido en el mismo valor en las solicitudes de iniciación procedentes de dispositivos que son activados al mismo tiempo. Por lo tanto, incluso si las solicitudes de iniciación son enviadas en diferentes momentos desde los DSOs 34 de los dispositivos que son activados simultáneamente, un proceso de iniciación común se ejecuta sólo una vez para cada uno de los dispositivos, y, por tanto, la probabilidad de que el proceso de iniciación se ejecute correctamente aumenta.
Además, debido a que cada vez que los dispositivos son accionados, el número ID es establecido en un nuevo valor no usado anteriormente, el proceso de iniciación se ejecutará normalmente cada vez que la potencia sea activada incluso si la potencia es activada y desactivada repetidamente.
Se ha de observar que aunque se muestra una impresora 14, un cajón de caja registradora 16, y un dispositivo MICR 18 como dispositivos ejemplo conectados al ordenador principal 12 en la realización anterior, la invención no está limitada a estos y se podrían conectar otros dispositivos tales como un escáner de imágenes.
Además, la invención está descrita utilizando un sistema POS a modo de ejemplo, pero la invención no está limitada a esta aplicación particular y puede ser aplicada a iniciación de dispositivo en sistemas de control que controlan múltiples dispositivos.

Claims (12)

1. Un método para iniciar múltiples dispositivos (14, 16, 18) de un sistema de control para controlar múltiples dispositivos, en el que el sistema de control comprende un sistema de ordenador capaz de ejecutar programas escritos en un lenguaje de programación orientado a objetos y cada uno de los múltiples dispositivos (14, 16, 18) tiene un respectivo objeto (34a-34c) asociado con el mismo, emitiendo el objeto una solicitud de iniciación para iniciar el correspondiente dispositivo, que comprende:
(a) recibir una solicitud de iniciación respectiva para cada dispositivo;
(b) ejecutar un proceso de iniciación común para múltiples solicitudes de iniciación recibidas en la etapa (a); y
(c) emitir un informe de finalización de proceso de iniciación después de que el proceso de iniciación común finaliza y enviar el informe de finalización a cada objeto (34a-34c) desde el que fue recibida una solicitud de iniciación en la etapa (a), en el que:
cada objeto (34a-34c) emite una primera clase de solicitud de iniciación en respuesta a la potencia al dispositivo correspondiente (14, 16, 18) que está siendo activado;
la primera clase de solicitudes de iniciación recibidas en la etapa (a) contiene un ID de solicitud de iniciación que toma el mismo valor para todos los dispositivos (14, 16, 18) que fueron activados simultáneamente; y
la etapa (b) ejecuta dicho proceso de iniciación común para todas las solicitudes de iniciación que tienen la misma solicitud de iniciación ID.
2. El método de la reivindicación 1, en el que:
cada objeto (34a-34c) emite una segunda clase de solicitud de iniciación en respuesta a un evento distinto de que el dispositivo correspondiente (14, 16, 18) está siendo activado;
un ID de solicitud de iniciación específica diferente de la asignada a la primera clase de solicitudes de iniciación es asignada a dicha segunda clase de solicitud de iniciación; y
un proceso de iniciación separado que está siendo ejecutado para las solicitudes de iniciación que tienen asignadas a las mismas la solicitud de iniciación específica ID.
3. El método de la reivindicación 1 ó 2, en el que al menos uno de los múltiples dispositivos (14, 16, 18) es una impresora (14); en el que es ejecutado un proceso de establecimiento de atributo de carácter para establecer los atributos de carácter de impresión en la impresora como parte de dicho proceso de iniciación común y/o separado.
4. El método de la reivindicación 3, que además comprende:
generar datos de atributo de carácter para almacenar los establecimientos de atributo de carácter de impresión de la impresora (14); en el que el proceso de establecimiento de atributo de carácter establece los atributos de carácter de impresión a la impresora de acuerdo con los datos de atributo de carácter.
5. El método de la reivindicación 4, en el que los datos de atributo de carácter son generados cuando el objeto (34a) asociado con la impresora (14) es activado.
6. El método de una cualquiera de las reivindicaciones 1 a 5,en el que la transmisión de datos procedente de cada objeto respectivo (34a-34c) al dispositivo asociado (14, 16, 18) está prohibido después de que el respectivo objeto emitió una solicitud de iniciación hasta que se ha recibido el informe de finalización de iniciación.
7. El método de una cualquiera de las reivindicaciones 1 a 6, en el que el lenguaje de programación orientado a objetos es Java.
8. Un sistema de control para controlar múltiples dispositivos (14, 16, 18), que comprende:
un sistema de ordenador capaz de ejecutar programas escritos en un lenguaje de programación orientado a objetos en el que cada uno de los múltiples dispositivos (14, 16, 18) tiene un primer objeto respectivo (34a-34c) asociado con el mismo, emitiendo el objeto una solicitud de iniciación para iniciar el correspondiente dispositivo;
medios de recepción de solicitud (42) para recibir una solicitud de iniciación respectiva para cada dispositivo;
medios de iniciación (42) para ejecutar un proceso de iniciación común para las solicitudes de iniciación recibidas por los medios de recepción de solicitud de iniciación (42) para múltiples dispositivos (14, 16, 18); y
medios de transmisión de informe de finalización (42) para emitir un informe de finalización de proceso de iniciación después de que el proceso de iniciación común finalice y para enviar el informe finalización a cada primer objeto (34a-34c) desde el que los medios de recepción de solicitud de iniciación (42) recibieron una solicitud de iniciación, en el que:
cada objeto (34a-34c) es sensible a la activación del correspondiente dispositivo (14, 16, 18) para emitir una primera clase de solicitud de iniciación;
la primera clase de solicitud de iniciación contiene un ID de solicitud de iniciación que toma el mismo valor para todos los dispositivos (14, 16, 18) que fueron activados simultáneamente; y
dichos medios de iniciación (42) están adaptados para ejecutar el proceso de iniciación común para todas las solicitudes de iniciación que tiene la misma solicitud de iniciación ID.
9. El sistema de la reivindicación 8, que comprende un segundo objeto (42) para el proceso de iniciación, comprendiendo el segundo objeto dichos medios de recepción de solicitud de iniciación, medios de iniciación, y medios de transmisión de informe de finalización.
10. El sistema de la reivindicación 9, en el que los múltiples dispositivos (14, 16, 18) están configurados de manera que cuando la potencia es activada para un dispositivo (14) la potencia también es activada para los otros dispositivos (14, 16);
el sistema de control tiene un tercer objeto (40) sensible a una señal que indica que la potencia se ha activado para un dispositivo, para informar a los primeros objetos que la potencia ha sido activada para cada dispositivo; y
los primeros objetos están adaptados para enviar una solicitud de iniciación al segundo objeto (42), como dicha primera clase de solicitud de iniciación, en respuesta a la información procedente del tercer objeto (40).
11. Un programa de instrucciones para la ejecución por un ordenador del método como está definido en la reivindicación 1 ó 2, estando el programa escrito en un lenguaje de programación orientado a objetos.
12. Un medio de grabación que soporta el programa de la reivindicación 11.
ES02028166T 2001-12-27 2002-12-19 Metodo de iniciacion de multiples dispositivos y un sistema de control para controlar multiples dispositivos. Expired - Lifetime ES2287217T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2001398530A JP3985135B2 (ja) 2001-12-27 2001-12-27 制御システムにおけるデバイス初期化方法、制御システム、コンピュータにデバイス初期化方法を実行させるためのプログラム、このプログラムを記録した記録媒体
JP2001-398530 2001-12-27

Publications (1)

Publication Number Publication Date
ES2287217T3 true ES2287217T3 (es) 2007-12-16

Family

ID=19189357

Family Applications (1)

Application Number Title Priority Date Filing Date
ES02028166T Expired - Lifetime ES2287217T3 (es) 2001-12-27 2002-12-19 Metodo de iniciacion de multiples dispositivos y un sistema de control para controlar multiples dispositivos.

Country Status (6)

Country Link
US (1) US20030135664A1 (es)
EP (1) EP1324196B1 (es)
JP (1) JP3985135B2 (es)
AT (1) ATE369585T1 (es)
DE (1) DE60221631T2 (es)
ES (1) ES2287217T3 (es)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4524912B2 (ja) * 2000-12-20 2010-08-18 セイコーエプソン株式会社 端末装置及びその制御方法
US7295333B2 (en) * 2003-07-09 2007-11-13 Ricoh Company, Ltd. Printing device with installable data conversion function
US20050261969A1 (en) * 2004-05-10 2005-11-24 International Business Machines Corporation Layered architecture for POS (point-of sale) systems
JP6680004B2 (ja) * 2016-03-11 2020-04-15 セイコーエプソン株式会社 印刷装置、及び、印刷装置の制御方法
CN108665654A (zh) * 2018-05-18 2018-10-16 任飞翔 收银信息同步方法及收银系统

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5546595A (en) * 1993-12-21 1996-08-13 Taligent, Inc. Object-oriented system using objects representing hardware devices, physical connectors and connections between the physical connectors for configuring a computer
JP3088269B2 (ja) * 1995-07-26 2000-09-18 日本電気通信システム株式会社 コンピュータネットワークシステム及びそのオペレーティングシステムの版数管理方法
US6108717A (en) * 1995-09-06 2000-08-22 Seiko Epson Corporation Control system using plural objects, a programming method therefor, and a peripheral devices control system
US6003065A (en) * 1997-04-24 1999-12-14 Sun Microsystems, Inc. Method and system for distributed processing of applications on host and peripheral devices
JP3264215B2 (ja) * 1997-06-05 2002-03-11 富士ゼロックス株式会社 画像形成装置およびその初期化方法並びに画像形成装置の初期化プログラムを記録した媒体
US5938765A (en) * 1997-08-29 1999-08-17 Sequent Computer Systems, Inc. System and method for initializing a multinode multiprocessor computer system
WO1999034287A1 (en) * 1997-12-31 1999-07-08 Alcatel Usa Sourcing, L.P. Method of common initialization of computing tasks
US6603937B2 (en) * 2000-07-18 2003-08-05 Sharp Kabushiki Kaisha Image forming apparatus
US20030182414A1 (en) * 2003-05-13 2003-09-25 O'neill Patrick J. System and method for updating and distributing information
US8126959B2 (en) * 2001-06-28 2012-02-28 International Business Machines Corporation Method and system for dynamic redistribution of remote computer boot service in a network containing multiple boot servers

Also Published As

Publication number Publication date
DE60221631D1 (de) 2007-09-20
JP2003195984A (ja) 2003-07-11
US20030135664A1 (en) 2003-07-17
EP1324196B1 (en) 2007-08-08
JP3985135B2 (ja) 2007-10-03
DE60221631T2 (de) 2008-05-21
EP1324196A2 (en) 2003-07-02
EP1324196A3 (en) 2005-01-19
ATE369585T1 (de) 2007-08-15

Similar Documents

Publication Publication Date Title
US10437538B2 (en) Information processing method for obtaining printer status and non-volatile storage medium
JP3653869B2 (ja) エラープリント設定方法およびエラープリント設定装置
JP2003200638A (ja) 画像形成装置および画像形成方法
JP2003175657A5 (es)
ES2287217T3 (es) Metodo de iniciacion de multiples dispositivos y un sistema de control para controlar multiples dispositivos.
US7180612B2 (en) Print system, image processing apparatus and information processing apparatus
US8610930B2 (en) Information processing apparatus, method for controlling information processing apparatus, and storage medium for displaying, acquiring and specifying a cover state
JP2007066271A (ja) 情報処理装置及びその制御方法、データ処理装置、並びにプログラム
US6702488B1 (en) Printing device configured to print a demonstration page
JP2964469B2 (ja) 印字装置
KR100229508B1 (ko) 잉크 카트리지를 감지하여 데이터를 만드는 원도우즈 드라이버
KR100350982B1 (ko) 인쇄기 및 그 구동방법
US20060171724A1 (en) Image forming apparatus
JP2005231076A (ja) 印刷装置
KR100341784B1 (ko) 프린터의 토너잔량 검출방법
JP2003076098A (ja) カラー印刷装置およびカラー印刷システム
JP2005074769A (ja) 印刷装置、印刷管理方法、印刷方法、印刷管理プログラム、印刷プログラム
KR100307592B1 (ko) 프린터출력안내장치
KR20010018369A (ko) 문서의 재 인쇄 방법
JP3093542B2 (ja) 出力装置及び表示制御方法
JP2007062242A (ja) 印刷システム
JPH08234940A (ja) 情報処理装置並びに印刷装置および印刷システム並びに印刷システムのマクロ起動方法
JP2007261044A (ja) プリンタ装置
JP2001282497A (ja) プリントシステム
JP2000118101A (ja) プリンタ装置