Patent ID: 12244780

DETAILED DESCRIPTION

The technique of Japanese Laid-Open Patent Publication No. 2004-220565 cannot appropriately distribute the load of printing of image data of a plurality of images to a plurality of printers without the use of, for example, a server device that controls distributed printing.

Hereinafter, referring to the drawings, one embodiment will be described.

First Embodiment

(Configuration of Printing System10)

FIG.1is a view illustrating a configuration of a printing system10according to the first embodiment. As illustrated inFIG.1, the printing system10includes a main printer20A and a sub printer20B. Both of the main printer20A and the sub printer20B are relatively compact and portable printing devices dedicated to printing of images (photographs) (i.e., photo printers). The main printer20A and the sub printer20B are each configured to print an image (photograph) sheet by sheet.

The main printer20A and the sub printer20B are wirelessly communicably connected to each other. For example, of the plurality of printers included in the printing system10, a printer that is operated by a user is the main printer20A, and the other printer is the sub printer20B. In other words, any one of the printers included in the printing system10can be the main printer20A or the sub printer20B, and the other printer can be the main printer20A or the sub printer20B.

Note that, according to the printing system10according to the first embodiment, the main printer20A and the sub printer20B are connected to each other in a one-to-one manner. That is, distributed printing can be performed between the main printer20A and the sub printer20B without the need of, for example, a server device that controls distributed printing.

Each of the main printer20A and the sub printer20B includes a central processing unit (CPU)21, a storage medium22, a random access memory (RAM)23, a liquid crystal display (LCD)24, a communication interface (I/F)25, a printing mechanism26, and an input device27.

The CPU21is one example of a “control part”, and controls a printing process by the printing system10by executing a program. For example, the CPU21reads out image data from the storage medium22and decodes the image data. Also, for example, the CPU21temporarily stores the decoded image data in the RAM23.

The storage medium22stores image data of a plurality of images. Examples of the storage medium22include SD memory cards, universal serial bus (USB) memories, and smartphones, which are attachable to and detachable from devices. However, the storage medium22is not limited to the above. The storage medium22may be a built-in one in a device, such as a hard disk drive (HDD). Also, the storage medium22stores a printer driver that drives the main printer20A and the sub printer20B.

The RAM23temporarily stores various data (e.g., image data read out by the CPU21from the storage medium22, and a list of image data).

The LCD24displays various information (e.g., a list of image data stored in the storage medium22, a print setting screen, and a print situation obtained by the printing mechanism26). The LCD24functions as a user interface (UI).

The communication I/F25performs wireless communication with external devices. For example, the main printer20A can perform wireless communication with the sub printer20B via the communication I/F25. Also, for example, the sub printer20B can perform wireless communication with the main printer20A via the communication I/F25. A wireless communication mode of the communication I/F25is, for example, Wireless LAN (WLAN).

The printing mechanism26prints an image on a sheet based on the image data decoded by the CPU21. A printing mode of the printing mechanism26is, for example, a thermal transfer mode, an inkjet mode, or a laser mode.

In response to operation by a user, the input device27receives, from the user, an input of various information (e.g., print settings or instructions to perform printing). Examples of the input device27include switches, buttons, keys, and touch panels.

Note that, the main printer20A and the sub printer20B may be printers of the same type or different types. Also, the printing system10may include a plurality of sub printers20B.

Also, the main printer20A and the sub printer20B may be connected to each other via a given wireless communication mode (e.g., BLUETOOTH (registered trademark)) other than WLAN. A wire-based connection may be established between the main printer20A and the sub printer20B with use of a communication cable.

(Procedure of a Process by the Printing System10)

FIG.2is a flowchart illustrating a procedure of a printing process by the printing system10according to the first embodiment.

First, the main printer20A and the sub printer20B are wirelessly communicably connected to each other via WLAN (step S201).

Next, the CPU21of the main printer20A determines whether or not the storage medium22is connected to the main printer20A (step S202).

In step S202, when it is determined that the storage medium22is not connected to the main printer20A (step S202: NO), the printing system10ends a series of steps as illustrated inFIG.2.

Meanwhile, when it is determined in step S202that the storage medium22is connected to the main printer20A (step S202: YES), the CPU21of the main printer20A determines whether or not image data of a plurality of images are stored in the storage medium22(step S203).

When it is determined in step S203that image data of a plurality of images are not stored in the storage medium22(step S203: NO), the printing system10ends a series of steps as illustrated inFIG.2.

Meanwhile, when it is determined in step S203that image data of a plurality of images are stored in the storage medium22(step S203: YES), the CPU21of the main printer20A determines whether or not the print settings of the main printer20A are reflected in the sub printer20B (step S204).

Note that, specific examples of the print settings that are reflected from the main printer20A to the sub printer20B will be given as follows.Image quality (e.g., white balance, hues, and brightness)Black and white settingsSepia settingsBordered/borderless settingsAmount of extension in the case of borderless settingsLayout (e.g., N-up)Data

When it is determined in step S204that the print settings of the main printer20A are reflected to the sub printer20B (step S204: YES), the CPU21of the main printer20A reflects the print settings of the main printer20A to the sub printer20B through wireless communication via WLAN (step S205). Subsequently, the printing system10causes the flow to proceed to step S206.

When it is determined in step S204that the print settings of the main printer20A are not reflected to the sub printer20B (step S204: NO), the printing system10causes the flow to proceed to step S206.

In step S206, the CPU21of the main printer20A selects image data of a single image from the plurality images stored in the storage medium22of the main printer20A (step S206).

Next, the CPU21of the main printer20A determines a printer used for printing of the image data of a single image selected in step S206in accordance with print situations of the main printer20A and the sub printer20B (step S207).

Next, based on the determination in step S207, the CPU21of the main printer20A determines whether or not the image data of a single image selected in step S206is printed by the main printer20A (step S208).

When it is determined in step S208that the image data of a single image is printed by the main printer20A (step S208: YES), the CPU21of the main printer20A decodes the image data of a single image selected in step S206(step S209). Then, the printing mechanism26of the main printer20A prints an image using the image data of a single image decoded in step S209(step S210). Then, the printing system10causes the flow to proceed to step S214.

