Method for updating software and automated analysis device
Categorizing software in automated analyzers based on function and urgency enables efficient and reliable updates, addressing the challenge of updating multiple software components without processing delays.
Patent Information
- Application Number
- PCT/JP2025/017461
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-05-30
- Filing Date
- 2025-05-14
- Publication Date
- 2025-12-04
AI Technical Summary
Existing automated analyzers face challenges in updating multiple software types without causing processing delays, especially when different software components have varying urgency and compatibility requirements.
A method is introduced to categorize software installed in automated analyzers based on their function and urgency, applying tailored update methods for each category to ensure compatibility and minimize downtime.
This approach allows for efficient and reliable software updates across various types without disrupting analyzer operations, optimizing update timing and reducing user effort in managing software versions.
Smart Images

Figure JP2025017461_04122025_PF_FP_ABST
Abstract
Description
Software update method and automatic analysis device
[0001] The present invention relates to a software update method and an automatic analyzer.
[0002] Automated analyzers that perform quantitative and qualitative analysis of specific components contained in biological samples such as blood and urine (hereinafter referred to as specimens) are indispensable for modern diagnostics, etc., due to their high reproducibility of analytical results and fast processing speed.
[0003] Patent Literature 1 discloses a technology for easily identifying, from among a plurality of accessory software programs, accessory software that is suitable for the main software installed in such an automatic analyzer, in order to facilitate maintenance and adjustment work on such an automatic analyzer. Here, accessory software refers to software intended for the maintenance and adjustment of the units that make up the automatic analyzer, and that runs on a terminal different from the operation unit that controls the operation of the automatic analyzer.
[0004] International Publication No. 2020 / 195071
[0005] Automated analyzers are equipped with a wide range of software, including not only software developed by the device developer but also off-the-shelf software (OTSS), which is commonly available, ready-made software that is installed in the device. Furthermore, the software developed by device developers includes software for measuring or analyzing samples and software for maintenance work, and the urgency of these software varies.
[0006] Users who use automatic analyzers and service personnel who perform maintenance work on automatic analyzers (hereinafter collectively referred to as users) need to update these various types of software without causing processing delays in the automatic analyzer.
[0007] The present invention aims to provide a software update method and an automatic analyzer that can reliably perform updates for a large number of pieces of software without causing processing delays in the automatic analyzer by dividing the software installed in the automatic analyzer into categories and applying different update methods according to the category.
[0008] A software updating method according to one embodiment of the present invention is a method for updating software installed in a control unit that controls mechanisms provided in an automated analyzer to measure or analyze samples, the method including dividing the software into categories, including a first category for software that controls mechanisms provided in the automated analyzer to measure or analyze samples, the software being linked based on the automated analyzer in which it is installed, and the software data for the software including version control data that registers a version that each of the linked software must satisfy as a compatible version when the software data is installed. The control unit downloads update software data that is software data for updated version update software and extracts the version control data from the update software data. If the version of the software linked to the update software has already been updated to a compatible version or can be updated to the compatible version at the same update timing, the control unit controls installation of the update software data, and if the update software is software of the first category, the control unit installs the update software data of the first category in response to an update instruction for the update software from a user.
[0009] According to the present invention, it is possible to easily and reliably execute a large number of pieces of software installed in an automatic analyzer. Other objects and novel features will become apparent from the description of this specification and the accompanying drawings.
[0010] 1. A schematic plan view of an automatic analyzer. A hardware configuration diagram of a control unit. An example of a software classification table. An example of a version management table. A flowchart for updating software installed in an automatic analyzer. A diagram for explaining the automatic update process of required peripheral / optional peripheral software accompanying a software update of category 1. A diagram for explaining the automatic update process of required peripheral / optional peripheral software accompanying a software update of category 1. A diagram for explaining the automatic update process of required peripheral / optional peripheral software accompanying a software update of category 1. A diagram for explaining the automatic update process of required peripheral / optional peripheral software without a software update of category 1. A diagram for explaining the automatic update process of required peripheral / optional peripheral software without a software update of category 1. A diagram for explaining the automatic update process of required peripheral / optional peripheral software without a software update of category 1.
[0011] 1A is a schematic plan view of an automated analyzer. Reaction vessels 111 are arranged circumferentially in an incubator (reaction disk) 101. The reaction vessels 111 are common to all reactions and are disposable. The incubator 101 is controlled by a driving mechanism such as a motor so that the incubator 101 rotates a distance corresponding to the number of reaction vessels 111 in one cycle.
[0012] A plurality of reagent bottles and sample containers can be mounted circumferentially on the reagent / sample common disk (hereinafter referred to as the SR disk) 102. In this example, the reagent bottles are located on the inner periphery of the sample containers, but the sample containers may be located on the inner periphery of the reagent bottles, or may be located without being separated into inner and outer peripheries.
[0013] A first aliquot dispensing mechanism 103 and a second aliquot dispensing mechanism 104, which are rotatable and movable up and down, are installed between the incubator 101 and the SR disk 102, and each mechanism is equipped with a dispensing nozzle. The first aliquot dispensing mechanism 103 and the second aliquot dispensing mechanism 104 are used for different analytical processes. For example, if the first aliquot dispensing mechanism 103 is used for biochemistry and the second aliquot dispensing mechanism 104 is used for immunology, the second aliquot dispensing mechanism 104 for immunology requires a high degree of prevention of contamination between samples, and therefore dispensing is performed using a dispensing tip 110. In this case, the first aliquot dispensing mechanism 103 dispenses samples and reagents for biochemical testing. The second aliquot dispensing mechanism 104 dispenses samples and reagents for immunology testing. For samples to be measured in both biochemistry and immunology testing, either the first aliquot dispensing mechanism 103 or the second aliquot dispensing mechanism 104 dispenses the samples depending on the type of test.
[0014] The dispensing nozzle moves in an arc around the rotation axis to dispense a sample from a sample container to a reaction container installed in the incubator 101. On the trajectory of the dispensing nozzle, there are a sample suction position and a reagent suction position on the SR disk 102, a first dispensing position and a second dispensing position on the incubator 101, and a washing tank for washing the dispensing nozzle. Because the second dispensing mechanism 104 uses a dispensing tip 110, a dispensing tip attachment position and a dispensing tip disposal position also exist on the trajectory.
[0015] The first dispensing mechanism 103 and the second dispensing mechanism 104 are arranged so that the trajectories and mechanisms of the respective dispensing nozzles do not physically interfere with each other. After the sample and reagent are aspirated by the dispensing nozzle or a dispensing tip attached to the dispensing nozzle, the sample and reagent are stirred and mixed in a reaction vessel 111 placed in an incubator 101 by the aspirating and dispensing operation of the dispensing nozzle or the dispensing tip. The reaction vessel 111 containing the reaction liquid in which the sample and reagent are mixed is maintained at a predetermined temperature by the incubator 101, and the reaction is promoted for a predetermined time.
[0016] A spectrophotometer 107 for biochemical testing is arranged around the incubator 101. The spectrophotometer 107 is equipped with a light source and a detector (not shown), and measures the absorbance of the reaction solution by irradiating the reaction solution with light from the light source, separating and detecting the transmitted light obtained.
[0017] Furthermore, the reaction liquid that has been reacted for a predetermined time in the incubator 101 can be sent to the detection mechanism 108 for immunoassay by the detector syringe 106 and measured. In immunoassays, the method of detecting the labeled substance can be based on electrochemiluminescence or chemiluminescence, and the liquid is transferred to a suitable second liquid container 114 for each method, the labeled substance, and the structure and physical properties of the detection region are selected, and the amount of luminescence resulting from the luminescence reaction of the labeled substance is measured using a photomultiplier tube as a detector.
[0018] Reaction vessels whose absorbance has been measured in the incubator 101 are disposed of in a waste box 112 by the transport mechanism 109. The transport mechanism 109 also transports the reaction vessels 111 containing reaction liquid that has been reacted for a predetermined time in the incubator 101 to the detection mechanism 108, and the reaction vessels 111 whose measurement has been completed in the detection mechanism 108 to the waste box 112. After the measurement is completed, a cleaning liquid container 115 is used to clean the dispensing nozzles of the first dispensing mechanism 103 and the second dispensing mechanism 104.
[0019] Each mechanism is connected to a control unit 120. This control unit 120 controls various mechanisms, such as the rotational drive of the incubator 101, the rotational operation of the SR disk 102, the drive of the dispensing nozzle, and the sample suction and discharge operations. Note that, for simplicity of illustration, connections between each mechanism constituting the automated analyzer and the control unit 120 are omitted in Figure 1A.
[0020] As shown in FIG. 1B , the control unit 120 primarily comprises a processor (Central Processing Unit: CPU) 121, memory 122, storage device 123, input interface (I / F) 124, output I / F 125, communication I / F 126, and bus 127. The processor 121 functions as a functional unit that provides predetermined functions by executing processes according to programs loaded into the memory 122. The storage device 123 stores data and programs used by the functional unit. The input I / F 124 is connected to input devices such as a keyboard, pointing device, and operation panel, and the output I / F 125 is connected to a display device. The communication I / F 126 enables communication with other computers via a network. These components are connected to each other via the bus 127 so that they can communicate with each other.
[0021] In the following description, when describing processing by a program, the program or functional units may be described as the main components, but the main hardware component of these components is a processor or a computer system including the processor. The computer system executes processing according to a program loaded into memory using resources such as memory and a communication interface as appropriate. While FIG. 1B shows an example of a CPU as the processor, a GPU (Graphical Processing Unit) or the like may also be used. Furthermore, processing to realize a function is not limited to software program processing, and can also be implemented using a dedicated circuit. Examples of the dedicated circuit include a field programmable gate array (FPGA) and an application specific integrated circuit (ASIC).
[0022] The data stored in the storage device 123 includes data necessary for controlling the automatic analyzer and data indicating the current status of the automatic analyzer. In addition, a display device (not shown) connected to the output I / F 125 displays information necessary for controlling the automatic analyzer, the current status of the automatic analyzer, etc. The user checks the device status and measurement results based on the information displayed on the display device. The user also operates the automatic analyzer from the interface displayed on the display device.
[0023] 2 is an example of a table for registering classifications of software related to an automatic analyzer. The classification table 201 is stored in the storage device 123. In this embodiment, software related to an automatic analyzer is classified into three categories. Category 1 is main software that operates the automatic analyzer, and corresponds to measurement and analysis software that performs measurements and analyses on samples. Measurement and analysis software is a general term for software that controls mechanisms equipped in the automatic analyzer to measure or analyze samples.
[0024] Category 2 is peripheral software (essential peripheral software) that is essential for the operation of the main software (Category 1), and includes language packs used in the device and OTSS that are essential for the device. A language pack is a general term for software that provides a multilingual user interface for the device, and includes, for example, a language pack for English or the language of the OS (Operating System) that runs the control unit 120. OTSS also includes freeware and OSS (Open Source Software), in the sense that it requires verification for incorporation into the device. OTSS that is essential for the device includes the OS, etc. that creates the operating environment for the main software (Category 1).
[0025] Category 3 is peripheral software (optional peripheral software) that is not essential for the operation of the main software (Category 1), and includes maintenance and adjustment software, language packs not used by the user, and OTSSs that are not essential for the device. For example, maintenance and adjustment software is software that operates an automated analyzer and is a general term for software that enables maintenance work such as maintenance and adjustment of each mechanism. For example, it includes software that adjusts the height of the first dispensing mechanism 103 and the second dispensing mechanism 104 (see FIG. 1A). A language pack that is not used by the user is a language pack that can be set in the device but is not set. An OTSS that is not essential for the device is software that is incorporated into the device as an auxiliary software. For example, there is an OSS for log analysis.
[0026] Category 3 software (optional peripheral software) is further divided into subcategories, 3-1 and 3-2. In the example shown in Figure 2, category 3-1 corresponds to maintenance and adjustment software, and category 3-2 corresponds to software that does not fall into categories 1, 2, or 3-1, such as unused language packs and non-essential OTSS.
[0027] Category 3-1 software is often updated in conjunction with updates to the measurement and analysis software, which is the main software. In such cases, it is desirable to update the software in conjunction with the main software. This allows users to minimize the time it takes to update and prepare the peripheral software. Furthermore, by automatically updating the software at a time when users are not disturbed, it is possible to reduce the effort required for users to check and manage versions.
[0028] Category 3-2 software is software that may affect functionality or usability. For example, category 3-2 software includes OTSS, which collects operation logs. Therefore, the software can be updated at any time selected by the user using the device. For example, the user is asked whether an update is necessary when the device is shut down. This allows the user to update the software during a time period that will not interfere with testing operations, if the user determines that an update is necessary. Note that the time when the device is shut down is merely an example, and any time period that the user has determined will not interfere with testing operations can be used.
[0029] Software classified into categories 2 and 3 is linked to the main body software in category 1. Therefore, if the main body software (category 1) installed in an automated analyzer is different, the types of software linked to categories 2 and 3 will also be different. Furthermore, each software usually has different versions due to bug fixes, function additions, etc. For this reason, the linked software in categories 1, 2, and 3 each have a corresponding version, and it is necessary to use software of the corresponding version. For this reason, in this embodiment, a version management table is created to control the update timing of each software.
[0030] An example of a version management table is shown in Figure 3. The version management table 301 is stored in the storage device 123. Software 311 is software installed in the automatic analysis device. Its category is also shown. The software 311 registered in the version management table 301 corresponds to the main software and software linked to it. The latest version 312 registers the latest version of each software. In this example, only one software is shown per category, but multiple software may be registered in one category.
[0031] For each latest version of software, the corresponding version of the associated software is registered in corresponding versions 314 to 317. Here, a corresponding version refers to the version that each associated software must meet when installing the software data. To update each software to the latest version, the associated software version must either have already been updated to the corresponding version or must be updated to the corresponding version at the same update timing. To enable software updates at the same update timing, the version management table 301 has an update flag 313 that indicates software that needs to be updated due to an update of any registered software.
[0032] FIG. 4 is a flowchart for updating software installed in an automated analyzer. This flow starts at a timing predetermined by the user, such as when the analyzer is shut down, or in response to a user instruction. This allows software updates to be performed during a time period that does not interfere with testing operations. The processor 121 references the version management table 301, downloads the latest version of the main body software (Category 1), and, if the latest version is available, displays whether the update is necessary on the display device (S01). Here, "available to the latest version" means that the associated software version has already been updated to a compatible version or can be updated to the corresponding latest version at the same update timing. The processor 121 then confirms whether the update is necessary from the user (S02). If "yes," the main body software (Category 1) is updated to the latest version (S03). If "no," the update to the latest version is not performed (S04). In step S03, the processor 121 changes the update flag 313 to "update required" for software that needs to be updated to the corresponding latest version at the same update timing.
[0033] After step S03 or S04, or when the processor 121 refers to the version management table 301, if the latest version of the main software (category 1) is already installed, i.e., if there is no updatable software, proceed to step S05.
[0034] Next, the processor 121 refers to the version management table 301, downloads the latest version of the optional peripheral software (category 3-2), and if the latest version is available for updating, as in step S01, displays on the display device whether the update is required (S05). The processor 121 then confirms whether the user requests an update (S06). If the user selects "required," the optional peripheral software (category 3-2) is updated to the latest version (S07). If the user selects "no," the software is not updated to the latest version (S08). In step S07, the processor 121 also changes the update flag 313 to "required" for software that requires updating to the latest version at the same update timing.
[0035] After step S07 or S08, or when the processor 121 refers to the version management table 301, if the latest version of the optional peripheral software (category 3-2) is already installed, i.e., if there is no updatable software, proceed to step S09.
[0036] Next, the processor 121 refers to the version management table 301 to check whether there is any essential peripheral software (category 2) whose update flag 313 is "update required" and whether there is any software for which the latest version of the essential peripheral software (category 2) has been downloaded and for which the latest version can be updated (S09-S10). If there is "yes," the essential peripheral software (category 2) is updated to the latest version (S11). If there is "no," the essential peripheral software (category 2) is not updated to the latest version (S12).
[0037] Next, the processor 121 refers to the version management table 301 to check whether there is any peripheral software (category 3-1) whose update flag 313 is "update required," and whether there is any software for which the latest version of the peripheral software (category 3-1) has been downloaded and for which the latest version can be updated (S13-S14). If there is "yes," the peripheral software (category 3-1) is updated to the latest version (S15). If there is "no," the peripheral software (category 3-1) is not updated to the latest version (S16).
[0038] For software installed in an automated analyzer that interacts with other software, it is necessary to install the appropriate version of the software to prevent abnormal operation. To automatically check this, in this embodiment, the software data includes version control data that registers the version that each linked software must meet as the corresponding version, and the control unit uses the version control data to control software updates so that the installed software is the appropriate version.
[0039] Furthermore, because the main software (category 1) may affect functionality and usability, it must be possible for the user to update it at their own convenience during times when it will not interfere with testing operations. Software in category 3-2 is also software that may affect functionality and usability, so it is treated the same as software in category 1.
[0040] On the other hand, for software in category 2 (essential peripheral software), automatic updates are performed when the main software (category 1) or software in categories 3-4 is updated, or at a time predetermined by the user. This allows users to minimize the time it takes to update and prepare peripheral software. Furthermore, by automatically updating at a time when the user is not disturbed, the user's effort to check and manage versions can be reduced. Furthermore, by automatically updating software related to OS security, which is essential OTSS, security can be easily strengthened.
[0041] Category 3-1 software is often updated in response to updates to the measurement and analysis software, which is the main software. Therefore, it is automatically updated, just like Category 2. This allows users to minimize the time spent updating and preparing peripheral software. Furthermore, by automatically updating at times when users are not disturbed, it is possible to reduce the effort required for users to check and manage versions.
[0042] 5A to 5C, the automatic update process for required peripheral software (category 2) and optional peripheral software (category 3-1) accompanying an update of the main body software (category 1) will be specifically described. "Measurement and analysis software" corresponds to category 1 software, "language pack" corresponds to category 2 software linked to it, and "service software" corresponds to category 3-1 software. Software related to the automated analyzer is managed by an external server 501. Assume that the measurement and analysis software 211, language pack 212, and service software 213 currently installed on the automated analyzer are all version 1.0, and that the latest versions have been updated to the corresponding versions 2.0 (FIG. 5A).
[0043] The external server 501 communicates with the control unit 120 of the automatic analyzer to distribute the updated software data 221-223 to the automatic analyzer, and the control unit 120 stores this data in a temporary storage area 502 of the storage device (FIG. 5B). Each piece of software data includes version control data. For example, the measurement and analysis software data 221 includes version data 321 corresponding to the associated software, the language pack data 222 includes version data 322 corresponding to the associated software, and the service software data 223 includes version data 323 corresponding to the associated software. The processor 121 extracts this version control data from the software data and updates the version control table 301.
[0044] After that, the software data is installed according to the flow of Fig. 4, thereby updating each piece of software (Fig. 5C). The external server 501 can be connected to multiple automated analyzers, and can distribute the necessary software to each automated analyzer according to the information on the installed version of each automated analyzer.
[0045] 6A to 6C, the automatic update process for required peripheral software (category 2) and optional peripheral software (category 3-1) that does not involve updating the main software (category 1) will be specifically described. Assume that the measurement and analysis software 211, language pack 212, and service software 213 currently installed in an automated analyzer are all version 2.0, and the measurement and analysis software 211 remains unchanged, while the corresponding language pack and service software are each updated to the latest version 2.1 (FIG. 6A).
[0046] The external server 501 communicates with the control unit 120 of the automatic analyzer to distribute the updated software data 222-223 to the automatic analyzer, and the control unit 120 stores this data in the temporary storage area 502 of the storage device (FIG. 6B). As in the example of FIG. 5B, the processor 121 updates the version management table 301 using the corresponding version data contained in the software data. Thereafter, the software data is installed according to the flow of FIG. 4, thereby updating each piece of software (FIG. 6C).
[0047] The present invention is not limited to the above-described embodiments and includes various modifications. For example, the above-described embodiments and modifications have been described in detail to make the present invention easier to understand, and are not necessarily limited to those including all of the described configurations. Furthermore, it is possible to replace part of the configuration of one embodiment or modification with the configuration of another embodiment or modification, and it is also possible to add the configuration of another embodiment or modification to the configuration of one embodiment or modification. Furthermore, it is possible to add, delete, or replace part of the configuration of each embodiment or modification with other configurations.
[0048] 101: incubator, 102: reagent / sample common disk, 103: first dispensing mechanism, 104: second dispensing mechanism, 106: detector syringe, 107: spectrophotometer, 108: detection mechanism, 109: transport mechanism, 110: dispensing tip, 111: reaction vessel, 112: waste box, 114: second liquid vessel, 115: cleaning liquid vessel, 120: control unit, 121: processor, 122: memory, 123: storage device, 124: input interface, 125: output interface, 126: communication interface, 127: Bus, 201: Classification table, 211: Measurement and analysis software, 212: Language pack, 213: Service software, 221: Measurement and analysis software data, 222: Language pack data, 223: Service software data, 301: Version management table, 311: Software, 312: Latest version, 313: Update flag, 314, 315, 316, 317: Compatible version, 321, 322, 323: Compatible version data, 501: External server, 502: Temporary storage area.
Claims
1. A method for updating software installed in a control unit that controls mechanisms equipped in an automatic analyzer to measure or analyze samples, wherein the software is divided into categories, and the categories include a first category for software that controls mechanisms equipped in the automatic analyzer to measure or analyze the samples, the software is linked based on the automatic analyzer in which it is installed, and the software data for the software includes version control data that registers the version that each of the linked software must satisfy as a compatible version when the software data is installed, the control unit downloads update software data that is software data for update software with an updated version and extracts the version control data from the update software data, the control unit controls the installation of the update software data if the version of the software linked to the update software has already been updated to the compatible version or can be updated to the compatible version at the same update timing, based on the version control data for the update software, and the control unit, when the update software is software of the first category, receives an update instruction for the update software from a user and installs the update software data of the first category.
2. A software update method as claimed in claim 1, wherein the categories include a second category which is software that creates an operating environment for software in the first category or provides a user interface in a language used in the automatic analysis device, and wherein the control unit, when the update software is software in the second category, executes installation of the update software data in the second category after receiving an instruction to update to software in the first category or at a timing predetermined by the user.
3. A software update method as set forth in claim 2, wherein the categories include a third category, which is software that controls a mechanism provided in the automatic analyzer for performing maintenance work on the automatic analyzer, and the control unit, when the update software is software of the third category, installs the update software data of the third category after receiving an instruction to update to software of the first category or at a timing predetermined by the user.
4. A software update method according to claim 3, wherein the categories include a fourth category which is software that does not fall into the first to third categories, and the control unit, when the update software is software of the fourth category, receives an update instruction to the update software from a user and executes installation of the update software data of the fourth category.
5. A software update method according to claim 2, wherein the timing set by the user is when the automatic analyzer is shut down.
6. An automatic analyzer comprising a mechanism for measuring or analyzing samples and a control unit that controls the mechanism in accordance with installed software, wherein the software is divided into categories, and the categories include a first category which is software that controls the mechanism to measure or analyze the samples, the software is linked based on the automatic analyzer in which it is installed, and the software data for the software includes version control data that registers the version that each of the linked software must satisfy as a compatible version when the software data is installed, the control unit downloads update software data which is software data for update software with an updated version and extracts the version control data from the update software data, the control unit controls the installation of the update software data if the version of the software linked to the update software has already been updated to the compatible version or can be updated to the compatible version at the same update timing based on the version control data for the update software, and the control unit, when the update software is software of the first category, receives an update instruction for the update software from a user and installs the update software data of the first category.
7. In claim 6, the categories include a second category which is software that creates an operating environment for software in the first category or provides a user interface in a language used in the automatic analysis device, and the control unit, when the update software is software in the second category, executes installation of the update software data in the second category after receiving an instruction to update to software in the first category or at a timing predetermined by the user, is an automatic analysis device characterized in that 8. An automatic analyzer according to claim 7, wherein the categories include a third category which is software that controls the mechanism to perform maintenance work on the automatic analyzer, and when the update software is software of the third category, the control unit executes installation of the update software data of the third category after receiving an instruction to update to software of the first category or at a timing predetermined by the user.
9. An automatic analysis device according to claim 8, wherein the categories include a fourth category which is software that does not fall into the first to third categories, and the control unit, when the update software is software of the fourth category, receives an update instruction to the update software from a user and executes installation of the update software data of the fourth category.
10. The automatic analyzer according to claim 7, wherein the timing set by the user is when the automatic analyzer is shut down.
Citation Information
Patent Citations
Automatic analysis device for target substance and determination software update method
JP2007148752A
Control unit, control method and control program
JP2008021114A
Specimen analysis method, specimen analysis system, computer program, specimen measuring method, and recovery method
JP2014199211A
Stress analysis device
JP2020008973A