WO2013031352A1 - 可動体駆動装置及び遊技機 - Google Patents

可動体駆動装置及び遊技機 Download PDF

Info

Publication number
WO2013031352A1
WO2013031352A1 PCT/JP2012/066045 JP2012066045W WO2013031352A1 WO 2013031352 A1 WO2013031352 A1 WO 2013031352A1 JP 2012066045 W JP2012066045 W JP 2012066045W WO 2013031352 A1 WO2013031352 A1 WO 2013031352A1
Authority
WO
WIPO (PCT)
Prior art keywords
movable body
stepping motor
current position
control command
rotation speed
Prior art date
Application number
PCT/JP2012/066045
Other languages
English (en)
French (fr)
Inventor
倫久 高橋
克己 松下
康之 大場
啓之 伊夫伎
Original Assignee
オムロン株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2011187901A external-priority patent/JP5879824B2/ja
Priority claimed from JP2011187878A external-priority patent/JP5903804B2/ja
Application filed by オムロン株式会社 filed Critical オムロン株式会社
Priority to US14/236,153 priority Critical patent/US9787233B2/en
Priority to AU2012303305A priority patent/AU2012303305B2/en
Publication of WO2013031352A1 publication Critical patent/WO2013031352A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P8/00Arrangements for controlling dynamo-electric motors of the kind having motors rotating step by step
    • H02P8/14Arrangements for controlling speed or speed and torque
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F11/00Game accessories of general use, e.g. score counters, boxes
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F17/00Coin-freed apparatus for hiring articles; Coin-freed facilities or services
    • G07F17/32Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports, or amusements
    • G07F17/3202Hardware aspects of a gaming system, e.g. components, construction, architecture thereof