Meanwhile, when it is determined in step S208that the image data of a single image is not printed by the main printer20A (step S208: NO), the CPU21of the main printer20A transmits the image data of a single image selected in step S206and a printing command to the sub printer20B through wireless communication via WLAN (step S211). Then, the CPU21of the sub printer20B decodes the image data of a single image transmitted from the main printer20A (step S212). Moreover, the printing mechanism26of the sub printer20B prints an image using the image data of a single image decoded in step S212(step S213). The printing system10causes the flow to proceed to step S214.

In step S214, the CPU21of the main printer20A determines whether or not printing of all of the image data stored in the storage medium22is completed (step S214).

When it is determined in step S214that printing of all of the image data stored in the storage medium22is not completed (step S214: NO), the printing system10returns the flow to step S206.

Meanwhile, when it is determined in step S214that printing of all of the image data stored in the storage medium22is completed (step S214: YES), the printing system10ends a series of steps as illustrated inFIG.2.

(Procedure of a Process by the Main Printer20A)

FIG.3is a flowchart illustrating a procedure of a printing process by the main printer20A according to the first embodiment.

First, the communication I/F25wirelessly communicably connects to the sub printer20B via WLAN (step S301).

Next, the CPU21determines whether or not there are any image data that can be read out to the main printer20A (step S302). Here, the case in which “there are any image data that can be read out to the main printer20A” refers to, for example, a case in which image data are stored in the storage medium22(e.g., a SD memory card, a USB memory, and a smartphone) connected to the main printer20A. Note that, a plurality of storage media22may be connected to the main printer20A. In this case, the CPU21may read out image data from each of the plurality of storage media22connected to the main printer20A. Also, when the storage medium22is a smartphone, the CPU21preferably copies the image data stored in the smartphone in a built-in memory (RAM23) of the main printer20A.

When it is determined in step S302that there are no image data that can be read out to the main printer20A (step S302: NO), the main printer20A ends a series of steps as illustrated inFIG.3.

Meanwhile, when it is determined in step S302that there are any image data that can be read out to the main printer20A (step S302: YES), the CPU21receives a printing command from a user (step S303). Note that, the printing command from the user may be made through operation of the main printer20A by the user, or may be made through operation by the user of the smartphone connected to the main printer20A.

Next, the CPU21creates a list of image data to be printed (step S304). The list defines priority of the image data to be printed. The list shows, for example, an order of printing, a storage site (name of a folder), and a name of a file, for each of the image data for a single sheet. Note that, the list may automatically include all of the plurality of images stored in the storage medium22, or may include a plurality of images selected by a user from the plurality of images stored in the storage medium22.

Next, the CPU21determines whether or not the image data to be printed (i.e., image data included in the list created in step S304) are image data for one sheet (step S305).

When it is determined in step S305that the image data to be printed are image data for one sheet (step S305: YES), the main printer20A may print the image data by itself (i.e., distributed printing is not necessary) and ends a series of steps as illustrated inFIG.3.

Meanwhile, when it is determined in step S305that the image data to be printed are not image data for one sheet (step S305: NO), the CPU21determines whether or not the print settings of the main printer20A are reflected to the sub printer20B (step S306).

When it is determined in step S306that the print settings of the main printer20A are reflected to the sub printer20B (step S306: YES), the CPU21reflects the print settings of the main printer20A to the sub printer20B through wireless communication via WLAN (step S307). Subsequently, the main printer20A causes the flow to proceed to step S308.

When it is determined in step S306that the print settings of the main printer20A are not reflected to the sub printer20B (step S306: NO), the main printer20A causes the flow to proceed to step S308.

In step S308, the CPU21transmits the top image data of the list created in step S304(i.e., the image data that are the highest in priority at this time) to the sub printer20B through wireless communication via WLAN (step S308).

Next, the CPU21deletes the image data transmitted in step S308from the list created in step S304(step S309).

Next, the CPU21decodes the top image data of the list created in step S304(i.e., the image data that are the highest in priority at this time) (step S310).

Next, the CPU21deletes the image data decoded in step S310from the list created in step S304(step S311).

Next, the printing mechanism26starts printing of the image data decoded in step S310(step S312).

Next, the CPU21determines whether or not printing of all of the image data included at the time of creating of the list in step S304is completed (step S313).

When it is determined in step S313that printing of all of the image data is completed (step S313: YES), the CPU21transmits, to the sub printer20B, a notification of completion of printing of all of the image data, through wireless communication via WLAN (step S319). Subsequently, the main printer20A ends a series of steps as illustrated inFIG.3.

Meanwhile, when it is determined in step S313that printing of all of the image data is not completed (step S313: NO), the CPU21determines whether or not printing by the sub printer20B is completed (step S314).

When it is determined in step S314that printing by the sub printer20B is completed (step S314: YES), the CPU21transmits, to the sub printer20B, the top image data of the list created in step S304through wireless communication via WLAN (step S315). Then, the CPU21deletes the top image data from the list created in step S304(step S316). Subsequently, the main printer20A causes the flow to proceed to step S317.

Meanwhile, when it is determined in step S314that printing by the sub printer20B is not completed (step S314: NO), the main printer20A causes the flow to proceed to step S317.

In step S317, the CPU21determines whether or not printing by the main printer20A is completed (step S317).

When it is determined in step S317that printing by the main printer20A is not completed (step S317: NO), the main printer20A returns the flow to step S313.

Meanwhile, when it is determined in step S317that printing by the main printer20A is completed (step S317: YES), the CPU21determines whether or not the list created in step S304is empty (step S318).

When it is determined in step S318that the list is not empty (step S318: NO), the main printer20A returns the flow to step S310.

Meanwhile, when it is determined in step S318that the list is empty (step S318: YES), the CPU21transmits, to the sub printer20B, a notification of completion of printing of all of the image data, through wireless communication via WLAN (step S319). Subsequently, the main printer20A ends a series of steps as illustrated inFIG.3.

Note that, in the case of receiving a new printing command from a user before completion of the printing of all of the image data included at the time of creating of the list, the CPU21of the main printer20A may add, to the last part of the list, the image data designated to be printed by the new printing command.

