Motor control device and slot machine
The motor control device synchronizes the rotational position of a rotating body using a synchronization signal from a position sensor, addressing the challenge of synchronization during acceleration or deceleration, thereby enhancing positional accuracy.
Patent Information
- Application Number
- JP2022012228
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-01-28
- Publication Date
- 2025-10-07
- Estimated Expiration
- 2042-01-28
AI Technical Summary
Existing motor control devices struggle to accurately synchronize the rotational position of a rotating body during acceleration or deceleration, necessitating a wait until the rotational speed becomes constant, which affects the precision of stopping the rotating body at a target position.
A motor control device with a communication unit and drive control unit that synchronizes the actual rotational position with the managed position using a synchronization signal based on a position signal from a position sensor, allowing synchronization before the rotational speed becomes constant.
Enables precise synchronization of the rotating body's position with the managed position before the rotational speed stabilizes, improving accuracy in stopping the rotating body at the target position.
Smart Images

Figure 0007750122000001 
Figure 0007750122000002 
Figure 0007750122000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to a motor control device for controlling a motor and a gaming machine having such a motor control device. [Background technology]
[0002] A gaming machine has multiple reels (hereinafter, simply referred to as reels) with multiple symbols displayed along the circumference. In a gaming machine, a player can press a stop button while each reel is rotating to stop the corresponding reel. The reel corresponding to the pressed stop button is stopped so that one of the symbols displayed on that reel is stopped at a predetermined stop position, so that the symbols displayed on each reel are aligned in a row. Therefore, a motor control device that controls the motor driving the reel is required to accurately stop the reel at a target stop position. However, in some cases, slippage between the motor's rotation shaft and the reel may cause a discrepancy between the amount of rotation of the motor required to rotate the reel a predetermined amount and the actual amount of rotation of the reel. Therefore, a technology has been proposed to improve the positional accuracy when stopping the rotation of a rotor driven by a motor (see, for example, Patent Document 1).
[0003] The motor control device disclosed in Patent Document 1 calculates a deviation amount as the difference between the number of detection signals received from a rotation angle sensor each time the motor rotates a predetermined angle during the period from when the rotational position of a rotor driven by the motor reaches a predetermined reference position until the next time the rotational position of the rotor reaches that reference position, and a reference number of detection signals corresponding to the amount of motor rotation corresponding to the amount of rotation of the rotor during that period.The motor control device then corrects position information indicating the rotational position of the rotor according to the deviation amount and a correction amount corresponding to the deviation of the stopping position from a target stopping position when stopping the rotation of the rotor. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Japanese Patent Publication No. 2020-188589 Summary of the Invention [Problem to be solved by the invention]
[0005] In the above technology, the motor control device continues to rotate the rotating body while continuously receiving a control signal indicating that the rotating body should rotate a predetermined angle. Here, when the rotating body rotates at a constant speed, the difference between the timing of receiving the control signal to rotate the rotating body to a reference position and the timing at which it is detected that the rotating body's rotational position has reached the reference position is constant. However, when the rotating body is accelerating or decelerating, this difference in timing fluctuates. Therefore, while the rotating body is accelerating or decelerating, it is difficult to correct the rotating body's rotational position based on the timing at which it is detected that the rotating body's rotational position has reached the reference position. For this reason, in order to correct the rotating body's rotational position, it is necessary to wait until the rotational speed of the rotating body becomes constant.
[0006] Therefore, an object of the present invention is to provide a motor control device that can synchronize the actual rotational position of a rotating body with the managed rotational position before the rotational speed of the rotating body driven by the motor becomes constant. [Means for solving the problem]
[0007] One aspect of the present invention provides a motor control device that controls a motor that drives a rotating body that can rotate around a rotation center. This motor control device has a communication unit that can communicate with a host control device, and a drive control unit that rotates the rotating body in accordance with the number of drive control signals for rotating the rotating body by a predetermined angle received from the host control device via the communication unit. The drive control unit outputs a synchronization signal to the host control device via the communication unit, the synchronization signal having a signal value corresponding to a position signal from a position sensor that outputs a position signal whose value varies depending on whether the rotational position of the rotating body is within a predetermined range. With this configuration, the motor control device can synchronize the actual rotational position of the rotating body with the managed rotational position before the rotational speed of the rotating body driven by the motor becomes constant.
[0008] According to another embodiment, a slot machine is provided. The slot machine includes a gaming machine main body, a reel rotatably arranged within the gaming machine main body, a position sensor that outputs a position signal whose value varies depending on whether the rotational position of the reel is within a predetermined range, a motor that drives the reel, a motor drive circuit that drives the motor, a motor control device that controls the motor, and a gaming machine control device that detects when the rotational position of the reel reaches a predetermined reference position based on a synchronization signal received from the motor control device, the synchronization signal having a signal value corresponding to the position signal, determines the amount of rotation of the reel from the detected timing to a target stop position of the reel determined based on the game status of the gaming machine, and outputs a drive control signal to the motor control device that rotates the reel a predetermined angle by a number calculated by dividing the amount of rotation by the predetermined angle. The motor control device includes a communication unit that can communicate with the gaming machine control device and a drive control unit that rotates the reel in accordance with the number of drive control signals received from the gaming machine control device via the communication unit. The drive control unit then outputs the synchronization signal to the gaming machine control device via the communication unit. By having such a configuration, this slot machine can synchronize the actual rotational position of the rotating reel with the rotational position managed by the gaming machine control device before the rotational speed of the rotating reel driven by the motor becomes constant. [Brief explanation of the drawings]
[0009] [Figure 1] 1 is a schematic configuration diagram of a motor control device according to an embodiment of the present invention. [Figure 2] FIG. 2 is a circuit diagram of a motor drive circuit. [Figure 3] 10 is a diagram showing an example of a table showing the relationship between the drive signals applied to each switch of the motor drive circuit and the rotation direction of the DC motor. FIG. [Figure 4]FIG. 2 is a diagram illustrating an example of a rotating body driven by a motor and a position sensor. [Figure 5] 10 is an operational flowchart of a motor control process. [Figure 6] 1 is a schematic perspective view of a gaming machine equipped with a motor control device according to an embodiment or a modified example. [Figure 7] FIG. 2 is a circuit block diagram of a slot machine. [Figure 8] FIG. 2 is a schematic perspective view of one rotating reel of the reel unit. DETAILED DESCRIPTION OF THE INVENTION
[0010] A motor control device according to one embodiment of the present invention will be described below with reference to the drawings. This motor control device is used to control a motor that drives a rotating body, such as a reel in a gaming machine. The rotating body is provided with a position sensor that is used to detect the actual rotational position of the rotating body. Furthermore, this motor control device has a signal value corresponding to the position signal output from the position sensor, and outputs a synchronization signal to a higher-level control device for synchronizing the managed rotational position of the rotating body with the actual rotational position of the rotating body. This allows the motor control device to synchronize the actual rotational position of the rotating body with the managed rotational position before the rotational speed of the rotating body driven by the motor becomes constant.
[0011] In the following embodiments, the motor control device is incorporated into a gaming machine and is used to drive the spinning reels of the gaming machine.
[0012] Figure 1 is a schematic diagram of a motor control device according to one embodiment of the present invention. As shown in Figure 1, motor control device 1 has a communication interface circuit 10, memory 11, drive control circuit 12, drive signal generation circuit 13, and brake timing determination circuit 14. Each of these components of motor control device 1 may be mounted on a circuit board (not shown) as a separate circuit, or these components may be integrated into an integrated circuit and mounted on the circuit board.
[0013] The motor control device 1 controls the motor drive circuit 3 that drives the motor 2 in accordance with a drive control signal received from a higher-level control device. In this embodiment, the motor control device 1 generates a drive signal that switches the supply of current to the motor 2 on and off using pulse-width modulation (PWM). The motor control device 1 then controls the rotation of the motor 2 by outputting the generated drive signal to the motor drive circuit 3. In this case, the motor control device 1 sets the duty ratio of the drive signal to a duty ratio that corresponds to the rotation speed specified by the period of the received drive control signal, thereby rotating the motor 2 at the specified rotation speed. The motor control device 1 then receives a detection signal from a rotary encoder 4, which checks the rotation amount of the motor 2, indicating that the rotating shaft (not shown) of the motor 2 has rotated a predetermined sampling angle, and controls the timing to start braking the motor 2 depending on the number of detection signals received.
[0014] Furthermore, the motor control device 1 detects that the rotation position of the rotating reel 5, which is an example of a rotating body, driven by the motor 2 has reached a reference position based on a position signal from the position sensor 6. The motor control device 1 outputs a synchronization signal having a signal value corresponding to the value of the position signal to a higher-level control device (not shown). The higher-level control device refers to the synchronization signal, corrects the current position of the rotating reel 5 as necessary, and modifies the amount of rotation to the target stop position based on the correction result.
[0015] In this embodiment, the motor 2 may be a DC motor.
[0016] FIG. 2 is a circuit diagram of the motor drive circuit 3. The motor drive circuit 3 has four switches TR1 to TR4. Each switch can be, for example, a transistor or a field-effect transistor. Two of these switches, TR1 and TR3, are connected in series between a power supply and ground. Similarly, two switches, TR2 and TR4, are connected in series between the power supply and ground. The positive terminal of the motor 2 is connected between the switches TR1 and TR3, while the negative terminal of the motor 2 is connected between the switches TR2 and TR4. The switch terminals of each of the switches TR1 to TR4 (e.g., if the switches TR1 to TR4 are transistors, these correspond to the base terminals, and if the switches TR1 to TR4 are field-effect transistors, these correspond to the gate terminals) are connected to a drive signal generation circuit 13. The drive signals from the drive signal generation circuit 13 are input to the switch terminals of each of the switches TR1 to TR4.
[0017] FIG. 3 is a diagram showing an example of a table showing the relationship between the drive signals applied to the switches and the rotation direction of the motor 2. As shown in FIG. As shown in table 300, when motor 2 is rotated in the forward direction, a drive signal including periodic pulses having a pulse width set in accordance with the PWM method according to the rotation speed of motor 2 is applied to the switch terminals of switches TR1 and TR4. On the other hand, no drive signal is applied to the switch terminals of switches TR2 and TR3. As a result, power supply voltage is applied to the positive terminal of motor 2 only while pulses are applied to switches TR1 and TR4, and motor 2 rotates in the forward direction at a speed according to the pulse width. When rotating the motor 2 in the forward direction, a drive signal may be applied to either one of the switches TR1 and TR4, and the other may be kept on at all times.
[0018] On the other hand, when motor 2 is rotated in the reverse direction, a drive signal having periodic pulses set in accordance with the PWM method and corresponding to the rotation speed of motor 2 is applied to the switch terminals of switches TR2 and TR3. On the other hand, no drive signal is applied to the switch terminals of switches TR1 and TR4. As a result, power supply voltage is applied to the negative terminal of motor 2 only while pulses are applied to switches TR2 and TR3, causing motor 2 to rotate in the reverse direction at a speed corresponding to the pulse width. When the motor 2 is rotated in the reverse direction, a drive signal may be applied to either one of the switches TR2 and TR3, and the other may be kept on at all times.
[0019] In this embodiment, when braking the motor 2 while the motor 2 is rotating in the forward direction, the drive signal generation circuit 13 outputs a drive signal to the motor drive circuit 3 to rotate the motor 2 in the reverse direction. Conversely, when braking the motor 2 while the motor 2 is rotating in the reverse direction, the drive signal generation circuit 13 outputs a drive signal to the motor drive circuit 3 to rotate the motor 2 in the forward direction.
[0020] Furthermore, when the motor 2 is to be kept stationary, the switch terminals of the switches TR3 and TR4 are turned on, and the switch terminals of the switches TR1 and TR2 are turned off.
[0021] Furthermore, when the motor 2 is not driven, the switch terminals of the switches are turned off.
[0022] The rotary encoder 4 is an example of a rotation angle sensor, and may be, for example, an optical rotary encoder. The rotary encoder 4 includes, for example, a disk attached to the rotating shaft of the motor 2 and having multiple slits at predetermined sampling angles along a circumference centered on the rotating shaft, and a light source and a light-receiving element positioned opposite each other across the disk. Whenever one of the slits is positioned between the light source and the light-receiving element, light from the light source reaches the light-receiving element, causing the rotary encoder 4 to output a pulsed detection signal. As a result, the rotary encoder 4 outputs a detection signal to the motor control device 1 each time the motor 2 rotates by a predetermined sampling angle. For example, if the disk has 50 slits along a circumference centered on the rotating shaft of the motor 2, the rotary encoder 4 outputs 50 detection signals per one rotation of the rotating shaft of the motor 2. Note that the rotary encoder 4 may also be a non-optical rotary encoder, such as a magnetic rotary encoder using a Hall IC.
[0023] FIG. 4 is a diagram showing an example of a rotating body and a position sensor driven by the motor 2. The rotating reel 5, which is an example of a rotating body driven by the motor 2, has a cylindrical member (hereinafter simply referred to as the cylindrical member) 51, a support member 52, and multiple arms 53. Multiple symbols are provided on the surface of the cylindrical member 51. The support member 52 is located approximately in the center of the cylindrical member 51, and is attached to the rotation shaft of the motor 2 directly or via a gear at the center of the support member 52, i.e., the center of the rotating reel 5. The multiple arms 53 are provided radially from the support member 52 toward the cylindrical member 51 to support the cylindrical member 51, and connect the support member 52 and the cylindrical member 51. Therefore, the rotating reel 5 can rotate around the center of the support member 52.
[0024] A shielding plate 55 is provided over two or more of the arms 53, having a predetermined length along the circumferential direction relative to the center of rotation of the reel 5 and protruding toward the optical sensor 54, which is provided opposite the arms 53. In this embodiment, the shielding plate 55 is formed to have a length equivalent to half the circumference along the circumferential direction. However, the length of the shielding plate 55 is not limited to this example. The length of the shielding plate 55 may be set to be shorter than the circumference at the position where the shielding plate 55 is provided and to be an integer multiple of the unit length obtained by dividing the circumference by the number of symbols provided along the circumference of the reel 5. The optical sensor 54 has a light-emitting element 56 such as a light-emitting diode and a light-receiving element 57 such as a photodiode, and the light-emitting element 56 and the light-receiving element 57 are arranged so that they face each other. The optical sensor 54 and the shielding plate 55 constitute the position sensor 6. The positions where the light-emitting element 56 and the light-receiving element 57 are provided correspond to the predetermined detection position. As the reel 5 rotates, the shielding plate 55 can pass between the light-emitting element 56 and the light-receiving element 57. Therefore, when the shielding plate 55 is located between the light-emitting element 56 and the light-receiving element 57, the light emitted from the light-emitting element 56 does not reach the light-receiving element 57, and the light-receiving element 57 outputs a signal of a level indicating that the amount of received light is relatively small (for example, a relatively high voltage). On the other hand, when the shielding plate 55 is not located between the light-emitting element 56 and the light-receiving element 57, the light-receiving element 57 can receive the light emitted from the light-emitting element 56, and the light-receiving element 57 outputs a signal of a level indicating that the amount of received light is relatively large (for example, a relatively low voltage). In this way, the signal output from the light-receiving element 57, i.e., the position signal output from the position sensor 6, has a different value depending on whether the shielding plate 55 is located between the light-emitting element 56 and the light-receiving element 57. Therefore, the position signal has a different value depending on whether the rotation position of the reel 5 is within a predetermined range. Therefore, the rotation position of the reel 5 corresponding to when the position signal rises or falls is detected as, for example, the reference position.
[0025] Therefore, as shown in waveform 401, when any of the consecutive half of the symbols (in this example, symbols 11 to 19 and symbol 0) among the multiple symbols (in this example, 20 symbols) provided on the surface of the cylindrical member 51 of the reel 5 passes through a predetermined stop position, the shielding plate 55 blocks the light from the light-emitting element 56. Therefore, the position sensor 6 outputs a signal with a relatively high voltage level as the position signal. On the other hand, when any of the remaining half of the symbols (in this example, symbols 1 to 10) passes through a predetermined stop position, the shielding plate 55 does not block the light from the light-emitting element 56, and the light reaches the light-receiving element 57. Therefore, the position sensor 6 outputs a signal with a relatively low voltage level as the position signal. Therefore, when the reel 5 is rotating in the direction of decreasing symbol numbers, the rising edge 401a of the waveform 401 corresponds to the position at which the symbol located at the stop position switches from symbol 1 to symbol 0. Furthermore, the falling edge 401b of the waveform 401 corresponds to the position where the symbol located at the stop position switches from symbol 11 to symbol 10. The period P from the rising edge 401a to the falling edge 401b corresponds to the length of the shielding plate 55. Note that the position sensor 6 may output a relatively low voltage as the position signal when the shielding plate 55 blocks the light from the light-emitting element 56, and may output a relatively high voltage as the position signal when the light from the light-emitting element 56 reaches the light-receiving element 57. In this case, the rising edge and the falling edge in the following explanation may be interchanged. Note that, hereinafter, the rotation direction in which the symbol number decreases is referred to as the forward rotation direction, and the rotation direction in which the symbol number increases is referred to as the reverse rotation direction.
[0026] Each part of the motor control device 1 will be described below.
[0027] The communication interface circuit 10 is an example of a communication unit. The communication interface circuit 10 connects the motor control device 1 to a host control device, for example, so that the motor control device 1 can communicate with the host control device. The host control device is, for example, a control unit of a gaming machine in which the motor control device 1 is implemented. The communication interface circuit 10 receives a drive control signal from the host control device, which indicates that the reel 5 should be rotated by a predetermined angle while the reel 5 is being driven to rotate. In this embodiment, the drive control signal may be a rectangular short-pulse signal. The drive control signal is not limited to a rectangular short-pulse signal, but may be a signal representing one cycle of a periodically changing signal, such as a sine wave. One cycle of the drive control signal corresponds to rotating the reel 5 by an amount equivalent to one of the multiple symbols provided on the reel 5. In other words, the host control device outputs one cycle of the drive control signal each time the reel 5 is rotated by an amount equivalent to one symbol. Furthermore, the duration of the cycle of this drive control signal indicates the rotation speed of the reel 5. In other words, the time corresponding to one cycle of the drive control signal corresponds to the time it takes for the reel 5 to rotate by an amount corresponding to one symbol. Therefore, the shorter the cycle length of the drive control signal, the faster the rotation speed of the reel 5. Therefore, the upper control device controls the cycle of the drive control signal according to the intended rotation speed. The communication interface circuit 10 outputs the received drive control signal to the drive control circuit 12.
[0028] When the rotation of the reel 5 is stopped, the higher-level control device does not output a drive control signal to the motor control device 1, and therefore no drive control signal is output from the communication interface circuit 10 to the drive control circuit 12. Hereinafter, the stopping of the rotation of the motor 2 may be simply referred to as the motor 2 being stopped. Similarly, hereinafter, the stopping of the rotation of the reel 5 may be simply referred to as the reel 5 being stopped.
[0029] The communication interface circuit 10 may also receive a rotation direction setting signal from a higher-level control device that specifies the rotation direction of the reel 5. Each time the communication interface circuit 10 receives a rotation direction setting signal, it passes the received rotation direction setting signal to the drive control circuit 12.
[0030] Furthermore, every time the communication interface circuit 10 receives a synchronization signal from the drive control circuit 12, it outputs the synchronization signal to the higher-level control device.
[0031] The memory 11 includes, for example, a nonvolatile semiconductor memory circuit. The memory 11 stores information necessary for controlling the rotation of the reel 5. In this embodiment, the memory 11 stores, for each rotation speed, the number of detection signals (hereinafter referred to as the stop-required detection number) required for the rotating reel 5 to come to a stop, i.e., for the motor 2 to stop, so that one of the symbols stops at a predetermined stop position. The stop-required detection number is an example of a stop threshold. Furthermore, the memory 11 stores a duty ratio table that indicates the duty ratio for each rotation speed, and a speed brake value table that indicates the relationship between the rotation speed and the duty ratio corresponding to the braking force.
[0032] The drive control circuit 12 is an example of a drive control unit, and rotates the reel 5 according to the number of drive control signals received from a higher-level control device via the communication interface 10. To this end, the drive control circuit 12 sets the duty ratio of the drive signal for the motor 2 in accordance with the rotation speed corresponding to the cycle length of the drive control signal. The drive control circuit 12 then determines the duty ratio corresponding to the rotation speed corresponding to the cycle length of the drive control signal by referencing the cycle length of the received drive control signal and a duty ratio table read from the memory 11. The drive control circuit 12 then outputs the determined duty ratio to the drive signal generation circuit 13. The drive control circuit 12 also outputs information indicating the rotation direction specified by the rotation direction setting signal to the drive signal generation circuit 13.
[0033] Furthermore, the drive control circuit 12 updates the value of a target counter, which indicates the amount of rotation of the reel 5 in symbol units until the reel 5 reaches the target stop position, each time it receives one cycle of the drive control signal. In this embodiment, when the reel 5 is rotating forward, the amount of rotation until the target stop position is expressed as a positive value, and conversely, when the reel 5 is rotating reverse, the amount of rotation until the target stop position is expressed as a negative value. Therefore, the drive control circuit 12 increments the value of the target counter by 1 each time it receives one cycle of the drive control signal. On the other hand, when the reel 5 is rotating reverse, the drive control circuit 12 decrements the value of the target counter by 1 each time it receives one cycle of the drive control signal.
[0034] Furthermore, the drive control circuit 12 increments the value of the detection counter by 1 each time it receives a detection signal from the rotary encoder 4. When the value of the detection counter reaches a value corresponding to the rotation amount per symbol, the drive control circuit 12 updates the value of the cumulative counter, which indicates the cumulative rotation amount per symbol of the rotating reel 5. Furthermore, the drive control circuit 12 resets the value of the detection counter to 0. In this embodiment, when the rotating reel 5 is rotating forward, the drive control circuit 12 increments the value of the cumulative counter by 1 each time it receives a detection signal for one symbol. On the other hand, when the rotating reel 5 is rotating reversely, the drive control circuit 12 decrements the value of the cumulative counter by 1 each time it receives a detection signal for one symbol. For example, if the gear ratio between the motor 2 and the rotating reel 5 is 1:10 and the rotary encoder 4 outputs 50 detection signals per rotation of the motor 2, 500 detection signals will be output per rotation of the rotating reel 5. Therefore, if the rotating reel 5 has 20 symbols, 25 detection signals will be output per symbol. Therefore, the drive control circuit 12 only needs to increase or decrease the value of the cumulative counter every time it receives 25 detection signals from the rotary encoder 4. Hereinafter, the number of detection signals corresponding to the rotation amount of one symbol may be referred to as the number of symbol-unit detection signals.
[0035] Furthermore, the drive control circuit 12 determines whether the rotational position of the reel 5 has reached the reference position based on the position signal received from the position sensor 6. As described above, when the rotational position of the reel 5 reaches the reference position, the position signal rises or falls. Therefore, the drive control circuit 12 detects the rising or falling of the signal level of the position signal by examining the temporal change in the voltage of the position signal. The drive control circuit 12 then corrects the cumulative counter value and the detection counter value according to the detected rising or falling edge. For example, the drive control circuit 12 corrects the cumulative counter value to the value when the reel 5 has rotated to the symbol position corresponding to the detected rising or falling edge. In the example shown in FIG. 4, the rising edge of the position signal when the reel 5 is rotating forward corresponds to the symbol position 0. Therefore, when the drive control circuit 12 detects the rising edge of the position signal, it corrects the cumulative counter value to the value closest to the current value of the cumulative counter among the possible values that the cumulative counter could have when the reel 5 has rotated to the symbol position 0. For example, assuming that the reel 5 has rotated to the position of symbol 0, the possible values of the cumulative counter are 1, 21, 41, ..., and if the current value of the cumulative counter is 20, the drive control circuit 12 corrects the value of the cumulative counter to 21. Similarly, when the reel 5 is rotating forward, the falling edge of the position signal corresponds to the position of symbol 10. Therefore, when the falling edge of the position signal is detected, the drive control circuit 12 corrects the value of the cumulative counter to the value closest to the current value of the cumulative counter among the possible values of the cumulative counter when the reel 5 has rotated to the position of symbol 10. Furthermore, when the drive control circuit 12 detects the rising or falling edge of the position signal, it corrects the value of the detection counter to a predetermined offset value. Similarly, when the reel 5 is rotating reversely, the drive control circuit 12 can detect the rising or falling edge of the position signal and correct the values of the cumulative counter and the detection counter.
[0036] Furthermore, the drive control circuit 12 sets the signal level of the synchronization signal and outputs the synchronization signal having the set signal level to a higher-level control device via the communication interface 10. The synchronization signal is set to a signal level corresponding to a relatively low voltage or a relatively high voltage based on the target stop position or position signal. In this embodiment, while the drive control signal is received from the higher-level control device, i.e., while the rotating reel 5 is rotating, the drive control circuit 12 sets the signal level of the synchronization signal to a level corresponding to the target stop position, which is represented by the number of received drive control signals. In the example shown in FIG. 4, the position signal outputs a relatively low voltage value for symbols 1 to 10. Therefore, if the target stop position is symbols 1 to 10, the drive control circuit 12 also sets the synchronization signal to a relatively low signal level. On the other hand, if the target stop position is symbols 11 to 19 or symbol 0, the drive control circuit 12 sets the synchronization signal to a relatively high signal level.
[0037] Furthermore, until the first rising or falling edge of the position signal is detected after the motor control device 1 is powered on or the reel 5 starts rotating, the drive control circuit 12 sets the synchronization signal to have a signal value corresponding to the position signal. That is, the drive control circuit 12 sets the signal level of the synchronization signal to the same signal level as the signal level of the position signal received from the position sensor 6. Similarly, when a drive control signal is not received from a higher-level control device, that is, when the reel 5 is stopped or being manually rotated, the drive control circuit 12 sets the signal level of the synchronization signal to the same signal level as the signal level of the position signal received from the position sensor 6. Furthermore, the drive control circuit 12 resets the value of the target counter to 0 when the first rising or falling edge of the position signal is detected after the motor control device 1 is powered on or the reel starts rotating.
[0038] Furthermore, each time the detection counter value is updated, the drive control circuit 12 calculates the target rotation amount by subtracting the detection counter value from a value obtained by multiplying the absolute value of the difference between the target counter value and the cumulative counter value by the number of symbol-unit detection signals, and then adding a predetermined offset value to the product. The target rotation amount is a value expressed as the number of detection signals from the rotary encoder 4, representing the rotation amount of the rotating reel 5 from its current rotation position to its target stop position. The predetermined offset value may be, for example, the number of detection signals corresponding to half of one symbol. However, the predetermined offset value is not limited to this example and may be set to any value within the range of 0 to the number of symbol-unit detection signals. Each time the drive control circuit 12 updates the target rotation amount, it outputs the updated target rotation amount to the brake timing determination circuit 14.
[0039] Furthermore, the drive control circuit 12 notifies the brake timing determination circuit 14 of a signal representing the rotation speed of the rotating reel 5, which is represented by the cycle length of the drive control signal.
[0040] The drive signal generation circuit 13 is an example of a drive signal generation unit, and includes, for example, a variable pulse generation circuit capable of changing the pulse width (i.e., duty ratio) of the output pulses, and a switch circuit that switches to which switch in the motor drive circuit 3 a periodic pulse signal, which is a drive signal generated by the variable pulse generation circuit, is output. Each time the drive control circuit 12 notifies the drive signal generation circuit 13 of the duty ratio, the drive signal generation circuit 13 generates a pulse signal, which is a drive signal for driving the motor 2, according to the PWM method, and outputs the pulse signal to the motor drive circuit 3 at a predetermined output period, thereby controlling the rotation of the motor 2. In this case, the drive signal generation circuit 13 sets the pulse width of the pulse signal according to the notified duty ratio. Meanwhile, when the brake timing determination circuit 14 notifies the drive signal generation circuit 13 that braking start timing has arrived, the drive signal generation circuit 13 outputs a drive signal to the motor drive circuit 3 to brake and stop the motor 2. In this embodiment, as described above, when braking the motor 2, the drive signal generation circuit 13 simply outputs a drive signal to the motor drive circuit 3 to rotate the motor 2 in the opposite direction to the direction in which the motor 2 is currently rotating.
[0041] When braking the motor 2, the drive signal generating circuit 13 refers to the speed brake value table read from the memory 11 and sets the braking force to be applied to the motor 2.
[0042] In this embodiment, the drive signal generation circuit 13 controls the braking force so that the motor 2 stops when the motor 2 has rotated an amount of time from the braking start timing until the number of detection signals from the rotary encoder 4 reaches the required stop detection number. Therefore, the duty ratio of the drive signal corresponding to the braking force is set according to the rotational speed of the motor 2. That is, the drive signal generation circuit 13 can identify the duty ratio corresponding to the rotational speed of the motor 2 by referring to the speed brake value table stored in the memory 11. Note that in the speed brake value table, for example, the higher the rotational speed of the motor 2, the higher the duty ratio, i.e., the higher the braking force set.
[0043] To determine the braking force, the drive signal generation circuit 13 may calculate the current rotation speed of the motor 2 based on the detection signal received from the rotary encoder 4. To achieve this, the drive signal generation circuit 13 may further include, for example, a timer and a counter. The drive signal generation circuit 13 then counts the number of detection signals received within a certain period measured by the timer using the counter, and calculates the rotation speed by multiplying the number of detection signals by the sampling angle of the rotary encoder 4 and dividing the result by the certain period. Note that the drive signal generation circuit 13 may set the rotation speed of the motor 2 to 0 if the number of detection signals received within the certain period is one or less.
[0044] The drive signal generation circuit 13 outputs the drive signal with the specified duty ratio to the motor drive circuit 3 until the motor 2 stops.
[0045] In addition, when the rotation amount of motor 2 reaches the target rotation amount and the rotation speed of motor 2 becomes 0, the drive signal generating circuit 13 may output a drive signal to the motor drive circuit 3 to stop braking motor 2 and maintain motor 2 in a stationary state.
[0046] The brake timing determination circuit 14 is an example of a brake timing determination unit, and determines the timing to start applying the brake to the motor 2 (ie, the brake start timing) according to the result of comparison between the target rotation amount and the number of detections required for stopping.
[0047] When the brake timing determination circuit 14 receives a signal indicating the rotation speed of the rotating reel 5 from the drive control circuit 12, it reads the stop required detection number corresponding to that rotation speed from the memory 11. Then, when the target rotation amount received from the drive control circuit 12 becomes equal to or less than the stop required detection number, the brake timing determination circuit 14 determines that the brake start timing has arrived, and notifies the drive signal generation circuit 13 that the brake start timing has arrived.
[0048] FIG. 5 is an operational flowchart of the control process of the motor 2 by the motor control device 1.
[0049] The drive control circuit 12 updates the value of the target counter every time it receives a drive control signal via the communication interface 10 (step S101). In addition, the drive control circuit 12 determines a duty ratio corresponding to a rotation speed according to the cycle length of the received drive control signal, and outputs the duty ratio to the drive signal generation circuit 13 (step S102).
[0050] The drive signal generating circuit 13 outputs a drive signal having a duty ratio corresponding to the rotation speed according to the period of the drive control signal notified by the drive control circuit 12 to the motor drive circuit 3 that drives the motor 2 (step S103).
[0051] Furthermore, the drive control circuit 12 increments the value of the detection counter by 1 each time it receives a detection signal from the rotary encoder 4 (step S104). Furthermore, when the value of the detection counter reaches the number of symbol unit detection signals, the drive control circuit 12 resets the value of the detection counter to 0 and updates the value of the cumulative counter (step S105).
[0052] Furthermore, the drive control circuit 12 determines whether or not the rotation position of the spinning reel 5 has reached the reference position based on the position signal received from the position sensor 6 (step S106). If it detects that the rotation position has reached the reference position (step S106-Yes), the drive control circuit 12 determines that the rotation position of the spinning reel 5 is at the reference position and corrects the cumulative counter value and the detection counter value (step S107).
[0053] After step S107, or if arrival at the reference position is not detected in step S106 (step S106-Yes), the drive control circuit 12 outputs a synchronization signal to the upper control device via the communication interface 10 (step S108). Furthermore, the drive control circuit 12 outputs the target rotation amount calculated from the target counter, the cumulative counter, and the detection counter to the brake timing determination circuit 14. The brake timing determination circuit 14 determines whether the target rotation amount is equal to or less than the number of detections required for stop corresponding to the rotation speed of the rotating reel 5 (step S109). If the target rotation amount is greater than the number of detections required for stop (step S109-No), the motor control device 1 repeats the processing from step S101 onwards.
[0054] On the other hand, if the target rotation amount is equal to or less than the required number of detections for stopping (step S109-Yes), the brake timing determination circuit 14 notifies the drive signal generation circuit 13 that it is time to start braking. Furthermore, the drive signal generation circuit 13 identifies the duty ratio corresponding to the rotation speed of the motor 2 by referring to the speed brake value table stored in the memory 11 until the motor 2 stops. The drive signal generation circuit 13 then outputs a drive signal having a braking force corresponding to that duty ratio to the motor drive circuit 3 (step S110). When the motor 2 stops, that is, when the target rotation amount becomes 0, the drive signal generation circuit 13 stops outputting the drive signal to the motor drive circuit 3.
[0055] Next, the initialization process of the rotation position of the reel 5 using a synchronization signal in the host control device will be described. When the initialization process starts, the host control device outputs a drive control signal for one cycle to rotate the reel 5 by one symbol. The host control device also increases or decreases the temporary current position of the reel 5 by one symbol in the direction opposite to the rotation direction of the reel 5. For example, when the reel 5 is rotating forward, the host control device decreases the symbol number of the temporary current position by one. When the symbol number of the temporary current position reaches the smallest symbol number, the host control device changes it to the largest symbol number the next time the symbol number is decreased. Conversely, when the reel 5 is rotating backward, the host control device increases the symbol number of the temporary current position by one. When the symbol number of the temporary current position reaches the largest symbol number, the host control device changes it to the smallest symbol number the next time the symbol number is increased. The host control device refers to the synchronization signal received each time the reel 5 is rotated one symbol at a time, and detects the timing when the signal level of the synchronization signal first changes, i.e., the timing when the rotation position of the reel 5 reaches the reference position. The host control device then recognizes the rotation position of the reel 5 at that timing as the actual current position. In the example shown in FIG. 4 , when the reel 5 is rotating forward and a rising edge of the synchronization signal is detected, the host control device recognizes the current position of the reel 5 as the position of symbol 0. Furthermore, when a falling edge of the synchronization signal is detected, the host control device recognizes the current position of the reel 5 as the position of symbol 10. Conversely, when the reel 5 is rotating backward and a rising edge of the synchronization signal is detected, the host control device recognizes the current position of the reel 5 as the position of symbol 11. Furthermore, when a falling edge of the synchronization signal is detected, the host control device recognizes the current position of the reel 5 as the position of symbol 1. The host control device then sets the recognized current position of the reel 5 as the initial position. This allows the host control device to synchronize the actual rotation position of the reel 5 with the managed rotation position. After synchronization is achieved, the host control device outputs to the motor control device 1 a number of drive control signals corresponding to the amount of rotation in symbol units from the initial position to the target stop position of the reel 5.
[0056] As described above, this motor control device outputs a synchronization signal to a host control device, the synchronization signal having a value that varies depending on whether the shielding plate provided on the rotating body is at a predetermined detection position. Therefore, this motor control device can synchronize the actual rotational position of the rotating body with the rotational position of the rotating body managed by the host control device by referencing the synchronization signal, even before the rotational speed of the rotating body becomes constant. Therefore, this motor control device eliminates the need to wait until the rotational speed of the rotating body becomes constant when setting a target rotation amount for stopping the rotating body at a target stop position.
[0057] According to a modified example, instead of separately managing the target counter and the cumulative counter, the drive control circuit 12 may calculate a remaining spin counter, which indicates the number of symbol-by-symbol rotations until the target stop position, based on the number of received drive control signals and the number of received detection signals. In this case, the drive control circuit 12 increments the remaining spin counter by 1 each time it receives a drive control signal, and conversely, subtracts 1 from the remaining spin counter each time the detection counter value reaches the number of symbol-by-symbol detection signals. The drive control circuit 12 then calculates the target rotation amount by subtracting the detection counter value from a value obtained by multiplying the remaining spin counter value by the number of symbol-by-symbol detection signals and adding a predetermined offset value to the result. Furthermore, the drive control circuit 12 may reset the remaining spin counter value to 0 when the first rising or falling edge of the position signal is detected after the motor control device 1 is powered on or after the reel starts rotating. Even in this modification, the motor control device 1 can obtain the same effects as in the above embodiment.
[0058] The motor control device according to the above embodiment or modification may be used to drive a movable member other than the reels of a slot machine. For example, the motor control device may be used to drive a movable member for effecting a pinball game machine.
[0059] Fig. 6 is a schematic perspective view of a gaming machine 100 equipped with a motor control device according to the above embodiment or modified example. Fig. 7 is a circuit block diagram of the gaming machine 100. Fig. 8 is a schematic perspective view of one rotating reel of a reel unit 120. As shown in Fig. 6, the gaming machine 100 has a main body cabinet 110 which is the gaming machine main body, a reel unit 120, a start lever 130, and stop buttons 140a to 140c.
[0060] The gaming machine 100 also includes, within the main body 110, a control circuit 150 that controls each component of the gaming machine 100, three motors 151-1 to 151-3 for driving the reels of the reel unit 120, three motor drive circuits 152-1 to 152-3 for driving the motors, and three motor control devices 153-1 to 153-3. The motor control devices 153-1 to 153-3 may be motor control devices according to the above-described embodiment or modified example. The motor drive circuits 152-1 to 152-3 may be motor drive circuits according to the above-described embodiment or modified example. The gaming machine 100 also includes a power supply circuit (not shown) that supplies power to each component of the gaming machine 100 and a medal storage and discharge mechanism (not shown) that temporarily stores medals and discharges them in response to a control signal from the control circuit 150. The control circuit 150 is an example of a gaming machine control circuit.
[0061] An opening 111 is formed in the upper center of the front surface of the main body housing 110, and part of the reel unit 120 is visible through this opening 111. Also, a medal insertion slot 113 for inserting medals is formed on the upper surface of a frame 112 below the opening 111.
[0062] The reel unit 120 has three reels 121-1 to 121-3. The reels 121-1 to 121-3 are each independently rotatable around a rotation axis (not shown) that is substantially parallel and horizontal to the front surface of the main body casing 110, in response to a drive control signal from the control circuit 150. Furthermore, the rotation axis of each of the reels 121-1 to 121-3 is engaged with the rotation axis of each of the motors 151-1 to 151-3 via a gear (not shown). As the motors 151-1 to 151-3 rotate, the reels 121-1 to 121-3 also rotate. Furthermore, a rotary encoder (not shown) is attached to the rotation axis of each of the motors 151-1 to 151-3, and the rotary encoder outputs a detection signal to the motor control devices 153-1 to 153-3 each time the motors 151-1 to 151-3 rotate by a predetermined sampling angle. Furthermore, each of the rotating reels 121-1 to 121-3 is provided with a position sensor (not shown) as in the above embodiment. In addition, the surfaces of the rotating reels 121-1 to 121-3 are each divided into multiple areas of approximately the same width along the rotation direction, i.e., the circumferential direction, and various patterns are drawn on each area, and some of these areas are visible to the player through the opening 111.
[0063] The start lever 130 is provided on the left side when facing the front of the frame 112 of the main body casing 110. Stop buttons 140a to 140c are provided in the approximate center of the front of the frame 112. The stop buttons 140a to 140c correspond to the spinning reels 121-1 to 121-3, respectively.
[0064] A medal outlet 114 for discharging medals is formed at the bottom of the front of the main body housing 110. A medal tray 115 is attached below the medal outlet 114 to prevent the discharged medals from falling.
[0065] When the start lever 130 is operated after a medal is inserted into the medal insertion slot 113, a signal indicating that the start lever 130 has been operated is transmitted to the control circuit 150. The control circuit 150 then starts the rotation of the reels 121-1 to 121-3. That is, the control circuit 150 outputs a drive control signal to the motor control devices 153-1 to 153-3. The control circuit 150 may change the rotation speed of the reels 121-1 to 121-3 depending on the game status. In this case, the control circuit 150 may set the cycle length of the drive control signal to a length corresponding to the changed rotation speed each time the control circuit 150 changes the rotation speed of the reels 121-1 to 121-3. The control circuit 150 may set a different rotation speed for each of the reels 121-1 to 121-3. The control circuit 150 may also change the rotation speed for each of the reels 121-1 to 121-3 at different times.
[0066] For each of the reels 121-1 to 121-3, the control circuit 150 sets the initial position of the reel at the time when the signal level of the synchronization signal changes for the first time after the reels start to rotate.
[0067] After the initial positions of the reels 121-1 to 121-3 are set, when one of the stop buttons 140a to 140c located approximately in the center of the front of the frame 112 of the main body casing 110 is pressed, the control circuit 150 receives a signal from the pressed button indicating the button has been pressed and stops the rotation of the reel corresponding to the pressed button. At this time, the control circuit 150 sets a target stop position so that the symbol closest to the position visible to the player through the opening 111 at the time the button was pressed, among one or more symbols selected according to the game status, is stopped at that position. The control circuit 150 then outputs drive control signals to the motor control devices 153-1 to 153-3 in the number corresponding to the amount of rotation required to move the reel from the initial position to the target stop position. Alternatively, the control circuit 150 stops any of the reels 121-1 to 121-3 whose corresponding stop button has not been pressed within a predetermined period of time since the reels started spinning, after the predetermined period has elapsed. In this case, the control circuit 150 sets a target stop position so that the symbol closest to the position visible to the player through the opening 111 will stop at that position after a predetermined period of time has elapsed. To stop the reels, the control circuit 150 simply stops outputting the drive control signal. Then, when all the reels have stopped, if the same symbol is lined up in a row on all the reels, the control circuit 150 will discharge a predetermined number of medals corresponding to that symbol through the medal discharge port 114.
[0068] As described above, those skilled in the art can make various modifications to the embodiments within the scope of the present invention. [Explanation of symbols]
[0069] 1. Motor control device 2 motors 3 Motor drive circuit 4 rotary encoders 5 spinning reels 51 Cylindrical member 52 Support member 53 Arm 54 Optical Sensor 55 Shield plate 56 Light-emitting element 57 Photodetector 6 Position Sensors 10. Communication interface circuit 11. Memory 12 Drive control circuit 13 Drive signal generation circuit 14 Brake timing determination circuit 100 slot machines 110 Main body housing 120 reel units 121-1~121-3 Rotating reels 130 Start lever 140a~140c Stop button 150 control circuit 151-1~151-3 Motor 152-1 to 152-3 Motor drive circuit 153-1~153-3 Motor control device
Claims
1. A motor control device that controls a motor that drives a rotating reel that is rotatable around a rotation center and has a plurality of symbols provided along a circumferential direction about the rotation center, a communication unit capable of communicating with a higher-level control device; a drive control unit that rotates the reel in accordance with the number of drive control signals that are received from the higher-level control device via the communication unit and that cause the reel to rotate a predetermined angle; and the drive control unit outputs a synchronization signal having a signal value corresponding to a position signal from a position sensor that outputs a position signal having a different value depending on whether the rotation position of the rotation reel is within a predetermined range, to the higher-level control device via the communication unit; The position sensor a shielding plate attached to the rotating reel, the shielding plate having a predetermined length along the circumferential direction at a position a predetermined distance away from the center of rotation in a radial direction; an optical sensor that outputs different values when the shielding plate is positioned between the light emitting element and the light receiving element and when the shielding plate is not positioned between the light emitting element and the light receiving element, the predetermined length is an integer multiple of a unit length obtained by dividing a circumferential length of a circle around the center of rotation at a position that is the predetermined distance away from the center of rotation in the radial direction by the number of the symbols provided on the rotating reel; Motor control device.
2. A motor control device as described in Claim 1, wherein the shielding plate is formed so that each of its two circumferential ends is positioned between two adjacent patterns among the plurality of patterns.
3. A motor control device as described in claim 1 or 2, wherein the length of the shielding plate in the circumferential direction is formed so that it is half the circumferential length relative to the center of rotation at a position radially away from the center of rotation by the specified distance.
4. A slot machine comprising: a gaming machine main body; a reel that is rotatably disposed around a rotation center within the gaming machine body and has a plurality of symbols arranged along a circumferential direction relative to the rotation center; a position sensor that outputs a position signal having a different value depending on whether the rotation position of the reel is within a predetermined range; a motor that drives the rotating reel; a motor drive circuit that drives the motor; a motor control device that controls the motor; a gaming machine control device that detects the timing when the rotation position of the rotating reel reaches a predetermined reference position based on a synchronization signal received from the motor control device and having a signal value corresponding to the position signal, determines the amount of rotation of the rotating reel from the rotation position at that timing to a target stop position of the rotating reel, and outputs a drive control signal to the motor control device that rotates the rotating reel by a predetermined angle by a number obtained by dividing the amount of rotation by the predetermined angle, thereby stopping the rotating reel at the target stop position; and The motor control device includes: A communication unit capable of communicating with the gaming machine control device; a drive control unit that rotates the reel via the motor and the motor drive circuit in accordance with the number of drive control signals received from the gaming machine control device via the communication unit; and The drive control unit outputs the synchronization signal to the gaming machine control device via the communication unit, The position sensor a shielding plate attached to the rotating reel, the shielding plate having a predetermined length along the circumferential direction at a position a predetermined distance away from the center of rotation in a radial direction; an optical sensor that outputs different values when the shielding plate is positioned between the light emitting element and the light receiving element and when the shielding plate is not positioned between the light emitting element and the light receiving element, the predetermined length is an integer multiple of a unit length obtained by dividing a circumferential length of a circle about the center of rotation at a position that is the predetermined distance away from the center of rotation in the radial direction by the number of the symbols provided on the rotating reel; The gaming machine main body includes: an opening formed to allow a portion of the rotating reel in the circumferential direction to be visible; a stop button for stopping the rotating reel during rotation; The timing at which the rotation position reaches the predetermined reference position is the timing at which the stop button is pressed, The target stop position is set to a position where a symbol among the plurality of symbols that is closest to a position that is visible to a player through the opening at the time when the stop button is pressed is visible. Slot machine.
5. A slot machine as described in Claim 4, wherein the shielding plate is formed so that each of its two circumferential ends is positioned between two adjacent patterns among the plurality of patterns.
6. A slot machine as described in claim 4 or 5, wherein the length of the shielding plate in the circumferential direction is formed so that it is half the circumferential length relative to the center of rotation at a position radially away from the center of rotation by the specified distance.
Citation Information
Patent Citations
Servo control device by detecting current ripple
JP2000166275A
Game machine
JP2005087620A
Game machine
JP2005211517A
Rotary drum type game machine
JP2006087450A
Game machine
JP2012115696A