Game machine
By employing a transmission mechanism with overlapping gear positions, the gaming machine addresses backlash-induced delays and accuracy issues in movable object effects, ensuring a seamless and accurate gaming experience.
Patent Information
- Application Number
- JP2023210162
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-12-13
- Publication Date
- 2025-06-25
AI Technical Summary
The delay in movable object effects caused by backlash in gaming machines using actuators is noticeable, leading to a decrease in accuracy and perceptibility of the effects.
The gaming machine design includes a transmission mechanism with multiple gears, where the positions of the movable object are set to overlap after a predetermined time, ensuring the size of the object is sufficiently large to mask position errors due to backlash.
This configuration minimizes the perceptibility of delays and maintains the accuracy of movable object effects, enhancing the gaming experience by making backlash-induced errors less noticeable.
Smart Images

Figure 2025094543000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a gaming machine, and more particularly to a technical field related to a gaming machine provided with a movable object for an effect.
Background Art
[0002] For example, as disclosed in Patent Document 1 below, there is a gaming machine provided with a movable object (movable accessory) for an effect.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] Here, in a gaming machine, the driving of a movable object is performed using an actuator such as a motor as a power source. At this time, when a configuration is adopted in which the power from the actuator is transmitted to the movable object via a gear, the influence of backlash should be considered.
[0005] An object of the present invention is to make it difficult to notice the delay in the movable object effect caused by backlash and to prevent a decrease in the accuracy of the movable object effect.
Means for Solving the Problems
[0006] The gaming machine according to the present invention includes a movable object for effect, an actuator provided as a power source for the movable object, and a transmission mechanism that transmits the power from the actuator to the movable object via a plurality of gears. When the position reached by the center point of the movable object after the movable object is driven for a predetermined time from the state where the play amount of the gears in the transmission mechanism is maximum is defined as the first position, and the position reached by the center point of the movable object after the movable object is driven for the predetermined time from the state where the play amount is minimum is defined as the second position, the first position is set to overlap with the movable object located at the second position. Accordingly, even when the position error of the movable object is maximized due to backlash, the size of the movable object is sufficiently large with respect to the error amount, so that the position error is difficult to be perceived.
Effects of the Invention
[0007] According to the present invention, it is possible to make the delay in the movable object effect caused by backlash less noticeable and prevent a decrease in the accuracy of the movable object effect.
Brief Description of the Drawings
[0008]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Figure 15
Figure 16
Figure 17
Figure 18
Figure 19
Figure 20
Figure 21
Figure 22
Figure 23
Figure 24
Figure 25
Figure 26
Figure 27
Figure 28
Figure 29
Figure 30
Figure 31
Figure 32
Figure 33
Figure 34
Figure 35
Figure 36
Figure 37
Figure 38
Figure 39
Figure 40
Figure 41
Figure 42
Figure 43
Figure 44
Figure 45
Figure 46
Figure 47
Figure 48
Figure 49
Figure 50
Figure 51
Figure 52
BEST MODE FOR CARRYING OUT THE INVENTION
[0009] Hereinafter, with reference to the accompanying drawings, embodiments of the present invention will be described in the following order. <1. Structure of the gaming machine> <2. Control configuration of the gaming machine> [2.1 Main control board] [2.2 Effect control board] <3. Outline of the operation> [3.1 Gaming state] [3.2 Symbol variation display game] [3.3 Regarding jackpot] [3.4 Regarding effects] <4. Processing of the main control board> [4.1 Main control side main processing] [4.2 Main control side timer interrupt processing] <5. Processing of the effect control board> [5.1 Effect control side main processing] [5.2 Effect control side timer interrupt processing] <6. Movable object prop control as an embodiment> [6.1 Outline of the control method as an embodiment] [Regarding the 6.2 Motor Drive Control Unit] [Regarding the Control Data Creation Method as an Embodiment] [Regarding the Movable Object Component Control Process as an Embodiment] (6.4.1 Processing Flow) (6.4.2 Regarding Microstep Drive) (6.4.3 Regarding the Use of Preregisters) [Regarding the Current Value Switching as an Embodiment and Countermeasures against Motor Malfunctions during Startup] [Regarding Countermeasures against Component Drop during Startup] [Regarding Backlash Countermeasures] [Regarding Other Configuration Examples] <7. Variation Examples> <8. Summary of Embodiments>
[0010] <1. Structure of the Gaming Machine> With reference to FIGS. 1 and 2, the overall structure of the gaming machine 1 as an embodiment according to the present invention will be described. FIG. 1 is a perspective view showing the appearance of the gaming machine 1 according to the embodiment of the present invention, and FIG. 2 is a perspective view when the front frame 4 is opened in the gaming machine 1 of the embodiment.
[0011] As shown in FIGS. 1 and 2, the gaming machine 1 includes a wooden outer frame 2, an inner frame 3 attached to the outer frame 2 so as to be openable and closable by a hinge mechanism, and a front frame 4 attached to the inner frame 3 so as to be openable and closable by a hinge mechanism. The inner frame 3 is formed in a frame shape and holds a game board 5 inside. On the back side of the game board 5, various control boards (see FIG. 5) for controlling the game operation are arranged.
[0012] The front frame 4 holds a transparent glass 6 at the center and is provided with a side unit 7 so as to surround all or part of the periphery of the transparent glass 6. The side unit 7 has a decorative shape that matches the theme of the gaming machine 1 itself, and may be provided with effect members such as LEDs and accessories inside, and exhibits an effect of conveying the atmosphere of the game to the player. This side unit 7 is a unit that is detachably attached to the front frame 4.
[0013] On the front side of the front frame 4, a key cylinder (not shown) for unlocking the door is provided. If a key is inserted into this key cylinder and operated on one side, the locked state of the front frame 4 with respect to the inner frame 3 is released and the front frame 4 can be opened to the front side. Also, if it is operated on the other side, the locked state of the inner frame 3 with respect to the outer frame 2 is released and the inner frame 3 can be opened to the front side.
[0014] On the lower side of the front frame 4, a front operation panel 8 is arranged. The front operation panel 8 is provided with an upper tray unit 9, and an upper tray 10 for storing the discharged game balls is formed in this upper tray unit 9.
[0015] Also, the upper tray unit 9 is provided with a ball lending button 11 for requesting the payout of game balls to a game ball lending device (not shown), a card return button 12 for requesting the return of a valuable medium inserted into the game ball lending device, and a ball extraction button 13 for extracting the game balls stored in the upper tray 10 below the gaming machine 1.
[0016] Also, the upper tray unit 9 is provided with an operation unit 14 (see FIG. 5) configured to be operable by the player. The operation unit 14 includes an effect button 14a, a cross key 14b, and a determination button 14c. The effect button 14a can be operated (input can be received) when the built-in lamp (button LED 49) is lit during a predetermined input reception period, and a change in the effect can be brought about by performing a predetermined operation (pressing, continuous hitting, long pressing, etc.) while the built-in lamp is lit. The cross key 14b is an operator for a user such as a player or a hall staff to select various items and give direction instructions. The determination button 14c is an operator for instructing the determination of the selected item.
[0017] On the right end side of the front operation panel 8, a firing operation handle 15 for operating the firing device 44 (see FIG. 5) is provided.
[0018] At appropriate positions on the front frame 4, a plurality of decorative lamps 16 (for example, LED for light effects such as full-color LEDs) that exhibit light effect through light decoration are provided. A plurality of these decorative lamps 16 are provided around the gaming machine 1, for example, at the periphery of the front frame 4 or inside the side unit 7.
[0019] Also, speakers 17 that exhibit sound effect (sound effects) through sound are provided on both sides of the upper part of the inner frame 3 and above the firing operation handle 15. With a plurality of speakers 17, so-called stereo sound reproduction or multi-channel sound reproduction can be performed for sounds related to the performance.
[0020] Next, with reference to FIG. 3, the configuration of the game board 5 will be described. FIG. 3 is a front view of the game board 5. In the illustrated game board 5, a ball guide rail 18 for guiding the fired game balls is annularly mounted as a board surface partitioning member, and a substantially circular region surrounded by this ball guide rail 18 is the game area 19, and the four corners are non-game areas. The game area 19 is a space formed between the game board 5 and the transparent glass 6, and is an area where game balls can flow down.
[0021] At substantially the center of this game area 19, for example, in three (left, middle, right) display areas (symbol variation display areas), a liquid crystal display device (LCD) 20 capable of independently performing a variation display operation (variation display and stop display) of a plurality of types of decorative symbols (for example, left symbol (corresponding to the left display area), middle symbol (corresponding to the middle display area), right symbol (corresponding to the right display area)) using numbers, characters, symbols, etc. is provided. This liquid crystal display device 20 displays various effects as images in addition to the variation display operation of the decorative symbols under the control of an effect control board 41 described later.
[0022] Also, at the center of the game area 19, a center decoration 21 is provided in a form that surrounds the periphery of the display surface of the liquid crystal display device 20 in a circumferential manner. The center decoration 21 is provided along the front side of the game board 5, protects the display surface of the liquid crystal display device 20 from the collision of game balls, and functions as a flow path distribution means capable of distributing the flow path of game balls to the left and right according to the hitting strength or stroke length of the game balls. In the present embodiment, the center decoration 21 is disposed substantially at the center of the game area 19 and divides the game area 19 into a left game area 19a and a right game area 19b on the left and right sides respectively. Game balls launched by the launching device 44 with a launching intensity less than a predetermined value flow down the left game area 19a, and game balls launched with a launching intensity equal to or greater than the predetermined value flow down the right game area 19b.
[0023] The non-game area at the lower part of the game board 5 serves as various function display parts, and a special symbol display device 22a and a special symbol display device 22b using a dot display are provided. Note that various function display parts including the special symbol display devices 22a and 22b are shown enlarged in FIG. 6.
[0024] In the special symbol display devices 22a and 22b, a special symbol variation display game is executed by a variation display operation of the "special symbol" expressed by the dot display. And in the above-mentioned liquid crystal display device 20, in synchronization with the variation display of the special symbol by the special symbol display devices 22a and 22b in terms of time, a decorative symbol is variably displayed by an image, and a decorative symbol variation display game is executed together with various preview effects (effect images).
[0025] In addition, a composite display device 22c composed of dot displays, similar to the special symbol display devices 22a and 22b, is arranged in each of the various function display units. The reason for calling it "composite" is that it is a hold / short-time / high-probability composite display device (hereinafter simply referred to as the "composite display device") having five display functions, namely, the display of the first special symbol (hereinafter, the first special symbol is referred to as the "special symbol 1" and may be abbreviated as "special drawing 1" in some cases), the second special symbol (hereinafter, the second special symbol is referred to as the "special symbol 2" and may be abbreviated as "special drawing 2" in some cases), the display of the number of held balls of the normal symbol, and the state notification during the short-time state and the high-probability state.
[0026] In addition, a composite display device 22d composed of dot displays is also provided in each of the various function display units. In this composite display device 22d, a round number display for notifying the specified number of rounds (maximum number of rounds) related to the big win is performed by the combination of the lighting and extinguishing states of four LEDs. In addition, in the composite display device 22d, as the normal symbol display, a normal symbol variable display game is executed by the variable display operation of the normal symbol represented by one LED. In addition, in the composite display device 22d, a right hit display is performed by three LEDs. Note that the right hit display indicates that it is more advantageous for the player to shoot the game ball toward the right game area 19b than to shoot the game ball toward the left game area 19a.
[0027] At the center of the game board 5 and below the liquid crystal display device 20, a first start port 23 is provided. Inside the first start port 23, a first start port detection sensor 23a (see FIG. 5) for detecting the passage of the game ball is provided. In addition, a second start port 24 is provided in the right game area 19b, and inside it, a second start port detection sensor 24a (see FIG. 3) for detecting the passage of the game ball is provided.
[0028] The first start port 23 is a winning port related to the start condition of the variable display operation of the special symbol 1 in the special symbol display device 22a, and is configured as a fixed start port without start port opening / closing means (means for opening or expanding the start port). In the present embodiment, due to the action of the game ball dropping direction conversion member (such as game nails, windmills, center decoration 21, etc.) in the game area 19, for the game balls rolling into the first start port 23 from the left game area 19a, the structure is such that it is easy for the balls to enter, while for the game balls rolling from the right game area 19b, the structure is such that it is difficult or impossible for the balls to enter.
[0029] The second start port 24 is a winning port related to the start condition of the variable display operation of the special symbol 2 in the special symbol display device 22b, and is configured as a variable start port whose opening and closing are controlled by the normal electric accessory 25. The normal electric accessory 25 is controlled between an open state that allows game balls to enter the second start port 24 and a closed state that makes it difficult or impossible for game balls to enter the second start port 24. In the present embodiment, the second start port 24 is provided in the right game area 19b, and only the game balls rolling from the right game area 19b can enter, but the game balls rolling from the left game area 19a may also be able to enter.
[0030] Also, above the second start port 24, that is, on the upper side of the middle part of the right game area 19b, a normal symbol gate 26 through which game balls can pass is provided. This normal symbol gate 26 is a winning port related to the variable display operation of the normal symbol in the composite display device 22d, and inside it, a normal symbol gate detection sensor 26a (see Fig. 5) for detecting the passing game balls is provided. In the present embodiment, the normal symbol gate 26 is provided only in the right game area 19b, and only the game balls rolling from the right game area 19b can enter. However, the present invention is not limited to this, and it may be provided only in the left game area 19a, or may be provided in both respectively.
[0031] Below the second start port 24 in the right game area 19b, a first big winning port 27 and a second big winning port 28 are provided. The first big winning port 27 and the second big winning port 28 are arranged at positions where only the game balls rolling in the right game area 19b can enter. However, the first big winning port 27 and the second big winning port 28 may be arranged such that only the game balls rolling from the left game area 19a can enter, or the game balls rolling from both the left game area 19a and the right game area 19b can enter. The opening and closing of the first big winning port 27 is controlled by a first special electric accessory 29. The first special electric accessory 29 is controlled between an open state that allows game balls to enter the first big winning port 27 and a closed state that makes it difficult or impossible for game balls to enter the first big winning port 27. The opening and closing of the second big winning port 28 is controlled by a second special electric accessory 30. The second special electric accessory 30 is controlled between an open state that allows game balls to enter the second big winning port 28 and a closed state that makes it difficult or impossible for game balls to enter the second big winning port 28. Inside the first big winning port 27 and the second big winning port 28, a first big winning port detection sensor 27a and a second big winning port detection sensor 28a (see FIG. 5) for detecting the passage of game balls are respectively provided.
[0032] Also, a plurality of general winning ports 31 are provided in the lower left and right of the game area 19, and inside each of them, a general winning port detection sensor 31a (see FIG. 5) for detecting the passage of game balls is provided.
[0033] Also, in the area of the game board, a movable accessory 50 that produces a visual effect is arranged at a position that does not interfere with the rolling of the game balls. The gaming machine 1 of this example has two movable accessories 50x and 50y as the movable accessory 50. In the non-performance state, these movable accessories 50x and 50y are arranged at positions shielded by other members (shielded positions) when viewed from the player facing the gaming machine 1, and are not visible to the player. In the performance state, these movable object accessories 50x and 50y are driven by accessory motors 53x and 53y described later, and as illustrated in FIG. 4, they are displaced from the above-described shielding position to a state visible to the player. Here, as the displacement mode of the movable object accessories 50x and 50y, a displacement mode located on the liquid crystal display device 20 in the performance state is exemplified, but the displacement mode of the movable object accessory 50 is not limited to this and can be considered in various ways.
[0034] In this example, the movable object accessory 50x is a movable object accessory 50 whose shielding position is below the liquid crystal display device 20 and is displaced upward from the shielding position in the performance state. On the other hand, the movable object accessory 50y is a movable object accessory 50 whose shielding position is above the liquid crystal display device 20 and is displaced downward from the shielding position in the performance state.
[0035] Further, in the gaming machine 1 of the present embodiment, when a game ball enters various winning openings provided in the game area 19, the number of prize balls set for the winning opening into which the game ball has entered (for example, the first start opening 23 is 3, the second start opening 24 is 1, the first big winning opening 27 and the second big winning opening 28 are 15, and the general winning opening 31 is 5) is paid out from the game ball payout device 46 (see FIG. 5). The game balls that did not win in the above-described winning openings are discharged from the game area 19 through the out opening 32.
[0036] <2. Control Configuration of Gaming Machine> FIG. 5 is a block diagram showing the control configuration of the gaming machine 1. With reference to the block diagram of FIG. 5, a configuration (control configuration) for realizing the game operation control of the gaming machine 1 will be described. The gaming machine 1 of the present embodiment includes a main control board 40 that comprehensively controls the control related to the entire game operation (game operation control), an effect control board 41 that receives an effect control command from the main control board 40 and comprehensively controls the execution control of the effect by the effect means, and a payout control board 42 that performs the payout control of the prize balls.
[0037] [2.1 Main Control Board] The main control board 40 is equipped with a microprocessor incorporating a CPU (Central Processing Unit) 40a (main control CPU), and in addition to a control program describing the game operation control procedure, it also has a ROM (Read Only Memory) 40b (main control ROM) for storing various data necessary for game operation control, and a RAM (Random Access Memory) 40c (main control RAM) that functions as a work area and buffer memory, and as a whole, it constitutes a microcomputer.
[0038] Although not shown in the figure, the main control board 40 has a CTC (Counter Timer Circuit) for realizing a periodic interrupt, a pulse output creation function (bit rate generator) at a fixed period, and a time measurement function, and an interrupt controller circuit that exhibits an interrupt permission / interrupt prohibition function such as a timer interrupt for giving an interrupt signal to the CPU 40a, a reset circuit that can detect power-on, power-off, power abnormalities, etc., and output a system reset signal to reset the CPU 40a, a watchdog timer (WDT) circuit for monitoring the abnormal operation of the control program, a designated area outside running prohibition (IAT) circuit for monitoring whether the program is being correctly executed within a preset address range, and a counter circuit for generating a certain range of random numbers in hardware, etc.
[0039] The above counter circuit is composed of a random number generation circuit for generating random numbers and a sampling circuit for sampling the random number value from the random number generation circuit at a predetermined timing, and functions as a 16-bit counter as a whole. The CPU 40a sends an instruction to the sampling circuit according to the processing state, thereby obtaining the value indicated by the random number generation circuit as a jackpot determination random number (0 to 65535), and using the jackpot determination random number for jackpot lottery (win / loss lottery). Note that the jackpot determination random number is obtained by adding a soft random number value generated by appropriate software processing to prevent acts such as aiming for a win and a hard random number value in order to prevent acts such as aiming for a win.
[0040] On the main control board 40, a first start port detection sensor 23a for detecting the entry of game balls into the first start port 23, a second start port detection sensor 24a for detecting winning at the second start port 24, a normal symbol gate detection sensor 26a for detecting the passage through the normal symbol gate 26, a first big winning port detection sensor 27a for detecting winning at the first big winning port 27, a second big winning port detection sensor 28a for detecting winning at the second big winning port 28, a general winning port detection sensor 31a for detecting winning at the general winning port 31, and an OUT monitoring sensor 32a for detecting game balls (out balls) discharged from the game area 19 are connected, and the main control board 40 is capable of receiving detection signals output from these. Based on the detection signals from each sensor, the main control board 40 can determine which winning port the game ball has entered.
[0041] Also, on the main control board 40, a normal electric accessory solenoid 25a for operating a normal electric accessory 25 that opens and closes the second start port 24, a first special electric accessory solenoid 29a for operating a first special electric accessory 29 that opens and closes the first big winning port 27, and a second special electric accessory solenoid 30a for operating a second special electric accessory 30 that opens and closes the second big winning port 28 are connected, and the main control board 40 is capable of transmitting control signals for controlling these.
[0042] The main control board 40 is connected to a special symbol display device 22a and a special symbol display device 22b, and the main control board 40 is capable of transmitting control signals for display control of special symbols 1 and 2. Also, the main control board 40 is connected to a composite display device 22c and a composite display device 22d, and the main control board 40 is capable of transmitting control signals for display control of various information displayed on the composite display device 22c and the composite display device 22d.
[0043] The main control board 40 is connected to a RAM clear switch 34, and the main control board 40 is capable of receiving a detection signal from the RAM clear switch 34. The RAM clear switch 34 is provided at a predetermined position inside the gaming machine 1. For example, it is arranged on the main control board 40.
[0044] The RAM clear switch 34 is, for example, a push-button type switch for instructing an input to initialize a predetermined area of the RAM 40c. The RAM clear switch 34 is turned ON / OFF in response to an operation of a RAM clear button provided so as to be operable with the front frame 4 open.
[0045] Also, a main control board 40 has a performance display 35 connected thereto. The performance display 35 is configured to have, for example, a 7-segment display, and functions as display means capable of displaying performance information described later. The performance display 35 is mounted, for example, at a position on the main control board 40 that is easily visible. The main control board 40 is capable of transmitting a control signal for causing the performance display 35 to display performance information.
[0046] A payout control board 42 is connected to the main control board 40, and when it is necessary to pay out prize balls, a control command regarding payout (a payout control command specifying the number of prize balls) can be transmitted to the payout control board 42.
[0047] Also, a frame external centralized terminal board 43 is connected to the main control board 40 via the payout control board 42, and predetermined game information (for example, jackpot information, number of prize balls information, symbol variation execution information, etc.) can be transmitted to a hall computer HC provided outside. Note that the hall computer HC is an information processing device (computer device) for monitoring game information from the main control board 40 and comprehensively managing the operating status of the pachinko machines in the pachinko hall.
[0048] A launch control board 45 for controlling a launcher 44 and a game ball payout device 46 for paying out game balls are connected to the payout control board 42. Further, a ball lending machine 70 is connected to the payout control board 42. The ball lending machine 70 is provided outside the gaming machine 1 and executes processing for causing the payout control board 42 to perform a ball lending operation. The main role of the payout control board 42 is to receive payout control commands from the main control board 40, perform prize ball payout control of the game ball payout device 46 based on the payout control commands, transmit status signals to the main control board 40, and control the payout control board 42 for the ball lending operation based on the communication result with the ball lending machine 70, etc.
[0049] The game ball payout device 46 is provided with a replenishment shortage detection sensor 46a for detecting a shortage in the supply of game balls and a ball counting sensor 46b for detecting the game balls (prize balls) to be paid out, and the payout control board 42 is capable of receiving these respective detection signals. Further, the game ball payout device 46 is provided with a payout motor 46c for driving a ball payout mechanism section (not shown) for paying out game balls, and the payout control board 42 is capable of transmitting a control signal for controlling the payout motor 46c.
[0050] Connected to the payout control board 42 are a full cup detection sensor 47 for detecting that the upper receiving tray 10 is full of game balls and a front door open sensor 48 for detecting the open state of the front frame 2.
[0051] Based on the detection signals from the full cup detection sensor 47, the front door open sensor 48, the replenishment shortage detection sensor 46a, and the ball counting sensor 46b, the payout control board 42 can transmit various status signals to the main control board 40. These status signals include a ball jam signal indicating a full cup state, a door open signal indicating that at least the front frame 2 is open, a replenishment shortage signal indicating a shortage in the supply of game balls from the game ball payout device 46, a counting error signal indicating a shortage in the payout of prize balls or an abnormality in the ball counting sensor 46b, a payout completion signal indicating that the payout operation has been completed, etc., and is configured to be able to transmit various status signals. The main control board 40 monitors the open state of the front frame 2 (door open error), whether the payout operation of the game ball payout device 46 is normal (replenishment shortage error), the full cup state of the upper receiving tray 10 (ball jam error), etc. based on these status signals.
[0052] In addition, the payout control board 42 is capable of transmitting an approval signal to permit firing to the firing control board 45. Based on the output of the approval signal from the payout control board 42, the firing control board 45 controls the energization of a firing solenoid (not shown) provided in the firing device 44, thereby realizing the firing operation of the game ball by the operation of the firing operation handle 15. Specifically, on the condition that the firing approval signal is output from the payout control board 42 (firing approval signal ON state), it is detected by a touch sensor (not shown) provided on the firing operation handle 15 that the player is touching the handle, and the firing stop switch (not shown) provided on the firing operation handle 15 is not operated, the firing operation of the game ball is permitted. Therefore, when the firing approval signal is not output (firing approval signal OFF state), even if the firing operation handle 15 is operated, the firing operation is not executed and the game ball is not fired. Also, the firing intensity of the game ball can be changed according to the operation amount of the firing operation handle 15. In addition, when the payout control board 42 detects the above-mentioned ball jamming error, it transmits a ball jamming signal to the main control board 40 and stops the output of the firing approval signal to the firing control board 45 (firing approval signal OFF), and performs control to stop the discharging operation until the full state of the upper receiving tray 10 is resolved. In addition, the payout control board 42 outputs an approval signal for firing to the firing control board 45 on the condition that firing approval is instructed from the main control board 40.
[0053] (Regarding performance display) The main control board 40 is capable of transmitting a control signal for causing the performance display 35 to display predetermined performance information. The performance information is information that the pachinko parlor and related agencies want to confirm. Representative examples include the presence or absence of illegal bonus balls such as excessive bonus balls for the gaming machine 1 and the original ball output performance of the gaming machine 1. Therefore, unlike preview effects and the like, the performance information itself is information that has no direct relation to the progress of the game itself when the player enjoys the game.
[0054] Therefore, the performance display 35 is provided at a position where the display information can be visually recognized when the front frame 2 is in an open state, inside the gaming machine 1, for example, on the main control board 40, the payout control board 42, the launch control board 45, the relay board, the effect control board 41, or in the board case (the protective cover that protects the board).
[0055] Here, the following information can be specifically adopted as the performance information. (1) Information (specific ratio information) based on the value (α / β) obtained by dividing the total number of payouts (specific total prize balls: α) paid out due to winning during a specific state by the total number of out balls (specific out balls: β) discharged from the game area 19 during the specific state can be adopted as the performance information. The above-mentioned "total number of payouts" is the total value of the game balls (prize balls) paid out when winning at the winning ports (the first start port 23, the second start port 24, the general winning port 31, the first big winning port 27, the second big winning port 28). Also, regarding which state to adopt as the specific state, it can be appropriately determined according to what performance information in what state is desired to be grasped. In the case of this embodiment, any of the plurality of game states or the big win game state can be adopted. Also, a plurality of types of states may be the measurement targets. For example, all game states except during the big win game state, etc., and the types to be the measurement targets can be appropriately determined. Also, the total number of payouts may be the total number of payouts excluding one or a plurality of specific winning ports (total payouts excluding specific winning ports). For example, the total number of payouts excluding the first big winning port 27 and the second big winning port 28 among each winning port may be used as the total number of payouts.
[0056] (2) Additionally, it is also possible to measure only any one of the total number of payouts, the total payouts excluding specific winning ports, and the total number of out balls, and use the measurement result as the performance information.
[0057] In this embodiment, the total number of payouts during the normal state (number of payouts during normal times) and the total number of out balls during the normal state (number of out balls during normal times) are measured in real time, and the value obtained by multiplying the value obtained by dividing the number of payouts during normal times by the number of out balls during normal times by 100 (the value calculated by number of payouts during normal times ÷ number of out balls during normal times × 100) is displayed as performance information (hereinafter referred to as "normal ratio information"). Note that the displayed value at this time is a value obtained by rounding to the first decimal place. Therefore, each data of the number of payouts during normal times, the number of out balls during normal times, and the normal ratio information is stored (memorized) in the corresponding area of the RAM 40c (specific total prize ball number storage area, specific out ball number storage area, specific ratio information storage area). However, it does not simply measure and display the performance information permanently. When the total number of out balls reaches a predetermined specified number (for example, 60,000), the measurement is terminated once. This specified number is not the total number of out balls in the normal state, but the total number of out balls during all game states (including during winning games) (hereinafter referred to as "total state out ball number"). This total state out ball number is also measured in real time and stored in the corresponding area of the RAM 40c (total state out ball number storage area). Hereinafter, for the sake of convenience of explanation, the specific total prize ball number storage area, the specific out ball number storage area, the specific ratio information storage area, and the total state out ball number storage area are abbreviated as "measurement information storage area".
[0058] Then, the normal ratio information at the end time is stored in a predetermined area of the RAM 40c (performance display storage area) (store the normal ratio information this time), and then, after clearing the measurement information storage area (number of payouts during normal times, number of out balls during normal times, and total state out ball number), the measurement is started again (start the measurement of the number of payouts during normal times, the number of out balls during normal times, the normal ratio information, and the total state out ball number). And on the setting / performance display 35, the previous normal ratio information (measurement history information) and the normal ratio information currently being measured are displayed. Note that not only the previous information but also the history such as the information from the time before last time and the time before that (three times before) can be configured to be displayed, and it can be determined as appropriate how many times before the information is to be displayed.
[0059] (Effect control command) The main control board 40 can transmit various effect control commands including information related to the special symbol variation display game and information related to errors, etc. to the effect control board 41 according to the processing state. However, in order to prevent fraud such as cheating behavior, the main control board 40 is configured for one-way communication that only transmits signals to the effect control board 41 and cannot receive signals from the effect control board 41.
[0060] Here, the effect control command defines its function by a 2-byte configuration consisting of a 1-byte-long mode (MODE) and an event (EVENT) also 1 byte long. In order to distinguish between MODE and EVENT, Bit7 of MODE is ON and Bit7 of EVENT is OFF. When transmitting these valid pieces of information, strobe signals are output corresponding to each of the mode (MODE) and the event (EVENT). That is, when there is a command to be transmitted, the CPU 40a (main control CPU) sets and outputs the mode (MODE) information for transmitting the command to the effect control board 41, and transmits the first strobe signal after a predetermined time has elapsed from this setting. Further, after a predetermined time has elapsed from the transmission of this strobe signal, the event (EVENT) information is set and output, and the second strobe signal is transmitted after a predetermined time has elapsed from this setting. The strobe signal is controlled to be in an active state by the CPU 40a for a predetermined period during which the CPU 41a (effect control CPU) can surely receive the command.
[0061] [2.2 Effect Control Board] The effect control board 41 is mainly composed of a microcomputer equipped with a microprocessor incorporating the CPU 41a, and also equipped with a ROM 41b storing effect data required for effect control processing and a RAM 41c functioning as a work area and a buffer memory. In addition, an acoustic control unit (sound source IC), an RTC (Real Time Clock) function unit, a counter circuit, an interrupt controller circuit, a reset circuit, a WDT circuit, etc. are provided to control the entire effect operation.
[0062] The CPU 41a performs arithmetic processing for various effect operations and controls each effect means based on the effect control program and the effect control commands received from the main control board 40. The effect means, in the case of the gaming machine 1 of the present embodiment, are the liquid crystal display device 20, the light display device 16a, the sound generating device 17a, and the movable object accessory 50.
[0063] The ROM 41b stores the control program for the effect operation by the CPU 41a and various data necessary for the effect operation control. The RAM 41c is used as a work area for the CPU 41a to perform various arithmetic processes, a table data area, a buffer area for various input / output data and processing data, and the like. Note that the effect control board 41 is configured to include, for example, a one-chip microcomputer and its peripheral circuits, but various configurations of the effect control board 41 are conceivable. For example, in addition to the microcomputer, an interface circuit with each unit, a random number generation circuit for generating lottery random numbers for effects, a CTC for various time counting, a watchdog timer (WDT) circuit, an interrupt controller circuit for giving an interrupt signal to the CPU 41a, etc. may be provided.
[0064] The main roles of this effect control board 41 are to receive the effect control commands from the main control board 40, select and determine the effects based on the effect control commands, control the display of the liquid crystal display device 20 (supply display data), control the voice output of the sound generating device 17a, control the light emission of the light display device 16a (LED), control the operation of the movable object accessory 50, and the like.
[0065] Since this effect control board 41 also has the function as a control device for the liquid crystal display device 20, the effect control board 41 is also provided with the functions as a so-called VDP (Video Display Processor), an image ROM, and a VRAM (Video RAM), and the CPU 41a also functions as a liquid crystal control unit. The VDP refers to a function for controlling all video output processes such as image expansion processing and image drawing. The image ROM refers to a memory in which the image data for the VDP to perform image expansion processing is stored. The VRAM is an image memory area that temporarily stores the image data developed by the VDP.
[0066] Based on these configurations, the effect control board 41 generates various image data according to the effect control commands from the main control board 40 and outputs the data to the liquid crystal display device 20. As a result, various effect images are displayed on the liquid crystal display device 20.
[0067] In addition, the effect control board 41 has an acoustic control unit for the acoustic generator 17a including a plurality of speakers 17, and the acoustic signal output from the acoustic control unit is amplified by the amplifier unit 17b and supplied to the speakers 17. Further, connected to the effect control board 41 are a lamp driver unit 16b that functions as a light display control unit for the light display device 16a including the decorative lamp 16 and various LEDs, and a motor drive control unit 51 that controls the operation of the movable object accessories 50 (in this example, the movable object accessories 50x and 50y). The effect control board 41 controls the light display operation by the light display device 16a and the operation of the movable object accessories 50 by giving instructions to these lamp driver unit 16b and motor drive control unit 51.
[0068] Here, in the gaming machine 1, a movable object accessory motor group 53 composed of a plurality of accessory motors (the accessory motors 53x and 53y described later) for driving each movable object accessory 50, and a motor driver group 52 composed of a plurality of motor drivers (the motor drivers 52x and 52y described later) for performing drive control for each accessory motor in the movable object accessory motor group 53 are provided. However, in the gaming machine 1 of the present embodiment, the effect control board 41 does not directly control each motor driver in the motor driver group 52, but adopts a configuration in which the operation of each motor driver is controlled via the motor drive control unit 51. Details of the movable object accessory control as an embodiment performed via the motor drive control unit 51 will be described later again.
[0069] Here, in the present embodiment, for each accessory motor in the movable object accessory motor group 53, for example, a bipolar motor is adopted.
[0070] The origin switch group 54 comprehensively represents a plurality of origin switches for determining whether each movable object device 50 is at the origin position, and the position sensor group 55 comprehensively represents position sensors (position sensors 55x and 55y described later) provided for each movable object device 50 to detect the operating position (for example, the amount of movement from the origin position) of the movable object device 50.
[0071] In the gaming machine 1 of the present embodiment, the detection signal from each position sensor in the position sensor group 55 is input to the motor drive control unit 51 instead of the effect control board 41. As will be described later, the motor drive control unit 51 can perform control such as moving the movable object device 50 to the sensor position and stopping it in response to an input from the position sensor, based on an instruction from the effect control board 41.
[0072] In the origin switch group 54, each origin switch is composed of, for example, a photo interrupter or the like, and detects whether the corresponding movable object device 50 is at the origin position. The origin position is, for example, the shielding position described with reference to FIG. 4. The effect control board 41 can determine whether the movable object device 50 is at the origin position based on the detection signal of the origin switch in the origin switch group 54. Based on the result of this determination, the effect control board 41 can perform an origin return process for returning each movable object device 50 to the origin position.
[0073] In addition, operation detection switches for the effect buttons 14a, cross keys 14b, and determination button 14c shown as the operation unit 14 are connected to the effect control board 41, and the effect control board 41 can receive the operation detection signals from the effect buttons 14a, cross keys 14b, and determination button 14c, respectively.
[0074] Further, on the effect control board 41, a handle sensor 56 (touch sensor) for detecting whether or not the firing operation handle 15 shown in FIG. 1 is being touched by the player is provided. Based on the detection information of this handle sensor 56, the effect control board 41 can determine whether or not the firing operation handle 15 is being touched by the user.
[0075] Based on the effect control commands sent from the main control board 40, the effect control board 41 selects (determines) an effect pattern by lottery or uniquely from among a plurality of types of prepared effect patterns, and controls various effect means at the necessary timing to present the target effect. As a result, the display of the effect image by the liquid crystal display device 20 corresponding to the effect pattern, the reproduction of sound from the speaker 17, and the lighting and blinking drive of the decorative lamp 16 and the LED are realized, and various effect patterns (such as the variable display operation of the decorative pattern and the preview effect) are developed in time series, thereby realizing the "effect scenario" in a broad sense.
[0076] Here, regarding the effect control command, the effect control board 41 (CPU 41a) generates an interrupt process based on the input of the above-described strobe signal transmitted by the main control board 40 and receives and analyzes it. Specifically, the CPU 41a executes a control program for command reception interrupt processing based on the input of the above-described strobe signal, and in the interrupt process realized thereby, acquires the effect control command and analyzes the command content. At this time, when an interrupt occurs based on the input of the strobe signal, the CPU 41a interrupts the process and performs the command reception interrupt process even if another interrupt-based interrupt process (timer interrupt process executed periodically) is being executed, and preferentially performs the command reception interrupt process even if other interrupts occur simultaneously.
[0077] <3. Outline description of the operation> Next, an outline of the gaming operation of the gaming machine 1 realized by the above control configuration (FIG. 5) will be described.
[0078] [3.1 Game state] In the gaming machine 1 according to the present embodiment, in addition to the jackpot game which is a special game state, a plurality of types of game states can be set. For the purpose of facilitating the understanding of the present embodiment, first, various game states will be described.
[0079] In the gaming machine 1 of the present embodiment, the game progresses in any of the game states in which either the low probability state or the high probability state is combined with either the non-time reduction state or the time reduction state.
[0080] The low probability state is a state in which the winning probability of the jackpot lottery described later is relatively low, and the high probability state is a state in which the winning probability of the jackpot lottery is relatively high. The non-time reduction state is a state in which it is relatively difficult for game balls to enter the second start port 24, and the time reduction state is a state in which it is relatively easy for game balls to enter the second start port 24. In the present embodiment, the opening time of the second start port 24 when winning the normal pattern win lottery described later is set longer in the time reduction state than in the non-time reduction state. However, if game balls are more likely to enter the second start port 24 in the time reduction state than in the non-time reduction state, for example, the winning probability of the normal pattern win lottery may be increased or the variation time of the normal symbol may be shortened in the time reduction state than in the non-time reduction state.
[0081] In the present embodiment, the "normal state" refers to the low probability state and the non-time reduction state, and corresponds to the initial state.
[0082] [3.2 Symbol variation display game] (Regarding special symbol reservation) In the gaming machine 1, when a game ball enters the first start port 23 or the second start port 24, that is, when there is an input of a detection signal from the first start port detection sensor 23a or the second start port detection sensor 24a, random numbers (jackpot determination random number, special symbol determination random number, variation pattern random number) related to the special symbol variation display game described later are acquired, and these random numbers are used as reservation data and stored in the special symbol reservation storage area of the RAM 40c up to the maximum reservation memory number which is a predetermined upper limit value (for example, a maximum of 4). This special figure reserved memory area is provided with a special figure reserved memory area corresponding to the special figure 1 side and the special figure 2 side, that is, a special figure 1 reserved memory area and a special figure 2 reserved memory area.
[0083] In these special figure reserved memory areas, a reserved 1 memory area to a reserved n memory area (n is the maximum number of reserved memories: in this embodiment, n = 4) are provided, and each can store reserved data corresponding to the maximum number of reserved memories. Note that the maximum number of reserved memories in the special figure 1 reserved memory area and the special figure 2 reserved memory area is not particularly limited. Also, all or part of the maximum number of reserved memories for each symbol may be different, and the number can be appropriately determined according to the game characteristics. The game balls related to the reserved data stored in this special figure reserved memory area are also referred to as "reserved balls". In order to clarify the number of these reserved balls to the player, the dot display corresponding to the number of reserved balls of special figure 1 and special figure 2 in the composite display device 22c is lit, or the reserved display provided as an icon image on the screen by the liquid crystal display device 20 is lit.
[0084] (Special symbol variation display game) In the gaming machine 1 of this embodiment, based on a predetermined start condition, specifically, when a game ball enters (wins) the first start port 23 or the second start port 24, a "big win lottery" by random number lottery is performed on the main control board 40. Based on the lottery result of the big win lottery, the main control board 40 variably displays special symbol 1 and special symbol 2 on the special symbol display devices 22a and 22b to start a special symbol variation display game. After a predetermined variation time has elapsed, the result is displayed on the special symbol display devices 22a and 22b, thereby ending the special symbol variation display game. Note that, unless particularly necessary, "special symbol 1" and "special symbol 2" are simply referred to as "special symbol" (abbreviated as "special figure" in some cases).
[0085] Here, in the present embodiment, the jackpot lottery in Special Figure 1 based on winning the first start port 23 and the jackpot lottery in Special Figure 2 based on winning the second start port 24 are carried out separately and independently. For this reason, the jackpot lottery result of Special Figure 1 is displayed on the special symbol display device 22a, and the jackpot lottery result of Special Figure 2 is displayed on the special symbol display device 22b. Specifically, in the special symbol display device 22a, on the condition that a game ball enters the first start port 23, the Special Figure 1 is variably displayed to start the first special symbol variable display game. On the other hand, in the special symbol display device 22b, on the condition that a game ball enters the second start port 24, the Special Figure 2 is variably displayed to start the second special symbol variable display game. Then, when the special symbol variable display game in the special symbol display device 22a or the special symbol display device 22b is started, after the elapse of a predetermined variable time, if the jackpot lottery result is "jackpot", the special symbol being variably displayed stops being displayed in a predetermined "jackpot" mode, and in other cases, it stops being displayed in a predetermined "losing" mode, thereby notifying the game result (jackpot lottery result).
[0086] For the sake of convenience of explanation, the first special symbol variable display game on the side of the special symbol display device 22a is referred to as "Special Symbol Variable Display Game 1", and the second special symbol variable display game on the side of the special symbol display device 22b is referred to as "Special Symbol Variable Display Game 2". Also, "Special Symbol Variable Display Game 1" and "Special Symbol Variable Display Game 2" are simply referred to as "Special Symbol Variable Display Game".
[0087] When the jackpot lottery result becomes "jackpot", that is, when the special symbol variable display game ends and as a result, the special symbol stops being displayed in the "jackpot" mode on the special symbol display device 22a or the special symbol display device 22b, then, a special game state (jackpot game) more advantageous to the player than during the special symbol variable display game occurs. As will be described in detail later, in the jackpot game, after the pre-opening interval time (opening time) for notifying the start of the jackpot game has elapsed, when a predetermined time (maximum opening time: for example, 29.8) has elapsed after the first large winning opening 27 or the second large winning opening 28 is opened, or when the number of game balls that have entered the first large winning opening 27 or the second large winning opening 28 reaches a predetermined number (maximum winning number), a "round game" in which the first large winning opening 27 or the second large winning opening 28 is closed is repeated a predetermined number of rounds (for example, a maximum of 10 rounds). Then, after the completion of the predetermined number of rounds, when the post-opening interval time (ending time) for notifying the end of the jackpot game has elapsed, the jackpot game ends. Note that the "s" after the numbers represents "seconds".
[0088] (Decoration symbol variation display game) Also, when the above-described special symbol variation display game is started, accordingly, a decoration symbol (an effect game symbol) is variably displayed on the liquid crystal display device 20 to start a decoration symbol variation display game, and various effects are developed accordingly. When the special symbol variation display game ends, the decoration symbol variation display game also ends, and a predetermined special symbol indicating the jackpot lottery result is displayed on the special symbol display devices 22a and 22b, and a decoration symbol reflecting the jackpot lottery result is derived and displayed on the liquid crystal display device 20. That is, the result of the special symbol variation display game is reflected and displayed by the effect decoration symbol variation display game including the variable display operation of the decoration symbol.
[0089] Therefore, for example, when the result of the special symbol variation display game is a "big win" (when the big win lottery result is a "big win"), an effect reflecting the result is developed in the decorative symbol variation display game. And when the special symbols on the special symbol display devices 22a and 22b stop displaying in a display mode indicating a big win (for example, the 7-segment display shows the state of "7"), on the liquid crystal display device 20, in each of the display areas of "left", "middle", and "right", the decorative symbols stop displaying in a display mode reflecting the "big win" (for example, in each of the display areas of "left", "middle", and "right", the three decorative symbols are in the display state of "7", "7", "7").
[0090] Regarding the information necessary for the execution of the above decorative symbol variation display game, first, based on the fact that a game ball enters the first start port 23 or the second start port 24, specifically, when the game ball is detected by the first start port detection sensor 23a or the second start port detection sensor 24a and the start condition (the start condition regarding the special symbol) is satisfied, a big win lottery is conducted to draw whether it is a "big win" or a "loss", and a symbol lottery is conducted to draw the type of the special symbol (big win type, loss type) that will finally stop displaying. Based on the lottery results, the variation pattern of the special symbol is determined. In the symbol lottery, if the big win lottery result is a "big win", one of the multiple big win types is determined by lottery, and if it is a "loss", one of the multiple loss types is determined by lottery. However, there may be only one big win type and one loss type, and in that case, it may be determined without conducting a lottery. Then, the main control board 40 transmits a "variation pattern specification command" including at least the information on the variation pattern of the special symbol (variation pattern information (for example, information regarding the big win lottery result and the variation time of the special symbol, etc.)) to the effect control board 41 side as an effect control command for specifying the processing state. Thereby, the basic information required for the decorative symbol variation display game is sent to the effect control board 41.
[0091] The variable pattern information of the special symbol can include information specifying the occurrence or non-occurrence of a specific pre-announcement effect (for example, the "reach effect" or "pseudo-consecutive effect" described later). Specifically, the variable pattern of the special symbol is roughly classified into a "winning variable pattern" in the case of a win and a "losing variable pattern" in the case of a loss according to the jackpot lottery result. These variable patterns include, for example, a'reach variable pattern' that specifies the occurrence of a reach effect, a 'normal variable pattern' that does not specify the occurrence of a reach effect, a 'pseudo-consecutive with reach variable pattern' that specifies the occurrence of both a pseudo-consecutive effect and a reach effect (duplicate occurrence), a 'pseudo-consecutive with normal variable pattern' that specifies the occurrence of a pseudo-consecutive effect and does not specify the occurrence of a reach effect, and other multiple types of variable patterns. In addition, in relation to ensuring the performance time of the reach effect and the pseudo-consecutive effect, usually, the variable patterns that specify the reach effect and the pseudo-consecutive effect are set to have a longer variable time than the normal variable pattern.
[0092] Based on the information included in the effect control commands (here, the variable pattern specification command and the decorative symbol specification command) sent from the main control board 40, the effect control board 41 determines the effect content (effect scenario such as a pre-announcement effect) to be developed in time series during the decorative symbol variable display game and the decorative symbol (decorative stop symbol) to be finally stopped and displayed, and variably displays the decorative symbol according to the time schedule based on the variable pattern of the special symbol to execute the decorative symbol variable display game. As a result, in synchronization with the variable display of the special symbol by the special symbol display devices 22a and 22b in terms of time, the decorative symbol is variably displayed by the liquid crystal display device 20, and the period of the special symbol variable display game and the period during the decorative symbol variable display game have substantially the same time width. In addition, the effect control board 41 controls the liquid crystal display device 20, the light display device 16a, or the sound generation device 17a respectively so as to correspond to the effect scenario, and develops various effects in the decorative symbol variable display game. Thereby, the reproduction of the image (image effect) on the liquid crystal display device 20, the reproduction of the sound effect (sound effect), and the lighting and blinking drive of the decorative lamp 16, the LED, etc. (light effect) are realized.
[0093] In this way, the special symbol variation display game and the decorative symbol variation display game have an inseparable relationship, and what reflects the display result of the special symbol variation display game is expressed in the decorative symbol variation display game. Therefore, these two symbol variation display games may be regarded as equivalent symbol games. In this specification, unless otherwise particularly necessary, the above two symbol variation display games may be simply referred to as the "symbol variation display game".
[0094] (Regarding the general symbol hold) In the gaming machine 1, when a game ball passes through the general symbol gate 26, that is, when a detection signal from the general symbol gate detection sensor 26a is input, a random number (random number for general symbol determination) related to the general symbol variation display game is acquired. This random number is used as hold data and is held and stored in the general symbol hold memory area of the RAM 40c up to the maximum hold memory number which is a predetermined upper limit value (for example, a maximum of 4). In the general symbol hold memory area, a hold 1 memory area to a hold n memory area (n is the maximum hold memory number: in this embodiment, n = 4) are provided, and each can store hold data corresponding to the maximum hold memory number. Note that the maximum hold memory number of the general symbol hold memory area is not particularly limited. The game ball related to the hold data stored in this general symbol hold memory area is also referred to as the "general symbol hold ball". In order to make the number of these general symbol hold balls clear to the player, the dot display corresponding to the number of general symbol hold balls in the composite display device 22c is lit, or the hold indicator provided as an icon image on the screen by the liquid crystal display device 20 is lit.
[0095] (General symbol variation display game) In the gaming machine 1, based on the fact that a game ball has passed through the normal symbol gate 26, a "normal symbol winning lottery" by random number lottery is performed on the main control board 40. Based on the result of this lottery, the normal symbol represented by LEDs is variably displayed on the composite display device 22d to start a normal symbol variable display game. After a predetermined variable time has elapsed, the result is stopped and displayed as a combination of lighting and non-lighting of the LEDs. For example, when the result of the normal symbol winning lottery is "normal symbol win", depending on the normal symbol win type, specific LEDs of the composite display device 22d are stopped and displayed in a specific lighting state (for example, all 2 LEDs are in the lit state, or the LED on the "○" side among the LEDs representing "○" and "×" is in the lit state). In this embodiment, only one type of normal symbol win type is provided.
[0096] When this "normal symbol win" occurs, the normal electric accessory solenoid 25a (see FIG. 5) operates, the second start port 24 is opened or enlarged to a state where it is easy for game balls to flow in (start port open state), and a gaming state more advantageous to the player (hereinafter referred to as "normal electric open game") occurs than when the second start port 24 is closed. In this normal electric open game, until a predetermined time (for example, 5.7 s) has elapsed for the opening time of the second start port 24 by the normal electric accessory 25, or until the number of game balls winning in the second start port 24 reaches a predetermined number (for example, 10), the winning area is opened or enlarged, and when any of these conditions are met, the second start port 24 is closed, and such an operation is repeated a predetermined number of times (for example, at most 1 time).
[0097] [Regarding 3.3 Jackpots] Next, the "jackpot" in the gaming machine 1 will be described. In the gaming machine 1, "4R1", "10R", and "4R2" are provided as jackpot types. When the result of the jackpot lottery is "jackpot", a lottery for the jackpot type is performed in the symbol lottery. Note that the above notation of "R" means the specified number of rounds (maximum number of rounds).
[0098] The jackpot type is the win that triggers the operation of the conditional device. Here, the "conditional device" refers to a device whose operation is required as a condition for the operation of the accessory continuous operation device for performing a round game, and which operates when a specific combination of special symbols is displayed or when a game ball passes through a specific area within the big winning opening.
[0099] When a jackpot game is executed, the game state after the end of the jackpot game, the number of guaranteed probability times, and the number of time shortening times are determined according to the game state at the time of jackpot winning and the determined jackpot type. The number of guaranteed probability times is set when the game state after the jackpot game is a high probability state. In the gaming machine 1, the high probability state after the jackpot game continues until the number of executions of the special symbol variation display game reaches the number of guaranteed probability times (for example, 154 times), and when the special symbol variation display game with the number of guaranteed probability times ends without winning the jackpot in the jackpot lottery, the game state is set (shifted) to the low probability state. The number of time shortening times is set when the game state after the jackpot game is a time shortening state. In the gaming machine 1, the time shortening state after the jackpot game continues until the number of executions of the special symbol variation display game reaches the number of time shortening times (for example, 150 times), and when the special symbol variation display game with the number of time shortening times ends without winning the jackpot in the jackpot lottery, the game state is set (shifted) to the non-time shortening state. However, the gaming machine 1 may be a type of "general guaranteed probability machine" in which the number of guaranteed probability times and the number of time shortening times continue until winning the jackpot in the jackpot lottery (until the next time). Note that the number of time shortening times may be the total number of executions of the special symbol variation display game 1 and the special symbol variation display game 2 (the total number of variations of the special figure 1 and the special figure 2), or may be the number of executions of either one (for example, the number of executions of the special symbol variation display game 2).
[0100] Here, in the present embodiment, similar to the jackpot type, a plurality of losing types are provided for "losing". Specifically, three types of losing types, namely "losing 1", "losing 2", and "losing 3", are provided. As described above, when the result of the jackpot lottery is "losing", a lottery for the losing type is conducted in the symbol lottery.
[0101] [3.4 About the performance] (Performance mode) Next, the performance mode (performance state) will be described. The gaming machine 1 of the present embodiment is provided with a plurality of types of performance modes for presenting performances related to the gaming state, and is configured to be able to move back and forth between these performance modes. Specifically, a performance mode corresponding to the set gaming state is provided. In each performance mode, the background display as the background of the variable display screen of the decorative pattern is displayed by different background performances, so that the player can grasp what kind of gaming state he / she is currently staying in.
[0102] The performance control board 41 (CPU 41a) has a functional unit (performance state transition control means) for performing transition control between a plurality of types of performance modes. The performance control board 41 (CPU 41a) is based on a specific performance control command sent from the main control board 40 (CPU 40a), specifically, a performance control command including the gaming state information managed on the main control board 40 side. In a form that maintains consistency with the gaming state managed on the main control board 40 side, the current gaming state is grasped, and it is configured to be able to perform transition control between a plurality of types of performance modes. Examples of the above specific performance control commands include a variable pattern designation command, a decorative pattern designation command, a gaming state designation command sent when a change occurs in the gaming state, and the like.
[0103] (Preview performance) Next, the preview performance will be described. The performance control board 41 is configured to be able to control the appearance of various "preview performances" related to the current performance mode and the jackpot lottery result based on the content of the performance control command from the main control board 40, specifically, at least the variation pattern information included in the variation pattern designation command. Such a preview performance serves as a "stirring performance" that suggests (previews) the degree of expectation (hereinafter referred to as "winning expectation degree") of whether or not a winning type has been won, and stirs the player's winning expectation feeling. Typical examples of preview performances include "reach performance", "pseudo-consecutive performance", and further "foresight preview performance", etc. The performance control board 41 functions as a preview performance control means capable of controlling the execution (appearance) of these performances.
[0104] The "reach performance" refers to a performance mode accompanied by a reach state (a variation display mode accompanied by a reach state: a reach variation pattern), specifically, a performance mode that derives and displays the final game result via the reach state. The reach performance includes a plurality of types of reach performances associated with the winning expectation degree. For example, there are those in which the winning expectation degree relatively increases compared to the case where a normal reach performance appears. Such a reach performance is called a'super reach performance'. Many of these "super reaches" have a relatively longer performance time (variation time) than the normal reach in order to stir the winning expectation feeling. Also, the normal reach and the super reach include a plurality of types of reach performances. The super reach includes a plurality of types of reach performances such as super reach 1, 2, 3, and 4, and the winning expectation degrees of these super reaches 1 to 4 have a relationship of "super reach 1 < super reach 2 < super reach 3 < super reach 4".
[0105] "Pseudo - continuous performance" refers to a performance mode accompanied by a pseudo - continuous variation display state (pseudo - continuous variation) of a decorative pattern. "Pseudo - continuous variation" refers to a variation display mode in which, during a decorative pattern variation display game, part or all of the decorative pattern is temporarily stopped once, and the display operation of re - varying the decorative pattern from the temporarily stopped state is repeated one or more times. In this regard, it is different from the "fore - reading notice performance (continuous notice performance)" described later, which is developed across multiple symbol variation display games. Such "pseudo - continuous" basically has its occurrence rate (appearance rate) determined so that the winning expectation level increases as the number of pseudo - variations increases. For example, according to the number of pseudo - variations, performances for arousing expectations such as super reach are more likely to be selected.
[0106] "Fore - reading notice performance" (hereinafter sometimes abbreviated as "fore - reading notice" or "fore - reading performance") means a performance that notifies the possibility of being controlled into an advantageous state before the variation display of the symbol to be judged is performed, based on the result of the fore - reading judgment. Note that the "advantageous state" means a state advantageous to the player. Specifically, the fore - reading performance is mainly performed in a performance mode that can notify the winning expectation level in advance before the held balls (undigested held balls) that have not yet been used in the execution of the symbol variation display game (the variation display operation of special symbols) are used, by using the held - ball display mode and the background performance of the symbol variation display game executed previously. In the symbol variation display game, in addition to the above "reach performance", various performances such as the so - called "SU (step - up) notice performance", "timer notice performance", "revival performance", "premium notice performance", etc. occur to enliven the game content.
[0107] Here, referring to FIG. 6, the "held - ball change notice performance" as an example of the above fore - reading notice performance will be described. In the case of the gaming machine 1 of the present embodiment, in the upper display area within the screen of the liquid crystal display device 20, a display area (a display area for presenting a variable display effect or a preview effect of a decorative symbol) for presenting a decorative symbol variable display game is provided. In the lower display area within the screen, a hold display area 60 (hold display units a1 to d1) for displaying the number of hold balls on the special symbol 1 side and a hold display area 61 (hold display units a2 to d2) for displaying the number of hold balls on the special symbol 2 side are provided. Regarding the presence or absence of hold balls, that fact is notified by a predetermined hold display mode. FIG. 6 shows an example in which information regarding the current number of hold balls is notified in a lit state (hold ball present: "○ (white circle)" shown in the figure) or an unlit state (no hold ball: broken-line circle shown in the figure).
[0108] The display (hold display) regarding the presence or absence of hold balls is sequentially displayed in the order of their occurrence (winning order). In each of the hold display areas 60 and 61, the leftmost hold ball is displayed as the hold ball that occurred first (i.e., the oldest) on the time axis among all the hold balls within the hold display. Also, on the left side of the hold display areas 60 and 61, a variable display area 62 for indicating the hold balls currently being used in the special symbol variable display game is provided. In the case of the present embodiment, the variable display area 62 is configured such that an image in which the icon of the in-game hold K currently being used in the game appears on the icon of the receiving seat J appears. That is, when the variable display of the special symbol 1 or the special symbol 2 is started, the icon (icon image) of the oldest hold a1 or a2 displayed in the hold display areas 60 and 61 moves as the icon of the in-game hold K onto the icon of the receiving seat J in the variable display area 62, and that state is maintained for a predetermined display time.
[0109] When a hold ball occurs, a "hold addition command" that specifies the prediction determination information related to the jackpot lottery result and the number of hold balls at the time of prediction determination (the existing number of hold balls including the hold ball that occurred this time) is transmitted from the main control board 40 to the effect control board 41 (see FIG. 14). In the case of this embodiment, the hold addition command is composed of 2 bytes, and the hold addition command is composed of upper byte side data that can specify the number of hold balls at the time of pre-reading determination and lower byte side data that can specify pre-reading determination information.
[0110] Here, as can be understood from the above description, in this embodiment, based on the fact that a game ball has entered the first start port 23 or the second start port 24 and a new hold ball has been generated, a jackpot lottery for the symbol variation display game related to the hold ball is performed as pre-reading determination. As will be described later, the main control board 40 holds and stores information representing the result of the jackpot lottery performed as such pre-reading determination in the corresponding storage area of the RAM 40c. The information on the jackpot lottery result obtained at the time of pre-reading determination is used to select (lottery) the symbol variation pattern in the symbol variation display game, and can be paraphrased as so-called "information for selecting the variation pattern". Therefore, it can be said that the main control board 40 performs pre-reading determination and holds and stores the "information for selecting the variation pattern" obtained as a result thereof in a predetermined area of the RAM 40c.
[0111] When the effect control board 41 receives the above hold addition command transmitted by the main control board 40, based on the pre-reading determination information included therein, as part of the display control process related to the above hold display, it performs an effect control process related to the "pre-reading notice effect". Specifically, it performs a "pre-reading notice lottery" to lottery whether to execute the pre-reading notice effect, and when winning this lottery, it causes the pre-reading notice effect to appear.
[0112] Here, the pre-reading determination information is, specifically, gaming information obtained by pre-reading the jackpot lottery result (the jackpot lottery result at the start of variation) or the variation pattern at the start of variation that is executed when the hold ball is used in the symbol variation display game on the main control board 40. That is, this information includes at least the information obtained by pre-reading the jackpot lottery result at the start of variation (pre-reading success / failure information), and in addition, information obtained by pre-reading the symbol lottery result (pre-reading symbol information) and information obtained by pre-reading the variation pattern at the start of variation (pre-reading variation pattern information) can be included. Regarding what information to include in the hold addition command sent to the effect control board 41, it can be appropriately determined according to the content notified in the pre-reading notice. It is assumed that the hold addition command includes pre-reading success / failure information, pre-reading symbol information, and pre-reading variation pattern information.
[0113] Note that the "pre-reading variation pattern" obtained by the pre-reading determination at the time of the generation of the hold ball does not necessarily have to be the "variation pattern at the start of variation" itself obtained when the hold ball is actually used in the variation display operation. For example, taking the case where the variation pattern at the start of variation designates "Super Reach 1" as a representative example, in this case, the content designated by the pre-reading variation pattern can be specified as not being the type of reach effect itself of "Super Reach 1", but the essence thereof, the "Super Reach type".
[0114] In the case of this embodiment, when winning the pre-reading notice lottery, among the hold icons of the hold display parts a1~d1, a2~d2, the hold icon that is the target of the pre-reading notice can change, for example, from the white color of the normal hold display (normal hold display mode) to the hold display (special hold display mode) by the blue, green, red, danger symbol (or special colors and patterns such as rainbow colors) of the notice display. A pre-reading notice effect of the "hold display change system" (also referred to as "hold change notice") is performed. FIG. 6 shows an example in which the held ball in the hatched held display section b1 changes to a special held display. Here, the display of the held icons in blue, green, red, and the danger pattern indicates, in this order, a high expectation of winning. In particular, the display of the held icon with the danger pattern is a premium held icon that indicates an extremely high expectation of a jackpot win.
[0115] (Presentation means) Various presentations in the gaming machine 1 are presented by presentation means arranged in the gaming machine 1. This presentation means may be any means of transmitting stimuli that can exert a presentation effect by appealing to human perception such as vision, hearing, and touch, and examples thereof include light generation means such as a decorative lamp 16 and an LED device (light display device 16a: light presentation means), an acoustic generation device such as a speaker 17 (acoustic generation device 17a: sound presentation means), a presentation display device such as a liquid crystal display device 20 (display means), a pressurizing device that transmits a contact pressure to the operator's body, a wind pressure device that applies wind pressure to the player's body, and a movable object accessory 50 that exerts a visual presentation effect by its operation. Here, the presentation display device is a display device that appeals to vision like the image display device, but is different from the image display device in that it includes those that do not depend on images (for example, a 7-segment display). When referring to an image display device, it mainly refers to a type that presents a presentation by image display, and those that present a presentation by means other than an image like a 7-segment display are included in the concept of the above presentation display device.
[0116] <4. Processing of the main control board> Next, the processing performed by the main control board 40 of the present embodiment will be described. The processing of the main control board 40 mainly includes a main process (main control side main process: FIG. 7) and a timer interrupt process (main control side timer interrupt process: FIG. 9) that is started by a periodic interrupt from the CTC.
[0117] [4.1 Main control side main process] FIG. 7 is a flowchart showing the main control side main process. The main control side main process starts when a system reset occurs due to a system reset signal from the power supply board 200 at the time of recovery from a power outage or power supply abnormality, or when the watchdog timer (WDT) is activated due to a runaway control program and the CPU 40a is forcibly reset (WDT reset). In any case, when the main control side main process starts, at step S101, the CPU 40a executes initial setting processing necessary for starting a game operation, such as initializing the values of the registers of each part including the CPU 40a.
[0118] When the initial setting processing in step S101 is completed, the CPU 40a determines at step S102 whether the backup flag is in the ON state (backup flag = 5AH is in the ON state). In the gaming machine 1, at the time of power-off, processing for backing up the stored information in the RAM 40c is performed by a power check / backup process (step S201, see FIG. 9) described later in the main control side timer interrupt process. When the backup process is properly performed at the time of power-off, the backup flag is set to the ON state. Therefore, at step S102, the backup flag is checked to determine whether backup restoration is possible.
[0119] If it is determined at step S102 that the backup flag is not ON, the CPU 40a proceeds to step S103, performs corresponding processing when the backup flag is OFF, and advances the processing to step S108. Note that at step S103, predetermined processing (for example, processing for storing necessary information in the RAM 40c) determined in advance as processing when the backup flag is OFF is performed.
[0120] On the other hand, if it is determined at step S102 that the backup flag is ON, the CPU 40a determines at step S104 whether the RAM clear condition (transition condition to the RAM clear process) is satisfied. Specifically, it is determined whether the RAM clear switch 34 is in the ON state. When it is determined that the RAM clear condition is satisfied, the CPU 40a executes the RAM clear process in step S105 and proceeds to step S108. The RAM clear process in step S105 is a process of initializing values within a predetermined area (used area) including the work area in the RAM 40c.
[0121] In step S104, when it is determined that the RAM clear condition is not satisfied, the CPU 40a proceeds to step S106 and performs a process of transmitting a predetermined production control command corresponding to the backup restoration to the production control board 41 as the command transmission process at the time of backup restoration.
[0122] In step S107 following step S106, the CPU 40a performs a backup restoration process. The backup restoration process is a process of restoring the operation before power-off after power-on based on the stored contents of the RAM 40c backed up at the time of power-off. Specifically, the CPU 40a restores the stack pointer before power-off and performs a process for starting the game operation from the processing state at the time of power-off. Also, in the backup restoration process, in order for a power failure restoration display command (OB03H) for performing an information display instruction corresponding to the case of backup restoration to be transmitted to the production control board 41 in the pre-processing of the main loop in step S110 described later, a process of storing the lower byte data of the power failure restoration display command in a register is executed.
[0123] In response to executing the backup restoration process in step S107, the CPU 40a proceeds to step S108. As described above, when the process of the previous step 103 is performed or when the process of step S105 is performed, the CPU 40a also proceeds to step S108.
[0124] In step S108, the CPU 40a performs setting of the CTC for periodically generating a timer interrupt at predetermined intervals such as every 4 ms. By performing the setting process of this step S108, thereafter, an interrupt request signal is periodically output to the interrupt controller, and the main control side timer interrupt process is executed.
[0125] In step S109 following step S108, the CPU 40a performs a process of transmitting an effect control command for instructing the start of the game to the effect control board 41, and then proceeds to step S110 to execute pre-main loop processing. In the pre-main loop processing, commands for instructing the initialization (home position return) of the movable accessory 50, transmission processing of commands indicating the number of held balls in special figure 1 and special figure 2, setting processing of internal function registers, processing of setting the performance display monitor lighting timer to 5 s, processing of turning on the emission permission signal for the payout control board 42, etc. are executed. And in step S111, the CPU 40a executes the main loop process.
[0126] (Main loop process) FIG. 8 is a flowchart showing the main loop process of step S111. In the main loop process of FIG. 8, the CPU 40a sets the interrupt prohibited state in step S121, and executes the random number update process in the subsequent step S122. In this random number update process, various random numbers used in the special symbol variation display game and the normal symbol variation display game (random numbers related to the jackpot lottery that circulate within a predetermined numerical range by increment processing (random numbers for special symbol determination), random numbers related to the normal symbol lottery (random numbers for normal symbol lottery determination), random numbers for changing the initial values (start values) (random numbers for special symbol determination initial value, random numbers for normal symbol lottery determination initial value), and random numbers for variation patterns used for selecting variation patterns) are updated.
[0127] In the RAM 40c of the present embodiment, as various random number counters used for symbol lottery related to jackpot lottery, ordinary symbol hit lottery, variable pattern lottery, etc., there are provided a counter for generating an initial value of a special symbol determination random number counter, a special symbol determination random number counter, a counter for generating an initial value of an ordinary symbol hit determination random number counter, an ordinary symbol hit determination random number counter, a random number counter for variable pattern, etc. These counters serve as means for generating random numbers software-wise. In the random number update process of step S122, two initial value generation counters for generating the initial values of the above-mentioned special symbol determination random number counter and ordinary symbol hit determination random number counter, the random number counter for variable pattern, etc. are updated to generate the above various software random numbers. For example, if the numerical range that can be taken as the random number counter for variable pattern is "0 to 9999", a value is obtained from the count value storage area for generating the value of the random number for variable pattern in the RAM 40c, "1" is added to the obtained value, and then it is stored in the original count value storage area. At this time, if the result of adding "1" to the obtained value is "10000", "0" is stored in the original random number counter storage area. The other initial value generation random number counters are updated in the same way.
[0128] After finishing the random number update process of step S122, the CPU 40a performs the process of saving the values of all registers in step S123, and then performs the performance display monitor aggregation division process in step S124. This performance display monitor aggregation division process is a process of calculating a value as the above-mentioned performance information (here, for example, a value as "normal time ratio information"). The value of the normal time ratio information is calculated using the total number of payouts and the total number of out balls. However, the CPU 40a calculates the total number of payouts based on the result of counting the number of game balls that won in the winning openings (the first start opening 23, the second start opening 24, the general winning opening 31, the first big winning opening 27, the second big winning opening 28), and obtains the total number of out balls by counting the number of game balls discharged from the game area 19. The counting of winning balls and the counting of out balls are performed in the input management process (refer to step S204 in FIG. 9) described later in the main control side timer interrupt process. The CPU 40a calculates a value as normal time ratio information in step S124 based on the count values obtained by respectively counting the number of winning balls and the number of out balls performed on the timer interrupt process side in this way. As described above, the calculated value as normal time ratio information is stored in a predetermined area (measurement information storage area) of the RAM 40c. Note that the value of the normal time ratio information calculated in this way is displayed on the performance display 35 by the performance display monitor display process (refer to step S214 in FIG. 9) described later in the main control side timer interrupt process.
[0129] In step S125, the CPU 40a performs a full register return process, and then, in the subsequent step S126, after setting to the interrupt enabled state, returns to step S121.
[0130] In this way, in the main loop process of step S111, the processes of steps S121 to S126 are repeatedly executed in an infinite loop. The CPU 40a repeatedly executes the processes of steps S121 to S126 except during the timer interrupt process that is intermittently executed.
[0131] [4.2 Main control side timer interrupt process] Referring to the flowchart of FIG. 9, the main control side timer interrupt process will be described. The main control side timer interrupt process is activated by an interrupt every fixed time (about 4 ms) from the CTC and is executed by interrupting during the execution of the main control side main process.
[0132] As shown in FIG. 9, when a timer interrupt occurs, the CPU 40a executes the power check and backup process of step S201. In this power check and backup process, mainly, the power level supplied from the power supply board is monitored, and when an abnormality such as a power failure occurs, backup processing such as storing predetermined game information at the time of power failure in the RAM 40c is performed so that the game can resume smoothly when the power is restored.
[0133] After finishing the power check and backup process of step S201, the CPU 40a executes the input data creation process in step S202. Specifically, input data is created based on the input information (ON / OFF signals and rising states (ON edges, OFF edges)) output from various sensors and switches. The input information here is, for example, the ON / OFF information (winning detection information) of the detection signals output from detection sensors such as the first start port detection sensor 23a, the second start port detection sensor 24a, the normal symbol gate detection sensor 26a, the first big winning port detection sensor 27a, the second big winning port detection sensor 28a, the general winning port detection sensor 31a, the OUT monitoring sensor 32a, etc., the ON / OFF information (operation information) of the switch signals output from various switches such as the RAM clear switch 34, the state signals from the payout control board 42 (ON / OFF information of the front door open sensor 48 and the full detection sensor 47), radio wave sensors, magnetic sensors, etc. Thus, whether a game ball is detected at the out port or each winning port is monitored for each interrupt.
[0134] After finishing the input data creation process of step S202, the CPU 40a executes a timer management process for managing the timers used for game operation control in step S203. Here, updates (subtraction processing) are performed on the values of various timers used for game operation control of the gaming machine 1.
[0135] Next, in step S204, the CPU 40a performs input management processing. In this input management processing, based on the input data created in the input data creation processing (S202), values such as the winning counter and the OUT ball monitoring counter are updated. The "winning counter" is a counter provided corresponding to each winning opening, which counts the number of winning game balls (winning balls). The OUT ball monitoring counter is a counter that counts the game balls (OUT balls) discharged from the game area 19.
[0136] In step S205, the CPU 40a executes error management processing. In this error management processing, based on the input data related to various sensors and the status signals from the payout control board 42, the presence or absence of an error occurrence is monitored. When an error occurs, if it is an error type that requires the transmission of an error command as error processing, the CPU 40a transmits the corresponding command to the effect control board 41. When the effect control board 41 receives this error command, it executes error notification according to the error type. Also, when the error in progress is resolved, the CPU 40a transmits an error release command to the effect control board 41. When the effect control board 41 receives this error release command, it terminates the error notification in progress.
[0137] Next, in step S206, the CPU 40a executes timer interrupt internal random number management processing for periodically updating the random numbers related to each variable display game. Here, in order to make the count value of the random number counter random, for the special symbol determination random number, the normal pattern hit determination random number, etc., the update of the random number (+1 addition for each interrupt) and the process of changing the start value of the random number counter every time the random number counter makes a full cycle are performed. Note that the big win determination random number is generated by the random number generation circuit, so it is not updated here.
[0138] In step S207, the CPU 40a executes prize ball management processing. In this prize ball management processing, the above-mentioned winning counter is checked, and when there is a win, a payout control command specifying the number of prize balls is sent to the payout control board 42. When the payout control board 42 receives the payout control command, it controls the game ball payout device 46 based on the number of prize balls information included therein, and executes a payout operation for the specified number of prize balls.
[0139] Next, in step S300, the CPU 40a executes normal symbol management processing. In this normal symbol management processing, the processing necessary to execute the normal symbol variation display game is performed. Note that the details of the normal symbol management processing in step S300 will be described later.
[0140] Furthermore, in step S208, the CPU 40a executes normal electric accessory management processing. In this normal electric accessory management processing, the processing related to the operation control of the normal electric accessories necessary to execute the normal electric accessory release game is performed.
[0141] Next, in step S400, the CPU 40a executes special symbol management processing. In this special symbol management processing, mainly, a jackpot lottery is performed in the special symbol variation display game, and based on the lottery result, the processing necessary to execute the special symbol variation display game, such as the determination of the variation pattern of the special symbol (the preview variation pattern and the variation pattern at the start of variation), is performed. Note that the details of the special symbol management processing in step S400 will be described later.
[0142] Next, in step S209, the CPU 40a executes special electric accessory management processing. In this special electric accessory management processing, the processing related to the operation control of the special electric accessories necessary to execute the jackpot game is performed.
[0143] When the processing for the game progress up to the above step S209 is completed, the CPU 40a performs external terminal management processing in step S210. In this external terminal management processing, the operation state information of the gaming machine 1 is output to external devices such as the hall computer HC and the island lamp through the frame external centralized terminal board 43. The operation state information includes, for example, game information such as jackpot game occurrence information, start information of the symbol variation display game, winning number and prize ball number information, and error information.
[0144] Next, in step S211, the CPU 40a executes LED management processing. In this LED management processing, output processing of control signals (dynamic lighting data) for LED displays such as the special symbol display devices 22a and 22b and the composite display devices 22c and 22d is performed. Control signals based on the display data created in the normal symbol management processing (step S300), the special symbol management processing (step S400), etc. are output to the corresponding display devices or displays in this LED management processing, and display control is performed. As a result, a series of variation display operations (variation display and stop display) of the special symbols in the special symbol display devices 22a and 22b and the normal symbols in the composite display device 22d are realized.
[0145] In step S212 following step S211, the CPU 40a executes solenoid management processing. Here, processing for outputting control signals (control data) to predetermined solenoids provided in the gaming machine 1, such as the normal electric accessory solenoid 25a that operates the above-described normal electric accessory 25, the first special electric accessory solenoid 29a that operates the first special electric accessory 29 that opens and closes the first big winning port 27, and the second special electric accessory solenoid 30a that operates the second special electric accessory 30 that opens and closes the second big winning port 28, is performed.
[0146] In step S213 following step S212, the CPU 40a performs the performance display monitor display processing of step S214 after saving the values of all registers. That is, it is processing for causing the performance display 35 to display the value as the above-described normal time ratio information. Then, the value of the normal ratio information is recalculated every time the total number of out balls in all states reaches a predetermined specified value. The performance indicator 35 can display the current normal ratio information and the previous normal ratio information (the normal ratio information that was calculated and ended at the most recent recalculation timing). Therefore, in the display process of step S214 in this case, a process of causing the performance indicator 35 to display the values of these two types of normal ratio information is performed. Note that the value of the current normal ratio information is the value calculated in the process of step S124 in the above-described main loop process (FIG. 8), and the value of the previous normal ratio information is stored in a predetermined area of the RAM 40c. The CPU 40a reads the stored value and causes the performance indicator 35 to display it.
[0147] In step S215 following step S214, the CPU 40a restores the values of all registers. In step S216, the count value of the WDT is cleared, and the main control side timer interrupt process ends.
[0148] When the above timer interrupt process ends, the CPU 40a executes the main loop process (S111) until the next timer interrupt occurs.
[0149] (Normal symbol management process) FIG. 10 is a flowchart showing the normal symbol management process. As shown in FIG. 10, in step S301, the CPU 40a determines whether or not it has detected the passage of a game ball through the normal symbol gate 26 based on the detection signal from the normal symbol gate detection sensor 26a.
[0150] If it is determined that the passage of a game ball through the normal symbol gate 26 has been detected, in step S302, the CPU 40a determines whether or not the number of balls reserved for the normal symbol is 4 or more. That is, it is determined whether or not the number of balls reserved for the normal symbol is equal to or greater than the maximum reserved storage number (here, the upper limit is 4). However, if the passage of a game ball through the normal symbol gate 26 has not been detected (step S301: N), and if it is determined that the number of balls reserved for the normal symbol is 4, steps S302 to S304 are skipped and the process proceeds to step S305.
[0151] On the other hand, when it is determined that the number of general pattern reserved balls is not 4 or more (less than 4), the CPU 40a adds 1 to the number of general pattern reserved balls in step S303, and stores the random number for general pattern determination related to the general pattern reserved balls generated this time in the general pattern reserved storage area of the RAM 40c in step S304.
[0152] In step S305, the CPU 40a determines the state of the general pattern winning flag. This "general pattern winning flag" is a flag for specifying whether it is during a general power release game. When the flag is in the ON state (for example, 5AH), it indicates that it is during a general power release game, and when the flag is in the OFF state (for example, 00H), it indicates that it is not during a general power release game.
[0153] When the general pattern winning flag is in the OFF state (≠5AH), that is, when it is not during a general power release game, in step S306, the CPU 40a executes a general pattern operation status determination process for branching the process related to the variable display operation of the general pattern according to the general pattern operation status (00H to 02H).
[0154] In the general pattern operation status determination process of step S306, corresponding processes are executed according to whether the general pattern operation status is any of "at the start of variation (00H)", "during variation (01H)", and "during confirmation time (02H)". The "general pattern operation status" is a value indicating the behavior of the general pattern, and the value is changed according to the processing state and stored in the general pattern operation status storage area of the RAM 40c.
[0155] Specifically, when the general pattern operation status is "at the start of variation (00H)", the CPU 40a determines in step S307 whether the number of general pattern reserved balls is zero. If it is determined that the number of general pattern reserved balls is zero, the processes of steps S308 to S313 are skipped, and the process proceeds to step S320.
[0156] On the other hand, when it is determined that the number of general pattern hold balls is not zero, in step S308, the CPU 40a subtracts 1 from the number of general pattern hold balls, and refers to the general pattern per determination table shown in FIG. 11, and performs a general pattern per lottery based on the general pattern per determination random number (hold data) stored in the general pattern hold storage area and stored first.
[0157] FIG. 11 is a diagram for explaining an example of the general pattern per determination table. Here, in a predetermined area of the ROM 40b, a general pattern per determination table as shown in FIG. 11 is stored. The general pattern per determination table shows a determination reference value TH between a low probability state and a high probability state. In the general pattern per lottery in the present embodiment, the determination reference value TH is determined within the range of values that the general pattern per determination random number can take (0 to 250), and a determination of general pattern per or miss is made based on the result of comparing the magnitude relationship between the general pattern per determination random number and the determination reference value TH. As an example, a method is adopted in which when the value of the general pattern per determination random number is within the range of "0 to the determination reference value TH", the determination result of general pattern per is obtained, and in other cases, the determination result of miss is obtained. In the example shown in FIG. 11, the determination reference value TH is set to 250 for both the low probability state and the high probability state. Therefore, in the present embodiment, in any case of the low probability state and the high probability state, the general pattern per lottery always wins the general pattern per.
[0158] FIG. 12 is a diagram for explaining an example of a winning type, a variation time, and a determination time related to the normal symbol variation display game. In step S310, as shown in FIG. 12, the CPU 40a performs a stop symbol creation process of determining the winning type based on the lottery result of the general pattern per lottery and the set game state, and creating a stop symbol corresponding to the determined winning type. Here, as described above, in any case of the low probability state and the high probability state, the general pattern per lottery always wins the general pattern per. When winning the general pattern per, as shown in FIG. 12, "win 1" is determined as the winning type, and a stop symbol corresponding to "win 1" is created.
[0159] In step S311, the CPU 40a stores the variation time (see FIG. 12) based on the game state in the normal symbol device timer. Here, 132 ms is stored in the low probability state, and 128 ms is stored in the high probability state.
[0160] In step S312, the CPU 40a shifts the hold data stored in the hold memory area of the RAM 40c for the normal symbols. Here, the hold data stored in the hold n memory areas for normal symbols (n = 2, 3, 4) is stored in the hold memory areas for normal symbols corresponding to 'n - 1' respectively.
[0161] In step S313, the CPU 40a performs various settings at the start of the variation and proceeds to step S320. Here, for example, the normal symbol operation status is set to "in variation (01H)", the hold 4 memory area is cleared to provide a free area, and the normal symbol variation flag is set to the ON state.
[0162] When the normal symbol operation status is "in variation (01H)", in step S314, the CPU 40a determines whether the normal symbol device timer is zero. If it is determined that the normal symbol device timer is not zero, step S315 is skipped and the process proceeds to step S320.
[0163] On the other hand, if it is determined that the normal symbol device timer is zero, in step S315, the CPU 40a performs various settings at the end of the variation and proceeds to step S320. Here, for example, the normal symbol operation status is set to "during confirmation time (02H)", the confirmation time (500 ms) based on the game state as shown in FIG. 12 is stored in the normal symbol device timer, and the normal symbol variation flag is set to the OFF state.
[0164] When the normal symbol operation status is "during confirmation time (02H)", in step S316, the CPU 40a determines whether the normal symbol device timer is zero. If it is determined that the normal symbol device timer is not zero, steps S317 to S319 are skipped and the process proceeds to step S320.
[0165] On the other hand, when it is determined that the normal symbol device timer is zero, in step S317, the CPU 40a sets the normal symbol operation status to "at the start of fluctuation (00H)". In step S318, the CPU 40a determines whether or not it has won in the normal symbol lottery in step S309. If it is determined that it has not won in the normal symbol lottery, it passes step S319 and proceeds to step S320.
[0166] On the other hand, when it is determined that it has won in the normal symbol lottery, in step S319, the CPU 40a performs various settings for when winning in the normal symbol lottery and proceeds to step S320. Here, the normal symbol lottery flag is set to the ON state (5AH).
[0167] In step S320, the CPU 40a updates the normal symbol display data and ends the normal symbol management process. In this normal symbol display data update process, it is determined whether or not the normal symbol is in the process of fluctuation. If it is in the process of fluctuation, 7-segment display data for when the normal symbol is fluctuating is created. If the normal symbol is not in the process of fluctuation, 7-segment display data for when the normal symbol is stopped and displayed is created. The normal symbol display data created here is output to the composite display device 22d by the LED management process (step S211) in FIG. 9.
[0168] (Special symbol management process) FIG. 13 is a flowchart showing the special symbol management process (step S400). As shown in FIG. 13, in step S401, the CPU 40a performs a special symbol 1 start port check process for the special symbol 1 (the first start port 23), and in the subsequent step S402, performs a special symbol 2 start port check process for the special symbol 2 (the second start port 24). The details of these start port check processes will be described later.
[0169] After finishing the start port check process in steps S401 and S402, in step S403, the CPU 40a determines the state of the conditional device operation flag. This "conditional device operation flag" is a flag for specifying whether it is a jackpot game. When the flag is in the ON state (for example, 5AH), it indicates that it is during a jackpot game, and when the flag is in the OFF state (for example, 00H), it indicates that it is not during a jackpot game. Note that the conditional device operation flag is set to the ON state during the special symbol confirmation process (step S407) when winning a jackpot in the jackpot lottery, and is set to the OFF state in the jackpot end process (step S650) described later.
[0170] When it is determined that the conditional device operation flag is in the OFF state (≠5AH), that is, when it is determined that it is not during a jackpot game, in step S404, the CPU 40a executes a special symbol operation status branch process that branches the process related to the variable display operation of the special symbol according to the special symbol operation status (00H to 03H).
[0171] In the special symbol operation status branch process of step S404, corresponding processes are executed according to whether the special symbol operation status is "waiting (00H, 01H)", "changing (02H)", or "confirming (03H)". Note that the "special symbol operation status" is a value indicating the behavior of the special symbol, and the value is changed according to the processing state and is stored in the special symbol operation status storage area of the RAM 40c.
[0172] Specifically, when the special symbol operation status is "waiting (00H, 01H)", the CPU 40a executes the special symbol change start process (step S405), when it is "changing (02H)", it executes the special symbol changing process (step S406), and when it is "confirming (03H)", it executes the special symbol confirmation time process (step S407). Here, the above "waiting" means that the special symbol is in a waiting state for the next change, the above "changing" means that the special symbol is changing (variable display), and the above "confirming" means that the change of the special symbol has ended and it is in the stop (determined) display (during the special symbol confirmation time).
[0173] Through the processes of step S405, S406, and S407 described above, a variation display operation that sets one set of the start and stop of the special symbol variation is realized. The details of the process of step S405 will be described later.
[0174] When any of the processes of steps S405 to S407 is completed, in step S408, the CPU 40a executes a special symbol display data update process and ends the special symbol management process. In this special symbol display data update process, it is determined whether the special symbol is in the process of variation. If it is in the process of variation, data for 7-segment display during the variation of the special symbol is created. If the special symbol is not in the process of variation, data for 7-segment display during the stop display of the special symbol is created. The display data of the special symbol created here is output to the special symbol display devices 22a and 22b by the LED management process (step S211) in FIG. 9.
[0175] Also, when it is determined in step S403 that it is during a big win game (=5AH), the CPU 40a directly performs the special symbol display data update process in step S408 without performing the process related to the variation display operation of the special symbol in steps S405 to S407. That is, during a big win game, the variation display operation of the special symbol is not performed (the display state of the special symbol on the special symbol display device remains in the state determined after the big win).
[0176] (Special Figure 1 Start Port Check Process) FIG. 14 is a flowchart showing the special figure 1 start port check process (step S401). This special figure 1 start port check process serves as a winning time process executed based on the establishment of a predetermined start condition. In the special figure 1 start port check process, as pre-start processing (winning time process of special figure 1) for executing the special symbol variation display game 1 of special symbol 1, a process of adding the number of reserved balls of special symbol 1 caused by the occurrence of winning at the first start port 23, a process of storing various random numbers (reserved storage process), a process of transmitting a reserved addition command, etc. are executed. Note that the special drawing 2 start port check process (step S402) also serves as a winning process executed based on the establishment of predetermined start conditions, similar to the special drawing 1 start port check process. As pre-start processing (winning process for special drawing 2) for executing the special symbol variation display game 2 of special drawing 2, processes such as adding the number of held balls of special drawing 2 caused by the winning of the second start port 24, storing various random numbers, and transmitting a hold addition command are executed. Therefore, the special drawing 1 start port check process and the special drawing 2 start port check process have substantially the same processing content. Hereinafter, the special drawing 1 start port check process will be mainly described, and the details of the special drawing 2 start port check process will be omitted to avoid duplicate description.
[0177] As shown in FIG. 14, in step S401-1, the CPU 40a determines whether or not it has detected the winning of a game ball into the first start port 23 based on the detection signal from the first start port detection sensor 23a. When it is determined that the winning into the first start port 23 has been detected, in step S401-2, the CPU 40a determines whether or not the number of held balls of special drawing 1 (hereinafter referred to as "special drawing 1 held balls") is 4 or more. That is, it is determined whether or not the number of special drawing 1 held balls is equal to or more than the maximum hold storage number (here, the upper limit is 4). However, when it is determined that there is no winning detection of the first start port 23, the special drawing 1 start port check process ends.
[0178] When it is determined in step S401-2 that the number of special drawing 1 held balls is 4 or more, that is, when the winning of the first start port 23 is detected but it is determined that the number of special drawing 1 held balls is 4 or more, the CPU 40a proceeds to step S401-11 described later. On the other hand, when it is determined that the number of special drawing 1 held balls is not 4 or more (less than 4), in step S401-3, 1 is added to the number of special drawing 1 held balls.
[0179] In step S401-4, the CPU 40a acquires various random numbers used for the special symbol variation display game 1 related to the special drawing 1 held balls generated this time. Specifically, from various random number counters, a jackpot determination random number, a special symbol determination random number, and a variation pattern random number are acquired, and the acquired random numbers are stored in the special drawing hold storage area of the RAM 40c.
[0180] In step S401-5, the CPU 40a acquires pre-reading prohibition data (EVENT: "01H") that prohibits pre-reading determination as winning command data for creating a pending addition command (data corresponding to the lower byte side (EVENT) of the pending addition command). Next, in step S401-6, the CPU 40a determines whether or not the "Special Figure 1 pre-reading prohibition condition" is satisfied. The Special Figure 1 pre-reading prohibition condition is a condition that prohibits pre-reading determination for the Special Figure 1 pending balls.
[0181] If the Special Figure 1 pre-reading prohibition condition is satisfied, the CPU 40a proceeds to step S401-11 without executing the pre-reading determination process (step S401-9) related to pre-reading determination. In this case, the pending addition command having the pre-reading prohibition data (EVENT: "01H") designates pre-reading prohibition, and the pre-reading determination for the current Special Figure 1 pending balls is prohibited. As a result, the pre-reading preview effect is not executed either. In other words, it can be said that the pre-reading prohibition data designates that the pre-reading determination process (step S401-9) has not been executed.
[0182] Here, instead of performing the pre-reading determination for Special Figure 1 and Special Figure 2 regardless of the game state, it is determined whether or not to prohibit pre-reading based on the current game state. The reason is as follows. In the case of the time-limited state where right hitting is advantageous, winning at the second start port 24 frequently occurs. However, considering that in the non-time-limited state where left hitting is advantageous, winning at the second start port 24 hardly occurs and winning at the first start port 23 frequently occurs, instead of blindly performing the pre-reading determination for Special Figure 1 and Special Figure 2 regardless of the game state, in the case of the time-limited state, the pre-reading determination for the Special Figure 1 side is prohibited and the pre-reading determination for the Special Figure 2 side is permitted, and in the case of the non-time-limited state, the pre-reading determination for the Special Figure 2 side is prohibited and the pre-reading determination for the Special Figure 1 side is permitted.
[0183] In step S401-6, if it is determined that the pre-reading prohibition condition is not satisfied, in step S401-7, the CPU 40a executes a pre-reading determination process. In this pre-reading determination process, the jackpot lottery result executed at the start of variation is pre-read and determined. Therefore, this includes a series of processes related to the 'pre-reading validity determination' for pre-reading and determining the jackpot lottery result, the 'pre-reading symbol determination' for pre-reading and determining the symbol lottery result, and the 'pre-reading variation pattern determination' for pre-reading and determining the variation pattern at the start of variation.
[0184] Specifically, in step S401-7, the CPU 40a acquires the jackpot determination random number value stored in the RAM 40c (special drawing retention storage area), and based on the jackpot determination random number value and the jackpot determination table (see FIG. 17), performs a jackpot lottery (pre-reading validity determination for determining at least the difference between jackpot and non-jackpot) for the current retained balls, and obtains the result (referred to as the 'pre-reading validity result').
[0185] Here, in the present embodiment, the pre-reading validity result is not stored in the RAM 40c but remains taken in a predetermined general-purpose register built into the CPU 40a. This is because the pre-reading validity determination result is immediately used in the subsequent pre-reading symbol determination process, and this data is not required thereafter, so there is no need to store it in the RAM 40c.
[0186] Also, in step S401-7, as the above-described pre-reading symbol determination process, the CPU 40a performs a symbol lottery using a symbol table (see FIG. 20) corresponding to the pre-reading validity result (at least the difference between jackpot and non-jackpot) and the retention type (the difference between special drawings 1 and 2). Specifically, the CPU 40a performs a symbol lottery for the current retained balls based on the special symbol determination random number acquired in the previous step S401-4 and the symbol table, and obtains the result (referred to as the 'pre-reading symbol result').
[0187] The CPU 40a does not store the preliminary draw symbol result in the RAM 40c, but keeps it in a predetermined general-purpose register built into the CPU 40a in the same way as in the above-described preliminary draw validity determination. This is because the preliminary draw symbol result is immediately used in the subsequent preliminary draw variation pattern determination and is not needed thereafter, so there is no need to store it in the RAM 40c.
[0188] After finishing the above-described preliminary draw symbol determination, the CPU 40a executes a preliminary draw variation pattern determination. In this preliminary draw variation pattern determination, a lottery of the variation pattern is performed using the above-described preliminary draw symbol result (any one of "4R1", "10R", "4R2", "miss 1", "miss 2", "miss 3"), a variation pattern table for selecting a variation pattern according to the preliminary draw symbol result, and the random number for variation pattern obtained in step S401-4, and the preliminary draw variation pattern is determined. That is, the variation pattern (the variation pattern at the start of variation) to be executed when the current hold ball is used for the variation display operation is preliminarily determined.
[0189] The above-described variation pattern table is also used in the lottery of the variation pattern performed in the special symbol variation start process (FIG. 13). A specific example of the above-described variation pattern table and the lottery process of the variation pattern using the table will be described again when explaining the process at the start of variation.
[0190] Note that the preliminary draw variation pattern determination result (winning command data (EVENT)) is immediately used in the hold addition command creation process in step S401-8 described below, and thereafter this data is not needed. Therefore, the CPU 40a finishes the process in step S401-7 while taking in the result of the preliminary draw variation pattern determination into the register without storing it in the RAM 40c.
[0191] In step S401-8, the CPU 40a creates data on the lower byte side of the hold addition command according to the pre-reading determination result. Specifically, data representing the type of the pre-reading variation pattern is created as the winning command data (EVENT) on the lower byte side of the hold addition command. Regarding the data of EVENT, the "01H" set in step S401-5 will be updated to the value corresponding to the pre-reading variation pattern (the value obtained in the pre-reading variation pattern determination process) in this process.
[0192] In step S401-9, the CPU 40a creates data on the upper byte side of the hold addition command according to the number of hold balls. That is, data representing the current number of hold balls and the above-mentioned pre-reading symbol result (the type of special symbol) is created as the winning command data (MODE) on the upper byte side of the hold addition command. Regarding the data of MODE, it is set so that it can distinguish between hold 1 to hold 4 of special figure 1 and hold 1 to hold 4 of special figure 2.
[0193] In step S401-10, the CPU 40a performs the transmission process of the hold addition command. That is, a hold addition command including the winning command data created in step S401-8 and step S401-9 as EVENT and MODE respectively is created and transmitted to the effect control board 41.
[0194] Here, when it is a pre-reading prohibition condition (Yes in S401-6), the CPU 40a maintains the above-mentioned pre-reading prohibition data (lower byte = 01H) without updating it and transmits a hold addition command with the pre-reading prohibition data. Also, at the time of overflow (when a new winning occurs when the maximum number of hold memories has been reached), a hold addition command designated for overflow is transmitted (the Yes route in step S401-2).
[0195] Note that after the hold addition command is sent from the main control board 40 to the effect control board 41, it is only used when the effect control board 41 presents the "advance notice effect" related to the current hold ball, and is not particularly used in the special symbol variation start process shown in FIG. 12. Therefore, the CPU 40a does not store the hold addition command in the RAM 40c either, and exits the special figure 1 start port check process in step S401, and then proceeds to perform the special figure 2 start port check process in step S402.
[0196] (Special symbol variation start process) FIG. 15 is a flowchart showing the special symbol variation start process (step S405), which is the process at the start of variation. As shown in FIG. 15, in step S405-1, the CPU 40a determines whether the number of hold balls in special figure 2 (special figure 2 hold ball number) is zero. If the special figure 2 hold ball number is not zero, it proceeds to step S405-6 and performs the process at the start of variation (steps S405-6 to S405-14) for the special figure 2 hold balls to be used for the current variation display.
[0197] On the other hand, if it is determined in step S405-2 that the number of hold balls in special figure 1 (special figure 1 hold ball number) is zero, the CPU 40a determines whether the number of hold balls in special figure 1 is zero. If it is determined that the special figure 1 hold ball number is not zero, it proceeds to the process in step S405-6 and performs the process related to the start of variation of the special symbol for the special figure 1 hold balls to be used for the current variation display (steps S405-6 to S405-14). By the processes in steps S405-1 and S405-2 above, the "priority variation order" of which of the special figure 1 hold balls and the special figure 2 hold balls is preferentially used for the variation display operation (which hold balls are preferentially consumed) is determined. In this embodiment, when there are hold balls in both the special figure 1 hold balls and the special figure 2 hold balls, the special figure 2 hold balls are preferentially consumed. That is, the special symbol variation display game 2 is preferentially executed over the special symbol variation display game 1. Note that, not limited to the above-mentioned priority variation type, it may also be configured to consume the hold balls in the order of winning.
[0198] In addition, when the number of hold balls in both the special figure 2 and the special figure 1 is zero, it is in the state of "no hold balls". This state of "no hold balls" is the case when the special symbol is on standby and there is no hold memory. It notifies the production control board 41 side of entering this state and controls the liquid crystal display device 20 to switch to the display of the demo screen for customer waiting (customer waiting demo screen). Therefore, when it becomes "no hold balls", it proceeds to step S405-3, and the CPU 40a determines whether the special symbol operation status indicates "on standby (00H)" in the state of "no hold balls".
[0199] If it is determined in step S405-3 that the special symbol operation status is not "on standby (00H)", that is, if it is determined that the special symbol operation status is "on standby (01H)", then in step S405-4, the CPU 40a switches the special symbol operation status to "on standby (00H)" (stores 00H in the special symbol operation status). Then, in step S405-5, the CPU 40a transmits a "demo display command" for displaying the customer waiting demo screen to the production control board 41 as a production control command, and ends the special symbol variation start process. Thereafter, if it is "on standby (00H)" when the determination process of step S405-3 is executed, the CPU 40a ends the special symbol variation start process without transmitting the demo display command again.
[0200] If it is determined in step S405-1 that the number of hold balls in the special figure 2 is not zero, and if it is determined in step S405-2 that the number of hold balls in the special figure 1 is not zero (when the number of hold balls in the special figure 2 is zero while the number of hold balls in the special figure 1 is not zero), the CPU 40a performs the processes related to the start of the variation of the special symbol for the hold balls used in the current variation display (steps S405-6 to S405-14). Here, regarding the processing of steps S405-6 to S405-14 described below, if the determination in step S405-1 above is 'No', it is the processing for the reserved balls in Special Figure 2, and if the determination in step S405-2 above is 'No', it is the processing for the reserved balls in Special Figure 1. However, since the method of processing is the same, in order to avoid duplicate descriptions, unless particularly necessary, the description will be made without distinguishing whether it is the processing for the reserved balls in Special Figure 1 or the processing for the reserved balls in Special Figure 2.
[0201] In step S405-6, the CPU 40a subtracts 1 from the number of reserved balls (the number of reserved balls related to the special symbol side for this variable display operation - 1), and in the subsequent step S405-7, it transmits a "reserved subtraction command" including the reserved ball number information after subtraction to the effect control board 41. By this reserved subtraction command, the effect control board 41 side grasps the remaining number of reserved balls after the consumption of the current number of reserved balls and shifts the current reserved display.
[0202] In step S405-8, the CPU 40a sets the special symbol operation confirmation data. This special symbol operation confirmation data is information specifying the special symbol on the variable start side this time. For example, if special symbol 1 is on the variable start side, "00H (Special Figure 1 variable start designation)" is stored in a predetermined area (special symbol operation confirmation data storage area) of the RAM 40c, and if special symbol 2 is on the variable start side, "01H (Special Figure 2 variable start designation)" is stored.
[0203] In step S405-9, the CPU 40a shifts the hold data stored in the hold drawing storage area of the RAM 40c, and in the subsequent step S405-10, clears the hold 4 storage area. In the processing of steps S405-9 to S405-10, the hold data (big win determination random number, special symbol determination random number, and variation pattern random number) stored in the hold storage area corresponding to the hold storage number n = 1 (hold 1 storage area) is read out and stored in the determination random number storage area of the RAM 40c, and the hold data stored in the hold storage areas corresponding to the hold n storage areas (n = 2, 3, 4) (hold 2 storage area, hold 3 storage area, hold 4 storage area) is stored in the hold storage area corresponding to 'n - 1' respectively (step S405-9), and the hold 4 storage area is cleared to provide a free area (step S405-10).
[0204] In step S405-11, the CPU 40a performs the process of transmitting a remaining variation count designation command and a game state command. Here, the CPU 40a determines whether or not a "short-time count counter" that counts the number of short-time periods in the short-time state is zero, and if the short-time count is not zero, transmits a "remaining variation count designation command" including the short-time count to the effect control board 41. With this "remaining variation count designation command", the effect control board 41 can execute the process of grasping and notifying the short-time count. Also, the CPU 40a also performs the process of transmitting a game state command that designates the current game state to the effect control board 41.
[0205] In step S411, the CPU 40a executes a big win random number determination process for performing a big win lottery. Note that the details of the big win random number determination process will be described later.
[0206] In step S412, the CPU 40a executes a symbol lottery process for performing a symbol lottery. Note that the details of the symbol lottery process will be described later.
[0207] In step S413, the CPU 40a executes a variation pattern lottery process for performing a variation pattern lottery. The details of the variation pattern selection process in this embodiment will be described later.
[0208] Here, as described above, the lottery results of the jackpot lottery and the symbol lottery at the start of the variation are stored in the RAM 40c. The reason for this is that these lottery results are not only used in the special symbol management process (step S400), but also data used in subsequent special electric accessory management processes (step S209) and the like. In this regard, it is different from the process at the time of pre-reading determination where the lottery result is not stored in the RAM 40c.
[0209] Although the description by illustration is omitted, when the jackpot lottery result is a jackpot, the CPU 40a performs necessary setting processing for designating the game state after the jackpot game as setting processing for shifting the game state following step S413 (game state shift preparation processing).
[0210] In step S405-12, the CPU 40a stores 5AH (ON state) in the special symbol N variation flag (N = 1, 2) that designates that the variation display is in progress. The "special symbol N variation flag" is a flag indicating whether any of the special symbols 1 and 2 is in variation. When the flag is in the ON state (= 5AH), it indicates that the target special symbol is in variation, and when the flag is in the OFF state (= 00H), it indicates that the target special symbol is stopped. Note that the special symbol 1 variation flag (N = 1) corresponds to special symbol 1, and the special symbol 2 variation flag (N = 2) corresponds to special symbol 2.
[0211] In step S405-13, the CPU 40a executes the command transmission process at the start of the variation. In this command transmission process, in order to notify the effect control board 41 of the variation pattern selected in the variation pattern lottery in step S413, as an effect control command, a "variation pattern designation command" including variation pattern information that can identify the variation pattern is created and transmitted to the effect control board 41. In the command transmission process, based on the symbol lottery result in step S412, a decoration symbol designation command is created and transmitted to the effect control board 41. The decoration symbol designation command is composed of two bytes: the upper byte (MODE) that designates the hold type and the lower byte (EVENT) that designates the type of special symbol. Therefore, this decoration symbol designation command includes information regarding the hold type and the type of special symbol (symbol lottery result). Since this decoration symbol designation command includes information regarding the type of special symbol, on the effect control board 41, it is mainly used when determining the combination of decoration symbols (symbol types that include the reach symbol as a component) when forming the reach state, the combination of the decoration symbols to be finally stopped and displayed (decoration stop symbols), and the preview effect corresponding to the winning type in the symbol variation display game.
[0212] In step S405-14, the CPU 40a executes the variation start setting process and ends the special symbol variation start process. Here, the special symbol operation status is switched to "in variation (02H)" (store 02H in the special symbol operation status), and the process of clearing the determination random number storage area is performed.
[0213] (Big win random number determination process) FIG. 16 is a flowchart showing the big win random number determination process (step S411), FIG. 17 is a diagram showing an example of the big win determination table, and FIG. 18 is a diagram for explaining the big win random number determination method.
[0214] As shown in FIG. 16, in step S411-1, the CPU 40a selects a big win determination table according to the hold type (special figure 1, special figure 2). Here, a big win determination table as shown in FIG. 16 is stored in a predetermined area (address) of the ROM 40b. The big win determination table is provided for each hold type (special figure 1, special figure 2), but in this embodiment, the same value is set regardless of the hold type. The big win determination table shows the determination reference value TH in the low probability state and the high probability state. In the jackpot random number determination in this embodiment, a determination reference value TH is determined within the range of values that the jackpot determination random number can take, and based on the result of comparing the magnitude relationship between the jackpot determination random number and the determination reference value TH, a determination of whether a jackpot has occurred (jackpot lottery) is made. As an example, a method is adopted in which the determination result of a jackpot is obtained when the value of the jackpot determination random number is within the range of "0 to the determination reference value TH", and a determination result of a miss is obtained in other cases.
[0215] And as the determination reference value TH, two types are set: a determination reference value TH1 (205) used for determination in a low-probability state and a determination reference value TH2 (658) used for determination in a high-probability state. As shown in FIGS. 17 and 18, the determination reference value TH2 in the high-probability state is made larger in value than the determination reference value TH1 in the low-probability state, so that the winning probability of a jackpot is increased in the determination in the high-probability state.
[0216] Note that in the above, an example is given in which the lower limit value for determining a jackpot in the jackpot random number determination is "0", that is, a determination result of a jackpot is obtained if the jackpot determination random number is within the range of "0" to "the determination reference value TH". However, the determination lower limit value can also be a numerical value larger than "0".
[0217] In step S411-2, the CPU 40a determines whether the jackpot determination random number is less than the determination lower limit value. The determination lower limit value is the lower limit value for determining a jackpot (the lower limit value of the numerical range in which a determination result of a jackpot is obtained) as described above, and is, for example, "0". If the jackpot determination random number is less than the determination lower limit value, it is certain that it is a miss, so the processes in steps S411-3 to S411-7 described below are skipped and the jackpot random number determination process ends. Note that when the determination lower limit value = 0, it is usually impossible for the jackpot determination random number to take a value less than 0, so the process in step S411-2 is not essential. The process in step S411-2 is effective when the determination lower limit value is set to a value larger than 0.
[0218] If the jackpot determination random number is not less than the determination lower limit value in step S411-2, then in step S411-3, the CPU 40a determines whether the current gaming state is a high probability state or not.
[0219] If it is determined that it is not in the high probability state, then in step S411-4, the CPU 40a acquires the determination reference value TH1 in the low probability state in the jackpot determination table. On the other hand, if it is determined that it is in the high probability state, then in step S411-5, the CPU 40a acquires the determination reference value TH2 in the high probability case in the jackpot determination table.
[0220] In step S411-6, the CPU 40a determines whether the jackpot determination random number is less than the determination reference value TH based on the determination reference value TH1 or the determination reference value TH2. If it is determined that the jackpot determination random number is less than the determination reference value TH, then in step S411-7, the CPU 40a updates the jackpot determination flag to 5AH and then ends the jackpot random number determination process. If it is determined that the jackpot determination random number is not less than the determination reference value TH, then it passes step S411-6 and ends the jackpot random number determination process.
[0221] Note that when it is determined in step S411-2 that the jackpot determination random number is less than the determination lower limit value, and when it is determined in step S411-6 that the jackpot determination random number is not less than the determination reference value TH, the jackpot determination flag should be updated to a value indicating that it is not a jackpot (=5AH), specifically a loss (=00H). However, in the jackpot random number determination process of step S411, the process of updating the jackpot determination flag to 00H indicating a loss is not performed, but is performed in the process during the special symbol confirmation time of step S407.
[0222] (Symbol lottery process) FIG. 19 is a flowchart showing the symbol lottery process (step S412), and FIG. 20 is a diagram showing an example of the symbol table.
[0223] As shown in FIG. 20, the symbol table is provided for each jackpot lottery result. In the symbol table, the selection rate of the type of special symbol (jackpot type, losing type) is set for each jackpot lottery result. Here, within the symbol table, the numerical value stored for each type of special symbol subject to the lottery is the allocation value (value representing the allocation) of the selection rate on the premise that the random number for special symbol determination can take 200 values from 0 to 199. According to the symbol table for jackpots, when winning the jackpot with special symbol 1, "jackpot 1" is determined as the jackpot type with a selection rate of 200 / 200, that is, it is always determined. Also, when winning the jackpot with special symbol 2, "jackpot 1" is determined as the jackpot type with a selection rate of 140 / 200, and "jackpot 2" is determined as the jackpot type with a selection rate of 60 / 200.
[0224] According to the symbol table for losing results, when it is determined that special symbol 1 is a loss, "loss 1" is determined as the losing type with a selection rate of 180 / 200, "loss 2" is determined as the losing type with a selection rate of 16 / 200, and "loss 3" is determined as the losing type with a selection rate of 4 / 200. Also, when it is determined that special symbol 2 is a loss, "loss 1" is determined as the losing type with a selection rate of 180 / 200, "loss 2" is determined as the losing type with a selection rate of 10 / 200, and "loss 3" is determined as the losing type with a selection rate of 10 / 200.
[0225] In step S412-1, the CPU 40a selects the symbol table corresponding to the reserved type (special symbol 1, special symbol 2).
[0226] In step S412-2, the CPU 40a acquires the random number for special symbol determination and the jackpot determination flag. In step S412-3, the CPU 40a refers to the symbol table corresponding to the jackpot determination flag (jackpot / loss), and based on the random number for special symbol determination, determines the type of special symbol (jackpot type, losing type) by lottery.
[0227] In step S412-4, the CPU 40a stores the special symbol determination data corresponding to the type of the special symbol determined in step S412-3 in a predetermined area of the RAM 40c, and ends the special stop symbol creation process.
[0228] (Variable pattern lottery process) FIG. 21 is a flowchart showing the variable pattern lottery process (step S413). In step S413-1, the CPU 40a determines whether it is a big win. That is, based on the big win determination flag, it determines whether it is a big win (=5AH).
[0229] If it is determined in step S413-1 that it is not a big win (a loss), in step S413-2, the CPU 40a selects a loss variable pattern table and then proceeds to the variable pattern selection process in step S413-4. On the other hand, if it is determined in step S413-1 that it is a big win, in step S413-3, the CPU 40a selects a big win variable pattern table and then proceeds to the variable pattern selection process in step S413-4.
[0230] In step S413-4, the CPU 40a refers to the variable pattern table selected in step S413-2 or step S413-3 above, determines a variable pattern based on a random number for the variable pattern, and ends the variable pattern lottery process.
[0231] FIG. 22 is a diagram showing an example of a variable pattern lottery table. The variable pattern table is stored in the ROM 40b. In FIG. 22, the variable pattern table used in the time-saving state is illustrated, but actually, a variable pattern table used in the non-time-saving state is also provided.
[0232] As shown in Fig. 22, in the variation pattern lottery for a losing outcome, the variation patterns for lottery candidates (variation patterns that can be selected by lottery) are seven types: "Normal Variation 1s", "Normal Variation 12s1", "Normal Variation 12s2", "Super Reach 1", "Super Reach 2", "Super Reach 3", and "Super Reach 4". Also, in the variation pattern lottery for a jackpot outcome, the variation patterns for lottery candidates are four types: "Super Reach 1", "Super Reach 2", "Super Reach 3", and "Super Reach 4".
[0233] Here, among the above-mentioned variation patterns, particularly "Normal Variation 1s", "Normal Variation 12s1", and "Normal Variation 12s2" belong to the variation patterns corresponding to a so-called "losing" outcome that is not selected in the case of a jackpot (hereinafter sometimes referred to as "losing variation patterns").
[0234] In the present embodiment, the variation pattern lottery for a losing outcome is performed using different variation pattern tables for each losing type (losing 1, 2, 3) regardless of Figs. 1 and 2 of the special drawing. Here, as described above, for each of the losing types "losing 1", "losing 2", and "losing 3", the selection rates by symbol lottery are considered to be different. "Losing 1" has the highest selection rate, and "losing 2" and "losing 3" have lower selection rates than "losing 1". That is, if the jackpot lottery result is a "losing" outcome, in most cases, "losing 1" will be selected as the losing type.
[0235] Regarding the variation pattern lottery for Fig. 2 of the special drawing, for the variation pattern lottery when the losing type is "losing 1", a lottery is performed according to the number of hold balls. Therefore, among the variation pattern tables for Fig. 2 of the special drawing, different tables are prepared for each number of hold balls as the variation pattern table used when the losing type is "losing 1".
[0236] Here, in the variation pattern table, the numerical values stored for each variation pattern to be selected represent the distribution values (values representing the distribution) of the selection probabilities on the premise that the random numbers for variation pattern determination can take 1000 values from 0 to 9999. For example, in the variation pattern table for FIG. 1, in the table of "miss 1" and "number of hold balls = 0", the stored value for "normal variation 1s" is set to "10000", which means that the winning probability of "normal variation 1s" is "10000 / 10000". Showing the above distribution values as the stored values in the table is only for the convenience of explanation. In the actual variation pattern table, the determination reference values such as those used in the above jackpot random number determination will be stored. For example, for the above table of "miss 1" and "number of hold balls = 0", for example, "9999" is stored as the actual stored value (determination reference value). In that case, if the random number for the variation pattern is 9999 or less, "normal variation 1s" will be selected.
[0237] As can be seen with reference to the distribution values shown in FIG. 22, in the variation pattern lottery of FIG. 2 corresponding to the case of "miss 1", only "normal variation" is selected. Also, in the variation pattern lottery of FIG. 2 corresponding to the case of "miss 1", the shorter the variation time of the normal variation pattern is selected as the number of hold balls increases.
[0238] <5. Processing of the effect control board> Subsequently, the processing performed by the CPU 41a of the effect control board 41 of the present embodiment will be described. The processing of the CPU 41a mainly includes a main process (effect control side main process: FIG. 23) and a timer interrupt process (effect control side timer interrupt process: FIG. 24) started by a periodic interrupt.
[0239] [5.1 Effect control side main process] FIG. 23 is a flowchart showing the effect control side main process. First, in step S501, the CPU 41a performs necessary initial setting processes before the start of the gaming operation. Here, as the initial setting processes, for example, command reception interrupt setting, origin return processing of the movable accessory 50, initial setting of the CTC, permission of timer interrupt, initial setting of register values inside the CPU including each part of the microcomputer, and the like are performed.
[0240] After finishing the above initial setting processes, the main loop processes of steps S504 to S511 are performed every predetermined time (16 ms), and otherwise, the effect software random number update process of step S503 is repeatedly performed.
[0241] In step S502, the CPU 41a refers to the main loop update counter and determines whether the main loop update cycle (counter value > 15), which is the trigger for executing the main loop process, has arrived. The main loop update counter is a counter that is incremented during the effect control side timer interrupt process described later, which is executed every 1 ms. In this embodiment, the main loop process is performed every 16 ms. In the determination process of step S502, the main loop update counter value is determined. If the value is greater than "15" (Yes in step S502), it is considered that the execution timing of the main loop process has arrived, and the processes of steps S504 to S511 are executed. Otherwise, until the main loop update cycle arrives (No in step S502), in step S503, the update of various effect lottery use software random numbers used for lottery to determine the effect scenario is performed.
[0242] When the main loop update cycle arrives (Yes in step S502), in step S504, the CPU 41a clears the main loop update counter, and in step S505, the demo power saving mode process is executed. In the demo power saving mode process, the pre-guest waiting effect (demo start waiting display), guest waiting effect (demo display), and setting processes necessary for the power saving mode are executed.
[0243] In step S506, the CPU 41a executes an effect switch input process. In the effect switch input process, the operation states of the aforementioned operation unit 14 (such as the effect button 14a, the cross key 14b, and the enter button 14c) are monitored. When an operation is detected, an effect control process corresponding to the operation is executed.
[0244] In step S507, the CPU 41a performs a command analysis process. In the command analysis process, it is monitored whether an effect control command is stored in the command reception buffer. If an effect control command is stored, this command is read out, and an effect process corresponding to the read effect control command is executed. When an effect control command is transmitted from the main control board 40, it is stored in the command reception buffer of the RWM.
[0245] For example, when a variation pattern specification command and a decoration pattern specification command are received and stored in the reception buffer, in the command analysis process, an effect scenario is determined based on the information included in the commands, and the data of the effect scenario (effect scenario data) is stored in the scenario setting area of the RWM. Note that in the effect scenario, a time schedule regarding how one or more types of effects appear at what timing and with what effect time width is defined.
[0246] In step S508, the CPU 41a executes a scenario update process. In this scenario update process, the value of a timer necessary for the execution of the effect scenario is updated, and a process for advancing the effect scenario based on the timer value is executed. A typical example of the above timer is an effect scenario timer that manages the time schedule regarding the occurrence timing of effects. For example, within a variation period in which a special symbol is variably displayed and substantially within the same period, within a variation period in which a decoration pattern is variably displayed, on the time axis, a temporal schedule regarding what effects appear with what time width and by what effect means is managed by this timer. This production scenario timer is also used in the LED drive data update process (step S510) and the movable object device operation update process (step S603) described later.
[0247] In step S509, the CPU 41a performs sound output processing. In the sound output processing, based on the production scenario data and the production scenario timer, data such as phrases and volumes is output to the sound source IC described above, and a sound production is presented from the speaker 17. Thereby, a sound production along the production scenario is realized.
[0248] In step S510, the CPU 41a executes an LED drive data update process. In the LED drive data update process, based on the production scenario data and the production scenario timer, a control signal (LED data) for lighting and displaying the light display device 16a is created.
[0249] In step S511, the CPU 41a executes an LED output process. In this LED output process, the control signal (LED data) created in the LED drive data update process is output to the lamp driver unit 26b, and the light display device 16a is lit and displayed through the lamp driver unit 26b.
[0250] [5.2 Production Control Side Timer Interrupt Process] FIG. 24 is a flowchart showing the production control side timer interrupt process. The production control side timer interrupt process is activated by an interrupt every fixed time (1 ms) from the CTC and is executed by interrupting during the execution of the production control side main process.
[0251] In step S601, the CPU 41a saves the contents of the register in the stack area, and then in step S602, it executes a button input state update process. In this button input state update process, the input state of the operation detection signal from the operation unit 14 is monitored, and when it is confirmed that the operation detection signal has been received, the detection information is stored in a predetermined area of the RWM.
[0252] In step S603, the CPU 41a executes the movable object prop operation update process. In this movable object prop operation update process, processing for controlling the operation of the movable object prop 50 is performed based on the production scenario data and the production scenario timer. Note that the details of the processing to be executed as the movable object prop operation update process in this step S603 will be described later.
[0253] In step S604, the CPU 41a performs the SOL·MOT output process. In this SOL·MOT output process, based on the processing result in the movable object prop operation update process, processing for outputting control data to the motor drive control unit 51 is performed. Thereby, the movable object production by the movable object prop 50 along the production scenario is realized. Note that the details of the output process in this step S604 will also be described later.
[0254] In step S605, the CPU 41a performs the LCD command transmission process. In this LCD command transmission process, when there is an LCD command created in the scenario update process (step S508), the LCD command is transmitted to the aforementioned VDP to execute image display control. Thereby, an image along the production scenario is displayed.
[0255] In step S606, the CPU 41a executes the RTC information acquisition process. In this RTC information acquisition process, date and time information (RTC information) measured by the RTC is acquired. This RTC information is used when presenting a production based on the RTC information.
[0256] In step S607, the CPU 41a increments the main loop update counter. This main loop update counter is reset in step S503 during the above-described main production control process and is incremented here.
[0257] In step S608, the CPU 41a restores the content of the register that was saved, ends the timer interrupt process, and executes the main production control process until the next timer interrupt occurs.
[0258] <6. Movable Object Prop Control as an Embodiment> [6.1 Outline of the Control Method as an Embodiment] Referring to FIGS. 25 and 26, the outline of the method for movable object prop control as an embodiment will be described.
[0259] First, for comparison, FIG. 25 shows an outline of the configuration of a conventional movable object prop control system. Here, as an example for explanation, a configuration is shown on the premise that the movable object prop 50 consists of two movable object props 50x and 50y. Also, here, the control unit corresponding to the production control board 41 in the conventional configuration is shown as the production control board 41'.
[0260] In the conventional movable object prop control system, the production control board 41' directly controls each motor driver (52x, 52y). The conventional production control board 41' (CPU 41a) performs a process of outputting a control signal to the motor drivers 52x and 52y in the production side timer interrupt process with a period of 1 ms described above. That is, the operations of the respective prop motors (prop motors 53x, 53y) are controlled with a time granularity of 1 ms.
[0261] Also, as the operation control of the movable object prop 50, control using the above-described position sensor group 55 (position sensors 55x, 55y) may be performed. Conventionally, however, as shown in the figure, the detection signals from the position sensors 55x and 55y are input to the production control board 41' via a para-silicon (parallel / serial) conversion unit 57. The CPU 41a of the production control board 41' determines whether the movable object prop 50 has reached the target position at a cycle of 1 ms by the production control side timer interrupt process based on the detection signals input from the position sensors 55x and 55y in this way. In response to the determination that the movable object prop 50 has reached the target position, a control signal for stopping the prop motors 53x and 53y is output to the motor drivers 52x and 52y.
[0262] Here, in the conventional configuration as described above, the CPU 41a of the production control board 41' outputs a control signal for instructing the operation of the movable object motors 53x and 53y to the motor drivers 52x and 52y at a cycle of 1 ms. To realize such an operation, in the conventional configuration, the processing load of the production control board 41' has a tendency to increase, and it has been forcing developers to create control data every 1 ms. That is, it has led to an increase in the work load of the developers in realizing the movable object device control.
[0263] Also, in the conventional configuration as described above, the control resolution of the movable object motors 53x and 53y in the time direction is regulated by the cycle of the timer interrupt process, specifically, a cycle of 1 ms. Due to this, it has been difficult to move the movable object device 50 smoothly.
[0264] Further, in the conventional configuration, since the CPU 41a of the production control board 41' executes the operation control of the movable object device based on the detection signals of the position sensors 55x and 55y, the production control board 41' requires a total of two communication systems: a communication system for outputting a control signal to the motor drivers 52x and 52y and a communication system for inputting the detection signals of the position sensors 55x and 55y.
[0265] Therefore, in the present embodiment, as the configuration of the movable object device control system, a configuration using a motor drive control unit 51 as shown in FIG. 26 is adopted. Although details will be described later, the motor drive control unit 51 is configured by, for example, an LSI (Large Scale Integration), and has a function of generating and outputting control signals for the motor drivers 52x and 52y necessary to realize a series of operations of the movable object device 50 in response to the input of a control command Cd for designating a series of operations of the movable object device 50 from the outside.
[0266] The series of operations mentioned here means an operation with a certain continuity of the movable object device 50, such as the operation from the start to the stop of the movement of the movable object device 50, or the operation from the start to the end of the movement of the movable object device 50 in one direction when the movable object device 50 is reciprocated. This series of operations only needs to be the operation of the movable object device 50 in a period longer than at least one cycle of the timer interrupt.
[0267] In the following description, the control signal input to the motor drivers 52x and 52y is referred to as the "driver control signal".
[0268] The effect control board 41 (CPU 41a) in the present embodiment outputs a control command Cd corresponding to the operation pattern to the motor drive control unit 51 according to the specified operation pattern of the movable object device 50 to be executed based on the above-described effect scenario data and the effect scenario timer. The motor drive control unit 51 generates a driver control signal corresponding to the control command Cd input from the effect control board 41 and outputs it to the motor drivers 52x and 52y.
[0269] With the above configuration, in the gaming machine 1 of the present embodiment, when realizing a series of operations of the movable object device 50, the CPU 41a of the effect control board 41 does not need to output a driver control signal to the motor drivers 52x and 52y at a cycle of 1 ms as in the prior art. Therefore, it is possible to reduce the processing load of the effect control board 41 in realizing the movable object device control, and it is possible to reduce the burden on the developer. As will be described later, in the case of the present embodiment, the developer only needs to create data in which the operation definition is performed for each divided operation constituting the operation pattern for the operation pattern of the movable object device 50 to be realized, and the work burden can be significantly reduced compared to the case of creating control data every 1 ms as in the prior art.
[0270] In addition, according to the gaming machine 1 of the present embodiment, the time-direction control resolution of the accessory motors 53x and 53y is no longer restricted by the period of the timer interrupt process (1 ms period) as in the prior art. Therefore, it becomes possible to smoothly move the movable accessory 50. Specifically, in the present embodiment, by making it possible to utilize the microstep drive mode described later, it becomes possible to smoothly move the movable accessory 50. As a result, it is possible to improve the production effect regarding the production using the movable accessory 50.
[0271] Furthermore, in the present embodiment, the motor drive control unit 51 corresponds to the input of detection signals from position sensors provided for the movable accessory 50, such as the position sensors 55x and 55y, and has a function of generating and outputting a motor control signal for moving the target movable accessory 50 to the sensor position in response to an external control command Cd. Therefore, when realizing the accessory operation of moving the movable accessory 50 to the sensor position, it is no longer necessary to input the detection signals of the position sensors 55x and 55y to the production control board 41 as in the prior art.
[0272] In the present embodiment, when realizing the operation of moving the movable accessory 50 to the sensor position, similar to the case of realizing other series of operations, a corresponding control command Cd may be transmitted from the production control board 41 to the motor drive control unit 51. Therefore, according to the present embodiment, when realizing various series of operations of the movable accessory 50 including the operation of moving the movable accessory 50 to the sensor position as described above, only one communication system needs to be provided between the production control board 41 and the motor drive control unit 51, and the number of necessary communication systems can be reduced compared to the prior art.
[0273] [6.2 About the motor drive control unit] FIG. 27 is a block diagram showing a schematic internal configuration example of the motor drive control unit 51. In this embodiment, the motor drive control unit 51 can control a plurality of motor drivers provided as a group of motor drivers 52 simultaneously and in parallel. Specifically, the motor drive control unit 51 in this example can control four motor drivers simultaneously and in parallel. In other words, the motor drive control unit 51 in this example has four control systems as the control systems of the motor drivers.
[0274] In this embodiment, the control systems of the motor drivers included in the motor drive control unit 51 are expressed as "axes", and the four control systems are denoted as "X-axis", "Y-axis", "Z-axis", and "U-axis", respectively.
[0275] In the figure, among these four control systems of the X-axis, Y-axis, Z-axis, and U-axis included in the motor drive control unit 51, only the configuration of the control system of the X-axis is shown as the "circuit for X-axis" representatively. Since the configurations of the control systems of the other Y-axis, Z-axis, and U-axis (in the figure, "circuit for Y-axis", "circuit for Z-axis", and "circuit for U-axis") are the same as that of the circuit for X-axis, the illustration thereof is omitted.
[0276] As shown in the figure, the motor drive control unit 51 has an I / F (interface) unit 71. The I / F unit 71 is a communication interface unit for performing data communication according to a predetermined data communication standard between an external device, particularly the production control board 41 in this embodiment. This I / F unit 71 is a communication interface unit commonly provided for the circuit for X-axis, the circuit for Y-axis, the circuit for Z-axis, and the circuit for U-axis. In other words, the external device of the motor drive control unit 51 can communicate with these circuits for X-axis, circuit for Y-axis, circuit for Z-axis, and circuit for U-axis individually via the I / F unit 71. Note that, as the I / F unit 71, for example, one corresponding to I2C (Inter-Integrated Circuit) bus communication or SPI (Serial Peripheral Interface) bus communication can be considered for use.
[0277] As shown in the figure, the X-axis circuit includes a command register control circuit 72, a register section 73, a pre-register section 74, a start / stop control circuit 75, an acceleration / deceleration pulse generation circuit 76, a multiplication / division circuit 77, an output form conversion circuit 78, a remaining pulse number counter 79, a current up / down control circuit 80, and a general-purpose input / output control circuit 81. Also, the X-axis circuit has a pulse signal output terminal OUTx and a rotation direction output terminal DIRx as terminals for outputting control signals to the motor driver. In this embodiment, the motor driver is configured to output a pulse signal indicating the period of the drive pulse of the accessory motor and a rotation direction indication signal indicating the rotation direction (CW / CCW) of the accessory motor. The pulse signal output terminal OUTx is the terminal for outputting the above pulse signal, and the rotation direction output terminal DIRx is the terminal for outputting the above rotation direction indication signal. Hereinafter, the above pulse signal output from the pulse signal output terminal OUT will be referred to as the "OUT signal", and the above rotation direction indication signal output from the rotation direction output terminal DIR will be referred to as the "DIR signal".
[0278] Furthermore, the X-axis circuit has a plurality of general-purpose input / output terminals shown as "P0x", "P1x", "P2x", "P3x" in the figure. These general-purpose input / output terminals are terminals where it is possible to select and set which signal to input or output. The setting of which signal to input or output for each general-purpose input / output terminal can be performed by setting the setting register in the register section 73 described later.
[0279] Here, the above-described pulse signal output terminal OUT, rotation direction output terminal DIR, and plurality of general-purpose input / output terminals P are provided for each axis, and the terminals for each axis are distinguished by attaching an alphabet for each axis to the end of the symbol. Specifically, for the pulse signal output terminals OUT and rotation direction output terminals DIR in the Y-axis circuit, Z-axis circuit, and U-axis circuit, the symbols are respectively denoted as "OUTy", "DIRy", "OUTz", "DIRz", "OUTu", "DIRu", and for the general-purpose input / output terminals P0, P1, P2, and P3 in the Y-axis circuit, Z-axis circuit, and U-axis circuit, they are respectively denoted as "P0y", "P1y", "P2y", "P3y", "P0z", "P1z", "P2z", "P3z", "P0u", "P1u", "P2u", "P3u".
[0280] In the X-axis circuit, the command register control circuit 72 can write and read various control commands Cd and status information for a plurality of registers provided in the register unit 73 and a plurality of pre-registers provided in the pre-register unit 74 based on an instruction from an external device (production control board 41) input via the I / F unit 71.
[0281] Here, the role of the pre-registers in the pre-register unit 73 and the control using the pre-registers will be described later again.
[0282] The following various registers are provided in the register unit 73 as registers for storing the control command Cd. · RFL register: A register for storing a control command Cd (hereinafter referred to as "RFL command") for specifying the FL speed (initial speed, stop speed) of the accessory motor · RFH register: A register for storing a control command Cd (hereinafter referred to as "RFH command") for specifying the FH speed (operating speed) of the accessory motor · RMV register: A register for storing a control command Cd (hereinafter referred to as "RMV command") for specifying the number of output pulses for stopping the accessory motor (the target movement amount of the movable body accessory 50) in the positioning operation mode described later ·RMG register: A register that stores a control command Cd (hereinafter referred to as "RMG command") for specifying the speed magnification of the actuator motor ·RDP register: A register that stores a control command Cd (hereinafter referred to as "RDP command") for specifying the slow-down point (a value that determines the remaining number of pulses at which deceleration starts) ·RUR register: A register that stores a control command Cd (hereinafter referred to as "RUR command") for specifying the acceleration rate of the actuator motor (the larger the value, the longer the acceleration time and the gentler the acceleration) ·RDR: A register that stores a control command Cd (hereinafter referred to as "RDR command") for specifying the deceleration rate of the actuator motor (the larger the value, the longer the deceleration time and the gentler the deceleration)
[0283] External devices such as the effect control board 41 can, by issuing a register write command, instruct the command-register control circuit 72 to write the corresponding control command Cd to each of the above-mentioned registers. That is, it is possible to instruct to write each of the various control commands Cd related to the actuator motor control as described above to the corresponding register.
[0284] In addition, the register section 73 is also provided with the following registers as registers for storing values related to actuator motor control. ·RPLS: A register in which the remaining number of pulses is stored. In the positioning operation mode, the number of output pulses stored in the above-mentioned RMV register is set as the initial value, and thereafter, it is decremented by a remaining number of pulses counter 79 described later.
[0285] In addition to the registers exemplified above, the register section 73 is also provided with setting registers for performing environment settings, operation mode settings, etc., and status registers for storing values indicating the operating state of the motor drive control section 51.
[0286] In this embodiment, the motor drive control unit 51 can switch between the above-described positioning operation mode and the sensor input stop mode as the drive control mode of the accessory motor. The positioning operation mode is a mode in which the accessory motor is stopped when the number of drive pulses of the target accessory motor in the accessory motor group 53 reaches a predetermined number of output pulses. This can be paraphrased as a mode in which the target movable body accessory 50 is moved by a predetermined target movement amount. The sensor input stop mode is a mode in which the target accessory motor is stopped when it is determined that the target movable body accessory 50 has reached the position of the position sensor based on the detection signal of the target position sensor in the position sensor group 55.
[0287] The switching setting between the positioning operation mode and the sensor input stop mode is realized by setting the control command Cd for a predetermined setting register in the register unit 73. Specifically, the switching setting between the positioning operation mode and the sensor input stop mode can be performed by setting the control command Cd for the RMD register provided as a register for setting the operation mode in the register unit 73. In this example, depending on the control command Cd (hereinafter referred to as the "RMD command") for the RMD register, not only the positioning operation mode and the sensor input stop mode can be specified, but also the rotation direction (CW / CCW) of the accessory motor can be specified. Further, the RMD command of this example can also specify which general-purpose input / output terminal is to be used as the sensor signal input terminal when specifying the sensor input stop mode. Specifically, the motor drive control unit 51 of this example is configured to select, from among the general-purpose input / output terminals P0 to P3, the terminal for inputting the detection signal from the position sensor in the sensor input stop mode, and the above RMD command is used to specify which general-purpose input / output terminal is to be used as the sensor signal input terminal when specifying the sensor input stop mode.
[0288] The command register control circuit 72 controls the start / stop control circuit 75, the acceleration / deceleration pulse generation circuit 76, and the multiplication frequency division circuit 77 based on the control command Cd related to the actuator motor control stored in the register section 73, so as to generate and output a driver control signal (the above-mentioned OUT signal and DIR signal) for realizing the operation of the movable body actuator 50 according to the instruction of the control command Cd.
[0289] The start / stop control circuit 75 controls the pulse generation / output operation by the acceleration / deceleration pulse generation circuit 76 based on the instruction from the command register control circuit 72. The acceleration / deceleration pulse generation circuit 76 is a circuit that generates and outputs a pulse signal serving as the basis for the OUT signal. Specifically, for example, when the actuator motor is rotated forward (CW), a pulse signal with, for example, a positive polarity is generated, and when the actuator motor is rotated backward (CCW), a pulse signal with, for example, a negative polarity is generated, etc., and a pulse signal with a polarity corresponding to the rotation direction of the actuator motor is generated and output.
[0290] When a start command is input from an external device via the I / F section 71, the command register control circuit 72 outputs a start instruction signal to the start / stop control circuit 75. The start / stop control circuit 75 causes the acceleration / deceleration pulse generation circuit 76 to start outputting a pulse signal according to this start instruction signal. The timing at which the output of the pulse signal to the acceleration / deceleration pulse generation circuit 76 is started in this way corresponds to the timing at which the driving of the actuator motor is started.
[0291] Also, the start / stop control circuit 75 stops the output of the pulse signal by the acceleration / deceleration pulse generation circuit 76 based on the instruction from the command register control circuit 72. Here, as the timing for stopping the output of the pulse signal by the acceleration / deceleration pulse generation circuit 76, when the number of output pulses of the OUT signal reaches the "number of output pulses" set in the aforementioned RMV register in the positioning operation mode described above, and when the target movable object 50 reaches the position of the target position sensor in the sensor input stop mode described above can be cited.
[0292] The command register control circuit 72, in the sensor input stop mode, based on the detection signal of the position sensor input from the general-purpose input / output terminal P previously specified by the aforementioned RMD command (see "positioning sensor signal" in the figure), determines whether or not the target movable object 50 has reached the position of the position sensor. Then, in response to determining that the target movable object 50 has reached the position of the position sensor, a stop instruction signal is output to the start / stop control circuit 75. In response to this stop instruction signal, the acceleration / deceleration pulse generation circuit 76 stops the output of the pulse signal.
[0293] Also, the command register control circuit 72, in the positioning operation mode, outputs a stop instruction signal to the start / stop control circuit 75 based on the count value (see "RPLS" in the figure) by the remaining pulse number counter 79. The command register control circuit 72 in this example outputs the value of the number of output pulses stored in the aforementioned RMV register to the remaining pulse number counter 79 (see "RMV" in the figure). The remaining pulse number counter 79 inputs the pulse signal with adjusted magnification output by the magnification frequency division circuit 77 to be described later, and subtracts the pulse count value of the pulse signal with adjusted magnification from the above-mentioned number of output pulses input from the command register control circuit 72, thereby counting the remaining pulse number (that is, the difference value between the number of output pulses defined as the target by the control command Cd and the current number of output pulses). Here, the number of pulses of the pulse signal with adjusted magnification is the same as the number of pulses of the OUT signal. That is, the remaining pulse number counter 79 counts the remaining pulse number based on the OUT signal.
[0294] When in the positioning operation mode, the command register control circuit 72 outputs a stop instruction signal to the start / stop control circuit 75 in response to the remaining pulse count input from the remaining pulse count counter 79 becoming 0. The command register control circuit 72 also performs a process of storing the value of the remaining pulse count in a predetermined status register (RPLS register).
[0295] Here, the start / stop control circuit 75 outputs a value (hereinafter referred to as "drive status value SRUN") indicating the drive control status of the accessory motor shown as "SRUN" in the figure based on the start instruction signal and the stop instruction signal from the command register control circuit 72. This drive status value SRUN is a value for identifying the start timing and the end timing (stop timing) of the drive control of the accessory motor. In this example, for example, "1" (H level) means the motor is driving, and "0" (L level) means the motor is stopped. In this example, the start / stop control circuit 75 raises the drive status value SRUN from "0" to "1" at the timing when the start instruction signal from the command register control circuit 72 is input, and lowers the drive status value SRUN from "1" to "0" at the timing when the stop instruction signal from the command register control circuit 72 is input.
[0296] The command register control circuit 72 performs a process of storing the drive status value SRUN output by the start / stop control circuit 75 in a predetermined status register (hereinafter referred to as "SRUN register") provided in the register section 73. Thereby, the effect control board 41 can inquire about the status information of whether the accessory motor is driving or stopped by issuing a register read command instructing the reading of the value of the SRUN register to the command register control circuit 72.
[0297] The acceleration / deceleration pulse generation circuit 76 generates and outputs a pulse signal at a frequency based on an instruction from the start / stop control circuit 75 and an instruction from the command register control circuit 72.
[0298] The frequency of the pulse signal generated and output by the acceleration / deceleration pulse generation circuit 76 is controlled based on the aforementioned RFL command (FL speed), RFH command (FH speed), RUR command (acceleration rate), RDP command (slowdown point), and RDR command (deceleration rate).
[0299] Specifically, in response to the issuance of the aforementioned start command, the acceleration / deceleration pulse generation circuit 76 is instructed by the command register control circuit 72 with the FL speed indicated by the RFL command, the acceleration rate indicated by the RFH command, the FH speed indicated by the RFH command, and the deceleration rate indicated by the RDR command. When the acceleration / deceleration pulse generation circuit 76 receives an output start instruction for the pulse signal from the start / stop control circuit 75, it first starts outputting a pulse signal at a frequency corresponding to the FL speed, and increases the frequency of the pulse signal at a frequency increase rate corresponding to the acceleration rate. Then, when the frequency of the pulse signal reaches the frequency corresponding to the FL speed, the frequency of the pulse signal is maintained at the frequency corresponding to the FL speed. After that, when the timing of the slowdown point indicated by the RDP command is reached, a deceleration instruction is given to the acceleration / deceleration pulse generation circuit 76 from the command register control circuit 72. In response to this deceleration instruction, the acceleration / deceleration pulse generation circuit 76 decreases the frequency of the pulse signal at a frequency decrease rate corresponding to the deceleration rate. Then, when an output stop instruction for the pulse signal is given from the start / stop control circuit 75, the output of the pulse signal is stopped.
[0300] Thereby, the operation of the target actuator motor can be controlled according to the modes specified by the RFL command (FL speed), RFH command (FH speed), RUR command (acceleration rate), RDP command (slowdown point), and RDR command (deceleration rate).
[0301] The frequency division circuit 77 divides the frequency of the pulse signal output from the acceleration / deceleration pulse generation circuit 76 based on an instruction from the command register control circuit 72. Specifically, the command register control circuit 72 instructs the frequency division circuit 77 of the speed multiplication factor indicated by the above-described RMG command. The frequency division circuit 77 divides the frequency of the pulse signal input from the acceleration / deceleration pulse generation circuit 76 by a division ratio corresponding to the instructed speed multiplication factor. Thereby, it is possible to realize speed multiplication factor adjustment according to the RMG command for the operating speed (rotational speed) of the actuator motor.
[0302] The output form conversion circuit 78 generates an OUT signal and a DIR signal based on the pulse signal output from the frequency division circuit 77. As understood from the previous description, the pulse signal in this example has a polarity corresponding to the rotation direction of the actuator motor. The output form conversion circuit 78 generates and outputs a DIR signal based on the polarity of the input pulse signal, and generates and outputs a signal obtained by absolute-valuing the pulse signal as the OUT signal.
[0303] The general-purpose input / output control circuit 81 performs signal input / output control for the general-purpose input / output terminals P0x to P3x based on an instruction from the command register control circuit 72. Examples of signals that can be assigned to the general-purpose input / output terminals P0x to P3x include the above-described drive status value SRUN, the current up / down signal CDWN output from the current up / down control circuit 80 described below, and the positioning sensor signal. The drive status value SRUN and the current up / down signal CDWN can be output to the outside. Also, the positioning sensor signal can be at least input from the outside. Here, according to the specifications of this example, the current up / down signal CDWN can only be output from the general-purpose input / output terminal P1 or P3.
[0304] The current up-down control circuit 80 performs control to realize a current up function and a current down function (hereinafter, when collectively referred to, it is expressed as "current up / down function").
[0305] The current up function mentioned here is not to output the drive pulse of the utility motor immediately at the timing of the start command, but a function to delay the output of the drive pulse for a predetermined period from the timing of the start command. By this function, a delay period can be obtained to increase the output current value of the motor driver to the current value during drive (drive current value) before applying the drive pulse to the utility motor. If the drive pulse is applied before the output current value of the motor driver stabilizes, the utility motor may lose synchronization. Therefore, the above-mentioned delay period is provided to prevent loss of synchronization. Also, by providing the above-mentioned delay period, a period can be obtained to stabilize the mechanism (movable body utility 50) at the excitation position, and thus loss of synchronization of the utility motor can also be prevented in this regard. Hereinafter, the above-mentioned delay period is referred to as the "current up period".
[0306] The current down function is a function to maintain the output current value of the motor driver at the above-mentioned drive current value for a predetermined period from the drive stop timing of the utility motor (the timing of stopping the application of the drive pulse), and then lower it to the current value during standby (standby current value). By providing a period to maintain the output current value of the motor driver at the drive current value for a predetermined period from the drive stop timing of the utility motor in this way, a time for the utility motor to surely stop can be ensured. Also, by reducing the output current of the motor driver from the drive current value to the standby current value, the heat generation of the utility motor can be reduced. Hereinafter, the period to maintain the output current value of the motor driver at the drive current value from the drive stop timing of the utility motor as described above is referred to as the "current down period".
[0307] The current up-down control circuit 80 generates and outputs a current up-down signal CDWM signal for realizing the current up-down function as described above.
[0308] Figure 28 is an operation explanatory diagram of the current up-down control circuit 80. Here, together with the current up-down signal CDWM, the above-described drive status value SRUN and OUT signal are also shown.
[0309] In the figure, the timing indicated as "CSTA" represents the timing when the driving start of the actuator motor is instructed by the start command. The current up-down control circuit 80 outputs a start instruction permission signal to the start / stop control circuit 75 in response to the elapse of a previously instructed current up period from the timing of the drive start instruction by this start command. The timing of the drive start instruction by the start command is instructed from the command register control circuit 72 to the current up-down control circuit 80.
[0310] The start / stop control circuit 75, in a state where the current up-down function is enabled, not only the start instruction signal from the command register control circuit 72 but also in response to the input of the above start instruction permission signal, gives an instruction to start the pulse signal output by the acceleration / deceleration pulse generation circuit 76. As a result, as shown in the figure, the OUT signal starts pulse output after the elapse of a predetermined current up period from the timing of the drive start instruction by the start command.
[0311] Regarding the drive stop side, as described above, the start / stop control circuit 75 stops the pulse generation / output operation of the acceleration / deceleration pulse generation circuit 76 at the timing indicated by the stop instruction signal from the command register control circuit 72.
[0312] Also, the current up-down control circuit 80 generates the current up-down signal CDWN as follows. First, in response to the arrival of the timing of the drive start instruction by the start command, the current up / down signal CDWN is changed from the OFF level (e.g., L level) to the ON level (e.g., H level). Then, thereafter, when the stop timing of the pulse output is instructed from the command register control circuit 72, the current up / down signal CDWN is changed from the ON level to the OFF level in response to the elapse of a predetermined current down period from the stop timing of the pulse output. For confirmation, it should be noted that the stop timing of the pulse output is the same timing as the output timing of the above-described stop instruction signal from the command register control circuit 72 to the start / stop control circuit 75.
[0313] Here, in this example, the ON / OFF of the current up / down function, the current up period, and the current down period can be set by the control command Cd from an external device via the I / F unit 71. The information on the ON / OFF of the current up / down function and the information on the current up period and the current down period set by the control command Cd are instructed from the command register control circuit 72 to the current up / down control circuit 80.
[0314] In the gaming machine 1, the current up / down function is realized based on the current up / down signal CDWN generated as described above. Specific methods and configurations as embodiments for realizing the current up / down function (control of the output current value of the motor driver) based on this current up / down signal CDWN will be described later again.
[0315] Here, as described with reference to FIG. 27, in the present embodiment, the command register control circuit 72 determines whether or not the target movable body component 50 has reached the position of the position sensor based on the detection signal from the target position sensor among the position sensor group 55 in the sensor input stop mode. In the motor drive control unit 51 of this example, the determination condition for such determination of reaching the position sensor can be adjusted. Specifically, in this example, the determination of reaching the position sensor is made such that a determination result of reaching the position sensor is obtained when the detection signal of the position sensor maintains the ON level for a specified time or more. At this time, the above-mentioned specified time can be adjusted. This adjustment can be performed by the control command Cd from an external device via the I / F unit 71. In this example, the above-mentioned specified time is set, for example, between 1.0 ms and 2.0 ms. Desirably, the specified time is approximately 1.2 ms. If the above-mentioned specified time is too short, an erroneous determination may be made that the position sensor has been reached even though it has not actually reached the position sensor due to noise. Conversely, if the specified time is too long, a determination omission of reaching the position sensor may occur. Therefore, by appropriately setting the above-mentioned specified time, the accuracy of the determination of reaching the position sensor can be improved.
[0316] [6.3 Control Data Creation Method as an Embodiment] With reference to FIGS. 29 to 33, an example of control data to be created to realize the movable body component control as an embodiment and a method for creating the control data will be described.
[0317] FIG. 29 is an explanatory diagram of various control data used to realize the movable body component control as an embodiment. As shown in the figure, as various control data used to realize the movable body component control as an embodiment, there are three types of data: the component sub-scenario data D1, the classification operation management data D2, and the control command management data D3.
[0318] The developer creates these accessory sub-scenario data D1, classification operation management data D2, and control command management data D3 using the computer device 100. As the computer device 100, for example, a computer device capable of software processing such as a personal computer, a tablet terminal, a smartphone, etc. is used.
[0319] The developer stores the created accessory sub-scenario data D1, classification operation management data D2, and control command management data D3 in the ROM 41b on the effect control board 41. The CPU 41a of the effect control board 41 controls the motor drive control unit 51 described above based on the accessory sub-scenario data D1, classification operation management data D2, and control command management data D3 stored in the ROM 41b in this way, thereby realizing the operation of the movable accessory 50 along the effect scenario.
[0320] FIG. 30 is an explanatory diagram of an example of the data structure of the accessory sub-scenario data D1. In the effect using the movable accessory 50, usually, as the operation patterns of the movable accessory 50, a plurality of types of operation patterns to be expressed are defined. For example, corresponding to cases where the operation patterns to be expressed at the time of jackpot notification, the operation patterns to be expressed at the time of probability variation notification, when a specific operation is detected, etc., and when it is desired to express the operation of the movable accessory 50 with different operation patterns for each scene during the game, a plurality of types of operation patterns of the movable accessory 50 are defined in advance. The accessory sub-scenario data D1 is data that manages the operation of the movable accessory 50 in units of such operation patterns. Note that the unit of the operation pattern can be arbitrarily determined, and in the present embodiment, at least one operation pattern may include one or more of the operation parts described later.
[0321] Also, regarding the effect using the movable accessory 50, there may be an effect of driving a plurality of movable accessories 50 simultaneously. In such a case, regarding the operation pattern, it is also possible to define the operations of those plurality of movable accessories 50 as one operation pattern collectively.
[0322] In the figure, only the management data for some of the operation patterns among the scenario sub-data D1 for the props stored in the ROM 41b are extracted and shown. Specifically, only the data for the three operation patterns of "B0_Merge", "B02_Gimmick", and "B03_When using △○×□ chance item" are shown.
[0323] In the scenario sub-data D1 for the props, for the management data for each operation pattern, the identification information of the "classified operation" is stored for each "classified operation" included in the operation pattern. For example, the operation pattern of "B0_Merge" is defined to include four "classified operations" of "Excitation ON", "B01_No1", "B01_No1_wait", and "B01_No2". As shown in the figure, the management data for "B0_Merge" stores "Excitation ON", "B01_No1", "B01_No1_wait", and "B01_No2" as the identification information for these classified operations. Also, the operation pattern of "B02_Gimmick" is defined to include four "classified operations" of "Excitation ON", "B02_No1", "B02_No1_wait", and "B02_No2~3", and the management data for "B02_Gimmick" stores "Excitation ON", "B02_No1", "B02_No1_wait", and "B02_No2~3" as the identification information for these classified operations.
[0324] Also, for the management data for each operation pattern, the information of the "operation type" is associated with each classified operation. This operation type information describes the operation type to be executed by the CPU 41a. As shown in the figure, when "operation type = operation call" is described, the CPU 41a calls the data of the corresponding classified operation from the classified operation management data D2 based on the identification information of the classified operation associated with the operation type information.
[0325] Figure 31 is an explanatory diagram of an example of the data structure of the classified operation management data D2. The classification operation management data D2 is data that manages, for each classification operation, the information used to realize that classification operation. In the figure, among all the classification operations, only the management data for the three classification operations of "B01_No1", "B01_No1_wait", and "B01_No2" illustrated in FIG. 30 are extracted and shown.
[0326] In the classification operation management data D2, for the management data of each classification operation, information on the "operation type" included in that classification operation is stored. Any of the information of "drive control unit operation", "waiting for the end of the drive control unit operation", or "standby" can be stored in this operation type. The drive control unit operation means the operation of the motor drive control unit 51, specifically, the operation of the motor drive control unit 51 that issues and executes the aforementioned control commands Cd (RFL command, RFH command, RMV command, RMG command, RDP command, RUR command, RDR command, start command, etc.). The waiting for the end of the drive control unit operation means waiting for the end of the operation executed by the motor drive control unit 51 in response to such a control command Cd.
[0327] And in the management data for each classification operation, information on "steps" is associated with each piece of information on the operation type. Here, the unit of the value described in "steps" is the time for one timer interrupt (1 ms in this example). Also, for the operation type of "drive control unit operation" among the information on the operation type, information on the "part name" is associated.
[0328] In the illustrated example, in the management data of "B01_No1", the first row is set as the row with the operation type = drive control unit operation, and the second and third rows are set as the rows with the operation type = waiting for the end of the drive control unit operation. For the first row with the operation type = drive control unit operation, "1" is described as the information of "step", and the name information of "[C44_201_XY_TAMA_B01]{ball}TY106_pre-change △○×□ ball gimmick notice_combined No1_forward XY axis data" is described as the part name. Also, for the second and third rows with the operation type = waiting for the end of the drive control unit operation, "1000" is described as the information of "step".
[0329] Also, since the management data of "B01_No1_wait" is a standby operation, it only has a row with the operation type = standby. As shown in the figure, "2500" is described as the value of "step".
[0330] In the management data of "B01_No2", the first row is set as the row with the operation type = drive control unit operation, and the second and third rows are set as the rows with the operation type = waiting for the end of the drive control unit operation. For the first row with the operation type = drive control unit operation, "1" is described as the information of "step", and the name information of "[C44_201_XY_TAMA_B01]{ball}TY106_pre-change △○×□ ball gimmick notice_combined No2_backward XY axis data to sensor" is described as the part name. Also, for the second and third rows with the operation type = waiting for the end of the drive control unit operation, "1000" is described as the information of "step".
[0331] Here, in the management data of "B01_No1" and "B01_No2", the reason why two rows are provided for waiting for the end of the drive control unit operation is that the operation pattern of "B0_combined" including the classified operations of these "B01_No1" and "B01_No2" is defined as an operation pattern realized by the operations of the two movable body devices 50 of the X-axis and the Y-axis. In this case, since the operation of the movable member 50 is controlled by transmitting control commands Cd corresponding to the X-axis circuit and the Y-axis circuit in the motor drive control unit 51, two lines are provided to wait for the end of the drive control unit operation so that the drive end timings of the component motors of the X-axis circuit and the Y-axis circuit can be monitored individually, and the operation waiting time (value of "step") for each axis can be determined.
[0332] In the management data for each classification operation, for the rows where the operation type = drive control unit operation, the CPU 41a reads out the source code associated with the name information from the control command management data D3 based on the name information described in "Part Name", and performs a process of transmitting the corresponding control command Cd to the motor drive control unit 51 according to the source code. When name information corresponding to the motor control operations of multiple axes is described as "Part Name" as in the management data of "B01_No1" and "B01_No2" described above, the control command management data D3 describes the source code for transmitting the control commands Cd for each of those axes in association with the name information. By transmitting the corresponding control command Cd to the motor drive control unit 51 according to the source code, the drive control of the defined component motors (i.e., the operation of the movable member 50) is realized for each axis.
[0333] Also, for the rows where the operation type = drive control unit operation end wait, the CPU 41a performs an operation end confirmation process according to the value described in "Step". Specifically, when the control command Cd (including the start command described above) is transmitted according to the information of "Part Name" in the row where the operation type = drive control unit operation, it is determined whether the status of the motor drive control unit 51 has changed to the drive stop status within the time specified by the value of "Step" in the row where the operation type = drive control unit operation end wait. Here, when there are multiple lines with operation type = waiting for the drive control unit operation to end, such as "B01_No1" and "B01_No2", the CPU 41a performs the above confirmation process for each axis based on the "step" values of those lines. Specifically, for each axis, it queries the drive status value SRUN as described above, and determines whether the drive status value SRUN has changed to a value indicating drive stop within the time specified by the "step" value. At this time, it is predefined which line's "step" value to refer to for each axis. For example, among the multiple lines with operation type = waiting for the drive control unit operation to end, it is conceivable to assign the X-axis, Y-axis, Z-axis, and U-axis in order from the line with the youngest line number.
[0334] Here, in this embodiment, as a result of the above confirmation process, if the status of the motor drive control unit 51 does not change to drive stop within the time specified by the "step" value, fail-safe processing is performed, which will be described later in detail.
[0335] Also, for the lines with operation type = standby, the CPU 41a performs a process of waiting for the standby time indicated by the "step" value.
[0336] Note that in the management data for each divided operation shown in the figure, among the information associated with the operation type information, "excitation" and "speed" are information described for the developer's management in this example and are not the information referred to by the CPU 41a in the process of controlling the movable body device 50.
[0337] Here, as can be understood from the above description, the operation of the movable body device 50 can be roughly classified in units of operation patterns, and further, each operation pattern can be divided in units of divided operations. And among the divided operations that make up the operation pattern, there are operations defined as a series of device motor operations (that is, the operations of the movable body device 50) realized by instructing the control command Cd to the motor drive control unit 51, such as "B01_No1" and "B01_No2". In this embodiment, a series of operations of the movable body component 50 that are component operations constituting the operation pattern, such as the component operations of "B01_No1" and "B01_No2", and are realized by instructing the control command Cd to the motor drive control unit 51, shall be referred to as "operation parts". In this case, it can be paraphrased that the information described in the "part name" in the component operation management data D2 is the identification information of the "operation part".
[0338] FIG. 32 is an explanatory diagram of an example of the data structure of the control command management data D3. The control command management data D3 is data that manages the control command Cd to be transmitted to the motor drive control unit 51 for each operation part. In FIG. 32, only the control command management data for some of the defined operation parts is extracted and illustrated. Specifically, the operation part with the part name = "[C44_201_XY_TAMA_B01]{sphere}TY106_pre-variation △○×□ ball gimmick notice_combination No1_forward rotation XY axis data" in "B01_No1", the operation part with the part name = "[C44_201_XY_TAMA_B01]{sphere}TY106_pre-variation △○×□ ball gimmick notice_combination No2_reverse rotation XY axis data to sensor" in "B01_No2", and the operation part with the part name = "[C44_201_X_TAMA_B02]{sphere}TY106_pre-variation △○×□ large ball gimmick notice_No1_forward rotation X axis data" in the component operation "B02_No1" of the operation pattern "B02_large gimmick" are extracted.
[0339] In the control command management data D3, the management data for each operation part describes the information of the "part name" of that operation part. Thereby, the CPU 41a can specify the management data of the corresponding operation part from the control command management data D3 based on the information of the "part name" described in the management data for each component operation shown in FIG. 31.
[0340] In the control command management data D3, in the control command management data for each operation part, source code including a control command Cd for realizing the operation of the movable body accessory 50 as the operation part is described, and the CPU 41a can perform processing according to the source code to transmit a control command Cd for realizing the operation of the movable body accessory 50 as the operation part to the motor drive control unit 51.
[0341] FIG. 33 shows an example of a work screen Gs for defining operation parts. In the present embodiment, the developer defines operation parts using an application program for defining operation parts (hereinafter referred to as "operation part definition application") installed in the computer device 100 shown in FIG. 29. FIG. 33 illustrates a work screen Gs displayed by this operation part definition application.
[0342] On the work screen Gs, it is possible to define the operation for each operation pattern of the movable body accessory 50 using a flowchart-like UI (User Interface) shown on the left side in the figure. There are three types of boxes that can be used in the flowchart: boxes FS1, FS2, and FS3 illustrated in the figure. Box FS1 is a box for determining whether to use a position sensor for the axis to be defined for operation. Also, box FS2 is a box for defining the operation as an operation part. Box FS3 is a box for defining a standby operation such as the aforementioned "B01_No1_wait".
[0343] When box FS2 in the flowchart is selected, the operation of the operation part can be defined in the definition area Ad shown on the right side of the screen. As shown in the figure, the definition area Ad is provided with a target axis selection area Ar1 and a setting input area Ar2. The definition area Ad is provided with operation parts p1, p2, and p3. By these operation parts p1, p2, and p3, the rotation direction of the actuator motor, the above-described operation mode (positioning operation mode / sensor input stop mode), and the acceleration / deceleration control mode (for example, linear acceleration / deceleration control mode / S-curve control mode) can be selectively set. Fig. 33 shows a display example of the definition area Ad when the positioning operation mode is selected as the operation mode by the operation part p2.
[0344] The target axis selection area Ar1 is provided with an operation part for selecting which axis of the X-axis to U-axis is to be defined for the operation. As described above, for the moving parts, the operation of multiple axes can be defined. After selecting one box FS2, by performing the axis selection operation in the target axis selection area Ar1, for each axis, it is possible to perform the operation definition by the input operation to the setting input area Ar2 described below.
[0345] The setting input area Ar2 is provided with an FL speed input box b2, an acceleration period input box b3, an HL speed input box b4, an output pulse number input box b5, and a deceleration period input box b6. The FL speed input box b2 is a box for inputting the above-described FL speed (initial speed, stop speed). The acceleration period input box b3 is a box for inputting the acceleration period, that is, the transition period from the initial speed to the above-described HL speed (operation speed). The HL speed input box b4 is a box for inputting the HL speed. Also, the output pulse number input box b5 is a box for inputting the above-described output pulse number (target movement amount of the movable body actuator 50). The deceleration period input box b6 is a box for inputting the deceleration period, that is, the transition period from the HL speed to the FL speed (stop speed).
[0346] By performing input operations on these FL speed input box b2, acceleration period input box b3, HL speed input box b4, output pulse number input box b5, and deceleration period input box b6 to specify the FL speed, acceleration period, HL speed, output pulse number, and deceleration period, a predetermined actuator motor operation (operation of the movable body actuator 50) in the positioning operation mode can be defined. Although illustration is omitted, when the sensor input stop mode is selected, the setting input area Ar2 may display a UI that enables acceptance of at least the specification of the FL speed, acceleration period, and HL speed.
[0347] Here, a comment input box b7 is provided in the definition area Ad. In this example, it is possible to specify the above-mentioned "part name" by inputting to this comment input box b7. That is, the text information input to this comment input box b7 is associated as the "part name" information for the operation part defined by the input operation to the setting input area Ar2.
[0348] In the definition area Ad, when the execution button Bt connects the computer device 100 and the motor drive control unit 51 (in a state where a motor driver with a connected actuator motor is connected) in the development environment, it is a button for instructing to output the control command Cd corresponding to the defined operation part to the motor drive control unit 51. By providing this execution button Bt, the developer can perform the definition work of the operation part while confirming the actual operation of the movable body actuator 50.
[0349] Also, in the definition area Ad, the label name input box b1 is a box for inputting the label name for the operation pattern in which the flowchart is displayed on the work screen Gs. Also, the message input b8 is a box for inputting a management message left by the developer for the defined operation part when desired.
[0350] The motion part definition application has a function of generating control command management data D3 described in the previous Figure 32 for the motion parts defined through the operation screen Gs as described above. The motion part definition application, based on values such as the FL speed, acceleration period, HL speed, etc. specified by the operation on the above-described definition area Ad, can generate control commands Cd such as RFL commands, RFH commands, RUR commands, etc. necessary to realize the defined motion for each motion part. In the positioning motion mode, an RDP command indicating the slowdown point will be issued. The slowdown point (the remaining number of pulses at which deceleration starts) will be automatically obtained if the number of output pulses (b5) and the deceleration period (b6) are specified (because during deceleration, it is defined to drop from the HL speed to the FL speed).
[0351] After the motion part definition application generates the necessary control commands Cd for each motion part as described above, it generates source code for causing the CPU 41a to execute the transmission process of the control commands Cd for each motion part. Then, by associating the information on the part names input to the above-described comment input box b7 with the generated source code for each motion part, the control command management data D3 is generated. The developer stores the control command management data D3 generated by the function of such a motion part definition application in the ROM 41b of the production control board 41.
[0352] The function of the motion part definition application as described above can greatly reduce the work burden of the developer required to realize the movable object prop control as an embodiment.
[0353] [6.4 Movable Object Prop Control Processing as an Embodiment] (6.4.1 Processing Flow) Subsequently, the processing related to the movable object prop control as an embodiment executed by the CPU 41a will be described. The control of the movable object device 50 is mainly realized by the movable object device operation update process in step S603 and the SOL·MOT output process in step S604 in the effect control side timer interrupt process shown in FIG. 24.
[0354] In the movable object device operation update process of step S603 in FIG. 24, the CPU 41a selects one operation pattern from the device sub-scenario data D1 shown in FIG. 30 as the production scenario progresses. The selection of one operation pattern from the device sub-scenario data D1 is based on the production scenario data (main scenario data), the illustration of which is omitted, and the above-described production scenario timer.
[0355] In step S603, when one operation pattern is selected from the device sub-scenario data D1, the CPU 41a, based on the identification information (such as "excitation ON", "B01_No1", etc.) of the first section operation (that is, the first section operation) in the management data of the selected operation pattern, specifies the management data of the section operation indicated by the identification information from among the management data for each section operation in the section operation management data D2 (see FIG. 31). Then, the process according to the description in the first row of the specified section operation management data is performed. For example, if the first row is a row where "operation type" = "drive control unit operation", the name information (such as "[C44_201_XY_TAMA_B01]{sphere}TY106_pre-change △○×□ ball gimmick notice_combination No1_forward rotation XY axis data", etc.) described in "part name" in that row is acquired. In step S603, at the next timer interrupt timing after the timer interrupt timing when an operation pattern is selected from the device sub-scenario data D1, the CPU 41a performs a process according to the information of "operation type" in the target row in the section operation management data D2. If it is a row where "operation type" = "drive control unit operation", the process of acquiring the name information described in "part name" in that row is performed. Also, if it is the line where "Operation Type" = "Waiting for Drive Control Unit Operation to End", the value described in the "Step" of this line is set to the "Estimated Stop Time Timer". This Estimated Stop Time Timer is a timer that is decremented every timer interrupt, and "0" indicates the arrival of the estimated stop time. In step S706 of FIG. 34 described later, by determining whether this Estimated Stop Time Timer is less than 0, it is determined whether the estimated stop time has elapsed (that is, the operation end confirmation process described above) is performed. Here, as described above, for the operation parts, the operation of multiple axes may be defined. In that case, in the divided operation management data D2, lines where "Operation Type" = "Waiting for Drive Control Unit Operation to End" are continuously provided. When the lines where "Operation Type" = "Waiting for Drive Control Unit Operation to End" are continuously provided in this way, as the process of step S603, the CPU 41a sets the value of the Estimated Stop Time Timer for the corresponding axis based on the values of "Step" in each of those consecutive lines.
[0356] Also, when the process for the first divided operation in the selected one operation pattern is completed and the process for the second and subsequent divided operations is started, the CPU 41a performs the following process as the process of step S603. That is, when the identified divided operation is a divided operation as a waiting operation such as "B01_No1_wait" and the management data of the divided operation has only the line where "Operation Type" = "Waiting", the CPU 41a, as the process of step S603, determines whether the waiting time indicated by the value of "Step" in this line has elapsed at each interrupt timing. Then, at the step S603 of the interrupt timing when it is determined that the waiting time has elapsed, the CPU 41a starts the process using the divided operation management data D2 for the next divided operation in the selected one operation pattern. That is, the process for the second and subsequent divided operations described here is started.
[0357] Also, when the specified segmented operation is a segmented operation as an operation part such as "B01_No2", the CPU 41a performs the same processing as the processing for the first segmented operation described above. That is, it performs the processing of acquiring the name information described in "part name", and the processing of setting the value of "step" in the row where "operation type" = "waiting for drive control unit operation end" to the stop scheduled time timer.
[0358] When the CPU 41a has completed the processing based on the segmented operation management data D2 as described above for all the segmented operations included in one operation pattern selected from the accessory sub-scenario data D1, as the processing of step S603, it performs the processing of determining whether a new operation pattern has been selected based on the production scenario data and the production scenario timer at each interrupt timing. As a result of performing such determination at each interrupt timing, if it is determined that a new operation pattern has been selected, the CPU 41a, as the processing of step S603 at the subsequent timer interrupt timing, performs the same processing as the processing described above based on the segmented operation management data D2 for the newly selected operation pattern.
[0359] FIG. 34 is a flowchart showing the SOL·MOT output processing of step S604 in the production control side timer interrupt processing. The processing shown in this FIG. 34 is not executed when the selected segmented operation is a standby operation such as "B01_No1_wait", and is executed corresponding to the case where the selected segmented operation is an operation as an operation part such as "B01_No1" or "B01_No2". Also, when the operation part defines the operations of a plurality of axes, the processing shown in FIG. 34 is executed for each axis.
[0360] In the SOL·MOT output processing of step S604, the CPU 41a first performs the processing of acquiring the value of the drive state register in step S701. That is, it makes an inquiry about the drive status value SRUN for the target axis to the motor drive control unit 51 and acquires the drive status value SRUN.
[0361] In step S702 following step S701, the CPU 41a determines whether it is in a drive stop state. That is, in this example, it determines whether the acquired drive status value SRUN is "0".
[0362] In step S702, if it is determined that it is in a drive stop state, the CPU 41a proceeds to step S703 and gives an instruction to the motor drive control unit 51 to perform register initialization processing, that is, to initialize the registers of the target axis in the motor drive control unit 51, and performs reception / transmission permission processing in the subsequent step S704. That is, it performs processing to permit data reception from the motor drive control unit 51 and data transmission to the motor drive control unit 51.
[0363] Then, in step S705 following step S704, the CPU 41a performs control command transmission processing. As understood from the previous description, the selected segment operation is an operation as an operation part, and the motor drive control unit 51 is in a drive stop state (step S702: Yes), that is, in the state immediately before the start of the operation as the operation part, in the movable body fixture operation update processing of step S603, name information corresponding to the operation part is specified from the segment operation management data D2. In the control command transmission processing of step S705, based on the name information specified in this way, the corresponding source code is specified from the control command management data D3, and a control command Cd for realizing the operation as the operation part is transmitted to the motor drive control unit 51 according to the specified source code.
[0364] In response to executing the control command transmission processing of step S705, the CPU 41a proceeds to step S708 and performs reception / transmission prohibition processing, that is, processing to prohibit data reception from the motor drive control unit 51 and data transmission to the motor drive control unit 51, and ends the SOL·MOT output processing of step S604.
[0365] Also, if the CPU 41a determines in the previous step S702 that it is not in the drive stop state, it proceeds to step S706 to determine whether the scheduled stop time has elapsed. Specifically, it determines whether the value of the aforementioned scheduled stop time timer is less than "0".
[0366] In step S706, if it is determined that the scheduled stop time has not elapsed, the CPU 41a ends the SOL·MOT output process in step S604.
[0367] On the other hand, in step S706, if it is determined that the scheduled stop time has elapsed, the CPU 41a proceeds to step S707 and executes the scenario end process. That is, it performs a process of forcibly stopping the operation of the movable body device 50 defined in the currently executing sub-scenario (operation pattern). Thereby, in the event that some abnormality occurs in the motor drive control unit 51 and the operation in progress does not end within the scheduled time, as a fail-safe process, it is possible to realize the forced stop of the operation. Since the motor drive control unit 51 used in this embodiment does not have a fail-safe function, it is to realize fail-safe by performing timeout monitoring through the processing of the CPU 41a.
[0368] When the CPU 41a performs the scenario end process in step S707, it performs the reception·transmission prohibition process in step S708 described above and ends the SOL·MOT output process in step S604.
[0369] Note that for the operation parts for which the operation in the sensor input stop mode is defined, it is also conceivable not to provide the row of operation type = waiting for the end of the drive control unit operation as exemplified in FIG. 31 and not to perform the determination process in step S706.
[0370] Here, as described above, in the present embodiment, when the selected section operation is an operation as an operation part, by the processes of steps S701 and S702, every timer interrupt, an inquiry process of the drive control status is performed on the motor drive control unit 51 to determine whether or not the operation of the device as the operation part has been completed. Then, by the process of step S705, after it is determined that the operation of the device as the operation part has been completed, the control command output process for the next device operation is performed.
[0371] Thereby, it is possible to prevent the next control command Cd from being erroneously output before the operation as the operation part is completed, and appropriate device operation control can be realized.
[0372] (6.4.2 Regarding Microstep Drive) As described above, in the conventional device motor control, since the CPU 41a outputs control data to the motor driver at a cycle of 1 ms, it was substantially impossible to realize microstep drive in terms of operation speed. In the present embodiment, the configuration in which the CPU 41a directly outputs control data to the motor driver as in the prior art is not adopted. Further, as the motor drive control unit 51 and the motor driver group 52, those corresponding to microstep drive are used, so that the device motor can be driven in the microstep drive mode (that is, the movable body device 50 can be moved more smoothly).
[0373] However, when the device motor is driven in microstep, it becomes indefinite at which excitation phase state (electrical angle) the motor operation (rotation) ends, and the motor operation may end in an intermediate excitation phase state between the reference excitation phases (reference step positions). If de-excitation is applied in that state, there is a risk that the motor cannot be properly stopped and held. Specifically, the stop excitation is performed by switching the drive mode to the two-phase excitation drive mode. However, the electrical angle at the end of the microstep drive does not necessarily coincide with any of the electrical angles in the two-phase excitation drive mode. If the stop excitation is performed in a state where the electrical angle at the end of the microstep drive does not coincide with the electrical angle in the two-phase excitation drive mode, the actuator motor will rotate significantly idly during the stop, and as a result, there is a risk that a large slip will occur in the movable body actuator 50 as well.
[0374] Therefore, in the present embodiment, when switching the drive mode from the microstep drive mode to the two-phase excitation drive mode, such as when stopping the actuator motor 53 after driving it in the microstep drive mode, a method is adopted in which the electrical angle is controlled so that the amount of idling of the actuator motor is suppressed.
[0375] Hereinafter, specific examples will be described. FIGS. 35 and 36 are explanatory diagrams of the electrical angle control when switching from the microstep drive mode to the two-phase excitation drive mode. In FIGS. 35A and 36A, the electrical angles in the microstep drive mode are shown on a graph with the horizontal axis = A-phase current (%), and the vertical axis = B-phase current (%). In FIGS. 35B and 36B, the electrical angles in the two-phase excitation drive mode are shown on a graph with the horizontal axis = A-phase current (%), and the vertical axis = B-phase current (%).
[0376] For confirmation, it should be noted that in this example, the microstep drive mode is the 2W1-two-phase excitation drive mode, and as shown in each A figure, the electrical angles used are determined every 22.5 (360÷16) degrees. Hereinafter, the 16 electrical angles used in the microstep drive mode will be denoted as a to p respectively on the increasing side of the electrical angle with the electrical angle = 45 degrees as the reference. On the other hand, in the two-phase excitation drive mode shown in each B figure, the electrical angles used are 45 degrees, 135 degrees, 225 degrees, and 315 degrees, a total of 4. Hereinafter, the 4 electrical angles used in the two-phase excitation drive mode will be denoted as A to D respectively on the increasing side of the electrical angle with the electrical angle = 45 degrees as the reference.
[0377] In the microstep drive mode, since the electrical angle used is larger than that in the two-phase excitation drive mode, smooth driving of the actuator motor is enabled.
[0378] Here, FIG. 35 shows the control of the electrical angle when the rotation direction = CW. In the figure, the black thick arrow indicates the change direction of the electrical angle when the rotation direction = CW. As shown by the arrow, when the rotation direction = CW, the electrical angle changes in the increasing direction.
[0379] In this embodiment, when switching from the microstep drive mode to the two-phase excitation drive mode when the rotation direction of the actuator motor is CW, the electrical angle is controlled as follows. That is, when the electrical angle immediately before switching from the microstep drive mode to the two-phase excitation drive mode is within the range of electrical angles a to d (range of 45 degrees to 112.5 degrees = hereinafter referred to as "first range Rg1"), the electrical angle is changed to B (135 degrees: hereinafter referred to as "first electrical angle Ag1"). Also, when the electrical angle immediately before the switching is within the range of electrical angles e to h (range of 135 degrees to 202.5 degrees = hereinafter referred to as "second range Rg2"), the electrical angle is changed to C (225 degrees: hereinafter referred to as "second electrical angle Ag2"). Further, when the electrical angle immediately before the switching is within the range of electrical angles i to l (range of 225 degrees to 292.5 degrees = hereinafter referred to as "third range Rg3"), the electrical angle is changed to D (315 degrees: hereinafter referred to as "third electrical angle Ag3"). Furthermore, when the electrical angle immediately before the switching is within the range of electrical angles m to p (range of 315 degrees to 22.5 degrees = hereinafter referred to as "fourth range Rg4"), the electrical angle is changed to C (45 degrees: hereinafter referred to as "fourth electrical angle Ag4").
[0380] Here, changing the electrical angle to a specific electrical angle when switching from the microstep drive mode to the two-phase excitation mode means starting the drive in the two-phase excitation drive mode from the specific electrical angle. In other words, it starts the drive in the two-phase excitation drive mode with a combination of the value of the phase A current and the value of the phase B current corresponding to the specific electrical angle. For example, changing the electrical angle to electrical angle B when switching to the two-phase excitation mode means starting the drive in the two-phase excitation drive mode by outputting a drive current with a combination of the values of "phase A current = -100%, phase B current = 100%", and changing the electrical angle to electrical angle C when switching to the two-phase excitation mode means starting the drive in the two-phase excitation drive mode by outputting a drive current with a combination of the values of "phase A current = -100%, phase B current = -100%".
[0381] By performing electrical angle control as described with reference to FIG. 35, the amount of change in the electrical angle can be suppressed within 90 degrees regardless of the electrical angle immediately before switching to the two-phase excitation drive mode. Therefore, it is possible to suppress the amount of idling of the actuator motor when switching from the microstep drive mode to the two-phase excitation drive mode, and it is possible to improve the position control accuracy of the movable body actuator 50.
[0382] Here, in this example, the electrical angle control when switching from the microstep drive mode to the two-phase excitation mode as described above is performed independently by the motor driver in the motor driver group 52 in response to the drive mode switching instruction from the motor drive control unit 51 described above (that is, it is performed without relying on a specific electrical angle instruction from the motor drive control unit 51). Specifically, in this example, when an instruction to switch the driving mode from the microstep driving mode to the two-phase excitation driving mode is given from the motor drive control unit 51, the motor driver controls the electrical angle based on the rotation direction (CW / CCW) of the accessory motor and the electrical angle immediately before the switching. That is, as described above, when the rotation direction is CW, if the electrical angle immediately before the switching is within the first range Rg1, the electrical angle is controlled to the first electrical angle Ag1 (B), and if the electrical angle immediately before the switching is within the second range Rg2, the electrical angle is controlled to the second electrical angle Ag2 (C). If the electrical angle immediately before the switching is within the first range Rg3, the electrical angle is controlled to the third electrical angle Ag3 (D), and if the electrical angle immediately before the switching is within the first range Rg4, the electrical angle is controlled to the fourth electrical angle Ag4 (A). Note that the rotation direction (CW / CCW) can be identified by the DIR signal (rotation direction instruction signal) output from the rotation direction output terminal DIR (see FIG. 27) of the motor drive control unit 51 as described above.
[0383] Also, when the rotation direction is CCW, the motor driver changes the electrical angle as shown in FIG. 36 when switching from the microstep driving mode to the two-phase excitation mode. That is, when the rotation direction is CCW, if the electrical angle immediately before the switching is within the first range Rg1, the electrical angle is controlled to the third electrical angle Ag3 (D), and if the electrical angle immediately before the switching is within the fourth range Rg4, the electrical angle is controlled to the second electrical angle Ag2 (C). If the electrical angle immediately before the switching is within the third range Rg3, the electrical angle is controlled to the first electrical angle Ag1 (B), and if the electrical angle immediately before the switching is within the second range Rg2, the electrical angle is controlled to the fourth electrical angle Ag4 (A).
[0384] By controlling the electrical angle as described above, when the rotation direction = CCW, the electrical angle changes by a minimum of 90 degrees and a maximum of 157.5 degrees when switching to the two-phase excitation driving mode.
[0385] As understood from the above description, in the present embodiment, when the rotation direction of the accessory motor is forward and when it is reverse, the amount of change in the electrical angle when switching from the first excitation mode (microstep drive mode) to the second excitation mode (two-phase excitation drive mode) is different. At this time, the amount of change in the electrical angle is smaller in the forward direction < reverse direction. Also, in the present embodiment, the amount of change in the electrical angle per step in the control of the motor driver is smaller in the first excitation mode < second excitation mode.
[0386] Here, in the gaming machine 1 of this example, regarding the drive of the movable accessory 50y that is moved to the effect position by driving downward, the rotation direction = CW is assigned to the return side to the origin position (that is, the drive upward). If the rotation direction = CCW is assigned to the return side to the origin position, when the movable accessory 50y stops at the origin position, the amount of change in the electrical angle becomes large (a change of up to 157.5 degrees), and there is a risk that the movable accessory 50y will shift and fall. On the other hand, if the rotation direction = CW is assigned to the drive of the movable accessory 50y upward, the amount of change in the electrical angle when the movable accessory 50y stops at the origin position can be suppressed within 90 degrees, so that the suppression of shifting and falling can be achieved, which is preferable.
[0387] Note that not only the own weight of the movable accessory 50 but also some external force (for example, human power, biasing force of a spring, etc.) may be applied to the movable accessory 50. Therefore, there is a margin of movement with respect to the movable direction of the movable accessory 50. When it is desired to execute the stop operation in the two-phase excitation drive mode in such a situation, regarding the drive of the movable accessory 50 that can move in a direction other than the vertical direction, it is also conceivable to assign the rotation direction = CW in the same manner.
[0388] Here, regarding the electrical angle control at the time of switching to the two-phase excitation drive mode, for example, regardless of the electrical angle immediately before the drive mode switching, it is also conceivable to control to any one of the first electrical angle Ag1 to the fourth electrical angle Ag4 in the two-phase excitation drive mode. However, in that case, the amount of change in the electrical angle at the time of drive mode switching becomes up to 360 degrees. Compared with such a case, even with the electrical angle control in the CCW direction as shown in FIG. 36, the amount of motor free rotation during the switching to the two-phase excitation drive mode can be suppressed, and the position control accuracy of the servomotor 53 can be improved.
[0389] FIG. 37 shows a schematic configuration example of the motor driver 52y. Note that the configuration shown in FIG. 37 is also applicable to other motor drivers in the motor driver group 52. The motor driver 52y is provided with a total of three terminals, namely, DMODE0 terminal, DMODE1 terminal, and DMODE2 terminal, for receiving the designation of the drive mode from the motor drive control unit 51. The switching instruction of the drive mode is performed by the combination of the three values of DMODE0, DMODE1, and DMODE2, and the details will be described later again.
[0390] In addition, the motor driver 52y is provided with a CW / CCW terminal for receiving the rotation direction instruction by the above-described DIR signal from the motor drive control unit 51, a CLK terminal for receiving an OUT signal (a pulse signal indicating the period of the drive pulse of the servomotor 53), and an ENABLE terminal which is an input terminal of an ENABLE signal. Note that the ENABLE signal will be described later.
[0391] Furthermore, the motor driver 52y is provided with four terminals, namely, MOTyA+ terminal, MOTyA- terminal, MOTyB+ terminal, and MOTyB- terminal, as terminals for outputting the drive current to the servomotor. The MOTyA+ terminal and the MOTyA- terminal are terminals for outputting the above-described A-phase current, and the MOTyB+ terminal and the MOTyB- terminal are terminals for outputting the above-described B-phase current.
[0392] As shown in the figure, the motor driver 52y includes a decode unit 521, a motor control circuit 522, an A-phase current output circuit 523A, and a B-phase current output circuit 523B. The decoding unit 521 decodes the input signals from the above-described DMODE0 terminal to DMODE2 terminal, CW / CCW terminal, CLK terminal, and ENABLE terminal, and outputs them to the motor control circuit 522.
[0393] Based on the control of the motor control circuit 522, the A-phase current output circuit 523A and the B-phase current output circuit 523B generate an A-phase current and a B-phase current, and output them to the corresponding servomotor via the MOTyA+ terminal and MOTyA- terminal, and the MOTyB+ terminal and MOTyB- terminal, respectively.
[0394] Based on each signal decoded by the decoding unit 521, the motor control circuit 522 controls the generation operation of the A-phase current by the A-phase current output circuit 523A and the generation operation of the B-phase current by the B-phase current output circuit 523B, thereby generating an A-phase current and a B-phase current for realizing the operation of the servomotor according to the input signals from each input terminal such as the CW / CCW terminal and the CLK terminal described above.
[0395] The motor control circuit 522 has an electrical angle detection unit 522a. The electrical angle detection unit 522a detects the electrical angle during control. In both the microstep drive mode and the two-phase excitation drive mode, the electrical angle detection unit 522a controls the electrical angle for rotating the servomotor. The electrical angle detection unit 522a shows the function of detecting the electrical angle controlled by the motor control circuit 522 itself in a blocked manner.
[0396] In this example, the electrical angle control during drive mode switching described in the previous FIGS. 35 and 36 is executed by the motor control circuit 522 in the motor driver 52y.
[0397] FIG. 38 is a flowchart showing an example of the processing procedure executed by the motor control circuit 522 to realize the electrical angle control as an embodiment. In FIG. 38, the motor control circuit 522 first determines in step S1001 whether there is an instruction to switch from the first excitation mode to the second excitation mode. Specifically, in this example, it determines whether there is an instruction to switch from the microstep drive mode to the two-phase excitation drive mode. Note that in this example, the identification of the drive mode can be achieved by the combination of H / L of the input signals from the DMODE0 terminal to the DMODE2 terminal, as will be described later.
[0398] If it is determined in step S1001 that there is no instruction to switch from the first excitation mode to the second excitation mode, the motor control circuit 522 ends the series of processes shown in FIG. 38.
[0399] On the other hand, if it is determined in step S1001 that there is an instruction to switch from the first excitation mode to the second excitation mode, the motor control circuit 522 proceeds to step S1002 and determines whether the rotation direction is CW or CCW.
[0400] If the rotation direction is CW, the motor control circuit 522 proceeds to step S1003 and branches the process according to which of the first range Rg1 to the fourth range Rg4 the electrical angle immediately before the switch belongs to.
[0401] That is, if the electrical angle immediately before the switch is within the first range Rg1, the motor control circuit 522 controls the electrical angle to the first electrical angle Ag1(B) in step S1004 and ends the series of processes shown in FIG. 38. Also, if the electrical angle immediately before the switch is within the second range Rg2, the motor control circuit 522 controls the electrical angle to the second electrical angle Ag2(C) in step S1005 and ends the series of processes shown in FIG. 38. If the electrical angle immediately before the switch is within the third range Rg3, it controls the electrical angle to the third electrical angle Ag3(D) and ends the series of processes shown in FIG. 38. Further, if the electrical angle immediately before the switch is within the fourth range Rg4, it controls the electrical angle to the fourth electrical angle Ag4(A) and ends the series of processes shown in FIG. 38.
[0402] Further, when it is determined in the previous step S1002 that the rotation direction is CCW, the motor control circuit 522 proceeds to step S1008 and branches the processing according to which of the first range Rg1 to the fourth range Rg4 the electrical angle immediately before the switching belongs to.
[0403] That is, when the motor control circuit 522 determines in step S1008 that the electrical angle immediately before the switching is within the first range Rg1, it controls the electrical angle to the third electrical angle Ag3(D) in step S1009 and ends the series of processes shown in FIG. 38. Also, when the motor control circuit 522 determines in step S1008 that the electrical angle immediately before the switching is within the fourth range Rg4, it controls the electrical angle to the second electrical angle Ag2(C) in step S1010 and ends the series of processes shown in FIG. 38. When it is determined in step S1008 that the electrical angle immediately before the switching is within the third range Rg3, it controls the electrical angle to the first electrical angle Ag1(B) in step S1011 and ends the series of processes shown in FIG. 38. Further, when it is determined in step S1008 that the electrical angle immediately before the switching is within the second range Rg2, it controls the electrical angle to the fourth electrical angle Ag4(A) in step S1012 and ends the series of processes shown in FIG. 38.
[0404] (6.4.3 Regarding the use of the pre-register) As shown in the previous FIG. 27, the motor drive control unit 51 in the present embodiment has a pre-register unit 74. The pre-register in the pre-register unit 74 is a register provided to enable the control command Cd for realizing the subsequent operation to be set in advance when it is desired to execute the subsequent operation after the operation according to the control command Cd set in the register in the register unit 73 is executed. If the control command Cd is preset in the pre-register, after the operation according to the control command Cd set in the register unit 73 is completed, the control command Cd set in the pre-register is slid to the register in the register unit 73, and the next operation is started.
[0405] By using such a pre-register, it is possible to start controlling the operation of the next accessory motor in the motor drive control unit 51 without depending on the timer interrupt cycle of the CPU 41a (1 ms cycle in this example), that is, without causing a 1 ms blank period.
[0406] However, since the motor drive control unit 51 used in this embodiment does not have a fail-safe function, when using a pre-register, there is a disadvantage that even if the immediately preceding operation set in the register unit 73 is in error, the control of the next accessory motor operation will be executed.
[0407] Therefore, in this embodiment, basically, the operation control of the accessory motor without using a pre-register (that is, using only the register unit 73) is adopted, and for only some series of operations, the operation control of the accessory motor using a pre-register is adopted.
[0408] Specifically, for example, for a series of operations that change the rotational speed of the accessory motor during operation, such as a series of operations of decelerating when reaching the position sensor, the operation control of the accessory motor using a pre-register is adopted. If the method of setting the control command Cd corresponding to the operation before the speed change and the control command Cd corresponding to the operation after the speed change in the register unit 73 in a time-division manner is adopted, a 1 ms blank period will occur during the speed change, and there is a risk that the accessory motor will go out of synchronization. For this reason, the "operation until reaching the sensor" and the "deceleration operation after reaching the sensor" are set in the register unit 73 and the pre-register unit 74, respectively. In this case, for the stop scheduled time timer described above, a value corresponding to the total time of these "operation until reaching the sensor" and "deceleration operation after reaching the sensor" is set, and the scheduled end timing of the latter operation is confirmed by the timer interrupt process (step S702).
[0409] Here, when using a pre-register, in the divided operation management data D2 shown in FIG. 31, rows of operation type = drive control unit operations are continuously provided, and information on the part name defining the operations corresponding to those rows is described. When the operation type = the operation of the drive control unit is continuous in this way, the CPU 41a gives an instruction to the motor drive control unit 51 to set the control command Cd specified from the part name of one line (for example, the preceding line) to the register unit 73, and gives an instruction to the motor drive control unit 51 to set the control command Cd specified from the part name of the other line (for example, the following line) to the pre-register unit 74.
[0410] Also, as an example of how to use the pre-register, the following example can be considered. Here, as a series of operations of the movable body device 50, it is assumed that 1) moving to the origin (moving to the position sensor), 2) pushing into the origin (positioning operation), and 3) de-energizing and stopping (for a predetermined time such as 100 ms). In this case, at the start of the operation of 1), the control command Cd for the operation of 1) is written to the register, and the control command Cd for the operation of 2) is written to the pre-register unit 47. As a result, after the operation of 1) ends, the data in the pre-register is automatically written to the register, and the continuous operations of 1) and 2) are realized. At this time, since the operation of 3) cannot be registered at the initial stage, it is possible to perform corresponding control such as monitoring that the data in the pre-register is written to the register unit 73, and writing the control command Cd for the operation of 3) to the pre-register unit 74 after a free space occurs in the pre-register unit 74.
[0411] [6.5 Current value switching as an embodiment and countermeasures against motor malfunction at startup] FIG. 39 is a circuit block diagram showing a configuration example of the peripheral circuit of the motor drive control unit 51. Here, together with an example of the peripheral circuit configuration of the motor drive control unit 51, the effect control board 41 is also shown. Also, in FIG. 39, regarding the peripheral circuit configuration of the motor drive control unit 51, only the circuit configuration of the X-axis is extracted and shown.
[0412] Here, among the terminals of the motor drive control unit 51, the pulse signal output terminal OUTx which is the output terminal of the OUT signal (OUTx signal) of the X-axis, the rotation direction output terminal DIRx which is the output terminal of the DIR signal (DIRx signal) of the X-axis, and the general-purpose input / output terminals P0x, P1x, P2x, P3x which are the general-purpose input / output terminals P0, P1, P2, P3 of the X-axis are shown.
[0413] Also, in the figure, the motor driver 52x and the actuator motor 53x respectively represent the X-axis motor driver in the motor driver group 52 and the X-axis actuator motor in the actuator motor group 53, and the position sensor 55x represents the position sensor provided for the movable body actuator 50x in the position sensor group 55.
[0414] In the motor drive control unit 51 of this example, the general-purpose input / output terminal P0 is selected as the input terminal for the positioning sensor signal, and as shown in the figure, the detection signal from the position sensor 55x is input to the general-purpose input / output terminal P0x via the buffer 91x.
[0415] The motor driver 52x has a clock (CLK) terminal to which the OUTx signal from the motor drive control unit 51 is input and a rotation direction (CW / CCW) input terminal to which the DIRx signal is input. Also, the motor driver 52x has a total of four output terminals, two for each of the positive and negative polarities of the A phase and the B phase, as the output terminals for the drive current (motor drive current) for the actuator motor 53x. Also, the motor driver 52x has an ENABLE terminal to which the ENABLE signal is input and a Vref terminal which is the input terminal for the reference voltage Vref.
[0416] When the ENABLE signal is ON, the motor driver 52x is configured to output a motor drive current with a current value corresponding to the reference voltage Vref input to the Vref terminal to the utility motor 53x. At this time, as the motor drive current, a current with a polarity corresponding to the DIRx signal input to the rotation direction input terminal is output. Also, when the OUTx signal is input to the clock terminal, the motor driver 52x outputs a motor drive current having a pulse waveform with a period corresponding to the period of the OUTx signal.
[0417] Here, the motor driver 52y, which will be described later, also has the same terminals as the motor driver 52x, and outputs a motor drive current in the same manner as the motor driver 52x according to the input ENEBLE signal, reference voltage Vref, DIR signal, and OUT signal.
[0418] Also, in the present embodiment, each motor driver in the motor driver group 52 is configured to be able to switch between at least a two-phase excitation drive mode and a microstep drive mode as the drive mode of the utility motor. As shown in the figure, the motor driver 52x has three terminals, namely, a DMODE0 terminal, a DMODE1 terminal, and a DMODE2 terminal, as drive mode terminals for receiving an instruction to switch the drive mode.
[0419] FIG. 40 is a diagram showing the correspondence between the input values to the drive mode terminals and the drive modes. As can be seen from this figure, the motor driver 52x in this example sets its drive mode to the two-phase excitation drive mode in response to the input of DMODE0 terminal = L level, DMODE1 terminal = L level, and DMODE2 terminal = H level, and sets its drive mode to the 2W1-two-phase excitation drive mode, which is the microstep drive mode, in response to the input of DMODE0 terminal = H level, DMODE1 terminal = L level, and DMODE2 terminal = H level.
[0420] In FIG. 39, as shown in the figure, the input signal to the DMODE1 terminal is fixed at the L level, and the input signal to the DMODE2 terminal is fixed at the H level. Therefore, in the motor driver 52x in this example, by switching the input signal level to the DMODE0 terminal between the L level and the H level, it is possible to switch between the two-phase excitation drive mode and the microstep drive mode.
[0421] When the drive mode of the accessory motor is specified by the control command Cd from the effect control board 41, the motor drive control unit 51 outputs a drive mode control signal for setting the specified drive mode to the motor driver. Specifically, the motor drive control unit 51 (command register control circuit 72) in this example generates and outputs a drive mode control signal at the L level when the two-phase excitation drive mode is instructed by the control command Cd from the effect control board 41, and generates and outputs a drive mode control signal at the H level when the microstep drive mode is instructed. In the motor drive control unit 51 of this example, this drive mode control signal is output from any one of the general-purpose input / output terminals P0 to P3 described above. Specifically, the motor drive control unit 51 of this example is set so that the general-purpose input / output terminal P1 becomes the output terminal of the drive mode control signal.
[0422] As shown in the figure, the above drive mode control signal is input to the DMODE0 terminal in the motor driver 52x from the general-purpose input / output terminal P1x of the motor drive control unit 51. Thereby, it is possible for the motor driver 52x to appropriately switch between the two-phase excitation drive mode and the microstep drive mode according to the instruction of the drive mode by the control command Cd.
[0423] Here, in the conventional gaming machine described in FIG. 25 above, as motor drivers 52x and 52y, drivers configured to switch the motor drive current value in predetermined steps (for example, 16 steps, etc.) by register setting were used. For this reason, the CPU 41a of the effect control board 41' switches the motor drive current value between a weak current (the standby current value described above: for example, about 100 mA) and a strong current (the drive current value described above: for example, about 470 mA) by performing register setting of the driver. For confirmation, it should be noted that the switching between the weak current and the strong current of the motor drive current should be performed at the drive start timing (weak current → strong current) and the drive end timing (strong current → weak current) of the accessory motor.
[0424] In the gaming machine 1 of the present embodiment, as the motor driver 52x (similarly for the motor driver 52y), a driver having no current value switching function by the above-described register setting is adopted, and it is necessary to adopt a new method for switching the motor drive current value in place of the above-described conventional method.
[0425] In the present embodiment, a configuration is adopted in which the switching of the motor drive current value is realized by using the Vref terminal provided in the motor driver 52x. Specifically, the switching of the motor drive current value is realized by using the switching circuit 92x in the figure.
[0426] As shown in the figure, the output signal of the general-purpose input / output terminal P3x in the motor drive control unit 51 is input to the switching circuit 92x. As described above, in the present embodiment, the general-purpose input / output terminal P3 is assigned to output the current up / down signal CDWN, so the current up / down signal CDWN is given as an input signal to the switching circuit 92x.
[0427] The switching circuit 92x is configured as a variable voltage dividing circuit having a power supply voltage of a predetermined level (in this example, a power supply voltage of DC5V) as an input voltage, and is configured to have resistors R1, R2, R3, and a switching element Q1 as shown in the figure. In this case, an NPN bipolar transistor is used as the switching element Q1. The collector of the switching element Q1 is connected to the DC5V power supply via the resistor R1, and the emitter is grounded via the resistor R2. Also, a resistor R3 is connected in parallel with the resistor R1 with respect to the DC5V power supply, and the end of the resistor R3 opposite to the connection point with the DC5V power supply is connected to the connection point between the emitter of the switching element Q1 and the resistor R2. The base of the switching element Q1 is connected to the general-purpose input / output terminal P3x of the motor drive control unit 51. Thereby, the current up / down signal CDWN is given as the ON / OFF control signal of the switching element Q1. In the switching circuit 92x, the connection point between the resistor R3 and the resistor R2 becomes the voltage division output point, and this voltage division output point is connected to the Vref terminal in the motor driver 52x. That is, the voltage voltage-divided and output by the switching circuit 92x is given as the reference voltage Vref of the motor driver 52x.
[0428] In the switching circuit 92x with the above configuration, when the current up / down signal CDWN is at the L level (OFF level), the switching element Q1 is turned OFF. Therefore, the voltage Vd at the voltage division output point is expressed as "Vd = R3 / (R3 + R2) × 5V". On the other hand, when the current up / down signal CDWN is at the H level (ON level), since the switching element Q1 is turned ON, the voltage at the voltage division output point becomes the voltage based on the combined resistance value of R1 and R3 and R2. Here, the combined resistance value of R1 and R3 is "R1 × R3 / (R1 + R3)". Let this combined resistance value be R0. Then, the voltage Vd when the current up / down signal CDWN is at the H level is expressed as "R0 / (R0 + R2) × 5V". At this time, since R3 > R0, the voltage Vd increases for the switching of the current up / down signal CDWN from the L level to the H level, and decreases for the switching from the H level to the L level.
[0429] As described above, since the motor driver 52x is configured to output a motor drive current with a current value corresponding to the reference voltage Vref input to the Vref terminal to the actuator motor 53x, due to the operation of the switching circuit 92x as described above, when the current up / down signal CDWN is at the L level, the motor driver 52x outputs a weak current as the motor drive current, and when the current up / down signal CDWN is at the H level, it can output a strong current as the motor drive current.
[0430] As described above, in this embodiment, the switching between the weak current / strong current of the motor drive current is performed by the control of the switching circuit 92x by the motor drive control unit 51. That is, in realizing the switching between the weak current / strong current, it is not necessary for the CPU 41a of the effect control board 41' to directly issue an instruction to switch the drive current value to the motor driver as in the prior art. Therefore, it is possible to reduce the processing load of the CPU 41a related to the control of the movable body actuator 50 and the load of the software creation work related to the control.
[0431] FIG. 41 illustrates the state of switching of the motor drive current value according to the current up / down signal CDWN. As described with reference to FIG. 28 above, at the timing (CSTA) when the drive start of the actuator motor 53x is instructed by the start command from the effect control board 41, the current up / down signal CDWN changes from the OFF level (L level) to the ON level (H level). Due to the operation of the switching circuit 92x described above, in response to such a change of the current up / down signal CDWN from the OFF level to the ON level, the current value of the motor drive current from the motor driver 52x to the actuator motor 53x gradually changes from the current value as the weak current to the current value as the strong current. At this time, as described above, by providing the current up period, a sufficient period for increasing the motor drive current value to the strong current (drive-time current value) is ensured.
[0432] Further, the current up-down signal CDWN changes from the ON level to the OFF level in response to the elapse of a predetermined current down period from the stop timing of the pulse output of the OUTx signal. In response to the change of the current up-down signal CDWN from the ON level to the OFF level, the current value of the motor drive current from the motor driver 52x to the accessory motor 53x gradually decreases from the current value as the strong current to the current value as the weak current by the operation of the switching circuit 92x described above. As described above, providing the current down period can ensure the time for the accessory motor 53x to surely stop.
[0433] Here, in the above, the current up-down signal CDWN is used as the signal input to the switching circuit 92x for switching between the weak current and the strong current. However, for this signal, other signals can also be used as long as the values are inverted at the start timing and the end timing of the drive of the accessory motor, respectively. The "timing" in the "start timing" and "end timing" mentioned here does not refer only to the exact "time point", but is a concept having a certain time width.
[0434] In FIG. 39, the ENABLE control circuit 93x controls the level of the ENABLE signal input to the motor driver 52x.
[0435] Here, if the motor drive control unit 51 is configured to perform ON / OFF control of the ENABLE signal of the motor driver 52x, the level of the ENABLE signal becomes indeterminate at the start of the motor drive control unit 51, which may cause malfunction of the accessory motor 53x. Therefore, in this embodiment, the ENABLE control circuit 93x is provided to take countermeasures.
[0436] As shown in the figure, the ENABLE control circuit 93x is configured to include a resistor R4, a resistor R5, a resistor R6, and a switching element Q2. In this example, an N-type FET (electrolytic effect transistor) is used as the switching element Q2. The gate of the switching element Q2 is connected to the general-purpose input / output terminal P2x of the motor drive control unit 51. Also, the gate of the switching element Q2 is connected to a power supply voltage of a predetermined level (DC5V in this example) via the resistor R4. The drain of the switching element Q2 is connected to a power supply voltage of a predetermined level (DC5V in this example) via the resistor R5, and the source is grounded. The connection point between the drain of the switching element Q2 and the resistor R5 is connected to the ENABLE terminal in the motor driver 52x via the resistor R6.
[0437] In the present embodiment, the motor drive control unit 51 can set, by the control command Cd, a fixed H-level output or a fixed L-level (grounded) output as the signal assignment of the general-purpose input / output terminals P0 to P3. In this example, when the motor drive control unit 51 is started up, the effect control board 41 performs a process of setting the general-purpose input / output terminal P2x to a fixed L-level output with respect to the command register control circuit 72 of the X-axis circuit by the control command Cd. As a result, the motor drive control unit 51 is configured to fix (ground) the general-purpose input / output terminal P2x at the L-level in response to startup.
[0438] In a state before the motor drive control unit 51 starts up or immediately after the start of startup of the motor drive control unit 51, when the signal level of the general-purpose input / output terminal P2x is not at the L-level (ground level), in the ENABLE control circuit 93x, since the gate of the switching element Q2 is connected to the power supply voltage, the switching element Q2 is in the ON state. Therefore, an L-level (OFF-level) signal is output as the ENABLE signal. On the other hand, when the signal level of the general-purpose input / output terminal P2x becomes the L-level with the startup of the motor drive control unit 51, in the ENABLE control circuit 93x, the switching element Q2 is turned OFF, and accordingly, an H-level (ON-level) signal is output as the ENABLE signal.
[0439] In this way, it is possible to prevent the ENABLE signal from being turned on before the motor drive control unit 51 is activated. That is, it is possible to prevent the malfunction of the accessory motor 53x due to the level of the ENABLE signal being indeterminate when the motor drive control unit 51 is activated.
[0440] [6.6 Countermeasures against accessory dropping during startup] As described with reference to FIGS. 3 and 4 above, in the present embodiment, the movable body accessory 50y on the Y-axis is a movable body accessory that is driven downward from the shielding position. In other words, it is a movable body accessory having a movable range below the shielding position.
[0441] For the movable body accessory 50 whose movable range is below the shielding position as described above, when the drive of the accessory motor performed last before the activation of the motor drive control unit 51 was in the microstep drive mode, there is a risk of dropping due to its own weight when the motor drive control unit 51 is activated thereafter. Specifically, when the motor drive control unit 51 is activated in this case, the ENABLE signal is turned on, and a weak current motor drive current is output from the motor driver to the accessory motor. However, if the last drive mode before activation is the microstep drive mode, it becomes indeterminate in which excitation phase state the motor operation ended. If the motor operation ended in an intermediate excitation phase state between the reference excitation phases (reference step positions), it is not possible to obtain sufficient stopping and holding force even when a weak current motor drive current is applied, and as a result, the movable body accessory 50 may drop due to its own weight.
[0442] Therefore, in the present embodiment, in the Y-axis motor control system, a startup mode control circuit 94 as shown in FIG. 42 is provided. As can be seen with reference to FIG. 42, in this example, also in the Y-axis motor control system, the detection signal of the position sensor (55y) is input to the general-purpose input / output terminal P0 (P0y) via the buffer 91 (91y). Also, a switching circuit 92y having the same circuit configuration as the above-described switching circuit 92x is provided to realize switching of the motor drive current value (weak current / strong current switching) according to the current up / down signal CDWN output from the general-purpose input / output terminal P3x. Furthermore, by providing an ENABLE control circuit 93y having the same circuit configuration as the ENABLE control circuit 93x, malfunction of the accessory motor 53y at startup is prevented in the same manner as in the case of the X-axis.
[0443] As shown in the figure, the startup mode control circuit 94 has the same circuit configuration as the ENABLE control circuits 92 (92x and 92y). The general-purpose input / output terminal P1y of the motor drive control unit 51 is connected to the gate of the switching element Q2 in the startup mode control circuit 94. In this example, in the motor drive control unit 51, for the Y-axis as well, the output of the drive mode control signal described above is assigned to the general-purpose input / output terminal P1. Therefore, when the motor drive control unit 51 is started, a drive mode control signal is output from the general-purpose input / output terminal P1y to the gate of the switching element Q2 in the startup mode control circuit 94. However, it is assumed that for the drive mode control signal of the Y-axis, the two-phase excitation drive mode = H level and the microstep drive mode = L level.
[0444] Also, in the startup mode control circuit 94, the connection point between the drain of the switching element Q2 and the resistor R5 is connected to the DMODE0 terminal of the motor driver 52y via the resistor R6.
[0445] In this example, if the last drive of the accessory motor 53y was in the microstep drive mode, an L-level drive mode control signal is output in response to the startup of the motor drive control unit 51, but the level of the drive mode control signal is also indeterminate during the period immediately after the startup of the motor drive control unit 51.
[0446] In the startup mode control circuit 94, when the motor drive control unit 51 is in the state before the start of startup or immediately after the start of startup of the motor drive control unit 51, and the signal level of the general-purpose input / output terminal P1y is not at the L level (ground level), since the gate of the switching element Q2 is connected to the power supply voltage, the switching element Q2 is turned on, so the output signal to the DMODE0 terminal becomes the L level (OFF level). From the previous FIG. 40, if the input signal level to the DMODE0 terminal is at the L level in this way, the motor driver 52y will be instructed to operate in the two-phase excitation drive mode as the drive mode. Therefore, it is possible to prevent the movable body 50y from falling due to its own weight when the motor drive control unit 51 starts up.
[0447] Here, when the drive mode control signal output from the general-purpose input / output terminal P1y is at the H level corresponding to the case of the two-phase excitation drive mode, in the startup mode control circuit 94, the switching element Q2 is turned on, and an L-level signal is input to the DMODE0 terminal. Therefore, the motor driver 52y is instructed to operate in the two-phase excitation drive mode. On the other hand, when the drive mode control signal output from the general-purpose input / output terminal P1y is at the L level corresponding to the case of the microstep drive mode, in the startup mode control circuit 94, the switching element Q2 is turned off, and an H-level signal is input to the DMODE0 terminal, and the motor driver 52y is instructed to operate in the microstep drive mode. In this way, after the motor drive control unit 51 starts up, an appropriate drive mode according to the drive mode control signal is instructed to the motor driver 52y.
[0448] [Regarding 6.7 Backlash Countermeasures] In the gaming machine 1 of the embodiment, the driving of the movable accessory 50 by the accessory motors in the accessory motor group 53 is performed via a power transmission mechanism 58 having a plurality of gears Gr as illustrated in FIG. 43, for example. In this case, the power from the accessory motor is transmitted to the movable accessory 50 via the plurality of gears Gr. Generally, in this type of power transmission mechanism 100, a gap called backlash (or backlash: hereinafter referred to as "backlash BL") is provided at the meshing portion Pb between the gears Gr (see the enlarged view of the meshing portion Pb in the figure). For the sake of confirmation, it should be noted that the backlash BL means a gap (play) intentionally provided in the movement direction when a pair of gears Gr are meshing and moving.
[0449] If such a play as the backlash BL is provided, a time lag will occur from the start of driving of the accessory motor until power is actually transmitted to the movable accessory 50 side. If the amount of the backlash BL at the start of driving of the accessory motor is constant, the above time lag will also be constant, so the amount of operation delay of the movable accessory 50 will also be constant. However, in reality, since the amount of the backlash BL at the start of driving is indefinite, the amount of operation delay of the movable accessory 50 will vary, and there is a risk that the position control accuracy of the movable accessory 50 will decrease and the accuracy of the effect will decrease. Here, a countermeasure method against the decrease in the accuracy of the effect caused by such a backlash BL is proposed.
[0450] Hereinafter, the amount of the backlash BL will be referred to as the "backlash amount". In FIG. 43, as an example for explanation, the case where the number of gears Gr included in the power transmission mechanism 58 is two is illustrated, so the backlash amount was the amount of the backlash BL at one meshing portion Pb between those two gears Gr. However, as illustrated in FIG. 44, the power transmission mechanism 58 may be configured to have three or more gears Gr. In this case, the backlash amount is the total value of the amounts of the backlash BL at each of the two or more meshing portions Pb between the respective gears Gr of those three or more gears Gr.
[0451] First, referring to FIG. 45, let's specifically consider the decrease in the position control accuracy of the movable member 50 due to the backlash BL. FIG. 45 shows the movement of the movable member 50 when it is driven from the origin position to the operating position (the detected position by the position sensor 55) by a graph with the horizontal axis = distance and the vertical axis = speed. In the figure, the thick solid line indicates the movement of the movable member 50 when the backlash amount at the start of driving the member motor is the smallest, and the thick dashed line indicates the movement of the movable member 50 when the backlash amount is the largest.
[0452] Here, as the driving method of the member motor, it is assumed that the rotational speed is increased to a predetermined target speed for a certain period from the start of driving, and then the target speed is maintained until the target timing, and further, depending on the detection of the movable member 50 by the corresponding position sensor in the position sensor group 55, field weakening is performed.
[0453] Compared with the case when the backlash amount is the smallest, the initial speed of the movable member 50 when the backlash amount is the largest is faster because the idling period of the member motor due to the backlash BL is longer than that when the backlash amount is the smallest. Due to the faster initial speed in this way, the highest speed reaching point (the position where the speed reaches the above target speed) of the movable member 50 when the backlash amount is the largest is in front of that when the backlash amount is the smallest. That is, when the backlash amount at the start of driving the member motor is different, there is a difference in the time until the movable member 50 reaches the predetermined target speed.
[0454] Here, attention was paid to the timing of reaching the predetermined target speed, but as described above, the fact that there is a difference in the time until the movable member 50 reaches the target speed means that there is also a difference in the time until the movable member 50 reaches the predetermined position.
[0455] In FIG. 45B, the difference in the movement of the movable object accessory 50, which takes into account not only the difference in the backlash amount at the start of driving but also the difference in the position of the movable object accessory 50 at the start of driving, is shown by the same graph as in FIG. 45A. Specifically, in FIG. 45B, the movement of the movable object accessory 50 when the movable object accessory 50 is located at the origin position and the backlash amount is minimum at the start of driving is shown by a thick solid line, and the movement of the movable object accessory 50 when the movable object accessory 50 is located at a position deeper than the origin position and the backlash amount is maximum at the start of driving is shown by a thick dashed line. The time difference until the movable object accessory 50 reaches a predetermined target speed becomes larger than in the case of FIG. 45A as the initial position of the movable object accessory 50 is deeper.
[0456] Here, in the gaming machine 1 of the present embodiment, it is assumed that an effect having synchronization with the display image of the liquid crystal display device 20 is performed as an effect using the movable object accessory 50. In the present embodiment, on such a premise, as a countermeasure against backlash, the gaming machine 1 is configured as follows as a countermeasure. That is, when the movable object accessory 50 is driven from a state where the backlash amount (play amount of the gear Gr) in the power transmission mechanism 58 is maximum and when the movable object accessory 50 is driven from a state where the backlash amount is minimum, the time difference (hereinafter referred to as "time difference Dt") until the movable object accessory 50 reaches a predetermined target speed is less than one frame period of the image displayed on the liquid crystal display device 20, and the gaming machine 1 is configured.
[0457] By configuring the gaming machine 1 as described above, as shown in FIG. 46A, it becomes possible to make the target speed reach timing of the...
Claims
Claim 1 A movable object for performance, An actuator provided as a power source for the movable object, A transmission mechanism that transmits power from the actuator to the movable object via a plurality of gears, and comprising: When the position reached by the center point of the movable object after the movable object is driven for a predetermined time from the state where the play amount of the gear in the transmission mechanism is maximum is defined as the first position, and the position reached by the center point of the movable object after the movable object is driven for the predetermined time from the state where the play amount is minimum is defined as the second position, The first position is a position that overlaps with the movable object located at the second position A gaming machine.
Citation Information
Patent Citations
Game machine
JP2010119667A
Game machine
JP2022140964A