(Procedure of a Process by the Sub Printer20B)

FIG.4is a flowchart illustrating a procedure of a printing process by the sub printer20B according to the first embodiment.

First, the communication I/F25wirelessly communicably connects to the main printer20A via WLAN (step S401).

Next, the CPU21determines whether or not print settings are received from the main printer20A (step S402).

When it is determined in step S402that print settings are received from the main printer20A (step S402: YES), the CPU21reflects, to the sub printer20B, the print settings received from the main printer20A (step S403). Subsequently, the sub printer20B causes the flow to proceed to step S404.

Meanwhile, when it is determined in step S402that print settings are not received from the main printer20A (step S402: NO), the sub printer20B causes the flow to proceed to step S404.

In step S404, the CPU21prohibits operation of the input device27(step S404).

Next, the CPU21decodes the image data received from the main printer20A (step S405).

Next, the printing mechanism26starts printing of the image data decoded in step S405(step S406).

Next, the CPU21determines whether or not printing by the sub printer20B is completed (step S407).

When it is determined in step S407that printing by the sub printer20B is not completed (step S407: NO), the sub printer20B performs step S407again.

Meanwhile, when it is determined in step S407that printing by the sub printer20B is completed (step S407: YES), the CPU21notifies the main printer20A of completion of the printing through wireless communication via WLAN (step S408).

Next, the CPU21determines whether or not new image data are received from the main printer20A (step S409).

When it is determined in step S409that new image data are received (step S409: YES), the sub printer20B returns the flow to step S405.

Meanwhile, when it is determined in step S409that new image data are not received (step S409: NO), the CPU21determines that a notification of completion of the printing of all of the image data is received from the main printer20A (step S410).

When it is determined in step S410that a notification of completion of the printing of all of the image data is not received (step S410: NO), the sub printer20B returns the flow to step S409.

Meanwhile, when it is determined in step S410that a notification of completion of the printing of all of the image data is received (step S410: YES), the CPU21permits operation of the input device27(step S411). Subsequently, the sub printer20B ends a series of steps as illustrated inFIG.4.

(Effects)

As described above, the printing system10according to the first embodiment includes: the main printer20A configured to print the image; the sub printer20B communicably connected to the main printer20A and configured to print the image; and the storage medium22that is configured to store the image data of the plurality of images and from which the main printer20A is able to read out the image data. The main printer20A regularly checks the print situations of the main printer20A and the sub printer20B. In accordance with the print situations that are regularly checked, the main printer determines which of the printers is to be used for printing of an image for each of the image data of the plurality of images.

Thereby, even if, for example, any one of the printers has trouble during printing (e.g., running out of ink) or there is difference in printing speed between the printers, the printing system10according to the first embodiment can appropriately distribute the load of the printing of the image data of the plurality of images to the main printer20A and the sub printer20B.

In particular, according to the printing system10according to the first embodiment, the main printer20A is responsible for main control in relation to the printing of the image data of the plurality of images by the main printer20A and the sub printer20B, and thus it is possible to appropriately distribute the load of the printing of the image data of the plurality of images to the main printer20A and the sub printer20B without the use of, for example, a server device that controls distributed printing.

Specifically, according to the printing system10according to the first embodiment, the main printer20A creates a list that defines priority of the image data of the plurality of images. Every time the main printer20A completes printing of the image data of a single image, the main printer20A prints the next image data of a single image that is the highest in priority in the list, and deletes the next image data of the single image from the list. Every time the sub printer20B completes printing of the image data of a single image, the sub printer20B transmits a signal of completion of the printing to the main printer20A. Every time the main printer20A receives the signal of the completion of the printing, the main printer20A causes the sub printer20B to print next image data of a single image that is the highest in priority in the list, and deletes the next image data of the single image from the list.

Thereby, with the printing system10according to the first embodiment, an awaiting-for-printing situation does not arise because a printing instruction of new image data is not given while image data are being printed, in any of the main printer20A and the sub printer20B. Therefore, according to the printing system10according to the first embodiment, it is possible to appropriately distribute the load of the printing of the image data of the plurality of images to the main printer20A and the sub printer20B.

Also, according to the printing system10according to the first embodiment, the main printer20A decodes the image data of the image that is determined to be printed using the main printer20A, and the sub printer20B decodes the image data of the image that is determined to be printed using the sub printer20B.

Thereby, the printing system10according to the first embodiment can distribute the load of the decoding of the image data of the plurality of images to the main printer20A and the sub printer20B.

Also, according to the printing system10according to the first embodiment, each of the main printer20A and the sub printer20B includes the input device27, and the operation by the input device27of the sub printer20B is prohibited from the start of the printing of the image data of the plurality of images until completion of the printing of all of the image data of the plurality of images.

Thereby, the printing system10according to the first embodiment can prevent malfunction by integrating, into the main printer20A, the main control in relation to the printing of the image data of the plurality of images by the main printer20A and the sub printer20B.

Also, according to the printing system10according to the first embodiment, the main printer20A reflects the print settings of the main printer20A to the sub printer20B, and the sub printer20B can print an image based on the reflected print settings.

Thereby, according to the printing system according to the first embodiment, the main printer20A and the sub printer20B are able to perform printing under the common print settings without a user manually performing print settings of the sub printer20B.

Also, according to the printing system10according to the first embodiment, the main printer20A and the sub printer20B are wirelessly communicably connected to each other via Wireless LAN or BLUETOOTH.

Thereby, the printing system10according to the first embodiment can relatively readily communicably connect the main printer20A and the sub printer20B to each other without the use of a communication cable.

(Examples of Connection of a Plurality of Sub Printers20B)

The examples ofFIG.1toFIG.4illustrate that a single sub printer20B is connected to the main printer20A; however, this is by no means a limitation. A plurality of sub printers20B may be connected to the main printer20A.

In this case, the main printer20A can transmit image data sheet by sheet, in accordance with the priority in the list, to each of the plurality of sub printers20B, thereby causing the sub printer20B to print an image sheet by sheet. Every time any one of the sub printers20B completes printing, the main printer20A can transmit image data for the next sheet to the sub printer20B that completes the printing, thereby causing the sub printer20B to print the next image.

