IP Library Granted Patent US 10,514,875
Granted Patent B2
US 10,514,875 · App. 16/100,697 · Granted Dec 24, 2019

Printer controller arranged to control a print engine, method therefore, and computer program product

Inventors: Michel De Groot (Venlo, NL); Pieter Verduin (Venlo, NL)
Assignee: OCÉ HOLDING B.V.
G06F3/1263G06F3/1203G06F3/1212G06F3/1215G06F3/1282G06F3/1288
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,514,875
App. No.
16/100,697
Granted
Dec 24, 2019
Kind
B2
Abstract

A printer controller arranged to control a print engine comprising: a print job storage for storing print jobs to be printed; wherein a print job may comprise a deadline, the deadline specifying an ultimate time by which the print job is to be completed; a scheduler module for determining a print execution time for each print job in a sequence of one or more print jobs, the scheduler taking into account a setup time for a print job for setting up the print engine to print the print job given a previous print job; a planning module for determining a print order for to-be-printed print jobs in the print storage, arranged to submit a plurality of sequences of to-be-printed print jobs in the print job storage to the scheduler and in response receive from the scheduler for each sequence of to-be-printed print jobs the print execution times of the print jobs; wherein the planning module elects a sequence of to-be-printed print jobs for which each deadline in a print job in the sequence is met according to the print execution times of the print jobs in the sequence as provided by the scheduler.

Claims (43)

1. A printer controller arranged to control a print engine comprising:

a print job storage for storing print jobs to be printed, wherein a print job may comprise a deadline, the deadline specifying an ultimate time by which the print job is to be completed;

a scheduler module for determining a print execution time for each print job in a sequence of one or more print jobs, the scheduler taking into account a setup time for a print job for setting up the print engine to print the print job given a previous print job;

a planning module for determining a print order for to-be-printed print jobs in the print storage, arranged to submit a plurality of sequences of to-be-printed print jobs in the print job storage to the scheduler and in response receive from the scheduler for each sequence of to-be-printed print jobs the print execution times of the print jobs; wherein the planning module elects a sequence of to-be-printed print jobs for which each deadline in a print job in the sequence is met according to the print execution times of the print jobs in the sequence as provided by the scheduler.

2. The printer controller according to claim 1 wherein the previous job of the first print job in the sequence is:

the print job currently being printed by the print engine;

the last print job of the sequence of print jobs already planned for printing; or

the last printed print job if the print engine is idle.

3. The printer controller according to claim 1 , wherein, if none of the sequences of print jobs meets all of the deadlines of its print jobs, the planning module elects a sequence with the maximum number of deadlines met.

4. The printer controller of claim 1 , wherein a print job has assigned to it:

a criticalness property of the print job, and/or

a weight of the print job; and

wherein, if none of the sequences of print jobs meets all of the deadlines of its print jobs, the planning module elects a sequence with:

the deadlines met by all print jobs designated as critical,

the maximum sum of the weights of the print jobs with a deadline met,

the minimum sum of the weights of the print jobs with a deadline not met, and/or

the minimum sum of the weighted overdue times of the overdue print jobs.

5. The printer controller according to claim 1 wherein at least two print jobs have a group identifier assigned to it in order to group the at least two print jobs, and wherein the planning module:

only submits to the scheduler module sequences of to-be-printed print jobs wherein the at least two print jobs forming a group are consecutive print jobs in the sequence, and/or

electing comprises electing a sequence of to-be-printed print jobs with the maximum number of groups of grouped print jobs having all their print jobs meeting their deadlines according to the print execution times of the print jobs in the sequence as provided by the scheduler.

6. The printer controller according to claim 1 wherein the planning module determines which deadlines or combination of deadlines are impossible to meet.

7. The printer controller according to claim 1 , wherein, the election by the planning module comprises as a secondary election criteria the sequence with the lowest total print execution time or the lowest sum of overdue time.

8. A print system comprising a print engine for forming an image on a media by depositing marking material on the media, the print system further comprising the printer controller of claim 1 , wherein the printer controller is connected to the print engine and is arranged to provide a raster image to be printed to the print engine and to control the print engine in order to have the print engine form the image on the media.

9. A method for determining a print order for a plurality of print jobs, wherein a print job may comprise a deadline, the deadline specifying an ultimate time by which the print job is to be completed, the method comprising:

determining a plurality of sequences for the plurality of print jobs;

for each sequence in the plurality of sequences, determining for each print job in the sequence a print execution time, taking into account a setup time for a print job for setting up the print engine to print the print job given a previous print job;

electing a sequence of to-be-printed print jobs for which each deadline in a print job in the sequence is met according to the determined print execution times of the print jobs of the sequence.

10. The method according to claim 9 wherein the previous job of the first print job in the sequence is:

the print job currently being printed;

the last print job of the sequence of print jobs already planned for printing; or

the last printed print job.

11. The method according to claim 9 , wherein, if none of the sequences of print jobs meets all of the deadlines of its print jobs, electing comprises electing a sequence with the maximum number of deadlines met.

12. The method of claim 9 , wherein a print job has assigned to it:

A criticalness property of the print job, and/or

a weight of the print job; and

wherein, if none of the sequences of print jobs meets all of the deadlines of its print jobs, electing comprises electing a sequence with:

the deadlines met by all print jobs designated as critical,

the maximum sum of the weights of the print jobs with a deadline met,

the minimum sum of the weights of the print jobs with a deadline not met, and/or

the minimum sum of the weighted overdue times of the overdue print jobs.

13. The method according to claim 9 , further comprising determining which deadlines or combination of deadlines are impossible to meet.

14. The method according to claim 9 , wherein, the election comprises as a secondary election criteria the sequence with the lowest total print execution time or the lowest sum of overdue time.

15. A computer program product embodied on a non-transitory computer readable medium that, if executed on a processor, performs the steps of the method of claim 9 .

Assignments (2)
CHANGE OF NAME Recorded Dec 24, 2019
From: OCÉ HOLDING B.V.
To: CANON PRODUCTION PRINTING HOLDING B.V.
Reel/Frame 051416/0207 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 10, 2018
From: DE GROOT, MICHEL; VERDUIN, PIETER
To: OCÉ HOLDING B.V.
Reel/Frame 046616/0078 →
Priority Claims (1)
EP 17187641 · Aug 24, 2017 · regional
Continuity (1)
Related Publication 20190065129A1 · Feb 28, 2019
Cited By (1)
US 12,433,726