Definitions

  • the present invention relates to a movable body drive device for driving a movable body, and a gaming machine having such a movable body drive device.
  • game machines such as a spinning machine or a ball game machine have been devised to produce effects that appeal to the player's visual, auditory, or sensation.
  • the game machine may be provided with a movable body that moves, for example, a movable accessory.
  • a movable body is driven by, for example, a stepping motor.
  • the effecting CPU which is an example of the higher-level control device, moves to the designated position according to the state of the game.
  • a command to rotate the stepping motor is transmitted to the control circuit of the stepping motor.
  • a microcomputer generates a four-phase drive control signal corresponding to input signals such as forward / reverse rotation, speed switching, and mode switching. This makes it possible to change the excitation method, rotation direction, rotation speed, etc. without increasing the number of circuit components.
  • the movable body drive device disclosed in Japanese Patent Application Laid-Open No. 2009-247833 transmits the operation result of the movable body to a higher-level control device, and based on the command from the control device or the operation result, the drive means Drive the movable body.
  • the effect CPU in order for the effect CPU to move the movable body to a desired movement destination, the effect CPU itself is the movable object. You must know your current location. Therefore, every time the moving CPU moves the movable body, it is necessary to receive information on the current position of the movable body from the control circuit of the stepping motor or the sensor for detecting the position of the movable body. Further, the directing CPU needs to perform calculations for determining the rotation direction, the number of steps, etc. of the stepping motor that drives the movable body based on the difference between the coordinates of the current position of the movable body and the coordinates of the moving destination. there were.
  • the moving CPU every time the moving CPU moves the movable body, it must perform processing for receiving information on the current position of the movable body and determining the rotation direction, the number of steps, and the like of the stepping motor. Therefore, when driving the movable body, further reduction of the load of the host control device such as a CPU for rendering is desired.
  • an object of the present invention is to provide a movable body drive device that can further reduce the load on the host control device, and a gaming machine having such a movable body drive device.
  • a movable body drive device that controls a drive unit that drives a movable body provided in a gaming machine.
  • the movable body driving device includes a communication unit that receives a control command that defines a moving destination of the movable body, a storage unit that stores a current position of the movable body, and a difference between the moving destination and the current position of the movable body. Or the moving direction in the next operation of the movable body is determined based on the moving direction in the previous operation of the movable body, and the movable body is moved until the movable body reaches the moving destination along the moving direction in the next operation. And a control unit that controls the drive unit so as to be moved.
  • the drive unit is a stepping motor
  • the control command includes a first index indicating the rotation speed of the stepping motor and a second index indicating the acceleration or deceleration of the stepping motor
  • the control unit Until the movable body moves a distance corresponding to the first step number of the stepping motor from the current position, to accelerate or decelerate the rotation speed of the stepping motor at the acceleration or deceleration indicated by the second index, It is preferable to control the stepping motor so that the rotation speed indicated by the first index is reached when the distance is moved.
  • the drive unit is a stepping motor
  • the control command includes a first index that represents the rotation speed of the stepping motor and a second index that represents the acceleration or deceleration of the stepping motor.
  • the unit accelerates or decelerates the rotation speed of the stepping motor at the acceleration or deceleration indicated by the second index when the movable body approaches the moving destination more than the distance corresponding to the second step number of the stepping motor. Then, it is preferable to control the stepping motor so that the rotation speed becomes the rotation speed indicated by the first index when the movement destination is reached.
  • the drive unit is a stepping motor
  • the control command includes a first index that represents the rotation speed of the stepping motor and a third index that represents the deceleration of the stepping motor.
  • the drive unit is a stepping motor
  • the control command is a fourth ratio representing a ratio of a period during which a voltage is applied to the stepping motor with respect to a first period corresponding to one-step operation of the stepping motor.
  • an index of the movable body drive device sets the second period shorter than the first period as one cycle, and in the second period, a pulse having a predetermined voltage value by the ratio represented by the fourth index is obtained.
  • the control unit preferably performs pulse width modulation on the drive signal for controlling the operation of each step of the stepping motor by the continuous pulse signal, and outputs the pulse width modulated drive signal to the stepping motor.
  • the movement destination specified by the control command is represented by the amount of movement of the movable body with reference to the current position, and the storage unit further determines the position of the movable body immediately before the operation. It is preferable that the control unit obtains the moving direction in the immediately preceding operation of the movable body from the difference between the position in the immediately preceding operation and the current position.
  • a gaming machine main body As another embodiment of the present invention, a gaming machine main body, a movable body arranged on the front surface of the gaming machine main body so as to be movable within a predetermined movable range, a driving unit that drives the movable body, and a control of the driving unit
  • a gaming machine having a movable body driving device that performs the above and an effect control unit that controls an effect according to the state of the game.
  • the effect control unit generates a control command that defines the moving destination of the movable body according to the state of the game, and serially transmits the control command to the movable body driving device.
  • the movable body driving device includes a communication unit that receives a control command, a storage unit that stores a current position of the movable body, a difference between the moving destination of the movable body and the current position, or an operation immediately before the movable body.
  • the moving direction in the next operation of the movable body is determined based on the moving direction in, and the movable body is driven to move the movable body along the moving direction in the next operation until the movable body reaches the moving destination.
  • a control unit for controlling the driving unit.
  • the drive unit is a stepping motor
  • the control command is a fourth index representing a ratio of a period during which voltage is applied to the stepping motor with respect to a first period corresponding to one-step operation of the stepping motor.
  • the movable body drive device sets the second period shorter than the first period as one cycle, and in the second period, a pulse having a predetermined voltage value by the ratio represented by the fourth index is obtained.
  • the control unit of the movable body driving device preferably performs pulse width modulation on the drive signal for controlling the operation of each step of the stepping motor by the continuous pulse signal, and outputs the pulse width modulated drive signal to the stepping motor. .
  • the movable body drive device and the gaming machine according to the present invention have an effect of further reducing the load on the host control device.
  • FIG. 1 is a schematic configuration diagram of a movable body driving apparatus according to an embodiment of the present invention.
  • FIG. 2A is a diagram illustrating an example of a relationship between the coordinates of the current position and the coordinates of the moving destination in the absolute coordinate designation mode.
  • FIG. 2B is a diagram illustrating an example of the relationship between the coordinates of the current position and the coordinates of the moving destination in the relative coordinate designation mode.
  • FIG. 2C is a diagram illustrating an example of a relationship between the coordinates of the current position and the coordinates of the moving destination in the inertial movement mode.
  • FIG. 3 is a diagram illustrating an example of a format of a control command including operation information.
  • FIG. 1 is a schematic configuration diagram of a movable body driving apparatus according to an embodiment of the present invention.
  • FIG. 2A is a diagram illustrating an example of a relationship between the coordinates of the current position and the coordinates of the moving destination in the absolute coordinate designation mode.
  • FIG. 2B is
  • FIG. 4A is a diagram illustrating an example of a format of a control command including setting information.
  • FIG. 4B is a diagram illustrating an example of a format of setting data when specified in the individual setting mode.
  • FIG. 4C is a diagram illustrating an example of a format of setting data in the case where it is defined in the initial setting mode.
  • FIG. 5 is a conceptual diagram showing the relationship between the writing of a command set used for controlling the stepping motor and the execution order.
  • FIG. 6A is a diagram illustrating an example of a temporal change in the rotation speed when the rotation speed of the stepping motor is increased.
  • FIG. 6B is a diagram illustrating an example of a temporal change in the rotation speed when the rotation speed of the stepping motor is decreased.
  • FIG. 7A is a diagram illustrating an example of a temporal change in rotational speed when the rotational speed of the stepping motor is increased according to a modification.
  • FIG. 7B is a diagram illustrating an example of a temporal change in the rotation speed when the rotation speed of the stepping motor is decreased according to a modification.
  • FIG. 8 is a schematic perspective view of a ball game machine including a movable body device according to one embodiment of the present invention.
  • FIG. 9 is a schematic rear view of a bullet ball game machine provided with a movable body driving apparatus according to one embodiment of the present invention.
  • FIG. 10A is a schematic front view of the movable accessory part seen through the fixed accessory part.
  • FIG. 10B is a schematic rear view when the movable accessory part is located at one end of the movable range, as viewed from the back side of the fixed accessory part.
  • FIG. 10C is a schematic rear view when the movable accessory part is located at the other end of the movable range, as viewed from the back side of the fixed accessory part.
  • the movable body drive device obtains the current position of the movable body based on a detection signal from a sensor that detects the position of the movable body and the operation of a drive unit such as a stepping motor that drives the movable body, and stores the current position. .
  • this movable body drive device is the difference between the information representing the moving destination of the movable body and the current position of the movable body received from a higher-level control device such as a production CPU, or the previous operation at the current position of the movable body.
  • the moving direction of the movable body is determined, and the movable body is driven until the moving destination is reached.
  • the movable body drive device can move the movable body to a desired movement destination even if the upper control device does not know the current position of the movable body, To alleviate.
  • FIG. 1 is a schematic configuration diagram of a movable body driving apparatus according to an embodiment of the present invention.
  • the movable body drive device 1 includes a communication circuit 2, a register 3, a duty ratio control circuit 4, a sensor interface unit 5, a motor control circuit 6, and a solenoid control circuit 7.
  • Each of these units included in the movable body driving device 1 may be mounted on a circuit board (not shown) as a separate circuit, or may be mounted on the circuit board as an integrated circuit in which these units are integrated. May be.
  • the movable body drive device 1 has a function of controlling a plurality of drive units. Each of the plurality of drive units includes two stepping motors and one solenoid.
  • the solenoid drives the movable body by, for example, attracting the movable body made of a magnetic body by exciting a coil. Therefore, for example, the solenoid has a plurality of coils arranged at different positions along the movable range of the movable body, and these coils are sequentially excited along the moving direction of the movable body, The movable body moves along the moving direction.
  • an absolute coordinate designation mode for designating the coordinates of the moving destination by an absolute coordinate value As a method of designating the coordinates of the moving destination relating to the movable body driven by the stepping motor, an absolute coordinate designation mode for designating the coordinates of the moving destination by an absolute coordinate value, Relative coordinate specification mode in which coordinates are specified by the relative movement amount and movement direction based on the current position, and inertia that specifies the coordinates of the moving destination of the movable body based only on the relative movement amount based on the current position There is a movement mode. First, these modes will be described.
  • FIG. 2A is a diagram illustrating an example of the relationship between the coordinates of the current position and the coordinates of the moving destination in the absolute coordinate designation mode.
  • FIG. 2B is a diagram illustrating an example of the relationship between the coordinates of the current position and the coordinates of the moving destination in the relative coordinate designation mode.
  • FIG. 2C is a diagram illustrating an example of the relationship between the coordinates of the current position and the coordinates of the movement destination in the inertial movement mode.
  • the horizontal axis represents the position coordinates of the movable body by the number of steps of the stepping motor ( ⁇ 1023 to 1022).
  • the movable body moves linearly along the horizontal direction.
  • the movable body driven by the movable body drive device 1 may move linearly along an arbitrary method, or It may be one that rotates.
  • the movable body driving device 1 determines that the moving direction of the movable body is the left direction based on the comparison result between the coordinates of the moving destination and the coordinates of the current position. Then, the movable body driving device 1 automatically moves the movable body in the left direction until reaching the moving destination even if the rendering CPU does not designate the moving direction of the movable body.
  • the movable body driving device 1 The moving direction of the movable body is determined as the right direction, and the movable body is automatically moved rightward until reaching the moving destination.
  • the effect CPU designates a movement destination based on a movement amount and a movement direction relative to the current position of the movable body.
  • the relative movement amount is represented by the number of steps of the stepping motor, for example.
  • the moving direction is represented by the number of steps (+ or-). For example, if + m steps (m is a positive integer) are designated as the relative movement direction and movement amount with respect to the coordinate 211 of the current position of the movable body, the movable body driving device 1 moves the movable body to the right. Move m steps in the direction.
  • the movable body driving device 1 moves the movable body to the left. Move n steps in the direction.
  • the production CPU designates only the relative movement amount with respect to the current position of the movable body.
  • the movable body drive device 1 sets the movement direction in the immediately previous operation of the movable body as the movement direction of the next operation, and moves the movable body by a movement amount k steps (k is a positive integer) designated from the current position 221. Move. Thereby, the movable body drive device 1 can make a movable body stand still, without changing the moving direction of a movable body rapidly.
  • This inertial movement mode is applied, for example, when the movable body is urgently stopped.
  • the rendering CPU generates, for each movable body driven by the stepping motor, a control command for designating the moving destination of the movable body according to any of the above modes, and transmits the control command to the movable body driving device 1. As a result, the movable body can be moved to the moving destination.
  • each part of the movable body drive device 1 will be described.
  • the communication circuit 2 connects, for example, an effect CPU of the gaming machine on which the movable body driving device 1 is mounted and the movable body driving device 1. Then, the communication circuit 2 sends a control command having a plurality of bits transmitted serially from the effect CPU and a clock signal for synchronizing with each of the plurality of bits included in the control command in order to analyze the control command. And receive.
  • the control command includes, for example, operation information for specifying the operation of the movable body driven by any one of the drive units or setting information for defining settings for the drive unit.
  • a set of operation information and setting information for one drive unit is hereinafter referred to as a command set for convenience.
  • One command set defines one operation of the movable body.
  • the clock signal can be, for example, a signal having a rectangular pulse for every predetermined number of bits in the control command.
  • FIG. 3 is a diagram showing an example of a format of a control command including operation information when the drive unit is a stepping motor.
  • the control command 300 includes a START flag 301, a device address 302, an operation / setting switching flag 303, a system designation flag 304, control data 305, and an END flag 306 in order from the top. Further, the control command 300 may include a 1-bit spacer having a value of, for example, “0” between adjacent flags, addresses, and data.
  • the START flag 301 is a bit string indicating the head of the control command 300, and in this embodiment, is a bit string in which nine bits having a value of “1” are continuous.
  • the START flag 301 may be a bit string that does not match any other bit string in the control command 300.
  • the device address 302 is identification information for specifying the movable body drive device to be controlled by the control command 300, and is represented by a bit string having an 8-bit length in this embodiment.
  • the device address 302 is determined by the communication circuit 2 whether or not it matches the identification address separately received from the effect CPU. If they match, it is determined that the movable body drive device 1 is the control target of the control command 300. .
  • the operation / setting switching flag 303 is a 1-bit flag indicating whether the control command includes operation information or setting information. In the present embodiment, if the operation / setting switching flag 303 is “0”, the control command includes operation information, and if the operation / setting switching flag 303 is “1”, the control command includes setting information. In the example of FIG. 3, since the control command 300 includes operation information, the operation / setting switch flag 303 is “0”.
  • the system designation flag 304 is a 1-bit flag that indicates which of the two stepping motors that can be controlled by the movable body drive device 1 is controlled by the control command 300.
  • the control data 305 includes operation information of the stepping motor controlled by the movable body driving device 1. Specifically, the control data 305 includes speed data 3051, a storage destination designation flag 3052, a wait flag 3053, an automatic correction flag 3054, an automatic acceleration / deceleration flag 3055, a coordinate designation mode flag 3056, and coordinate data 3057. Including.
  • Speed data 3051 represents the rotation speed of the stepping motor.
  • the speed data 3051 is a 6-bit long bit string and takes any value from “0” to “63”. If the speed data 3051 is “0”, the stepping motor is stopped, that is, the movable body driven by the stepping motor is stopped. If the speed data 3051 is “1” to “63”, the speed is This represents that the stepping motor is rotated at a rotation speed corresponding to the value of the data 3051.
  • the save destination designation flag 3052 is a 1-bit flag that designates the save destination of the operation information in the register 3.
  • the operation information is stored in the first memory circuit 31 that stores the command set that defines the operation of the normal movable body in the register 3, If the storage destination designation flag 3052 is “1”, the operation information is stored in the second memory circuit 32 that stores a command set that defines the operation of the movable body in the register 3 at the time of emergency stop.
  • the wait flag 3053 is a 1-bit flag indicating whether or not the wait mode is set to stop the stepping motor for a specified period. In the present embodiment, if the wait flag 3053 is “0”, the wait mode is turned off, and the movable body drive device 1 operates according to the rotational speed specified in the speed data 3051 and the number of steps specified in the coordinate data 3057. Control the stepping motor. On the other hand, if the wait flag 3053 is “1”, the wait mode is turned on, and the operation period of one step corresponding to the rotation speed specified in the speed data 3051 is multiplied by the number of steps specified in the coordinate data 3057. This means that the stepping motor is stopped for a period corresponding to the value.
  • the movable body drive device 1 can prevent the stepping motor from being overloaded. Therefore, the movable body drive device 1 can prevent the movable body from following the rotation of the stepping motor or the stepping motor from stepping out.
  • the automatic correction flag 3054 is a 1-bit flag indicating whether or not the current position of the movable body is automatically corrected by a detection signal from a sensor (not shown) that detects the position of the movable body. In the present embodiment, if the automatic correction flag 3054 is “0”, the movable body drive device 1 does not correct the current position of the movable body, while if the automatic correction flag 3054 is “1”, the movable body is driven. The apparatus 1 corrects the current position of the movable body when receiving a detection signal from the sensor.
  • the automatic acceleration / deceleration flag 3055 is a 1-bit flag indicating whether the automatic acceleration / deceleration mode that automatically accelerates or decelerates at the start or end of movement of the movable body is ON or OFF. In this embodiment, if the automatic acceleration / deceleration flag 3055 is “0”, the automatic acceleration / deceleration mode is turned OFF, and the movable body drive device 1 is designated by the speed data 3051 from the start of the movement of the movable body to the end of the movement. The stepping motor that drives the movable body is rotated at the rotated speed.
  • the automatic acceleration / deceleration flag 3055 is “1”
  • the automatic acceleration / deceleration mode is turned ON, and the movable body driving device 1 immediately after the start of the movement of the movable body or immediately before the end of the movement, The rotation speed of the stepping motor is adjusted according to the deceleration value. Details of the operation when the automatic acceleration / deceleration mode is ON will be described later.
  • the coordinate designation mode flag 3056 is a 1-bit flag that represents a mode that defines a method for specifying a moving destination defined in the coordinate data 3057. In the present embodiment, if the coordinate designation mode flag 3056 is “0”, it indicates that the coordinates of the moving destination are absolute coordinate values (that is, the absolute coordinate designation mode is applied), while the coordinate designation mode is specified. If the mode flag 3056 is “1”, the coordinates of the movement destination are relative movement amounts based on the coordinates of the current position (that is, the relative coordinate designation mode or the inertia movement mode is applied). Represents. When the storage destination designation flag 3052 is “0”, the relative coordinate designation mode is selected. When the storage destination designation flag 3052 is “1”, the inertia movement mode is set.
  • the coordinate data 3057 represents the coordinates of the moving destination by the number of steps of the stepping motor.
  • the coordinate data 3057 is a bit string having an 11-bit length, and the coordinates of the moving destination are represented by any number of steps from ⁇ 1024 to 1023. Note that when the inertial movement mode is applied, only the movement amount is defined, so that the coordinate data 3057 takes any value from 0 to 1023.
  • the END flag 306 is a bit string indicating the end of the control command 300.
  • the END flag 306 may be a bit string that does not match the START flag and other bit strings included in the control command.
  • FIG. 4A is a diagram showing an example of a format of a control command including setting information when the drive unit is a stepping motor.
  • the control command 400 includes a START flag 401, a device address 402, an operation / setting switching flag 403, a system designation flag 404, control data 405, and an END flag 406 in order from the top.
  • the control command 400 including the setting information indicates that the value of the operation / setting switching flag 403 is “1” and the content of the control data 405 is Different. Therefore, the control data 405 will be described below.
  • the control data 405 includes a setting mode flag 4051 having a 2-bit length and setting data 4052.
  • the setting mode flag 4051 defines an individual setting mode for setting for each individual command or an initial setting mode for setting common to all control commands. In the present embodiment, if the setting mode flag 4051 is “00”, it represents the individual setting mode, while if the setting mode flag 4051 is “01”, it represents the initial setting mode.
  • FIG. 4B is a diagram showing an example of the format of the setting data 4052 when the setting data 4052 is defined in the individual setting mode.
  • the setting data 4052 includes a storage destination designation flag 4053, a stopping torque 4054, an operating torque 4055, an excitation mode flag 4056, and acceleration data 4057 in order from the top.
  • the save destination designation flag 4053 is a 1-bit flag that designates the save destination of the setting information in the register 3 in the same manner as the save destination designation flag 3052 shown in FIG. In the present embodiment, if the save destination designation flag 4053 is “0”, the setting information is stored in the first memory circuit 31 in the register 3, while if the save destination designation flag 4052 is “1”, the register The setting information is stored in the second memory circuit 32 in FIG.
  • the torque 4054 at the time of stop has a 3-bit length, and when the stepping motor is stopped, the duty ratio of the period during which voltage is actually applied in the operation period of one step of the stepping motor (hereinafter referred to as the duty at the time of stop) Called ratio).
  • the larger the value of the stop-time torque 4054 the higher the stop-time duty ratio.
  • the stop-time duty ratio is defined in eight stages. For example, if the value of the stop torque 4054 is “000”, the stop duty ratio is 0, that is, no voltage is applied to the stepping motor, and the torque is 0. On the other hand, if the stopping torque 4054 is '111', the stopping duty ratio is 1.
  • the operating torque 4055 has a length of 2 bits, and when the stepping motor is rotating, the duty ratio of the period during which voltage is actually applied in the operating period of one step to the stepping motor (hereinafter referred to as the operating duty). Called ratio).
  • the operating duty ratio is defined in four stages. For example, if the operating torque 4055 is “00”, the operating duty ratio is 0.5. On the other hand, if the operating torque 4055 is '11', the operating duty ratio is 1.
  • the excitation mode flag 4056 has a 2-bit length and defines the excitation method of the stepping motor. In this embodiment, if the excitation mode flag 4056 is “00”, it is 2-phase excitation, if it is “01”, it is 1-2 phase excitation, if it is “10”, it is W1-2 phase excitation, if it is “11”. Represents 2W1-2 phase excitation. An excitation method other than the above may be adopted as the excitation method for the stepping motor.
  • the acceleration data 4057 has a 4-bit length and represents the acceleration when the automatic acceleration / deceleration mode is ON.
  • FIG. 4C is a diagram illustrating an example of the format of the setting data 4052 when the setting data 4052 is defined in the initial setting mode.
  • the setting data 4052 includes a default operation setting flag 4058, a stopping torque 4054, an operating torque 4055, an excitation mode flag 4056, acceleration data 4057, and deceleration data 4059 in order from the top.
  • the stop torque 4054, the operation torque 4055, the excitation mode flag 4056, and the acceleration data 4057 are the same as the corresponding data shown in FIG.
  • the default operation setting flag 4058 is 1 bit indicating whether or not the setting information included in the setting data 4052 is default setting information applied when individual setting information corresponding to the operation information stored in the register 3 is not defined. Flag. In the present embodiment, if the default operation setting flag 4058 is “0”, it indicates that the setting information included in the setting data 4052 is default setting information.
  • the deceleration data 4059 has a 4-bit length and represents deceleration when the automatic acceleration / deceleration mode is ON.
  • the setting data 4052 includes the position coordinates of the movable body when a detection signal is input from the sensor that detects the position of the movable body, and any sensor when a plurality of sensors are installed for one movable body. It may include data defining a flag or the like for designating whether the position coordinates are for.
  • the control command when the drive unit is a solenoid may include data defining the moving destination or moving direction of the movable body, the duty ratio of the excitation signal output to each coil of the solenoid, and the like.
  • the communication circuit 2 receives an identification address for specifying the movable body drive device to be controlled by the control command from the effect CPU.
  • the communication circuit 2 writes the operation information or setting information included in the control command into the register 3.
  • the communication circuit 2 discards the received control command.
  • the communication circuit 2 has a memory circuit for storing the identification address so that it can be determined whether or not the identification address and the device address match even when the identification address and the control command are received at different timings. You may do it.
  • the communication circuit 2 when the communication circuit 2 receives a load command for urgently stopping the movable body from the effect CPU, the communication circuit 2 stores the emergency stop operation information and setting information stored in the register 3 into the duty ratio control circuit 4 and the motor. Output to the control circuit 6.
  • the format of the load command may be a format different from the above control command.
  • the load command includes, in order from the top, an identification code indicating that it is a load command and a flag indicating a target movable body.
  • the identification code may be a bit string that does not match any part of the control command.
  • the communication circuit 2 indicates that the command set is executed every time one command set stored in the register 3 is executed for any of the drive units controlled by the movable body drive device 1. Outputs a command completion signal to the CPU for production.
  • the command completion signal can be, for example, a single pulse signal output via a communication line set for each drive unit.
  • the command completion signal is a signal having a different number of pulses depending on the drive unit, and may be output to the rendering CPU via a signal line common to each drive unit.
  • the communication circuit 2 when receiving a command for reading the command set stored in the register 3 from the effect CPU, the communication circuit 2 reads out all the command sets stored in the register 3 and transmits them to the effect CPU. It may be.
  • the register 3 has a so-called first-in first-out (FIFO) first memory circuit 31 having a storage capacity capable of storing a plurality of command sets of each drive unit, and a command set and default setting information at the time of emergency stop for each drive unit. And a second memory circuit 32 capable of storing data.
  • FIFO first-in first-out
  • These memory circuits included in the register 3 are constituted by, for example, volatile semiconductor memory circuits that can be read and written.
  • the register 3 writes operation information or setting information included in the control command to the first memory circuit 31 if the storage destination designation flag included in the received control command is a value indicating that the normal operation is specified. .
  • the register 3 receives the setting information about the movable body from the time when one movement information is received to the time when the next movement information is received, the register 3 stores the movement information and the setting information. Command set.
  • the register 3 does not receive the setting information about the movable body after receiving one operation information about the movable body of interest after receiving the next operation information, The default setting information stored in the second memory circuit 32 is copied to the first memory circuit 31, and a command set with the operation information is created.
  • FIG. 5 is a conceptual diagram showing the relationship between the writing of a command set for controlling the stepping motor and the execution order.
  • the register 3 stores a command set as shown in FIG. 5 for each stepping motor controlled by the movable body driving device 1.
  • each command set 501 to 505 stored in the first memory circuit 31 includes operation information and setting information. Further, it is assumed that the command set located at the lower side is written earlier. Therefore, in this example, the command set 501 is written first, and the command set 505 is written last.
  • Each command set is stored in one of the buffers 511 to 515. Then, the command set is read from the buffer closest to the reading side (the lowermost buffer 511 in FIG.
  • each command set is transferred to one read side buffer.
  • the operation information or setting information stored in the buffer 515 closest to the writing side is It is rewritten with newly received operation information or setting information.
  • the second memory circuit 32 stores an emergency stop command set 506 and default setting information 507.
  • the emergency stop command set 506 is transferred to the buffer 511 closest to the reading side, read out from the buffer 511, and the duty ratio control circuit 4 and the motor control. It is transferred to the circuit 6. At this time, the command set stored in the other buffer of the first memory circuit 31 is erased.
  • the default setting information 507 is transferred to the buffer 511 and a command set is created. Thereafter, the command set is read and transferred to the duty ratio control circuit 4 and the motor control circuit 6.
  • the duty ratio control circuit 4 has a predetermined voltage value only for a period corresponding to the duty ratio at the time of stop or the duty ratio at the time of operation, which is defined by the setting information of the command set for each predetermined unit period. A continuous pulse signal in which pulses having a voltage value different from the predetermined voltage value continues is generated.
  • the duty ratio control circuit 4 includes, for example, a processor and a nonvolatile memory circuit.
  • a reference table that represents the relationship between the actual duty ratio and the values representing the duty ratio at stop and the duty ratio during operation specified by the setting information is stored.
  • the processor included in the duty ratio control circuit 4 determines an actual duty ratio by referring to the reference table.
  • the processor generates the continuous pulse signal according to the determined duty ratio.
  • the predetermined unit period is set to, for example, 1/100 to 1/5 of the operation period of one step when the rotation speed of the stepping motor included in the operation information is maximum.
  • the duty ratio control circuit 4 supplies the generated continuous pulse signal to the motor control circuit 6 or the solenoid control circuit 7.
  • the sensor interface unit 5 includes an interface circuit that receives a detection signal from a sensor that detects the position of the movable body.
  • the sensor interface unit 5 may have different input terminals for each sensor, for example.
  • the sensor includes, for example, a light source such as a light emitting diode and a light receiving element such as a photodiode disposed so as to face the light source and receive light from the light source.
  • a light source such as a light emitting diode
  • a light receiving element such as a photodiode
  • the sensor may be a proximity sensor based on another principle such as a magnet sensor.
  • a plurality of sensors may be installed for one movable body. In this case, the sensors are installed at different positions within the movable range of the movable body. For example, when two sensors are installed for one movable body, the two sensors are respectively installed at both ends of the movable range of the movable body.
  • the sensor interface unit 5 When the sensor interface unit 5 receives a detection signal from a sensor that detects the position of the movable body driven by the stepping motor, the sensor interface unit 5 notifies the motor control circuit 6 of the detection signal. When the sensor interface unit 5 receives a detection signal from a sensor that detects the position of the movable body driven by the solenoid, the sensor interface unit 5 notifies the solenoid control circuit 7 of the detection signal. At that time, the sensor interface unit 5 receives the detection signal and then shifts the detection signal by a different delay time so that the detection signal of the sensor installed for which movable unit can be identified. You may transfer to the motor control circuit 6 or the solenoid control circuit 7. Alternatively, the sensor interface unit 5 may transfer the detection signal to the motor control circuit 6 or the solenoid control circuit 7 together with an identification code that is different for each sensor.
  • the motor control circuit 6 controls a stepping motor, which is an example of a drive unit, according to the command set read from the register 3.
  • the motor control circuit 6 includes a first control circuit 61 for controlling one stepping motor and a second control circuit 62 for controlling the other stepping motor.
  • Each of the control circuits 61 and 62 includes, for example, a processor, receives a command set from the register 3 separately, and controls a stepping motor that drives a corresponding movable body.
  • the motor control circuit 6 further includes a memory circuit 63 that stores the current position of each movable body and the position at the start of the operation of the previous step.
  • the memory circuit 63 is an example of a storage unit that stores the current position of the movable body.
  • Each control circuit 61, 62 has six output terminals so that, for example, a unipolar stepping motor can be controlled. Or each control circuit 61 and 62 may have four output terminals so that a bipolar stepping motor can be controlled, for example. Furthermore, each of the control circuits 61 and 62 has six output terminals, and the output terminals for outputting the signals are made different according to the identification signal representing the unipolar type or bipolar type received from the effect CPU. Also good.
  • each control circuit 61, 62 compares the coordinates of the current position of the movable body with the coordinates of the moving destination when the coordinates of the moving destination included in the operation information are designated as absolute values.
  • Each control circuit 61, 62 determines the moving direction of the movable body according to the sign of the difference between the coordinates of the moving destination and the coordinates of the current position. For example, as shown in FIG. 2A, the movable body moves straight along the horizontal direction, and the movable body can move as the number of steps representing the position coordinates of the movable body is a positive value.
  • each control circuit 61, 62 determines to move the movable body to the right if the difference obtained by subtracting the coordinates of the current position from the coordinates of the moving destination is positive, If the difference is negative, it is determined to move the movable body to the left.
  • the movable body rotates about a predetermined fixed point as a rotation axis, and the larger the number of steps representing the position coordinates of the movable body, the larger the positive value, the more the movable body moves in the clockwise direction of the movable range.
  • each control circuit 61, 62 determines to move the movable body in the clockwise direction if the difference between the coordinates of the moving destination minus the coordinates of the current position is positive, If the difference is negative, it is determined that the movable body is moved in the counterclockwise direction.
  • each control circuit 61, 62 determines to move the movable body in the designated movement direction. Further, when the moving destination setting mode is the inertial movement mode, each control circuit 61, 62 stores the sign of the difference between the current position of the movable body and the position in the previous step stored in the memory circuit. From the above, the moving direction in the operation immediately before the movable body is specified. Each control circuit 61, 62 determines to move the movable body in the specified movement direction.
  • each control circuit 61, 62 determines an operation period corresponding to one step according to the rotation speed of the stepping motor. At this time, if the automatic acceleration / deceleration mode is ON, the control circuits 61 and 62 adjust the rotation speed of the stepping motor according to the acceleration data or the deceleration data included in the setting information.
  • FIG. 6A is a diagram illustrating an example of a temporal change in rotational speed when the rotational speed of the stepping motor is increased
  • FIG. 6B is an example of a temporal change in rotational speed when the rotational speed of the stepping motor is decreased.
  • the horizontal axis represents time
  • the vertical axis represents the rotation speed of the stepping motor.
  • the graph 601 represents the relationship between the passage of time and the rotation speed when the rotation speed increases
  • the graph 602 represents the relationship between the passage of time and the rotation speed when the rotation speed decreases.
  • Time t 0 represents the time at which each control circuit 61, 62 starts executing the command set of interest.
  • rsd represents speed data defined in the speed data included in the operation information.
  • each control circuit 61, 62 has a predetermined first step number (for example, 5 to 5) of the stepping motor from the current position of the movable body.
  • the rotational speed of the stepping motor is gradually accelerated or decelerated at the acceleration or deceleration specified in the acceleration data or deceleration data included in the setting information until the distance corresponding to 20 steps) is moved.
  • the rotational speed of the stepping motor is adjusted to be defined in the speed data included in the operation information rotational speed. Also after time t 1, the rotation speed of the stepping motor is maintained at a rotational speed that is specified for the speed data.
  • Each of the control circuits 61 and 62 indicates, for example, the rotational speed indicated in the speed data specified in the command set to be executed in the speed data specified in the command set executed immediately before. If it is faster than the rotation speed, the stepping motor is accelerated. On the other hand, if the rotation speed indicated in the speed data specified in the command set to be executed is slower than the rotation speed indicated in the speed data specified in the previous command set, each control is executed. Circuits 61 and 62 decelerate the stepping motor.
  • FIG. 7A is a diagram illustrating an example of a temporal change in the rotation speed when the rotation speed of the stepping motor is increased according to the modification
  • FIG. 7B is a rotation when the rotation speed of the stepping motor is decreased according to the modification.
  • the horizontal axis represents time
  • the vertical axis represents the rotation speed of the stepping motor.
  • a graph 701 represents the relationship between the passage of time and the rotational speed when the rotational speed increases
  • a graph 702 represents the relationship between the passage of time and the rotational speed when the rotational speed decreases.
  • Time t 0 represents the time at which each control circuit 61, 62 starts executing the command set of interest.
  • rsd represents speed data defined in the speed data included in the operation information.
  • each control circuit 61, 62 causes the movable body to reach a position in front of the target coordinates by a distance corresponding to a predetermined second step number (for example, 5 to 20 steps) of the stepping motor. and time t 2 subsequent to gradually accelerate or decelerate the rotation speed of the stepping motor in the acceleration or deceleration corresponding to the acceleration or deceleration of the information included in the setting information. And each control circuit 61 and 62, so that at time t 3 when reaching the target coordinate the rotational speed of the stepping motor becomes a rotation speed indicated in the speed data, adjusting the rotational speed of the stepping motor.
  • a predetermined second step number for example, 5 to 20 steps
  • the movable body drive device 1 may start the movement of the movable body when starting an operation corresponding to one command set, and stop the movable body when the operation ends.
  • the control circuits 61 and 62 gradually increase the rotation speed of the stepping motor with the acceleration included in the setting information from the start of the movement when starting the movement of the movable body.
  • the rotation speed of the stepping motor is equal to the rotation speed specified in the speed data.
  • the rotational speed of the stepping motor is adjusted so that Each of the control circuits 61 and 62 maintains the rotational speed until the movable body reaches the deceleration start position just before the target coordinate by a distance corresponding to the third step number of the stepping motor. Then, after the movable body reaches the deceleration start position, each of the control circuits 61 and 62 gradually reduces the rotation speed of the stepping motor at a deceleration according to the deceleration information included in the setting information.
  • the control circuits 61 and 62 adjust the rotation speed of the stepping motor so that the rotation speed of the stepping motor becomes 0 rpm when the target coordinates are reached.
  • the movable body drive device 1 when the automatic acceleration / deceleration mode is used, the movable body drive device 1 is suddenly accelerated when the movable body starts moving from the stopped state, or when the operation designated in the operation information is finished. Thus, it is possible to prevent sudden braking from being applied when the movable body is stopped, and to prevent the stepping motor from being overloaded. Therefore, the movable body drive device 1 can prevent the movable body from following the rotation of the stepping motor or the stepping motor from stepping out.
  • the first to third step numbers, acceleration and deceleration are, for example, the values of the index of acceleration and deceleration in the setting information stored in the memory circuit 63 and the number of steps, acceleration and deceleration. It is determined by referring to a reference table representing the relationship.
  • the control circuits 61 and 62 control the rotation speed of the stepping motor to move the movable body as shown by the graphs 603 and 604 shown by dotted lines in FIGS. 6A and 6B.
  • the rotation speed specified in the speed data included in the operation information is set immediately after the start until the target coordinates are reached.
  • each control circuit 61, 62 refers to a reference table that is stored in the memory circuit 63 and represents the relationship between the rotational speed and the operation period per step. To decide.
  • each of the control circuits 61 and 62 applies a pulse-form to be applied to each terminal of the stepping motor corresponding to the determined operation period according to the excitation method and the moving direction corresponding to the value of the excitation mode flag included in the setting information.
  • a drive signal is generated.
  • each control circuit 61, 62 is stored in, for example, the memory circuit 63 and is executed by each control circuit 61, 62 according to a program for generating a drive signal.
  • the drive signal corresponding to the moving direction may be generated.
  • the signal waveform of the drive signal corresponding to the excitation method output to each terminal is known as disclosed in, for example, Japanese Patent Application Laid-Open Nos. 6-189597 and 2009-247833. Detailed description thereof is omitted here.
  • each control circuit 61, 62 performs pulse width modulation on the drive signal applied to each terminal by multiplying the continuous pulse signal received from the duty ratio control circuit 4 and its drive signal.
  • the movable body drive device 1 can suppress the amount of heat generated by the stepping motor to be controlled by reducing the duty ratio of the pulse signal, while controlling by increasing the duty ratio of the pulse signal.
  • the torque of the target stepping motor can be increased.
  • Each control circuit 61, 62 outputs a drive signal for each terminal subjected to pulse width modulation.
  • each control circuit 61, 62 Each time each control circuit 61, 62 outputs a drive signal corresponding to one step, it updates the current position of the movable body stored in the memory circuit 63 and the position at the start of operation in the previous step. . Specifically, when the movable body moves in the direction in which the number of steps increases, each of the control circuits 61 and 62 sets 1 to the number of steps representing the current position and the number of steps representing the position in the previous step. Is added. On the other hand, when the movable body moves in the direction in which the number of steps decreases, each control circuit 61, 62 subtracts 1 from the number of steps representing the current position and the number of steps representing the position in the previous step. .
  • the control circuits 61 and 62 each have the coordinate representing the current position of the movable body as the coordinate of the moving destination. It is determined whether or not they match. If the coordinate value representing the current position of the movable body does not coincide with the coordinate of the moving destination, each control circuit 61, 62 again generates a pulse width modulated drive signal for one step and sends it to each terminal. Output and update the current position. On the other hand, if the coordinate value representing the current position of the movable body matches the target coordinate, each control circuit 61, 62 determines that the operation of the movable body corresponding to one command set has been completed.
  • control circuits 61 and 62 output the drive signals for the number of steps designated by the relative values to the respective terminals, and for the number of steps. Only update the current position etc. Thereafter, the control circuits 61 and 62 determine that the operation of the movable body corresponding to one command set has been completed.
  • control circuit 61, 62 determines that the operation of the movable body has been completed, the control circuit 61, 62 transmits a command completion signal to the effect CPU via the communication circuit 2.
  • Each control circuit 61, 62 receives a detection signal from a sensor that detects the position of the movable body driven by the stepping motor corresponding to the control circuit from the sensor interface unit 5 when the automatic correction flag is ON.
  • the coordinate value representing the position of the movable body stored in the memory circuit 63 is rewritten to the coordinate value representing the detection position where the sensor corresponding to the detection signal detects the movable body.
  • the movable body drive device 1 can grasp the exact position of the movable body.
  • the solenoid control circuit 7 In accordance with the control command received from the register 3, the solenoid control circuit 7 generates an excitation signal for each coil in accordance with the moving direction or the moving destination of the movable body included in the control command. Output to the coil. Similar to the motor control circuit 6, the solenoid control circuit 7 may have a memory circuit that stores the current position of the movable body driven by the solenoid. When the moving destination of the movable body is included in the control command, the solenoid control circuit 7 also determines the moving direction of the movable body by comparing the coordinates of the moving destination with the coordinates of the current position, and the movement An excitation signal for each coil may be generated so that the coils are sequentially excited along the direction from the closest position to the current position.
  • this movable body drive device grasps the current position of the movable body driven by the stepping motor, a higher-level control device such as a production CPU designates the target coordinates of the movable body. Only by doing this, the moving direction of the movable body can be determined, and the movable body can be moved to the target coordinates. Therefore, the host control device does not need to grasp the current position of the movable body and does not need to determine the moving direction of the movable body according to the difference between the coordinates of the current position and the target coordinates. Therefore, this movable body drive device can reduce the load of the host control device related to the drive of the movable body.
  • the movable body drive device may not have a solenoid control circuit.
  • the movable body driving device does not accept a control command for specifying the target coordinates only by the relative movement amount with respect to the current position, such as the inertial movement mode shown in FIG. 2C. Good.
  • the memory circuit of the motor control circuit need only store the current position of the movable body.
  • the register may store the coordinates of the current position of the movable body and the coordinates of the position when the previous step is executed.
  • one control command may include both operation information and setting information.
  • FIG. 8 is a schematic perspective view of a ball game machine 100 including a movable body driving device according to any one of the above-described embodiments or a modified example.
  • FIG. 9 is a schematic rear view of the ball game machine 100.
  • the ball game machine 100 is provided in a large area from the top to the center, and includes a game board 101 that is a main body of the game machine, and a ball receiving part that is disposed below the game board 101.
  • the ball game machine 100 is provided between the fixed board part 105 disposed below the game board 101 on the front surface of the game board 101 and the game board 101 and the fixed game part 105 for the production of the game. And a movable accessory part 106 arranged.
  • a rail 107 is disposed on the side of the game board 101.
  • a number of obstacle nails (not shown) and at least one winning device 108 are provided.
  • the operation unit 103 launches a game ball with a predetermined force from a launching device (not shown) according to the turning amount of the handle by the player's operation.
  • the launched game ball moves upward along the rail 107 and falls between a number of obstacle nails.
  • the main control circuit 110 provided on the back surface of the game board 101 determines a predetermined value corresponding to the winning device 108 containing the game balls.
  • the game balls are paid out to the ball receiving unit 102 via a ball payout device (not shown). Further, the main control circuit 110 displays various images on the display device 104 via the effect CPU 111 provided on the back of the game board 101.
  • the movable accessory part 106 is an example of a movable body that moves in accordance with the state of the game, and is driven by a movable body driving device 112 provided on the back of the game board 101.
  • the movable body driving device 112 may be a movable body driving device according to each embodiment of the present invention or a modification thereof.
  • the movable body is also movable. It may be driven by the driving device 112.
  • FIG. 10A is a schematic front view of the movable accessory portion 106 driven by the movable body driving device 112 as seen through the fixed accessory portion 105.
  • FIG. 10B is a schematic rear view when the movable accessory part 106 is located at one end of the movable range, as viewed from the back side of the fixed accessory part 105.
  • FIG. 10C is a schematic rear view when the movable accessory part 106 is located at the other end of the movable range, as viewed from the back side of the fixed accessory part 105.
  • the movable accessory part 106 includes a star-shaped decorative member 121 and a rod-shaped support member 122 that holds the decorative member 121 at one end.
  • the support member 122 engages with a rail 123 provided on the back side of the fixed accessory portion 105 so as to contact the lower end of the support member 122 in an oblique direction from the lower left end of the game board 101 toward the upper right. It is held so as to be able to move straight along the rail 123.
  • the decorative member 121 is fixed as viewed from the front side of the game board 101. It hides behind the object part 105 and disappears from the player.
  • Teeth as linear gears are formed on the upper surface side of the support member 122, and these teeth are located on the lower left side of the support member 122 when the movable accessory part 106 is located at the upper right end of the movable range. It engages with a reduction gear 124 installed in the vicinity of the end position on the end side.
  • the reduction gear 124 is engaged with a gear 127 attached to the rotation shaft 126 of the stepping motor 125. Therefore, when the stepping motor 125 rotates by a predetermined angle, the movable accessory portion 106 moves by a predetermined movement amount corresponding to the rotation angle via the gear 127 and the reduction gear 124.
  • the stepping motor 125 is controlled by the movable body driving device 112.
  • a sensor 128 is provided in the vicinity of the position of the end portion on the lower left side of the support member 122 when the movable accessory portion 106 is located at the lower left end portion of the movable range, and the movable accessory portion 106 is provided.
  • a detection signal is generated, and the detection signal is transmitted to the movable body driving device 112.
  • the sensor 128 is, for example, a magnet sensor, and the movable accessory portion 106 reaches the lower left end of the movable range by detecting a magnetic body attached to the end portion on the lower left end side of the support member 122. Can be detected.
  • the sensor 128 may be an optical sensor having a light emitting diode and a light receiving element.
  • the effect CPU 111 determines the target coordinates of the movable accessory part 106 and generates a control command according to the determination. . Then, the production CPU 111 outputs the generated control command to the movable body driving device 112. For example, before the game ball enters the winning device 107, the effecting CPU 111 moves the movable accessory part 106 to the lower left end of the movable range so that the movable accessory part 106 is hidden behind the fixed accessory part 105. Is transmitted to the movable body driving device 112 as a moving destination.
  • the effect CPU 111 moves the movable accessory part 106.
  • a control command for designating the upper right end portion of the possible range as the movement destination is generated, and the control command is transmitted to the movable body driving device 112.