Therefore, with the printing system10, an awaiting-for-printing situation does not arise because a printing instruction of new image data is not given while image data are being printed, in any of the main printer20A and the plurality of sub printers20B. Thus, according to the printing system10, it is possible to appropriately distribute the load of the printing of the image data of the plurality of images to the main printer20A and the plurality of sub printers20B.

Second Embodiment

(Configuration of Printing System10-2)

FIG.5is a view illustrating a configuration of a printing system10-2according to the second embodiment. As illustrated inFIG.5, the printing system10-2according to the second embodiment is different from the printing system10according to the first embodiment in that each of the main printer20A and the sub printer20B includes a battery28.

The battery28accumulates and supplies electric power for driving the device. As the battery28, for example, various secondary batteries that are rechargeable (e.g., a lithium ion secondary battery or a lithium ion polymer secondary battery) are used.

The main printer20A and the sub printer20B, each including the battery28, can be driven by the electric power supplied from the battery28.

Note that, in each of the main printer20A and the sub printer20B, the CPU21regularly monitors the state of the battery28(e.g., voltage or temperature) and can detect changes in the state of the battery28(e.g., low battery).

(Procedure of a Process by the Main Printer20A)

FIG.6AtoFIG.6Dare flowcharts illustrating a procedure of a printing process by the main printer20A according to the second embodiment.

First, the communication I/F25wirelessly communicably connects to the sub printer20B via WLAN (step S601).

Next, the CPU21determines whether or not there are any image data that can be read out to the main printer20A (step S602).

When it is determined in step S602that there are no image data that can be read out to the main printer20A (step S602: NO), the main printer20A ends a series of steps as illustrated inFIG.6AtoFIG.6D.

Meanwhile, when it is determined in step S602that there are any image data that can be read out to the main printer20A (step S602: YES), the CPU21receives a printing command from a user (step S603).

Next, the CPU21determines whether or not the image data to be printed are image data for one sheet (step S604).

When it is determined in step S604that the image data to be printed are image data for one sheet (step S604: YES), the main printer20A may print the image data by itself (i.e., distributed printing is not necessary) and ends a series of steps as illustrated inFIG.6AtoFIG.6D.

Meanwhile, when it is determined in step S604that the image data to be printed are not image data for one sheet (step S604: NO), the CPU21creates a list for the main printer and a list for the sub printer (step S605).

The list for the main printer defines priority of the image data to be printed by the main printer20A. The list for the sub printer defines priority of the image data to be printed by the sub printer20B. The list for the main printer and the list for the sub printer show, for example, an order of printing, a storage site (name of a folder), and a name of a file, for each of the image data for a single sheet. For example, the CPU21includes, in the list for the main printer, half the image data of the plurality of images to be printed, and includes, in the list for the sub printer, the other half of the image data of the plurality of images to be printed.

Next, the CPU21transmits, to the sub printer20B, the list for the sub printer that is created in step S605, through wireless communication via WLAN (step S606).

Next, the CPU21determines whether or not the sub printer20B is in a low-battery state (step S607).

When it is determined in step S607that the sub printer20B is in a low-battery state (step S607: YES), the CPU21determines whether or not the list for the sub printer is empty (step S608).

When it is determined in step S608that the list for the sub printer is empty (step S608: YES), the main printer20A causes the flow to proceed to step S611.

Meanwhile, when it is determined in step S608that the list for the sub printer is not empty (step S608: NO), the CPU21adds all of the rows of the list for the sub printer to the list for the main printer (step S609). Then, the CPU21makes the list for the sub printer empty (step S610). Subsequently, the main printer20A causes the flow to proceed to step S611.

In step S611, the CPU21determines whether or not the main printer20A is in a low-battery state (step S611).

When it is determined in step S611that the main printer20A is not in a low-battery state (step S611: NO), the main printer20A causes the flow to proceed to step S618.

Meanwhile, when it is determined in step S611that the main printer20A is in a low-battery state (step S611: YES), the CPU21notifies a user of being unable to perform printing (step S612). Subsequently, the main printer20A ends a series of steps as illustrated inFIG.6AtoFIG.6D.

When it is determined in step S607that the sub printer20B is not in a low-battery state (step S607: NO), the CPU21determines whether or not the main printer20A is in a low-battery state (step S613).

When it is determined in step S613that the main printer20A is not in a low-battery state (step S613: NO), the main printer20A causes the flow to proceed to step S618.

Meanwhile, when it is determined in step S613that the main printer20A is in a low-battery state (step S613: YES), the CPU21determines whether or not the list for the main printer is empty (step S614).

When it is determined in step S614that the list for the main printer is empty (step S614: YES), the main printer20A causes the flow to proceed to step the S618.

Meanwhile, when it is determined in step S614that the list for the main printer is not empty (step S614: NO), the CPU21adds all of the rows of the list for the main printer to the list for the sub printer (step S615). Then, the CPU21makes the list for the main printer empty (step S616). Moreover, the CPU21transmits, to the sub printer20B, the list for the sub printer to which all of the rows of the list for the main printer are added in step S615(step S617). Subsequently, the main printer20A causes the flow to proceed to step S618.

In step S618, the CPU21determines whether or not the list for the sub printer is empty (step S618).

When it is determined in step S618that the list for the sub printer is empty (step S618: YES), the CPU21determines whether or not the sub printer20B is in a low-battery state (step S619).

When it is determined in step S619that the sub printer20B is in a low-battery state (step S619: YES), the main printer20A causes the flow to proceed to step S626.

Meanwhile, when it is determined in step S619that the sub printer20B is not in a low-battery state (step S619: NO), the CPU21determines whether or not the list for the main printer is two or more rows (step S620).

When it is determined in step S620that the list for the main printer is not two or more rows (step S620: NO), the main printer20A causes the flow to proceed to step S626.

Meanwhile, when it is determined in step S620that the list for the main printer is two or more rows (step S620: YES), the CPU21divides the list for the main printer into two, thereby creating a list for the main printer and a list for the sub printer (step S621).

