## 2 Materials and Methods
### Color Mark Detection and Positioning Model  
At present, the register control system usually chooses photoelectric sensors to detect the position of color marks [21]. As shown in Figure 3, input signals consist of the photoelectric sensor-pulse signal and the rotary encoder pulse signal. The output signals are divided into machine-direction and cross-direction register error compensation signals [38]. The incremental rotary encoder converts the timing and phase relationship of its angle coder through two internal photosensitive receivers to obtain the increase or decrease in its angle coder angular displacement. After real-time signal acquisition combined with digital circuits, especially FPGA (field-programmable gate array) or DSP (digital signal Processing), the incremental rotary encoder has the characteristics of real-time and convenient signal acquisition in position detection. According to different coding resolutions and installation methods, the incremental rotary encoder can measure different distances from several microns to hundreds of meters. For the multi-color printing production line, one-to-one independent installation is adopted to avoid the crosstalk of multiple signals. The incremental encoder usually has three signal outputs (six differential signals), namely A, B and Z, which generally use the TTL level. The phase difference between pulse A and pulse B is 90 degrees. Each circle sends out a Z pulse, which can be used as a reference for the mechanical zero position of the printing roller [39]. The structure diagram of register color mark detection and the positioning model is shown in Figure 4. Under the actions of the unwinding traction motor and the guide roller, the web substrate moves forward under constant tension. At the same time, the incremental rotary encoder converts roller displacement into periodic electrical signals, which are converted into counting pulses. When the photoelectric sensor senses the register color mark, the control system locks the code-counting positions of the color mark pulse's rising and falling edge. The corresponding register error can be calculated by comparing the phase relationship between the color mark position and the printing roller. As shown in Figure 4, \(v_{w}(t)\) and \(v_{r}(t)\) illustrate, respectively, the web forward speed and the printing roller linear velocity; \(r_{x}(t)\) and \(p_{x}(t)\) represent, respectively, the distance from the register color mark to the printing roller and the distance from the target position to the printing roller start point, where \(t\) is the time variable and \(L_{c}^{*}\) represents the circumference of the printing roller. The number of roller rotations and target positionings is calculated by counting the number of encoder pulses. Figure 3: The proposed register control system. By definition, the register error \(e(t)\) can be expressed as:  
\[e(t)=r_{x}(t)-p_{x}(t). \tag{1}\]  
In practical applications, due to the influence of web forward-motion characteristics, it is difficult to realize continuous real-time monitoring of register errors. Position detection is reliable and effective only when the color mark is close to the surface of the guide roller under tension and passes through the photoelectric sensor at the focusing position. The time can be defined when the color mark is detected by the photoelectric sensor as \(t_{0}\), then \(r_{x}(t_{0})<L_{c}^{*}\), which is effective in improving real-time control and avoiding adjustment lag.