Abstract

 可動体駆動装置(1)は、遊技機に設けられた可動体の移動目的地を規定する制御コマンドを受信する通信部(2)と、可動体の現在位置を記憶する記憶部(63)と、その可動体の移動目的地と現在位置との差、またはその可動体の直前の動作における移動方向に基づいて、可動体の次の動作における移動方向を決定し、次の動作における移動方向に沿って可動体が移動目的地に達するまで可動体を移動させるように、可動を駆動する駆動ユニットを制御する制御部(61、62、7)とを有する。

Description

可動体駆動装置及び遊技機
 本発明は、可動体を駆動するための可動体駆動装置、及びそのような可動体駆動装置を有する遊技機に関する。
 回胴遊技機または弾球遊技機などの遊技機には、遊技者の興趣を高めるために、遊技者の視覚、聴覚または感覚に訴える演出を行うための工夫が凝らされている。特に、遊技者の視覚に訴える演出を行うために、遊技機には、移動する可動体、例えば、可動役物が設けられることがある。このような可動体は、例えば、ステッピングモータによって駆動される。そして上位の制御装置の一例である演出用のプロセッサユニット(以下、単に演出用CPUと呼ぶ)が、遊技の状態に応じて可動体が指定された位置へ移動する移動量に相当するステップ数だけステッピングモータを回転させる命令を、ステッピングモータの制御回路へ送信する。
 また近年、遊技者の興趣を高めるために、遊技機に搭載される、演出用CPUの制御対象が増加する傾向にある。例えば、遊技機には、可動役物の他、多数の光源及び液晶ディスプレイといった表示装置が搭載される。そのため、演出用CPUから出力される端子の数、及び演出用CPUの演算量といった負荷も増大する傾向にある。そこで、可動体に所望の動作をさせるための演算に要する演算量を軽減することが望まれている。このような要望に対して、ステッピングモータの制御に要するハードウェアまたはソフトウェアのリソースを削減させるための技術が開発されている(例えば、特許文献1及び2を参照)。
 例えば、特開平6-189597号公報に開示されたステッピングモータ駆動制御装置は、正転/逆転、スピード切替、モード切替などの入力信号に応じた4相の駆動制御信号をマイクロコンピュータが生成することにより、回路部品を増やすことなく励磁方法、回転方向、回転速度などの変更を実現できるようにしている。
 また、特開2009-247833号公報に開示された可動体駆動装置は、可動体の動作結果を上位の制御装置へ送信し、その制御装置からの指令、または動作結果に基づいて、駆動手段により可動体を駆動させる。
 しかしながら、特開平6-189597号公報及び特開2009-247833号公報に開示された技術では、演出用CPUが可動体を所望の移動目的地へ移動させるには、演出用CPU自体が可動体の現在位置を把握していなければならない。そのために、演出用CPUは、可動体を移動させる度に、可動体の現在位置に関する情報を、ステッピングモータの制御回路、あるいは、可動体の位置を検出するためのセンサから受信する必要がある。また演出用CPUは、可動体の現在位置の座標と移動目的地の座標との差に基づいて、可動体を駆動するステッピングモータの回転方向、ステップ数などを決定するための演算を行う必要があった。このように、演出用CPUは、可動体を移動させる度に、可動体の現在位置に関する情報の受信、及びステッピングモータの回転方向、ステップ数などを決定するための処理を行わなければならない。そのため、可動体を駆動するに際し、演出用CPUといった上位の制御装置の負荷のさらなる軽減が要望されている。
 そこで、本発明は、上位の制御装置の負荷をより軽減可能な可動体駆動装置、及びそのような可動体駆動装置を有する遊技機を提供することを目的とする。
 本発明の一つの形態として、遊技機に設けられた可動体を駆動する駆動ユニットを制御する可動体駆動装置が提供される。この可動体駆動装置は、可動体の移動目的地を規定する制御コマンドを受信する通信部と、可動体の現在位置を記憶する記憶部と、その可動体の移動目的地と現在位置との差、またはその可動体の直前の動作における移動方向に基づいて、可動体の次の動作における移動方向を決定し、次の動作における移動方向に沿って可動体が移動目的地に達するまで可動体を移動させるように、駆動ユニットを制御する制御部とを有する。
 この可動体駆動装置において、駆動ユニットはステッピングモータであり、制御コマンドは、ステッピングモータの回転速度を表す第1の指標とステッピングモータの加速度または減速度を表す第2の指標とを含み、制御部は、可動体が、現在位置からステッピングモータの第1のステップ数に対応する距離を移動するまで、第2の指標により示された加速度または減速度でステッピングモータの回転速度を加速または減速させ、その距離を移動した時点で第1の指標により示された回転速度となるようにステッピングモータを制御することが好ましい。
 またこの可動体駆動装置において、駆動ユニットはステッピングモータであり、制御コマンドは、ステッピングモータの回転速度を表す第1の指標とステッピングモータの加速度または減速度を表す第2の指標とを含み、制御部は、可動体が、ステッピングモータの第2のステップ数に対応する距離よりも移動目的地に近づくと、第2の指標により示された加速度または減速度でステッピングモータの回転速度を加速または減速し、移動目的地に達した時点でその回転速度が第1の指標により示された回転速度となるようにステッピングモータを制御することが好ましい。
 あるいはまた、この可動体駆動装置において、駆動ユニットはステッピングモータであり、制御コマンドは、ステッピングモータの回転速度を表す第1の指標とステッピングモータの減速度を表す第3の指標とを含み、制御部は、可動体が、ステッピングモータの第3のステップ数に対応する距離よりも移動目的地に近づくと、第3の指標により示された減速度でステッピングモータの回転速度を減速し、移動目的地に達した時点で回転速度が0となるようにステッピングモータを制御することが好ましい。
 さらに、この可動体駆動装置において、駆動ユニットはステッピングモータであり、制御コマンドは、ステッピングモータの1ステップの動作に相当する第1の期間に対するステッピングモータに電圧を印加する期間の比を表す第4の指標を含むことが好ましい。この場合において、可動体駆動装置は、第1の期間よりも短い第2の期間を1周期とし、第2の期間において、第4の指標に表された比だけ所定の電圧値を持つパルスが連続する連続パルス信号を生成するデューティ比制御部をさらに有することが好ましい。そして制御部は、連続パルス信号によって、ステッピングモータのステップごとの動作を制御する駆動信号をパルス幅変調し、そのパルス幅変調された駆動信号をステッピングモータへ出力することが好ましい。
 さらに、この可動体駆動装置において、制御コマンドに規定される移動目的地は、現在位置を基準とする可動体の移動量で表され、記憶部は、可動体の直前の動作時の位置をさらに記憶し、制御部は、直前の動作時の位置と現在位置との差によって可動体の直前の動作における移動方向を求めることが好ましい。
 本発明の他の形態として、遊技機本体と、遊技機本体の前面に、所定の移動可能範囲内で移動可能に配置される可動体と、可動体を駆動する駆動ユニットと、駆動ユニットを制御する可動体駆動装置と、遊技の状態に応じた演出を制御する演出制御部とを有する遊技機が提供される。
 この遊技機において、演出制御部は、遊技の状態に応じて、可動体の移動目的地を規定する制御コマンドを生成し、その制御コマンドを可動体駆動装置へシリアル伝送する。そして可動体駆動装置は、制御コマンドを受信する通信部と、可動体の現在位置を記憶する記憶部と、その可動体の移動目的地と現在位置との差、またはその可動体の直前の動作における移動方向に基づいて、可動体の次の動作における移動方向を決定し、次の動作における移動方向に沿って可動体が移動目的地に達するまで可動体を移動させるように、可動体を駆動する駆動ユニットを制御する制御部とを有する。
 さらに、この遊技機において、駆動ユニットはステッピングモータであり、制御コマンドは、ステッピングモータの1ステップの動作に相当する第1の期間に対するステッピングモータに電圧を印加する期間の比を表す第4の指標を含むことが好ましい。この場合において、可動体駆動装置は、第1の期間よりも短い第2の期間を1周期とし、第2の期間において、第4の指標に表された比だけ所定の電圧値を持つパルスが連続する連続パルス信号を生成するデューティ比制御部をさらに有することが好ましい。そして可動体駆動装置の制御部は、連続パルス信号によって、ステッピングモータのステップごとの動作を制御する駆動信号をパルス幅変調し、そのパルス幅変調された駆動信号をステッピングモータへ出力することが好ましい。
 本発明に係る可動体駆動装置及び遊技機は、上位の制御装置の負荷をより軽減できるという効果を奏する。