Then, the CPU21transmits, to the sub printer20B, the list for the sub printer that is created in step S621, through wireless communication via WLAN (step S622). Subsequently, the main printer20A causes the flow to proceed to step S626.

When it is determined in step S618that the list for the sub printer is not empty (step S618: NO), the CPU21determines whether or not the sub printer20B is currently printing (step S623).

When it is determined in step S623that the sub printer20B is currently printing (step S623: YES), the main printer20A causes the flow to proceed to step S626.

Meanwhile, when it is determined in step S623that the sub printer20B is not currently printing (step S623: NO), the CPU21transmits, to the sub printer20B, the top image data of the list for the sub printer, through wireless communication via WLAN (step S624).

Then, the CPU21deletes the top row of the list for the sub printer (step S625). Subsequently, the main printer20A causes the flow to proceed to step S626.

In step S626, the CPU21determines whether or not the list for the main printer is empty (step S626).

When it is determined in step S626that the list for the main printer is not empty (step S626: NO), the CPU21determines whether or not the main printer20A is currently printing (step S627).

When it is determined in step S627that the main printer20A is currently printing (step S627: YES), the main printer20A returns the flow to step S607.

Meanwhile, when it is determined in step S627that the main printer20A is not currently printing (step S627: NO), the CPU21decodes the top image data of the list for the main printer (step S628).

Then, the CPU21deletes the top row of the list for the main printer (step S629). Moreover, the printing mechanism26starts printing of the image data decoded in step S628(step S630). Subsequently, the main printer20A causes the flow to proceed to step S635.

When it is determined in step S626that the list for the main printer is empty (step S626: YES), the CPU21determines whether or not the main printer20A is in a low-battery state (step S631).

When it is determined in step S631that the main printer20A is in a low-battery state (step S631: YES), the main printer20A causes the flow to proceed to step S637.

Meanwhile, when it is determined in step S631that the main printer20A is in a low-battery state (step S631: NO), the CPU21determines whether or not the list for the sub printer is two or more rows (step S632).

When it is determined in step S632that the list for the sub printer is two or more rows (step S632: YES), the CPU21divides the list for the sub printer into two, thereby creating a list for the main printer and a list for the sub printer (step S633). Then, the CPU21transmits, to the sub printer20B, the list for the sub printer that is created in step S633, through wireless communication via WLAN (step S634). Subsequently, the main printer20A returns the flow to step S607.

Meanwhile, when it is determined in step S632that the list for the main printer is not two or more rows (step S632: NO), the CPU21determines whether or not the list for the main printer is empty (step S635).

When it is determined in step S635that the list for the main printer is not empty (step S635: NO), the main printer20A returns the flow to step S607.

Meanwhile, when it is determined in step S635that the list for the main printer is empty (step S635: YES), the CPU21determines whether or not the list for the sub printer is empty (step S636).

When it is determined in step S636that the list for the sub printer is not empty (step S636: NO), the main printer20A returns the flow to step S607.

Meanwhile, when it is determined in step S636that the list for the sub printer is empty (step S636: YES), the CPU21notifies the sub printer20B of “there are no image data awaiting printing” (step S637). Subsequently, the main printer20A ends a series of steps as illustrated inFIG.6AtoFIG.6D.

(Procedure of a Process by the Sub Printer20B)

FIG.7is a flowchart illustrating a procedure of a printing process by the sub printer20B according to the second embodiment.

First, the communication I/F25wirelessly communicably connects to the main printer20A via WLAN (step S701).

Next, the CPU21determines whether or not the list for the sub printer is received from the main printer20A (step S702).

When it is determined in step S702that the list for the sub printer is not received from the main printer20A (step S702: NO), the sub printer20B performs step S702again.

When it is determined in step S702that the list for the sub printer is received from the main printer20A (step S702: YES), the CPU21sets, in the sub printer20B, the list for the sub printer that is received from the main printer20A (step S703).

Next, the CPU21prohibits operation of the input device27(step S704).

Next, the CPU21determines whether or not image data are received from the main printer20A (step S705).

When it is determined in step S705that image data are not received from the main printer20A (step S705: NO), the sub printer20B performs step S705again.

Meanwhile, when it is determined in step S705that image data are received from the main printer20A (step S705: YES), the CPU21decodes the image data that are received from the main printer20A (step S706).

Next, the printing mechanism26starts printing of the image data decoded in step S706(step S707).

Next, the CPU21determines whether or not the sub printer20B is currently printing (step S708).

When it is determined in step S708that the sub printer20B is currently printing (step S708: YES), the sub printer20B performs step S708again.

Meanwhile, when it is determined in step S708that the sub printer20B is not currently printing (step S708: NO), the CPU21determines whether or not the sub printer20B is in a low-battery state (step S709).

When it is determined in step S709that the sub printer20B is in a low-battery state (step S709: YES), the CPU21notifies the main printer20A of the sub printer20B being in a low-battery state through wireless communication via WLAN (step S710). Subsequently, the sub printer20B ends a series of steps as illustrated inFIG.7.

Meanwhile, when it is determined in step S709that the sub printer20B is not in a low-battery state (step S709: NO), the CPU21notifies the main printer20A of completion of printing through wireless communication via WLAN (step S711).

Next, the CPU21determines whether or not a new list for the sub printer is received from the main printer20A (step S712).

When it is determined in step S712that the new list for the sub printer is received (step S712: YES), the CPU21sets, in the sub printer20B, the new list for the sub printer that is received from the main printer20A (step S713).

Subsequently, the sub printer20B returns the flow to step S705.

Meanwhile, when it is determined in step S712that the new list for the sub printer is not received (step S712: NO), the CPU21determines whether or not printing of all of the image data included in the list for the sub printer is completed (step S714).

When it is determined in step S714that printing of all of the image data included in the list for the sub printer is not completed (step S714: NO), the sub printer20B returns the flow to step S705.

Meanwhile, when it is determined in step S714that printing of all of the image data included in the list for the sub printer is completed (step S714: YES), the CPU21determines whether or not “there are no image data awaiting printing” is received from the main printer20A (step S715).

