IP Library Granted Patent US 7,791,306
Granted Patent B2
US 7,791,306 · App. 11/892,841 · Granted Sep 7, 2010

Apparatus, method, and system for controlling stepping motor

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,791,306
App. No.
11/892,841
Granted
Sep 7, 2010
Kind
B2
Abstract

A stepping motor controller that alleviates the CPU burden of motor control tasks. An acceleration control starter initializes a pointer register with a given start angle address upon receipt of a control start signal. Duty cycles for different motor angles are previously calculated and stored in a duty cycle memory. A duty cycle selector looks up this memory to select specific duty cycles corresponding to the angle address held in the pointer register. The stepping motor is driven with pulse signals that a pulse generator produces according to the selected duty cycles. An angle address calculator adds a given address increment to the pointer register. A revolution detector detects one revolution of the stepping motor by comparing the angle address of the pointer register with an end angle address, which permits an acceleration constant calculator to change the angular increment upon detection of one revolution.

Claims (42)

1. An apparatus for controlling a stepping motor, comprising:

an angle address register storing a start angle address representing a start angle of the stepping motor, as well as an end angle address representing an end angle of the stepping motor;

a pointer register holding an angle address representing a rotation angle of the stepping motor;

an acceleration control starter that initializes the pointer register with the start angle address stored in the angle address register upon receipt of a control start signal;

a duty cycle memory storing duty cycles corresponding to different angle addresses including the start angle address stored in the angle address register;

a duty cycle selector that looks up the duty cycle memory to select duty cycles corresponding to the angle address held in the pointer register;

a pulse generator that produces pulse signals having the duty cycles selected by the duty cycle selector to drive the stepping motor;

an angle address calculator that updates the pointer register with a new angle address calculated by adding a given address increment to the angle address held in the pointer register;

a revolution detector that detects one revolution of the stepping motor by comparing the angle address of the pointer register with the end angle address and produces a detection result signal indicating the detection of one revolution of the stepping motor;

a count trigger generator that generates a trigger signal based on the detection result signal from the revolution detector; and

an acceleration constant calculator that changes the address increment each time the trigger signal is received from the count trigger generator.

2. The apparatus according to claim 1 , wherein the acceleration control starter produces a signal indicating completion of control when the stepping motor has stopped.

3. The apparatus according to claim 1 , wherein the duty cycle memory stores duty cycles previously calculated for angle addresses between the start angle address and end angle address stored in the angle address register.

4. A method of controlling a stepping motor, comprising:

providing an angle address register storing a start angle address representing a start angle of the stepping motor, as well as an end angle address representing an end angle of the stepping motor;

providing a pointer register holding an angle address representing a rotation angle of the stepping motor;

providing a duty cycle memory storing duty cycles corresponding to different angle addresses including the start angle address stored in the angle address register;

initializing the pointer register with the start angle address stored in the angle address register upon receipt of a control start signal;

looking up the duty cycle memory to select duty cycles corresponding to the angle address held in the pointer register;

producing pulse signals having the selected duty cycles to drive the stepping motor;

updating the pointer register with a new angle address calculated by adding a given address increment to the angle address held in the pointer register;

detecting one revolution of the stepping motor by comparing the angle address of the pointer register with the end angle address;

generating a trigger signal based on a detection result signal indicating the detection of one revolution of the stepping motor; and

changing the address increment each time the trigger signal is generated.

5. The method according to claim 4 , further comprising the step of producing a signal indicating completion of control when the stepping motor has stopped.

6. The method according to claim 4 , wherein the duty cycle memory stores duty cycles previously calculated for angle addresses between the start angle address and end angle address stored in the angle address register.

7. A stepping motor control system comprising:

(a) a central processing unit (CPU) that produces a control start signal;

(b) a stepping motor controller comprising:

an angle address register storing a start angle address representing a start angle of the stepping motor, as well as an end angle address representing an end angle of the stepping motor,

a pointer register holding an angle address representing a rotation angle of the stepping motor,

an acceleration control starter that initializes the pointer register with the start angle address stored in the angle address register upon receipt of a control start signal,

a duty cycle memory storing duty cycles corresponding to different angle addresses including the start angle address stored in the angle address register,

a duty cycle selector that looks up the duty cycle memory to select duty cycles corresponding to the angle address held in the pointer register,

a pulse generator that produces pulse signals having the duty cycles selected by the duty cycle selector to drive the stepping motor,

an angle address calculator that updates the pointer register with a new angle address calculated by adding a given address increment to the angle address held in the pointer register,

a revolution detector that detects one revolution of the stepping motor by comparing the angle address of the pointer register with the end angle address and produces a detection result signal indicating the detection of one revolution of the stepping motor,

a count trigger generator that generates a trigger signal based on the detection result signal from the revolution detector, and

an acceleration constant calculator that changes the address increment each time the trigger signal is received from the count trigger generator; and

(c) a stepping motor driven with the pulse signals.

8. The stepping motor control system according to claim 7 , wherein the acceleration control starter produces a signal indicating completion of control when the stepping motor has stopped.

9. The stepping motor control system according to claim 7 , wherein the duty cycle memory stores duty cycles previously calculated for different angle addresses between the start angle address and end angle address stored in the angle address register.

Assignments (10)
MERGER Recorded Nov 14, 2025
From: CYPRESS SEMICONDUCTOR CORPORATION
To: INFINEON TECHNOLOGIES AMERICAS CORP.
Reel/Frame 073571/0456 →
RELEASE OF SECURITY INTEREST Recorded Mar 16, 2022
From: MUFG UNION BANK, N.A.
To: CYPRESS SEMICONDUCTOR CORPORATION; SPANSION LLC
Reel/Frame 059410/0438 →
CORRECTIVE ASSIGNMENT TO CORRECT THE 8647899 PREVIOUSLY RECORDED ON REEL 035240 FRAME 0429. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTERST. Recorded Nov 3, 2020
From: CYPRESS SEMICONDUCTOR CORPORATION; SPANSION LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 058002/0470 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN INTELLECTUAL PROPERTY Recorded Oct 28, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: MUFG UNION BANK, N.A.
Reel/Frame 050896/0366 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 1, 2015
From: SPANSION, LLC
To: CYPRESS SEMICONDUCTOR CORPORATION
Reel/Frame 036042/0212 →
SECURITY INTEREST Recorded Mar 21, 2015
From: CYPRESS SEMICONDUCTOR CORPORATION; SPANSION LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 035240/0429 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2013
From: FUJITSU SEMICONDUCTOR LIMITED
To: SPANSION LLC
Reel/Frame 031205/0461 →
CHANGE OF NAME Recorded Sep 27, 2010
From: FUJITSU MICROELECTRONICS LIMITED
To: FUJITSU SEMICONDUCTOR LIMITED
Reel/Frame 025046/0478 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 11, 2008
From: FUJITSU LIMITED
To: FUJITSU MICROELECTRONICS LIMITED
Reel/Frame 021977/0219 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 28, 2007
From: USUI, MINORU
To: FUJITSU LIMITED
Reel/Frame 019800/0550 →