図1は、本発明の一つの実施形態に係る可動体駆動装置の概略構成図である。 図2Aは、絶対座標指定モードにおける、現在位置の座標と移動目的地の座標との関係の一例を表す図である。 図2Bは、相対座標指定モードにおける、現在位置の座標と移動目的地の座標との関係の一例を表す図である。 図2Cは、慣性移動モードにおける、現在位置の座標と移動目的地の座標との関係の一例を表す図である。 図3は、動作情報を含む制御コマンドのフォーマットの一例を示す図である。 図4Aは、設定情報を含む制御コマンドのフォーマットの一例を示す図である。 図4Bは、個別設定モードで規定されている場合の設定データのフォーマットの一例を示す図である。 図4Cは、初期設定モードで規定されている場合の設定データのフォーマットの一例を示す図である。 図5は、ステッピングモータの制御に用いられるコマンドセットの書き込みと実行順序の関係を示す概念図である。 図6Aは、ステッピングモータの回転速度を上昇させる場合の回転速度の時間変化の一例を示す図である。 図6Bは、ステッピングモータの回転速度を低下させる場合の回転速度の時間変化の一例を示す図である。 図7Aは、変形例による、ステッピングモータの回転速度を上昇させる場合の回転速度の時間変化の一例を示す図である。 図7Bは、変形例による、ステッピングモータの回転速度を低下させる場合の回転速度の時間変化の一例を示す図である。 図8は、本発明の一つの実施形態に係る可動体装置を備えた弾球遊技機の概略斜視図である。 図9は、本発明の一つの実施形態に係る可動体駆動装置を備えた弾球遊技機の概略背面図である。 図10Aは、固定役物部を透過して見た、可動役物部の概略正面図である。 図10Bは、固定役物部の背面側から見た、可動役物部が移動可能範囲の一端に位置する場合の概略背面図である。 図10Cは、固定役物部の背面側から見た、可動役物部が移動可能範囲の他端に位置する場合の概略背面図である。
 以下、本発明の一つの実施形態による可動体駆動装置を、図を参照しつつ説明する。この可動体駆動装置は、可動体の位置を検出するセンサからの検知信号及び可動体を駆動するステッピングモータといった駆動ユニットの動作に基づいて、可動体の現在位置を求め、その現在位置を記憶する。そしてこの可動体駆動装置は、演出用CPUといった上位の制御装置から受信した、可動体の移動目的地を表す情報と可動体の現在位置との差、あるいは、可動体の現在位置における直前の動作の際の移動方向に基づいて、可動体の移動方向を決定し、その移動目的地に達するまで可動体を駆動する。これにより、この可動体駆動装置は、上位の制御装置が可動体の現在位置を把握していなくても、可動体を所望の移動目的地まで移動させることを可能として、上位の制御装置の負荷を軽減する。
 図1は、本発明の一つの実施形態に係る可動体駆動装置の概略構成図である。図1に示されるように、可動体駆動装置1は、通信回路2と、レジスタ3と、デューティ比制御回路4と、センサインターフェース部5と、モータ制御回路6と、ソレノイド制御回路7と、を有する。
 可動体駆動装置1が有するこれらの各部は、それぞれ、別個の回路として回路基板(図示せず)上に実装されてもよく、あるいは、これらの各部が集積された集積回路として回路基板上に実装されてもよい。
 本実施形態では、可動体駆動装置1は、複数の駆動ユニットを制御する機能を持つ。複数の駆動ユニットのそれぞれは、二つのステッピングモータと、一つのソレノイドである。ソレノイドは、例えば、コイルを励磁することにより、磁性体からなる可動体を吸引することによって、その可動体を駆動する。そのため、例えば、ソレノイドは、可動体の移動可能範囲に沿って、互いに異なる位置に配置された複数のコイルを有し、それらコイルが、可動体の移動方向に沿って順次励起されることにより、可動体がその移動方向に沿って移動する。
 また、可動体駆動装置1では、ステッピングモータにて駆動する可動体に関する移動目的地の座標の指定方法として、移動目的地の座標を絶対座標値で指定する絶対座標指定モードと、移動目的地の座標を現在位置を基準とする相対的な移動量及び移動方向で指定する相対座標指定モードと、可動体の移動目的地の座標を現在位置を基準とする相対的な移動量のみで指定する慣性移動モードとがある。そこで先ず、これらのモードについて説明する。
 図2Aは、絶対座標指定モードにおける、現在位置の座標と移動目的地の座標との関係の一例を表す図である。図2Bは、相対座標指定モードにおける、現在位置の座標と移動目的地の座標との関係の一例を表す図である。さらに図2Cは、慣性移動モードにおける、現在位置の座標と移動目的地の座標との関係の一例を表す図である。図2A~図2Cにおいて、横軸は、可動体の位置座標を、ステッピングモータのステップ数(-1023~1022)で表す。またこの例では、可動体は水平方向に沿って直線的に移動するが、可動体駆動装置1により駆動される可動体は、任意の方法に沿って直線的に移動するものでもよく、あるいは、回転移動するものであってもよい。
 図2Aに示す絶対座標指定モードでは、座標202が可動体の現在位置である場合のように、絶対座標で指定された移動目的地の座標201よりも可動体の現在位置が右側に位置すれば、可動体駆動装置1は、移動目的地の座標と現在位置の座標との比較結果に基づいて、可動体の移動方向を左方向と判定する。そして可動体駆動装置1は、演出用CPUが可動体の移動方向を指定しなくても、可動体を、移動目的地に達するまで自動的に左方向に移動させる。逆に、座標203が可動体の現在位置である場合のように、絶対座標で指定された移動目的地の座標201よりも可動体の現在位置が左側に位置する場合、可動体駆動装置1は、可動体の移動方向を右方向と判定し、可動体を、移動目的地に達するまで自動的に右方向に移動させる。
 図2Bに示す相対座標指定モードでは、演出用CPUは、可動体の現在位置に対する相対的な移動量と移動方向により、移動目的地を指定する。相対的な移動量は、例えば、ステッピングモータのステップ数で表される。また移動方向は、ステップ数の符号(+または-)により表される。例えば、可動体の現在位置の座標211に対して、相対的な移動方向及び移動量として+mステップ(mは正の整数)が指定されると、可動体駆動装置1は、可動体を右方向へmステップ分移動させる。また、可動体の現在位置の座標211に対して、相対的な移動方向及び移動量として-nステップ(nは正の整数)が指定されると、可動体駆動装置1は、可動体を左方向へnステップ分移動させる。
 図2Cに示す慣性移動モードでは、演出用CPUは、可動体の現在位置に対する相対的な移動量のみを指定する。このモードでは、可動体駆動装置1は、可動体の直前の動作における移動方向を次の動作の移動方向とし、現在位置221から指定された移動量kステップ(kは正の整数)だけ可動体を移動させる。これにより、可動体駆動装置1は、可動体の移動方向を急激に変化させずに、可動体を静止させることができる。この慣性移動モードは、例えば、可動体を緊急停止させる場合に適用される。
 演出用CPUは、ステッピングモータにより駆動される各可動体について、上記の何れかのモードに従って可動体の移動目的地を指定する制御コマンドを生成し、その制御コマンドを可動体駆動装置1へ送信することで、可動体をその移動目的地へ移動させることができる。
 以下、可動体駆動装置1の各部について説明する。
 通信回路2は、例えば、可動体駆動装置1が実装された遊技機の演出用CPUと可動体駆動装置1とを接続する。そして通信回路2は、演出用CPUから、シリアル伝送される複数のビットを持つ制御コマンドと、制御コマンドを解析するために、制御コマンドに含まれる複数のビットのそれぞれと同期を取るためのクロック信号とを受信する。
 制御コマンドは、例えば、何れかの駆動ユニットが駆動する可動体の動作を特定するための動作情報またはその駆動ユニットについての設定を規定する設定情報とを含む。一つの駆動ユニットに対する、動作情報と設定情報の組を、便宜上、以下ではコマンドセットと呼ぶ。一つのコマンドセットは、可動体の一つの動作を規定する。
 クロック信号は、例えば、制御コマンド中の所定数のビットごとに、矩形状のパルスを持つ信号とすることができる。
 図3は、駆動ユニットがステッピングモータである場合における、動作情報を含む制御コマンドのフォーマットの一例を示す図である。制御コマンド300は、先頭から順に、STARTフラグ301と、デバイスアドレス302と、動作/設定切替フラグ303と、系統指定フラグ304と、制御データ305と、ENDフラグ306とを有する。さらに、制御コマンド300は、隣接するフラグ、アドレス及びデータ間に、例えば'0'の値を持つ1ビットのスペーサを含んでもよい。
 STARTフラグ301は、制御コマンド300の先頭であることを表すビット列であり、本実施形態では、'1'の値を持つ9個のビットが連続したビット列である。なお、STARTフラグ301は、制御コマンド300内の任意の他の何れのビット列とも一致しないビット列であればよい。
 デバイスアドレス302は、制御コマンド300が制御対象とする可動体駆動装置を特定するための識別情報であり、本実施形態では、8ビット長のビット列で表される。デバイスアドレス302は、通信回路2により、演出用CPUから別途受信する識別アドレスと一致するか否か判定され、一致する場合、可動体駆動装置1が制御コマンド300の制御対象であると判定される。
 動作/設定切替フラグ303は、制御コマンドが動作情報を含むか設定情報を含むかを表す1ビットのフラグである。本実施形態では、動作/設定切替フラグ303が'0'であれば、制御コマンドは動作情報を含み、動作/設定切替フラグ303が'1'であれば、制御コマンドは設定情報を含む。図3の例では、制御コマンド300は動作情報を含むので、動作/設定切替フラグ303は'0'である。
 系統指定フラグ304は、制御コマンド300の制御対象が、可動体駆動装置1が制御可能な二つのステッピングモータのうちの何れであるかを表す1ビットのフラグである。
 制御データ305は、可動体駆動装置1が制御するステッピングモータの動作情報を含む。具体的には、制御データ305は、速度データ3051と、保存先指定フラグ3052と、ウェイトフラグ3053と、自動補正フラグ3054と、自動加減速フラグ3055と、座標指定モードフラグ3056と、座標データ3057とを含む。
 速度データ3051は、ステッピングモータの回転速度を表す。本実施形態では、速度データ3051は6ビット長のビット列であり、'0'~'63'の何れかの値となる。速度データ3051が'0'であればステッピングモータが停止、すなわち、そのステッピングモータで駆動される可動体が停止することを表し、速度データ3051が'1'~'63'であれば、その速度データ3051の値に対応する回転速度でステッピングモータを回転させることを表す。
 保存先指定フラグ3052は、レジスタ3内の動作情報の保存先を指定する1ビットのフラグである。本実施形態では、保存先指定フラグ3052が'0'であれば、レジスタ3内の通常の可動体の動作を規定するコマンドセットを記憶する第1メモリ回路31に動作情報が格納され、一方、保存先指定フラグ3052が'1'であれば、レジスタ3内の緊急停止時の可動体の動作を規定するコマンドセットを記憶する第2メモリ回路32に動作情報が格納される。
 ウェイトフラグ3053は、ステッピングモータを指定された期間だけ停止させるウェイトモードか否かを表す1ビットのフラグである。本実施形態では、ウェイトフラグ3053が'0'であれば、ウェイトモードはOFFとなり、速度データ3051に指定された回転速度及び座標データ3057に指定されたステップ数にしたがって、可動体駆動装置1がステッピングモータを制御する。一方、ウェイトフラグ3053が'1'であれば、ウェイトモードがONとなり、速度データ3051に指定された回転速度に相当する1ステップの動作期間に、座標データ3057に指定されたステップ数を乗じた値に相当する期間、ステッピングモータを停止させることを表す。このようなウェイトモードを用いることにより、例えば、特定方向に沿って移動していた可動体をその特定方向の逆方向へ反転移動させるような場合に、その反転直前にウェイトモードで指定した期間、可動体を一時停止させることで、可動体駆動装置1は、ステッピングモータに過負荷が掛かることを防止できる。そのため、可動体駆動装置1は、ステッピングモータの回転に可動体が追従しなくなったり、ステッピングモータが脱調することを防止できる。
 自動補正フラグ3054は、可動体の位置を検知するセンサ(図示せず)からの検知信号によって可動体の現在位置を自動的に補正するか否かを表す1ビットのフラグである。本実施形態では、自動補正フラグ3054が'0'であれば、可動体駆動装置1は可動体の現在位置を補正せず、一方、自動補正フラグ3054が'1'であれば、可動体駆動装置1は、センサからの検知信号を受信したときに可動体の現在位置を補正する。
 自動加減速フラグ3055は、可動体の移動開始時または移動終了時に自動的に加速または減速する自動加減速モードがONかOFFかを表す1ビットのフラグである。本実施形態では、自動加減速フラグ3055が'0'であれば、自動加減速モードがOFFとなり、可動体駆動装置1は、可動体の移動開始直後から移動終了時点まで、速度データ3051で指定された回転速度でその可動体を駆動するステッピングモータを回転させる。一方、自動加減速フラグ3055が'1'であれば、自動加減速モードがONとなり、可動体駆動装置1は、可動体の移動開始直後、または移動終了直前において、別途指定された加速値または減速値に従って、ステッピングモータの回転速度を調節する。なお、自動加減速モードがONの時の動作の詳細は後述する。
 座標指定モードフラグ3056は、座標データ3057に規定される移動目的地の指定方法を規定するモードを表す1ビットのフラグである。本実施形態では、座標指定モードフラグ3056が'0'であれば、移動目的地の座標が絶対座標値であること(すなわち、絶対座標指定モードが適用されること)を表し、一方、座標指定モードフラグ3056が'1'であれば、移動目的地の座標が現在位置の座標を基準とする相対的な移動量であること(すなわち、相対座標指定モードまたは慣性移動モードが適用されること)を表す。なお、保存先指定フラグ3052が'0'であれば、相対座標指定モードであり、保存先指定フラグ3052が'1'であれば、慣性移動モードである。
 座標データ3057は、移動目的地の座標をステッピングモータのステップ数で表す。本実施形態では、座標データ3057は、11ビット長を持つビット列であり、移動目的地の座標を-1024~1023の何れかのステップ数で表す。なお、慣性移動モードが適用される場合には、移動量のみが規定されるので、座標データ3057は0~1023の何れかの値となる。
 ENDフラグ306は、制御コマンド300の終端であることを表すビット列である。ENDフラグ306は、制御コマンドに含まれる、STARTフラグ及び他のビット列と一致しないビット列であればよい。
 図4Aは、駆動ユニットがステッピングモータである場合における、設定情報を含む制御コマンドのフォーマットの一例を示す図である。制御コマンド400は、先頭から順に、STARTフラグ401と、デバイスアドレス402と、動作/設定切替フラグ403と、系統指定フラグ404と、制御データ405と、ENDフラグ406とを有する。設定情報を含む制御コマンド400は、図3に示された動作情報を含む制御コマンド300と比較して、動作/設定切替フラグ403の値が'1'であること、及び制御データ405の内容が異なる。そこで以下では、制御データ405について説明する。
 制御データ405は、2ビット長を持つ設定モードフラグ4051と、設定データ4052とを含む。
 設定モードフラグ4051は、個別コマンドごとの設定を行う個別設定モードか、全ての制御コマンドに共通の設定を行う初期設定モードかを規定する。本実施形態では、設定モードフラグ4051が'00'であれば、個別設定モードであることを表し、一方、設定モードフラグ4051が'01'であれば初期設定モードであることを表す。
 図4Bは、設定データ4052が個別設定モードで規定されている場合の設定データ4052のフォーマットの一例を示す図である。個別設定モードにおいて、設定データ4052は、先頭から順に、保存先指定フラグ4053と、停止時トルク4054と、動作時トルク4055と、励磁モードフラグ4056と、加速度データ4057とを含む。
 保存先指定フラグ4053は、図3に示された保存先指定フラグ3052と同様に、レジスタ3内の設定情報の保存先を指定する1ビットのフラグである。本実施形態では、保存先指定フラグ4053が'0'であれば、レジスタ3内の第1メモリ回路31に設定情報が格納され、一方、保存先指定フラグ4052が'1'であれば、レジスタ3内の第2メモリ回路32に設定情報が格納される。
 停止時トルク4054は、3ビット長を持ち、ステッピングモータが停止している際における、ステッピングモータの1ステップ分の動作期間に占める、実際に電圧を印加する期間のデューティ比(以下、停止時デューティ比と呼ぶ)を表す。そして本実施形態では、停止時トルク4054の値が大きいほど、停止時デューテイ比も高くなり、その結果としてステッピングモータを現在のステップのまま維持させるためのトルクも大きくなる。本実施形態では、停止時トルク4054は3ビット長を持つので、停止時デューティ比は8段階で規定される。例えば、停止時トルク4054の値が'000'であれば、停止時デューティ比は0、すなわち、ステッピングモータに電圧が印加されず、トルクも0であることを表す。一方、停止時トルク4054が'111'であれば、停止時デューティ比は1となる。
 動作時トルク4055は、2ビット長を持ち、ステッピングモータが回転している際における、ステッピングモータに1ステップ分の動作期間に占める、実際に電圧を印加する期間のデューティ比(以下、動作時デューティ比と呼ぶ)を表す。そして本実施形態では、動作時トルク4055の値が大きいほど、動作時デューテイ比も高くなり、その結果としてステッピングモータを回転させるトルクも大きくなる。本実施形態では、動作時トルク4055は2ビット長を持つので、動作時デューティ比は4段階で規定される。例えば、動作時トルク4055が'00'であれば、動作時デューティ比は0.5となる。一方、動作時トルク4055が'11'であれば、動作時デューティ比は1となる。
 励磁モードフラグ4056は、2ビット長を持ち、ステッピングモータの励磁方法を規定する。本実施形態では、励磁モードフラグ4056が'00'であれば2相励磁、'01'であれば1-2相励磁、'10'であればW1-2相励磁、'11'であれば2W1-2相励磁であることを表す。なお、ステッピングモータの励磁方法として、上記以外の励磁方法が採用されてもよい。
 加速度データ4057は、4ビット長を持ち、自動加減速モードがONである場合の加速度を表す。
 図4Cは、設定データ4052が初期設定モードで規定されている場合の設定データ4052のフォーマットの一例を示す図である。この場合において、設定データ4052は、先頭から順に、デフォルト動作設定フラグ4058と、停止時トルク4054と、動作時トルク4055と、励磁モードフラグ4056と、加速度データ4057と、減速度データ4059とを含む。
 なお、停止時トルク4054、動作時トルク4055、励磁モードフラグ4056及び加速度データ4057は、図4Bに示された対応するデータと同一であるので、説明を省略する。
 デフォルト動作設定フラグ4058は、設定データ4052に含まれる設定情報が、レジスタ3に格納された動作情報に対応する個別の設定情報が規定されない場合に適用されるデフォルト設定情報か否かを表す1ビットのフラグである。本実施形態では、デフォルト動作設定フラグ4058が'0'であれば、設定データ4052に含まれる設定情報がデフォルト設定情報であることを表す。
 減速度データ4059は、4ビット長を持ち、自動加減速モードがONである場合の減速度を表す。
 さらに、設定データ4052は、可動体の位置を検知するセンサから検知信号が入力されたときの可動体の位置座標、一つの可動体に対して複数のセンサが設置される場合に、何れのセンサについての位置座標かを指定するフラグなどを規定するデータを含んでいてもよい。
 また、駆動ユニットがソレノイドである場合の制御コマンドは、可動体の移動目的地または移動方向、ソレノイドが有する各コイルへ出力される励磁信号のデューティ比などを規定するデータを含んでもよい。
 さらに、通信回路2は、演出用CPUから、制御コマンドが制御対象とする可動体駆動装置を特定するための識別アドレスを受信する。そして通信回路2は、識別アドレスと、制御コマンド中に含まれるデバイスアドレスとが一致する場合、その制御コマンドに含まれる動作情報または設定情報をレジスタ3に書き込む。一方、通信回路2は、識別アドレスとデバイスアドレスとが一致しない場合、受信した制御コマンドを廃棄する。
 通信回路2は、識別アドレスと制御コマンドを受信するタイミングが異なっていても、識別アドレスとデバイスアドレスとが一致するか否かを判定できるようにするために、識別アドレスを記憶するメモリ回路を有していてもよい。
 さらに、通信回路2は、可動体を緊急停止させるためのロードコマンドを演出用CPUから受け取ると、レジスタ3に格納されている緊急停止用の動作情報及び設定情報を、デューティ比制御回路4及びモータ制御回路6へ出力させる。なお、ロードコマンドのフォーマットは、上記の制御コマンドとは別個のフォーマットであってもよい。例えば、ロードコマンドは、先頭から順に、ロードコマンドであることを表す識別コードと、対象となる可動体を表すフラグを含む。識別コードは、例えば、上記の制御コマンドの何れの部分とも一致しないビット列であればよい。
 さらに、通信回路2は、可動体駆動装置1が制御する駆動ユニットの何れかについて、レジスタ3に記憶されているコマンドセットが一つ実行される度に、そのコマンドセットが実行されたことを示す命令完了信号を演出用CPUへ出力する。命令完了信号は、例えば、駆動ユニットごとに設定される通信線を介して出力される、単パルス信号とすることができる。あるいは、命令完了信号は、駆動ユニットに応じて異なる数のパルスを持つ信号であり、各駆動ユニット共通の信号線を介して演出用CPUへ出力されるものでもよい。
 さらに、通信回路2は、演出用CPUから、レジスタ3に格納されているコマンドセットを読み出すコマンドを受信すると、レジスタ3に格納されている全てのコマンドセットを読み出して、演出用CPUへ送信するようにしてもよい。
 レジスタ3は、各駆動ユニットのコマンドセットを複数個記憶可能な記憶容量を持つ、いわゆる先入れ先出し(FIFO)方式の第1メモリ回路31と、駆動ユニットごとに緊急停止時のコマンドセット及びデフォルト設定情報を記憶可能な第2メモリ回路32とを有する。レジスタ3が有するこれらのメモリ回路は、例えば、揮発性の読み書き可能な半導体メモリ回路により構成される。
 レジスタ3は、受信した制御コマンドに含まれる保存先指定フラグが通常の動作を規定することを表す値であれば、第1メモリ回路31に、その制御コマンドに含まれる動作情報または設定情報を書き込む。その際、レジスタ3は、注目する可動体について、一つの動作情報を受け取ってから次の動作情報を受け取るまでに、その可動体についての設定情報を受け取れば、その動作情報と設定情報を一つのコマンドセットとする。一方、レジスタ3は、注目する可動体についての一つの動作情報を受け取ってから次の動作情報を受け取るまでに、その可動体についての設定情報を受け取らなかった場合、その動作情報が読み出される際に、第2メモリ回路32に格納されているデフォルトの設定情報を第1メモリ回路31にコピーして、その動作情報とのコマンドセットを作成する。
 図5は、ステッピングモータを制御するためのコマンドセットの書き込みと実行順序の関係を示す概念図である。なお、図5では、一つのステッピングモータに対するコマンドセットのみを図示している。レジスタ3は、可動体駆動装置1が制御するステッピングモータごとに、図5に示されるようなコマンドセットを記憶する。
 図5において、第1メモリ回路31に記憶される各コマンドセット501~505は、それぞれ、動作情報と設定情報とを含む。また、下側に位置するコマンドセットほど、先に書き込まれたものとする。したがって、この例では、コマンドセット501が最も先に書き込まれたものであり、コマンドセット505が最も後に書き込まれたものである。各コマンドセットは、それぞれ、バッファ511~515の何れかに格納されている。そして一番読み出し側に近いバッファ(図5では、一番下側のバッファ511)からコマンドセットが読み出され、そのコマンドセットがデューティ比制御回路4とモータ制御回路6とに転送される。そしてそのコマンドセットに従って駆動ユニットが制御されることにより、可動体が駆動される。一つのコマンドセットが実行される度に、各コマンドセットは、一つ読み出し側のバッファに転送される。なお、全てのバッファにコマンドセットが格納されている状態で、さらに次の動作情報または設定情報をレジスタ3が受け取ると、書き込み側に最も近いバッファ515に格納されている動作情報または設定情報が、新たに受信した動作情報または設定情報に書き換えられる。
 また、第2メモリ回路32には、緊急停止用のコマンドセット506と、デフォルト設定情報507が記憶されている。この緊急停止用のコマンドセット506は、可動体駆動装置1がロードコマンドを受け取ると、一番読み出し側に近いバッファ511に転送され、バッファ511から読み出されて、デューティ比制御回路4とモータ制御回路6に転送される。その際、第1メモリ回路31の他のバッファに格納されているコマンドセットは消去される。
 また、一番読み出し側に近いバッファ511に動作情報のみが格納されている場合、デフォルトの設定情報507がバッファ511に転送されてコマンドセットが作成される。その後に、そのコマンドセットが読み出されて、デューティ比制御回路4とモータ制御回路6に転送される。
 デューティ比制御回路4は、所定の単位期間ごとに、コマンドセットの設定情報により規定される、停止時デューティ比または動作時デューティ比に応じた期間だけ所定の電圧値を持ち、その他の期間は、その所定の電圧値と異なる電圧値を持つパルスが連続する、連続パルス信号を生成する。そのために、デューティ比制御回路4は、例えば、プロセッサ及び不揮発性のメモリ回路を有する。そしてそのメモリ回路には、例えば、設定情報により規定された停止時デューティ比及び動作時デューティ比を表す値と実際のデューティ比との関係を表す参照テーブルが記憶される。そしてデューティ比制御回路4が有するプロセッサは、参照テーブルを参照することにより、実際のデューティ比を決定する。そしてそのプロセッサは、決定したデューティ比に従って、上記の連続パルス信号を生成する。なお、所定の単位期間は、例えば、動作情報に含まれるステッピングモータの回転速度が最大である場合の一つのステップの動作期間の1/100~1/5に設定される。
 デューティ比制御回路4は、生成した連続パルス信号をモータ制御回路6あるいはソレノイド制御回路7へ供給する。
 センサインターフェース部5は、可動体の位置を検出するセンサからの検知信号を受信するインターフェース回路を有する。センサインターフェース部5は、例えば、センサごとに異なる入力端子を有してもよい。
 ここで、センサは、例えば、発光ダイオードといった光源と、その光源と対向して、光源からの光を受光可能なように配置されるフォトダイオードといった受光素子を有する。そしてセンサは、例えば、可動体の移動可能範囲の何れかの一端、例えば、水平方向に移動可能な可動体であれば、その移動可能範囲の左端または右端に設置される。そして、可動体がセンサが設置された端部に達した場合に限り、光源からの光が可動体で遮られることにより、受光素子で検知される光量が低下することで、センサは、可動体がその端部に達したことを検知する。そして、センサは、可動体を検知すると、検知したことを表す検知信号をセンサインターフェース部5へ出力する。
 なおセンサは、マグネットセンサといった、他の原理に基づく近接センサであってもよい。また、一つの可動体につき、複数のセンサが設置されてもよい。この場合、各センサは、それぞれ、可動体の移動可能範囲内の互いに異なる位置に設置される。例えば、一つの可動体に対して二つのセンサが設置される場合、その二つのセンサは、可動体の移動可能範囲の両端にそれぞれ設置される。
 センサインターフェース部5は、ステッピングモータにより駆動される可動体の位置を検知するセンサから検知信号を受信した場合、その検知信号をモータ制御回路6へ通知する。またセンサインターフェース部5は、ソレノイドにより駆動される可動体の位置を検知するセンサから検知信号を受信した場合、その検知信号をソレノイド制御回路7へ通知する。その際、センサインターフェース部5は、どの可動部に対して設置されたセンサの検知信号か識別可能なように、検知信号を受信してからセンサごとに異なる遅延時間だけずらしてからその検知信号をモータ制御回路6またはソレノイド制御回路7へ転送してもよい。あるいは、センサインターフェース部5は、センサごとに異なる識別コードとともに、検知信号をモータ制御回路6またはソレノイド制御回路7へ転送してもよい。
 モータ制御回路6は、レジスタ3から読み出したコマンドセットに従って、駆動ユニットの一例であるステッピングモータを制御する。本実施形態では、モータ制御回路6は、一方のステッピングモータを制御するための第1制御回路61と、他方のステッピングモータを制御するための第2制御回路62とを有する。各制御回路61、62は、それぞれ、例えば、プロセッサを有し、レジスタ3から別個にコマンドセットを受け取って、対応する可動体を駆動するステッピングモータを制御する。さらにモータ制御回路6は、各可動体の現在位置及び一つ前のステップの動作開始時における位置を記憶するメモリ回路63を有する。このメモリ回路63は、可動体の現在位置を記憶する記憶部の一例である。
 また、各制御回路61、62は、例えば、ユニポーラ型のステッピングモータを制御可能なように、6本の出力端子を有する。あるいは、各制御回路61、62は、例えば、バイポーラ型のステッピングモータを制御可能なように、4本の出力端子を有してもよい。さらにまた、各制御回路61、62は、6本の出力端子を有し、演出用CPUから受信した、ユニポーラ型かバイポーラ型を表す識別信号に応じて、信号を出力する出力端子を異ならせてもよい。
 例えば、各制御回路61、62は、動作情報に含まれる移動目的地の座標が絶対値指定されている場合、可動体の現在位置の座標と移動目的地の座標を比較する。そして各制御回路61、62は、移動目的地の座標と現在位置の座標との差の符号により、可動体の移動方向を決定する。例えば、図2Aに示されるように、可動体が水平方向に沿って直進移動するものであり、かつ、可動体の位置座標を表すステップ数が正の大きな値であるほど、可動体が移動可能範囲の右端に近い場合、各制御回路61、62は、移動目的地の座標から現在位置の座標を引いた差が正であれば、可動体を右方向へ移動させると決定し、一方、その差が負であれば、可動体を左方向へ移動させると決定する。また、可動体が、所定の固定点を回転軸として回転移動するものであり、可動体の位置座標を表すステップ数が正の大きな値であるほど、可動体が移動可能範囲の時計回り方向の端部に近い場合、各制御回路61、62は、移動目的地の座標から現在位置の座標を引いた差が正であれば、可動体を時計回り方向へ移動させると決定し、一方、その差が負であれば、可動体を反時計回り方向へ移動させると決定する。
 また、移動目的地の設定モードが相対座標指定モードである場合、各制御回路61、62は、可動体をその指定された移動方向へ移動させると決定する。
 また、移動目的地の設定モードが慣性移動モードである場合、各制御回路61、62は、メモリ回路に記憶されている、可動体の現在位置と一つ前のステップにおける位置との差の符号から、可動体の直前の動作における移動方向を特定する。そして各制御回路61、62は、その特定された移動方向へ可動体を移動させると決定する。
 可動体の移動方向が決定すると、各制御回路61、62は、ステッピングモータの回転速度に応じて、一つのステップに対応する動作期間を決定する。
 その際、自動加減速モードがONであれば、各制御回路61、62は、設定情報に含まれる加速度データまたは減速度データに従ってステッピングモータの回転速度を調整する。
 図6Aは、ステッピングモータの回転速度を上昇させる場合の回転速度の時間変化の一例を示す図であり、図6Bは、ステッピングモータの回転速度を低下させる場合の回転速度の時間変化の一例を示す図である。図6A及び図6Bにおいて、横軸は時間を表し、縦軸はステッピングモータの回転速度を表す。グラフ601は、回転速度が上昇する場合における、時間経過と回転速度の関係を表し、グラフ602は、回転速度が低下する場合における、時間経過と回転速度の関係を表す。そして、時刻t0は、各制御回路61、62が、注目するコマンドセットの実行を開始する時刻を表す。また、rsdは、動作情報に含まれる速度データに規定された速度データを表す。
 時刻t0よりも前では、ステッピングモータは、注目するコマンドセットよりも一つ前のコマンドセットで指定された回転速度で回転している。そして時刻t0になると、すなわち、注目するコマンドセットの実行が開始されると、各制御回路61、62は、可動体が現在位置からステッピングモータの所定の第1のステップ数(例えば、5~20ステップ)に対応する距離を移動するまで、設定情報に含まれる加速度データまたは減速度データに規定される加速度または減速度でステッピングモータの回転速度を徐々に加速または減速する。そして、その距離を移動し終えた時刻t1で、ステッピングモータの回転速度が、動作情報に含まれる速度データに規定された回転速度となるように調整される。また時刻t1以降、ステッピングモータの回転速度は、その速度データに規定された回転速度で維持される。
 なお、各制御回路61、62は、例えば、実行しようとするコマンドセットに指定された速度データに示された回転速度が、一つ前に実行されたコマンドセットに指定された速度データに示された回転速度よりも速ければ、ステッピングモータを加速する。一方、実行しようとするコマンドセットに指定された速度データに示された回転速度が、一つ前に実行されたコマンドセットに指定された速度データに示された回転速度よりも遅ければ、各制御回路61、62は、ステッピングモータを減速する。
 図7Aは、変形例による、ステッピングモータの回転速度を上昇させる場合の回転速度の時間変化の一例を示す図であり、図7Bは、変形例による、ステッピングモータの回転速度を低下させる場合の回転速度の時間変化の一例を示す図である。図7A及び図7Bにおいて、横軸は時間を表し、縦軸はステッピングモータの回転速度を表す。グラフ701は、回転速度が上昇する場合における、時間経過と回転速度の関係を表し、グラフ702は、回転速度が低下する場合における、時間経過と回転速度の関係を表す。そして、時刻t0は、各制御回路61、62が、注目するコマンドセットの実行を開始する時刻を表す。また、rsdは、動作情報に含まれる速度データに規定された速度データを表す。
 この変形例によれば、各制御回路61、62は、目標座標から、ステッピングモータの所定の第2のステップ数(例えば、5~20ステップ)に対応する距離だけ手前の位置に可動体が達した時刻t2以降、設定情報に含まれる加速度または減速度の情報に応じた加速度または減速度でステッピングモータの回転速度を徐々に加速または減速させる。そして各制御回路61、62は、目標座標に達した時刻t3でステッピングモータの回転速度が速度データに示された回転速度となるように、ステッピングモータの回転速度を調整する。
 さらに、可動体駆動装置1は、一つのコマンドセットに相当する動作を開始する時点で可動体の移動を開始し、その動作を終える時点で、可動体を停止させてもよい。この場合には、自動加減速モードがONであれば、各制御回路61、62は、可動体を移動開始させる際、その移動開始時から設定情報に含まれる加速度でステッピングモータの回転速度を徐々に加速し、ステッピングモータの所定の第3のステップ数(例えば、5~20ステップ)に相当する距離を可動体が移動した時点で、ステッピングモータの回転速度が速度データに規定された回転速度となるように、ステッピングモータの回転速度を調整する。そして各制御回路61、62は、目標座標からステッピングモータの第3のステップ数に対応する距離だけ手前の減速開始位置に可動体が達するまで、その回転速度を維持する。そして各制御回路61、62は、可動体が減速開始位置に達した以降、設定情報に含まれる減速度の情報に応じた減速度でステッピングモータの回転速度を徐々に減速させる。そして各制御回路61、62は、目標座標に達した時点でステッピングモータの回転速度が0rpmとなるように、ステッピングモータの回転速度を調整する。
 上記のように、自動加減速モードを用いることにより、可動体駆動装置1は、可動体が停止状態から移動開始する際に急加速となること、または動作情報に指定された動作を終えた時点で可動体が停止状態となる際に急制動が掛かることを抑制して、ステッピングモータに過負荷が掛かることを防止できる。そのため、可動体駆動装置1は、ステッピングモータの回転に可動体が追従しなくなったり、ステッピングモータが脱調することを防止できる。
 また、第1~第3のステップ数、加速度及び減速度は、例えば、メモリ回路63に記憶された、設定情報中の加速度及び減速度の指標の値と、ステップ数、加速度及び減速度との関係を表す参照テーブルを参照することによって決定される。
 一方、自動加減速モードがOFFであれば、各制御回路61、62は、図6A及び図6Bにおいて点線で示されたグラフ603、604のように、ステッピングモータの回転速度を、可動体の移動開始直後から目標座標に達するまで、動作情報に含まれる速度データに規定された回転速度に設定する。
 各制御回路61、62は、例えば、メモリ回路63に記憶された、回転速度と1ステップ当たりの動作期間との関係を表す参照テーブルを参照することにより、回転速度に対応する1ステップの動作期間を決定する。
 その後、各制御回路61、62は、設定情報に含まれる励磁モードフラグの値に対応する励磁方式及び移動方向に従って、決定された動作期間に相当する、ステッピングモータの各端子に印加するパルス状の駆動信号を生成する。この場合、各制御回路61、62は、例えば、メモリ回路63に記憶され、各制御回路61、62により実行される、駆動信号を生成するためのプログラムに従って、1ステップ当たりの動作期間、励磁方式及び移動方向に対応する駆動信号を生成すればよい。なお、各端子へ出力される励磁方式に応じた駆動信号の信号波形は、例えば、特開平6-189597号公報及び特開2009-247833号公報にも開示されているように公知であるので、ここではその詳細な説明は省略する。
 さらに各制御回路61、62は、デューティ比制御回路4から受け取った連続パルス信号とその駆動信号を乗じることにより、各端子に印加する駆動信号をパルス幅変調する。これにより、可動体駆動装置1は、パルス信号のデューティ比を小さくすることで、制御対象のステッピングモータの発熱量を抑制することができ、一方、パルス信号のデューティ比を大きくすることで、制御対象のステッピングモータのトルクを大きくすることができる。そして各制御回路61、62は、パルス幅変調された各端子の駆動信号を出力する。
 各制御回路61、62は、一つのステップに相当する駆動信号を出力する度に、メモリ回路63に記憶されている可動体の現在位置及び一つ前のステップにおける動作開始時の位置を更新する。具体的には、ステップ数が増える方向へ可動体が移動する場合には、各制御回路61、62は、現在位置を表すステップ数及び一つ前のステップにおける位置を表すステップ数に、それぞれ1を加算する。一方、ステップ数が減る方向へ可動体が移動する場合には、各制御回路61、62は、現在位置を表すステップ数及び一つ前のステップにおける位置を表すステップ数から、それぞれ1を減算する。
 目標座標が絶対値指定されている場合、一つのステップに対応する駆動信号の出力が終了する度に、各制御回路61、62は、可動体の現在位置を表す座標が移動目的地の座標と一致するか否か判定する。そして可動体の現在位置を表す座標値が移動目的地の座標と一致しなければ、各制御回路61、62は、再度、一ステップ分のパルス幅変調された駆動信号を生成して各端子へ出力し、現在位置等を更新する。一方、可動体の現在位置を表す座標値が目標座標と一致すれば、各制御回路61、62は、一つのコマンドセットに相当する可動体の動作が終了したと判定する。
 一方、移動目的地の座標が相対値指定されている場合には、各制御回路61、62は、その相対値で指定されたステップ数分の駆動信号を各端子へ出力し、そのステップ数分だけ、現在位置等を更新する。その後、各制御回路61、62は、一つのコマンドセットに相当する可動体の動作が終了したと判定する。
 各制御回路61、62は、可動体の動作が終了したと判定すると、通信回路2を介して、命令完了信号を演出用CPUへ送信する。
 また、各制御回路61、62は、自動補正フラグがONである場合に、センサインターフェース部5から、その制御回路に対応するステッピングモータが駆動する可動体の位置を検知するセンサからの検知信号を受け取ると、メモリ回路63に記憶されている可動体の位置を表す座標値を、その検知信号に対応するセンサが可動体を検知する位置である検知位置を表す座標値に書き換える。これにより、可動体がセンサの検知位置に達する度に、可動体駆動装置1が記憶する可動体の現在位置が正しい位置に修正されるので、ステッピングモータの回転に可動体が追従できないことが生じても、可動体駆動装置1は、可動体の正確な位置を把握することができる。
 ソレノイド制御回路7は、レジスタ3から受け取った制御コマンドに従って、その制御コマンドに含まれる可動体の移動方向または移動目的地に従って、各コイルに対する励磁信号を生成し、その励磁信号を、ソレノイドが有する各コイルへ出力する。ソレノイド制御回路7は、モータ制御回路6と同様に、ソレノイドが駆動する可動体の現在位置を記憶するメモリ回路を有していてもよい。そして制御コマンドに可動体の移動目的地が含まれる場合、ソレノイド制御回路7も、その移動目的地の座標と現在位置の座標とを比較することにより、可動体の移動方向を決定し、その移動方向に沿って、現在位置に近い方から順に、コイルを順次励磁するように、各コイルに対する励磁信号を生成してもよい。
 以上に説明してきたように、この可動体駆動装置は、ステッピングモータで駆動される可動体の現在位置を把握しているので、演出用CPUといったい上位の制御装置が可動体の目標座標を指定するだけで、可動体の移動方向を決定することができ、その目標座標まで可動体を移動させることができる。そのため、上位の制御装置は、可動体の現在位置を把握する必要が無く、また現在位置の座標と目標座標との差に応じて可動体の移動方向を決定する必要が無い。したがって、この可動体駆動装置は、可動体の駆動に関する、上位の制御装置の負荷を軽減できる。
 なお、本発明は上記の実施形態に限定されるものではない。例えば、変形例によれば、可動体駆動装置は、ソレノイド制御回路を有さなくてもよい。また、他の変形例によれば、可動体駆動装置は、図2Cに示される慣性移動モードのような、現在位置に対する相対的な移動量のみで目標座標を特定する制御コマンドを受け付けなくてもよい。この場合には、可動体駆動装置は、現時点での可動体の移動方向を求める必要が無いので、モータ制御回路のメモリ回路は、可動体の現在位置のみを記憶しておけばよい。
 さらに他の変形例によれば、可動体の現在位置の座標及び一つ前のステップの実行時における位置の座標は、レジスタが記憶していてもよい。
 さらに他の変形例によれば、一つの制御コマンドが、動作情報と設定情報の両方を含んでいてもよい。
 上記の実施形態の何れかまたは変形例による可動体駆動装置は、弾球遊技機または回胴遊技機といった遊技機に搭載されてもよい。
 図8は、上記の実施形態の何れか、または変形例による可動体駆動装置を備えた弾球遊技機100の概略斜視図である。また図9は、弾球遊技機100の概略背面図である。図8に示すように、弾球遊技機100は、上部から中央部の大部分の領域に設けられ、遊技機本体である遊技盤101と、遊技盤101の下方に配設された球受け部102と、ハンドルを備えた操作部103と、遊技盤101の略中央に設けられた表示装置104とを有する。
 また弾球遊技機100は、遊技の演出のために、遊技盤101の前面において遊技盤101の下方に配置された固定役物部105と、遊技盤101と固定役物部105との間に配置された可動役物部106とを有する。また遊技盤101の側方にはレール107が配設されている。また遊技盤101上には多数の障害釘(図示せず)及び少なくとも一つの入賞装置108が設けられている。
 操作部103は、遊技者の操作によるハンドルの回動量に応じて図示しない発射装置より所定の力で遊技球を発射する。発射された遊技球は、レール107に沿って上方へ移動し、多数の障害釘の間を落下する。そして遊技球が何れかの入賞装置108に入ったことを、図示しないセンサにより検知すると、遊技盤101の背面に設けられた主制御回路110は、遊技球が入った入賞装置108に応じた所定個の遊技球を玉払い出し装置(図示せず)を介して球受け部102へ払い出す。さらに主制御回路110は、遊技盤101の背面に設けられた演出用CPU111を介して表示装置104に様々な映像を表示させる。
 可動役物部106は、遊技の状態に応じて移動する可動体の一例であり、遊技盤101の背面に設けられた可動体駆動装置112により駆動される。なお、可動体駆動装置112は、本発明の各実施形態またはその変形例による可動体駆動装置とすることができる。遊技機100が、可動役物部106以外にも可動体を有する場合、例えば、入賞装置107の開口部に、開口の大きさを可変にする可動体を有する場合、その可動体も、可動体駆動装置112によって駆動されてもよい。
 図10Aは、固定役物部105を透過して見た、可動体駆動装置112により駆動される可動役物部106の概略正面図である。図10Bは、固定役物部105の背面側から見た、可動役物部106が移動可能範囲の一端に位置する場合の概略背面図である。そして図10Cは、固定役物部105の背面側から見た、可動役物部106が移動可能範囲の他端に位置する場合の概略背面図である。
 この実施形態では、可動役物部106は、星型の装飾部材121と、その装飾部材121を一端にて保持する棒状の支持部材122とを有する。支持部材122は、固定役物部105の背面側に、遊技盤101の左下端から右上方へ向けて斜め方向に、支持部材122の下端と接するように設けられたレール123と係合し、そのレール123に沿って直進移動可能に保持されている。この例では、図10Bに示されるように、可動役物部106がその移動可能範囲の左下方側の端部に位置する場合、遊技盤101の前面側から見て、装飾部材121が固定役物部105の背後に隠れて遊技者から見えなくなる。一方、図10Cに示されるように、可動役物部106がその移動可能範囲の右上方側の端部に位置する場合、装飾部材121全体が固定役物部105よりも遊技盤101の中央側に位置することとなり、遊技者が装飾部材121全体を視認可能となる。
 支持部材122の上面側には、直線歯車としての歯が形成されており、この歯が、移動可能範囲の右上方側の端部に可動役物部106が位置する場合の支持部材122の左下端側の端部の位置近傍に設置された減速ギア124と係合する。また減速ギア124は、ステッピングモータ125の回転軸126に取り付けられたギア127と係合している。そのため、ステッピングモータ125が所定角度回転することにより、ギア127及び減速ギア124を介して、その回転角度に対応する所定の移動量だけ可動役物部106が移動する。そしてステッピングモータ125は、可動体駆動装置112により制御される。
 また、移動可能範囲の左下方側の端部に可動役物部106が位置する場合の支持部材122の左下端側の端部の位置近傍には、センサ128が設けられ、可動役物部106が移動可能範囲の左下方側の端部に達した場合に検知信号を発生し、その検知信号を可動体駆動装置112へ送信する。なお、センサ128は、例えば、マグネットセンサとし、支持部材122の左下端側の端部に取り付けられた磁性体を検知することで、可動役物部106がその移動可能範囲の左下端に達したことを検知できる。あるいは、センサ128は、発光ダイオードと受光素子とを有する光学式のセンサであってもよい。
 主制御回路110から演出用CPU111に伝達された遊技の状態を表す状態信号に基づいて、演出用CPU111は、可動役物部106の目標座標を決定し、その決定に従った制御コマンドを生成する。そして演出用CPU111は、生成した制御コマンドを可動体駆動装置112へ出力する。例えば、遊技球が入賞装置107に入る前は、演出用CPU111は、可動役物部106が固定役物部105に隠れるように、可動役物部106をその移動可能範囲の左下方の端部を移動目的地として指定する制御コマンドを可動体駆動装置112へ送信する。一方、遊技球が入賞装置107に入ったことが検知され、そのことを示す状態信号が主制御回路110から演出用CPU111に入力されると、演出用CPU111は、可動役物部106をその移動可能範囲の右上方の端部を移動目的地として指定する制御コマンドを生成し、その制御コマンドを可動体駆動装置112へ送信する。
 このように、当業者は、本発明の範囲内で、実施される形態に合わせて様々な変更を行うことができる。
 1  可動体駆動装置
 2  通信回路
 3  レジスタ
 31  第1メモリ回路
 32  第2メモリ回路
 4  デューティ比制御回路
 5  センサインターフェース部
 6  モータ制御回路
 61、62  制御回路
 63  メモリ回路
 7  ソレノイド制御回路
 100  弾球遊技機
 101  遊技盤
 102  球受け部
 103  操作部
 104  表示装置
 105  固定役物部
 106  可動役物部
 107  レール
 108  入賞装置
 110  主制御回路
 111  演出用CPU
 112  可動体駆動装置
 121  装飾部材
 122  支持部材
 123  レール
 124  減速ギア
 125  ステッピングモータ
 126  回転軸
 127  ギア
 128  センサ