When it is determined in step S715that “there are no image data awaiting printing” is not received (step S715: NO), the sub printer20B returns the flow to step S712.

Meanwhile, when it is determined in step S715that “there are no image data awaiting printing” is received (step S715: YES), the CPU21permits operation of the input device27(step S716). Subsequently, the sub printer20B ends a series of steps as illustrated inFIG.7.

(Effects)

As described above, according to the printing system10-2according to the second embodiment, the main printer20A creates the list for the main printer of the image data to be printed by the main printer20A and the list for the sub printer of the image data to be printed by the sub printer20B. The main printer20A deletes, from the list for the main printer, the image data that start being printed by the main printer20A, and deletes, from the list for the sub printer, the image data that start being printed by the sub printer20B. In response to the list for the main printer being empty, the main printer20A notifies the sub printer20B of the list for the main printer being empty. In response to receiving the list for the main printer being empty, the sub printer20B divides the list for the sub printer into two lists, and transmits one of the lists to the main printer20A and uses the other list as a new list for the sub printer. In response to the list for the sub printer being empty, the sub printer20B notifies the main printer20A of the list for the sub printer being empty. In response to receiving the list for the sub printer being empty, the main printer20A divides the list for the main printer into two lists, and transmits one of the lists to the sub printer20B and uses the other list as a new list for the main printer.

Thereby, according to the printing system10-2according to the second embodiment, in response to one of the list for the main printer and the list for the sub printer being empty, by dividing the other list into two lists, it is possible to use two printers and perform distributed printing of the image data of the plurality of images included in the other list.

Therefore, according to the printing system10-2according to the second embodiment, it is possible to efficiently perform distributed printing of the image data of the plurality of images with the main printer20A and the sub printer20B without the use of, for example, a server device that controls distributed printing.

Also, according to the printing system10-2according to the second embodiment, the main printer20A checks that the main printer20A is able to perform further printing every time the main printer20A completes printing of image data of a single image, and the sub printer20B checks that the sub printer20B is able to perform further printing every time the sub printer20B completes printing of image data of a single image. When the main printer20A is able to perform further printing and the sub printer20B is unable to perform further printing, the sub printer20B transmits the list for the sub printer to the main printer20A, and the main printer20A prints all of the remaining image data awaiting printing. When the sub printer20B is able to perform further printing and the main printer20A is unable to perform further printing, the main printer20A transmits the list for the main printer to the sub printer20B, and the sub printer20B prints all of the remaining image data awaiting printing.

Thereby, according to the printing system10-2according to the second embodiment, when one printer of the main printer20A and the sub printer20B is unable to perform printing, the other printer is able to perform all of the remaining image data awaiting printing; i.e., distributed printing is possible.

Therefore, according to the printing system10-2according to the second embodiment, it is possible to efficiently perform distributed printing of the image data of the plurality of images with the main printer20A and the sub printer20B without the use of, for example, a server device that controls distributed printing.

Also, according to the printing system10-2according to the second embodiment, the main printer20A determines whether or not the main printer20A is able to perform printing every time the main printer20A completes printing of image data of a single image. If the main printer20A is unable to perform printing, the main printer20A does not print the next image data. The sub printer20B determines whether or not the sub printer20B is able to perform printing every time the sub printer20B completes printing of image data of a single image. If the sub printer20B is unable to perform printing, the sub printer20B does not transmit a signal of completion of the printing to the main printer20A.

Thereby, according to the printing system10-2according to the second embodiment, the sub printer20B can readily determine that one printer of the main printer20A and the sub printer20B is unable to perform printing, and as a result this printer is not permitted to print the next image data.

Also, according to the printing system10-2according to the second embodiment, the main printer20A determines whether or not the main printer20A is able to perform printing based on the remaining battery level of the main printer20A, and the sub printer20B determines whether or not the sub printer20B is able to perform printing based on the remaining battery level of the sub printer20B.

Thereby, according to the printing system10-2according to the second embodiment, the sub printer20B can readily determine that one printer of the main printer20A and the sub printer20B reaches an insufficient remaining battery level, and as a result this printer is not permitted to print the next image data.

Third Embodiment

(Configuration of Printing System10-3)

Although not illustrated, a configuration of the printing system10-3according to the third embodiment is similar to the configuration of the printing system10according to the first embodiment (seeFIG.1) or the configuration of the printing system10-2according to the second embodiment (seeFIG.5).

(Procedure of a Process by the Main Printer20A)

FIG.8AtoFIG.8Care flowcharts illustrating a procedure of a printing process by the main printer20A according to the third embodiment.

First, the communication I/F25wirelessly communicably connects to the sub printer20B via WLAN (step S801).

Next, the CPU21determines whether or not there are any image data that can be read out to the main printer20A (step S802).

When it is determined in step S802that there are no image data that can be read out to the main printer20A (step S802: NO), the main printer20A ends a series of steps as illustrated inFIG.8AtoFIG.8C.

Meanwhile, when it is determined in step S802that there are any image data that can be read out to the main printer20A (step S802: YES), the CPU21receives a printing command from a user (step S803).

Next, the CPU21determines whether or not the image data to be printed are image data for one sheet (step S804).

When it is determined in step S804that the image data to be printed are image data for one sheet (step S804: YES), the main printer20A may print the image data by itself (i.e., distributed printing is not necessary) and ends a series of steps as illustrated inFIG.8AtoFIG.8C.

Meanwhile, when it is determined in step S804that the image data to be printed are not image data for one sheet (step S804: NO), the CPU21creates a list for the main printer and a list for the sub printer (step S805). For example, the CPU21includes, in the list for the main printer, half the image data of the plurality of images to be printed, and includes, in the list for the sub printer, the other half of the image data of the plurality of images to be printed.

Next, the CPU21transmits, to the sub printer20B, the list for the sub printer that is created in step S805, through wireless communication via WLAN (step S806).

Next, the CPU21determines whether or not a signal of being unable to perform printing is received from the sub printer20B (step S807).