Claims (8)

  1.  遊技機に設けられた可動体を駆動する駆動ユニットを制御する可動体駆動装置であって、
     前記可動体の移動目的地を規定する制御コマンドを受信する通信部と、
     前記可動体の現在位置を記憶する記憶部と、
     前記移動目的地と前記現在位置との差、または前記可動体の直前の動作における移動方向に基づいて、前記可動体の次の動作における移動方向を決定し、当該次の動作における移動方向に沿って前記可動体が前記移動目的地に達するまで、前記可動体を移動させるように、前記駆動ユニットを制御する制御部と、
    を有することを特徴とする可動体駆動装置。
  2.  前記駆動ユニットはステッピングモータであり、
     前記制御コマンドは、前記ステッピングモータの回転速度を表す第1の指標と前記ステッピングモータの加速度または減速度を表す第2の指標とを含み、
     前記制御部は、前記可動体が、前記現在位置から前記ステッピングモータの第1のステップ数に対応する距離を移動するまで、前記第2の指標により示された加速度または減速度で前記ステッピングモータの回転速度を加速または減速させ、当該距離を移動した時点で前記第1の指標により示された回転速度となるように前記ステッピングモータを制御する、請求項1に記載の可動体駆動装置。
  3.  前記駆動ユニットはステッピングモータであり、
     前記制御コマンドは、前記ステッピングモータの回転速度を表す第1の指標と前記ステッピングモータの加速度または減速度を表す第2の指標とを含み、
     前記制御部は、前記可動体が、前記ステッピングモータの第2のステップ数に対応する距離よりも前記移動目的地に近づくと、前記第2の指標により示された加速度または減速度で前記ステッピングモータの回転速度を加速または減速し、当該移動目的地に達した時点で当該回転速度が前記第1の指標により示された回転速度となるように前記ステッピングモータを制御する、請求項1に記載の可動体駆動装置。
  4.  前記駆動ユニットはステッピングモータであり、
     前記制御コマンドは、前記ステッピングモータの回転速度を表す第1の指標と前記ステッピングモータの減速度を表す第3の指標とを含み、
     前記制御部は、前記可動体が、前記ステッピングモータの第3のステップ数に対応する距離よりも前記移動目的地に近づくと、前記第3の指標により示された減速度で前記ステッピングモータの回転速度を減速し、当該移動目的地に達した時点で当該回転速度が0となるように前記ステッピングモータを制御する、請求項1に記載の可動体駆動装置。
  5.  前記駆動ユニットはステッピングモータであり、
     前記制御コマンドは、前記ステッピングモータの1ステップの動作に相当する第1の期間に対する前記ステッピングモータに電圧を印加する期間の比を表す第4の指標を含み、
     前記第1の期間よりも短い第2の期間を1周期とし、当該第2の期間において、前記第4の指標に表された前記比だけ所定の電圧値を持つパルスが連続する連続パルス信号を生成するデューティ比制御部をさらに有し、
     前記制御部は、前記連続パルス信号によって、前記ステッピングモータのステップごとの動作を制御する駆動信号をパルス幅変調し、当該パルス幅変調された駆動信号を前記ステッピングモータへ出力する、
     請求項1に記載の可動体駆動装置。
  6.  前記制御コマンドに含まれる前記移動目的地は、前記現在位置を基準とする移動量で表され、
     前記記憶部は、前記可動体の直前の動作時の位置をさらに記憶し、
     前記制御部は、前記直前の動作時の位置と前記現在位置との差によって前記可動体の直前の動作における移動方向を求める、請求項1に記載の可動体駆動装置。
  7.  遊技機本体と、
     前記遊技機本体の前面に、所定の移動可能範囲内で移動可能に配置される可動体と、
     前記可動体を駆動する駆動ユニットと、
     前記駆動ユニットを制御する可動体駆動装置と、
     遊技の状態に応じた演出を制御する演出制御部とを有し、
     前記演出制御部は、前記遊技の状態に応じて、前記可動体の移動目的地を規定する制御コマンドを生成し、当該制御コマンドを前記可動体駆動装置へシリアル伝送し、
     前記可動体駆動装置は、
      前記制御コマンドを受信する通信部と、
      前記可動体の現在位置を記憶する記憶部と、
      前記移動目的地と前記現在位置との差、または前記可動体の直前の動作における移動方向に基づいて、前記可動体の次の動作における移動方向を決定し、当該次の動作における移動方向に沿って前記可動体が前記移動目的地に達するまで、前記可動体を移動させるように、前記駆動ユニットを制御する制御部と、
    を有することを特徴とする遊技機。
  8.  前記駆動ユニットはステッピングモータであり、
     前記制御コマンドは、前記ステッピングモータの1ステップの動作に相当する第1の期間に対する前記ステッピングモータに電圧を印加する期間の比を表す第4の指標を含み、
     前記可動体駆動装置は、
      前記第1の期間よりも短い第2の期間を1周期とし、当該第2の期間において、前記第4の指標に表された前記比だけ所定の電圧値を持つパルスが連続する連続パルス信号を生成するデューティ比制御部をさらに有し、
      前記制御部は、前記連続パルス信号によって、前記ステッピングモータのステップごとの動作を制御する駆動信号をパルス幅変調し、当該パルス幅変調された駆動信号を前記ステッピングモータへ出力する、
     請求項7に記載の遊技機。
PCT/JP2012/066045 2011-08-30 2012-06-22 可動体駆動装置及び遊技機 WO2013031352A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US14/236,153 US9787233B2 (en) 2011-08-30 2012-06-22 Movable object driving device and game machine
AU2012303305A AU2012303305B2 (en) 2011-08-30 2012-06-22 Movable object driving device and game machine

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2011187901A JP5879824B2 (ja) 2011-08-30 2011-08-30 可動体駆動装置
JP2011187878A JP5903804B2 (ja) 2011-08-30 2011-08-30 遊技機
JP2011-187901 2011-08-30
JP2011-187878 2011-08-30

Publications (1)

Publication Number Publication Date
WO2013031352A1 true WO2013031352A1 (ja) 2013-03-07

Family

ID=47755864

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/066045 WO2013031352A1 (ja) 2011-08-30 2012-06-22 可動体駆動装置及び遊技機

Country Status (3)

Country Link
US (1) US9787233B2 (ja)
AU (1) AU2012303305B2 (ja)
WO (1) WO2013031352A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018153537A (ja) * 2017-03-21 2018-10-04 株式会社大都技研 遊技台
JP2018153538A (ja) * 2017-03-21 2018-10-04 株式会社大都技研 遊技台
JP2018153423A (ja) * 2017-03-17 2018-10-04 サミー株式会社 遊技機
JP2019063575A (ja) * 2018-12-21 2019-04-25 株式会社大都技研 遊技台
JP2019072516A (ja) * 2018-12-21 2019-05-16 株式会社大都技研 遊技台

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017141549A1 (ja) * 2016-02-15 2017-08-24 オムロン株式会社 駆動機器制御装置及び遊技機
JP2017216820A (ja) * 2016-05-31 2017-12-07 日本電産株式会社 モータ制御装置及びモータ制御方法
JP2018023238A (ja) 2016-08-05 2018-02-08 オムロン株式会社 評価システム、評価装置、遊技機及び評価方法
JP6614064B2 (ja) * 2016-08-12 2019-12-04 オムロン株式会社 モータ制御装置及び遊技機

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001104565A (ja) * 1999-10-06 2001-04-17 Sankyo Kk 遊技機
JP2010213755A (ja) * 2009-03-13 2010-09-30 Daito Giken:Kk 遊技台
JP2010220884A (ja) * 2009-03-24 2010-10-07 Daito Giken:Kk 遊技台

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4448419A (en) * 1982-02-24 1984-05-15 Telnaes Inge S Electronic gaming device utilizing a random number generator for selecting the reel stop positions
JPH06189597A (ja) 1992-12-16 1994-07-08 Daiwa Seiko Inc ステッピングモータ駆動制御装置
US5934672A (en) * 1996-02-20 1999-08-10 Digideal Corporation Slot machine and methods of operation
US7137885B1 (en) * 2000-08-10 2006-11-21 Wms Gaming, Inc. Slot machine reel mechanism with dedicated local microcontroller
US8057305B2 (en) * 2000-10-16 2011-11-15 Bally Gaming, Inc. Gaming system having dynamically changing image reel symbols
JP4060039B2 (ja) * 2001-02-20 2008-03-12 アビリット株式会社 ステッピングモータ制御装置およびこのステッピングモータ制御装置が適用された遊技機
WO2003099398A2 (en) * 2002-05-23 2003-12-04 Walker Digital, Llc Apparatus having movable display
US20040033828A1 (en) * 2002-08-19 2004-02-19 Gagner Mark B. Stroboscopic effect for displaying slot reel positions of a gaming machine
JP2005185535A (ja) * 2003-12-25 2005-07-14 Aruze Corp 遊技機
JP2005329039A (ja) * 2004-05-20 2005-12-02 Aruze Corp 遊技機用遊技媒体払出装置
US7360761B2 (en) * 2004-06-24 2008-04-22 Wms Gaming Inc. Dynamic generation of a profile for spinning reel gaming machines
US20050288089A1 (en) * 2004-06-25 2005-12-29 Cammegh Richard W Automatic roulette wheel
US7731580B2 (en) * 2004-10-04 2010-06-08 Igt Gaming device with multiple orbit award indicator
US8047910B2 (en) * 2005-08-31 2011-11-01 Bally Gaming, Inc. Gaming machines having rhythmic reels
US20070149281A1 (en) * 2005-09-02 2007-06-28 Igt Virtual movable mechanical display device
US7762883B2 (en) * 2007-03-01 2010-07-27 Igt Random number generator based roulette wheel
US20090104964A1 (en) * 2007-10-17 2009-04-23 Igt Gaming system, gaming device and gaming method providing player physical activation of the symbol generator
JP5369477B2 (ja) 2008-04-11 2013-12-18 オムロン株式会社 可動体駆動装置および方法、並びにプログラム
US8708820B2 (en) * 2009-11-16 2014-04-29 Igt Movable mechanical display devices and methods

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001104565A (ja) * 1999-10-06 2001-04-17 Sankyo Kk 遊技機
JP2010213755A (ja) * 2009-03-13 2010-09-30 Daito Giken:Kk 遊技台
JP2010220884A (ja) * 2009-03-24 2010-10-07 Daito Giken:Kk 遊技台

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018153423A (ja) * 2017-03-17 2018-10-04 サミー株式会社 遊技機
JP2018153537A (ja) * 2017-03-21 2018-10-04 株式会社大都技研 遊技台
JP2018153538A (ja) * 2017-03-21 2018-10-04 株式会社大都技研 遊技台
JP2019063575A (ja) * 2018-12-21 2019-04-25 株式会社大都技研 遊技台
JP2019072516A (ja) * 2018-12-21 2019-05-16 株式会社大都技研 遊技台