When it is determined in step S807that the signal of being unable to perform printing is received (step S807: YES), the CPU21determines whether or not the main printer20A is unable to perform printing (step S808). Here, the “main printer20A is unable to perform printing” is, for example, a case in which the main printer20A is in a low-battery state, or a case of running out of sheets. In particular, the “main printer20A is unable to perform printing” is preferably a case in which the main printer20A is in a low-battery state. This is because the low-battery state of the main printer20A cannot be overcome for a short period of time, and thus the effects of the present disclosure are highly effectively exhibited.

When it is determined in step S808that the main printer20A is not unable to perform printing (step S808: NO), the sub printer20B causes the flow to proceed to step S814.

Meanwhile, when it is determined in step S808that the main printer20A is unable to perform printing (step S808: YES), the CPU21notifies a user of being unable to perform printing (step S809). Subsequently, the main printer20A ends a series of steps as illustrated inFIG.8AtoFIG.8C.

When it is determined in step S807that a signal of being unable to perform printing is not received (step S807: NO), the CPU21determines whether or not the main printer20A is unable to perform printing (step S810).

When it is determined in step S810that the main printer20A is not unable to perform printing (step S810: NO), the sub printer20B causes the flow to proceed to step S814.

Meanwhile, when it is determined in step S810that the main printer20A is unable to perform printing (step S810: YES), the CPU21determines whether or not the list for the main printer is empty (step S811).

When it is determined in step S811that the list for the main printer is empty (step S811: YES), the main printer20A causes the flow to proceed to step S814.

Meanwhile, when it is determined in step S811that the list for the main printer is not empty (step S811: NO), the CPU21transmits, to the sub printer20B, the list for the main printer and image data, through wireless communication via WLAN (step S812). Then, the CPU21makes the list for the main printer empty (step S813). Subsequently, the main printer20A causes the flow to proceed to step S814.

In step S814, the CPU21determines whether or not the list for the sub printer is received from the sub printer20B (step S814).

When it is determined in step S814that the list for the sub printer is not received (step S814: NO), the main printer20A causes the flow to proceed to step S816.

Meanwhile, when it is determined in step S814that the list for the sub printer is received (step S814: YES), the CPU21adds the received list for the sub printer to the list for the main printer (step S815). Subsequently, the main printer20A causes the flow to proceed to step S816.

In step S816, the CPU21determines whether or not a notification of completion of printing of all of the list for the sub printer is received from the sub printer20B (step S816).

When it is determined in step S816that a notification of completion of printing of all of the list for the sub printer is not received (step S816: NO), the main printer20A causes the flow to proceed to step S820.

Meanwhile, when it is determined in step S816that a notification of completion of printing of all of the list for the sub printer is received (step S816: YES), the CPU21determines whether or not the list for the main printer is empty (step S817).

When it is determined in step S817that the list for the main printer is empty (step S817: YES), the main printer20A causes the flow to proceed to step S820.

Meanwhile, when it is determined in step S817that the list for the main printer is not empty (step S817: NO), the CPU21divides the list for the main printer into two, thereby creating a list for the main printer and a list for the sub printer (step S818).

Then, the CPU21transmits, to the sub printer20B, the list for the sub printer that is created in step S821and image data, through wireless communication via WLAN (step S819). Subsequently, the main printer20A causes the flow to proceed to step S820.

In step S820, the CPU21determines whether or not the main printer20A is currently printing (step S820).

When it is determined in step S820that the main printer20A is currently printing (step S820: YES), the main printer20A returns the flow to step S816.

Meanwhile, when it is determined in step S820that the main printer20A is not currently printing (step S820: NO), the CPU21determines whether or not the list for the main printer is empty (step S821).

When it is determined in step S821that the list for the main printer is empty (step S821: YES), the CPU21notifies the sub printer20B of the list for the main printer being empty (step S822). Subsequently, the main printer20A causes the flow to proceed to step S826.

Meanwhile, when it is determined in step S821that the list for the main printer is not empty (step S821: NO), the CPU21decodes the top image data of the list for the main printer (step S823).

Then, the CPU21deletes the top row of the list for the main printer (step S824). Moreover, the printing mechanism26starts printing of the image data decoded in step S823(step S825). Subsequently, the main printer20A causes the flow to proceed to step S826.

In step S826, the CPU21determines whether or not a notification of completion of printing of all of the list for the sub printer is received from the sub printer20B (step S825).

When it is determined in step S826that a notification of completion of printing of all of the list for the sub printer is not received (step S825: NO), the main printer20A returns the flow to step S807.

Meanwhile, when it is determined in step S826that a notification of completion of printing of all of the list for the sub printer is received (step S825: YES), the CPU21notifies the sub printer20B of completion of printing of all of the images (step S827). Subsequently, the main printer20A ends a series of steps as illustrated inFIG.8AtoFIG.8C.

(Procedure of a Process by the Sub Printer20B)

FIG.9AandFIG.9Bare flowcharts illustrating a procedure of a printing process by the sub printer20B according to the third embodiment.

First, the communication I/F25wirelessly communicably connects to the main printer20A via WLAN (step S901).

Next, the CPU21determines whether or not a list for the sub printer is received from the main printer20A (step S902).

When it is determined in step S902that the list for the sub printer is received from the main printer20A (step S902: NO), the sub printer20B performs step S902again.

When it is determined in step S902that the list for the sub printer is received from the main printer20A (step S902: YES), the CPU21sets, in the sub printer20B, the list for the sub printer received from the main printer20A (step S903).

Next, the CPU21prohibits operation of the input device27(step S904).

Next, the CPU21determines whether or not the sub printer20B is unable to perform printing (step S905). Here, the “sub printer20B is unable to perform printing” is, for example, a case in which the sub printer20B is in a low-battery state, or a case of running out of sheets. In particular, the “sub printer20B is unable to perform printing” is preferably a case in which the sub printer20B is in a low-battery state. This is because the low-battery state of the sub printer20B cannot be overcome for a short period of time, and thus the effects of the present disclosure are highly effectively exhibited.

When it is determined in step S905that the sub printer20B is not unable to perform printing (step S905: NO), the sub printer20B causes the flow to proceed to step S910.