Also Published As

Publication number Publication date
US20140232063A1 (en) 2014-08-21
AU2012303305A1 (en) 2014-03-27
AU2012303305B2 (en) 2016-05-05
US9787233B2 (en) 2017-10-10

Similar Documents

Publication Publication Date Title
JP5879824B2 (ja) 可動体駆動装置
WO2013031352A1 (ja) 可動体駆動装置及び遊技機
JP5903804B2 (ja) 遊技機
JP6020011B2 (ja) 直流モータ制御装置及び遊技機
US8038525B2 (en) Dynamic generation of a profile for a spinning reel of a gaming system
WO2014050404A1 (ja) モータ制御装置及び遊技機
JP5949403B2 (ja) 遊技機
JP5369477B2 (ja) 可動体駆動装置および方法、並びにプログラム
JP6079454B2 (ja) 駆動制御装置
US9672683B2 (en) Drive control device and drive control system
JP6665718B2 (ja) モータ制御装置及び遊技機
JP6892736B2 (ja) 駆動機器制御装置
JP2017143902A (ja) 遊技機
WO2017141549A1 (ja) 駆動機器制御装置及び遊技機
WO2016067787A1 (ja) 直流モータ制御装置及び遊技機
JP6459390B2 (ja) 直流モータ制御装置
JP6614064B2 (ja) モータ制御装置及び遊技機
JP6435775B2 (ja) 遊技機
JP2019076378A (ja) スロットマシン
JP2001119995A (ja) モータ制御装置、及びモータ制御方法
JP2019093017A (ja) 遊技機
JP2018014839A (ja) モータ制御装置及び遊技機
JP2014236811A (ja) 遊技機
JP2013244259A5 (ja)

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12827238

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 14236153

Country of ref document: US

ENP Entry into the national phase

Ref document number: 2012303305

Country of ref document: AU

Date of ref document: 20120622

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 12827238

Country of ref document: EP

Kind code of ref document: A1