Meanwhile, when it is determined in step S905that the sub printer20B is unable to perform printing (step S905: YES), the CPU21transmits, to the main printer20A, a signal of being unable to perform printing, indicating that the sub printer20B is unable to perform printing, through wireless communication via WLAN (step S906).

Next, the CPU21determines whether or not the list for the sub printer is empty (step S907).

When it is determined in step S907that the list for the sub printer is empty (step S907: YES), the sub printer20B causes the flow to proceed to step S910.

Meanwhile, when it is determined in step S907that the list for the sub printer is not empty (step S907: NO), the CPU21transmits the list for the sub printer to the main printer20A through wireless communication via WLAN (step S908). Then, the CPU21makes the list for the sub printer empty and deletes the image data of the sub printer20B (step S909). Subsequently, the sub printer20B causes the flow to proceed to step S910.

In step S910, the CPU21determines whether or not the list is received from the main printer20A (step S910).

When it is determined in step S910that the list is not received from the main printer20A (step S910: NO), the sub printer20B causes the flow to proceed to step S912.

Meanwhile, when it is determined in step S910that the list is received from the main printer20A (step S910: YES), the CPU21adds the list received from the main printer20A to the list for the sub printer (step S911). Subsequently, the sub printer20B causes the flow to proceed to step S912.

In step S912, the CPU21determines whether or not a notification of completion of printing of all of the list for the main printer is received from the main printer20A (step S912).

When it is determined in step S912that a notification of completion of printing of all of the list for the main printer is not received (step S912: NO), the sub printer20B causes the flow to proceed to step S916.

Meanwhile, when it is determined in step S912that a notification of completion of printing of all of the list for the main printer is received (step S912: YES), the CPU21determines whether or not there are remaining image data in the list for the sub printer (step S913).

When it is determined in step S913that there are not remaining image data in the list for the sub printer (step S913: NO), the sub printer20B causes the flow to proceed to step S916.

Meanwhile, when it is determined in step S913that there are remaining image data in the list for the sub printer (step S913: YES), the CPU21divides the list for the sub printer into two, thereby creating a list for the main printer and a list for the sub printer (step S914).

Then, the CPU21transmits, to the main printer20A, the list for the main printer that is created in step S914, through wireless communication via WLAN (step S915). Subsequently, the sub printer20B causes the flow to proceed to step S916.

In step S916, the CPU21determines whether or not the sub printer20B is currently printing (step S916).

When it is determined in step S916that the sub printer20B is currently printing (step S916: YES), the sub printer20B returns the flow to step S912.

Meanwhile, when it is determined in step S916that the sub printer20B is not currently printing (step S916: NO), the CPU21decodes the top image data of the list for the sub printer (step S917).

Next, the CPU21deletes the top row of the list for the sub printer (step S918).

Next, the printing mechanism26starts printing of the image data decoded in step S917(step S919).

Next, the CPU21determines whether or not there are remaining image data in the list for the sub printer (step S920).

When it is determined in step S920that there are remaining image data in the list for the sub printer (step S920: YES), the sub printer20B returns the flow to step S905.

Meanwhile, when it is determined in step S920that there are not remaining image data in the list for the sub printer (step S920: NO), the CPU21notifies the main printer20A of the list for the sub printer being empty, through wireless communication via WLAN (step S921).

Next, the CPU21determines whether or not a notification of completion of printing of all of the images is received from the main printer20A (step S922).

When it is determined in step S922that a notification of completion of printing of all of the images is received (step S922: NO), the sub printer20B returns the flow to step S905.

Meanwhile, when it is determined in step S922that a notification of completion of printing of all of the images is received (step S922: YES), the CPU21permits operation of the input device27(step S923). Then, the CPU21deletes the image data from the memory of the sub printer20B (step S924). Subsequently, the sub printer20B ends a series of steps as illustrated inFIG.9AandFIG.9B.

Note that, in the third embodiment, the sub printer20B decodes the image data of a single image every time the sub printer20B prints the image data of a single image. Therefore, the main printer20A collectively transmits the image data of the plurality of images to the sub printer20B. Also, when the main printer20A uses, for example, an SD memory card as the storage medium22, the image file is not deleted from the storage medium22even after completion of printing of all of the images. However, when the main printer20A uses a smartphone as the storage medium22, the image data stored in the smartphone are copied in a built-in memory (RAM23) of the main printer20A. Therefore, after completion of printing of all of the images, the image data are deleted from the built-in memory (RAM23) of the main printer20A (step S924).

(Effects)

As described above, according to the printing system10-3according to the third embodiment, the main printer20A creates the list for the main printer of the image data to be printed by the main printer20A and the list for the sub printer of the image data to be printed by the sub printer20B. The main printer20A deletes, from the list for the main printer, the image data that start being printed by the main printer20A, and deletes, from the list for the sub printer, the image data that start being printed by the sub printer20B. In response to the list for the main printer being empty, the main printer20A notifies the sub printer20B of the list for the main printer being empty. In response to receiving the list for the main printer being empty, the sub printer20B divides the list for the sub printer into two lists, and transmits one of the lists to the main printer20A and uses the other list as a new list for the sub printer. In response to the list for the sub printer being empty, the sub printer20B notifies the main printer20A of the list for the sub printer being empty. In response to receiving the list for the sub printer being empty, the main printer20A divides the list for the main printer into two lists, and transmits one of the lists to the sub printer20B and uses the other list as a new list for the main printer.

Thereby, according to the printing system10-3according to the third embodiment, in response to one of the list for the main printer and the list for the sub printer being empty, by dividing the other list into two lists, it is possible to use two printers and perform distributed printing of the image data of the plurality of images included in the other list.

Therefore, according to the printing system10-3according to the third embodiment, it is possible to efficiently perform distributed printing of the image data of the plurality of images with the main printer20A and the sub printer20B without the use of, for example, a server device that controls distributed printing.

According to the printing system according to one embodiment, it is possible to appropriately distribute the load of printing of image data of a plurality of images to a plurality of printers without the use of, for example, a server device that controls distributed printing.

Although embodiments of the present invention have been described above in detail, the present invention is not limited to the above-described embodiments. Various modifications or alterations are possible within the scope of the claims as recited.