throbber
(12) United States Patent
`Fouche
`
`(10) Patent N0.:
`(45) Date of Patent:
`
`US 6,751,529 B1
`Jun. 15, 2004
`
`US006751529B1
`
`(54) SYSTEM AND METHOD FOR
`CONTROLLING MODEL AIRCRAFT
`
`(75) Inventor: J. Michael Fouche, Huntsville, AL
`(Us)
`(73) Assignee: Neural Robotics, Inc., Huntsville, AL
`(Us)
`
`( * ) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 0 days.
`
`(21) Appl. No.: 10/449,372
`(22) Filed:
`May 30, 2003
`
`Related US. Application Data
`(60) Provisional application No. 60/385,315, ?led on Jun. 3,
`2002.
`
`(51) Int. Cl.7 .............................................. .. B64C 11/34
`(52) US. Cl. ........................ .. 701/3; 244/3.21; 244/164;
`244/171; 342/29; 340/967
`(58) Field of Search ............................ .. 701/3, 4, 7, 48;
`244/3.21, 164, 171, 181, 183, 158 R, 177,
`179; 342/29, 30; 340/967, 975, 978
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`5,553,812 A * 9/1996 Gold et al. ............. .. 244/76 R
`
`
`
`5,797,105 A * 8/1998 Nakaya et al. 5,841,537 A * 11/1998 Doty ........................ .. 356/484
`
`7/2000 Calise et al.
`6,092,919 A
`6,473,676 B2 * 10/2002 KatZ et al. ................... .. 701/4
`
`OTHER PUBLICATIONS
`
`Buschek, H.; Calise, A.J., “a Controllers: Mixed and Fixed”,
`AIAA J. of Guidance, Control, and Dynamics, vol. 20, No.
`1, pp. 34—41, 1997.
`Robinson, Rick, “Better than Human Flight Control Sys
`tems”, Research Horizons, Winter 2000, found at http://
`gtresearchnews.gatech.edu/reshor/rh—win00/?ight.html.
`
`Sugeno, Michio, “Demostration of Unmanned Helicopter
`with FuZZy Control”, 1993, found at http://www.cs.ariZo
`na.edu/japan/www/atip/public/atip.reports.95/
`atip95.13r.html.
`Sugeno, Michio, “FuZZy Logic Controller in an Intelligent,
`Unmanned Helicopter”, 1995, found at http://www.cs.ariZo
`na.edu/japan/www/atip/public/atip.reports.94/
`sugeno.94.html.
`Bluck, John, “NASA Testing New Aircraft Safety Flight
`Control Software”, Release 99—21AR, Apr. 14, 1999, found
`at
`http://amesnews.arc.nasa.gov/releases/1999/99
`21
`AR.html.
`
`(List continued on next page.)
`
`Primary Examiner—Thomas G Black
`Assistant Examiner—Tuan C To
`(74) Attorney, Agent, or Firm—Lanier Ford Shaver &
`Payne RC.
`
`(57)
`
`ABSTRACT
`
`In one embodiment, a method for controlling an aircraft
`comprises providing an attitude error as a ?rst input into a
`neural controller and an attitude rate as a second input into
`the neural controller. The attitude error is calculated from a
`commanded attitude and a current measured attitude, and the
`attitude rate is derived from the current measured attitude.
`The method also comprises processing the ?rst input and the
`second input to generate a commanded servo actuator rate as
`an output of the neural controller. The method further
`comprises generating a commanded actuator position from
`the commanded servo actuator rate and a current servo
`position, and inputting the commanded actuator position to
`a servo motor con?gured to drive an attitude actuator to the
`commanded actuator position. The neural controller is
`developed from a neural network, wherein the neural net
`work is designed without using conventional control laws,
`and the neural network is trained to eliminate the attitude
`error.
`
`28 Claims, 16 Drawing Sheets
`
`224 j
`
`226'\
`
`_ Servo F204
`' Motor
`
`218
`
`222
`
`202 \
`Roll Attitude
`Neural Controller
`
`220
`
`/-216
`
`[*212
`
`Differentiator <
`
`Helicopter Cyclic
`Roll Actuator
`
`l
`
`Helicopter /_ 208
`Dynamics
`
`Attitude /_ 21°
`Sensor
`
`220
`
`Parrot Ex. 1006
`
`

`

`US 6,751,529 B1
`Page 2
`
`OTHER PUBLICATIONS
`
`Saeks, Richard, LoFlyte information found at http://WW
`W.accurate—autornation.corn/Technology/Lo?yte/lo?yte
`.htrnl.
`Rolf, Rysdyk T.; Calise, A.J., “Nonlinear Adaptive Flight
`Control Using Neural Networks”, IEEE Controls Systems
`Magazine, vol. 18, No. 6, Dec. 1998.
`
`Leitner, Jesse; Calise, Anthony J .; Prasad, J .V.R., “Analysis
`of Adaptive Neural NetWorks for Helicopter Flight Con
`trols”, AIAA Journal of Guidance, Control, and Dynamics,
`vol. 20, No. 5, p. 972—979, Sep.—Oct. 1997.
`
`* cited by eXarniner
`
`

`

`U.S. Patent
`
`Jun. 15,2004
`
`Sheet 1 0f 16
`
`US 6,751,529 B1
`
`108
`
`20
`W
`
`f“ 110
`
`(Side View)
`
`r 112
`[___J
`
`

`

`US. Patent
`
`Jun. 15, 2004
`
`Sheet 2 0f 16
`
`US 6,751,529 B1
`
`EN
`
`EN
`
`53026:
`
`meEmEE
`
`ma3E<
`
`.owcmw
`
`26553026:
`
`59mEU<zom
`
`VNN
`
`N.07.
`
`.ofiEEmED
`
`oNN
`
`mu3_t<=om
`
`
`
`5:0:80.mSmZ
`
`mrN
`
`
`
`
`
`
`

`

`US. Patent
`
`Jun. 15, 2004
`
`Sheet 3 0f 16
`
`US 6,751,529 B1
`
`wow
`
`2N
`
`568%:
`
`mo_Em:>Q
`
`32%
`
`chmm
`
`
`
`o__o>o538:2;
`
`6533‘50:1
`
`vmm
`
`m.0."—
`
`Bfizcfimtfi
`
`owm
`
`
`
`33:3.:85
`
`
`
`6:03:00_m._:mz
`
`m5
`
`
`
`
`
`

`

`US. Patent
`
`mJ
`
`4002
`
`eehS
`
`4
`
`61
`
`US 6,751,529 B1
`
`5:5833‘28>J2.8555026:
`
`pma
`tOwNmuszt<
`
`mom.2326:
`
`mu_Emc>o
`
`#NV
`
`a..9“—
`
`howmzcmhmfia
`
`owv
`
`$3525>
`
`
`
`5:02:00.9302
`
`m;
`
`
`
`

`

`U.S. Patent
`
`Jun. 15,2004
`
`Sheet 5 0f 16
`
`US 6,751,529 B1
`
`output neuron
`
`middle layer of neurons
`
`input neurons
`
`FIG. 5
`
`

`

`U.S. Patent
`
`Jun. 15,2004
`
`Sheet 6 6f 16
`
`US 6,751,529 B1
`
`Servo Motor
`
`i
`
`Rotor
`Actuator
`
`V
`Helicopter
`Dynamics
`
`."
`Att'tude
`Sensor
`
`Current Servo Position
`
`Commanded
`
`Servo Rate
`
`b Neural
`Pathways
`
`Attitude Rate
`
`Attitude Error
`
`FIG. 6
`
`Processing
`Neurons
`\J
`
`

`

`U.S. Patent
`
`Jun. 15,2004
`
`Sheet 7 0f 16
`
`US 6,751,529 B1
`
`i
`
`r 700
`[- 702
`
`Mount RC Model Helicopter to Test Stand
`PM
`l
`Look Down RC Model Helicopter to Prohibit
`Movement Except in One Axis
`
`/_ 706
`l
`Provide Open-Loop Stimulus to Servo Motor
`
`F 708
`&
`Generate Servo Motor Command Pro?le and
`Attitude Pro?le Data
`
`L
`Select a Training Region
`
`l
`Train Neural Network Using Open-Loop
`Stimulus Data Set
`l
`Tune the Neural Network
`
`F‘ 710
`
`/— 712
`
`714
`
`[- 716
`l
`Calculate Attitude Error input Bias and Add
`Attitude Error Input Bias to the Attitude Error
`Input Neuron of the Neural Network
`/— 718
`l
`Generate Neural Controller and Flight Test RC
`Model Helicopter Using Neural Controller
`
`FIG. 7
`
`

`

`U.S. Patent
`
`Jun. 15,2004
`
`Sheet 8 0f 16
`
`US 6,751,529 B1
`
`
`
`Q03 65 0&5, 02:3
`
`20
`
`40
`
`6O
`
`80
`Time (sec)
`
`lOO
`
`120
`
`140
`
`160
`
`FIG. 8
`
`

`

`U.S. Patent
`US. Patent
`
`Jun. 15,2004
`Jun. 15, 2004
`
`Sheet 9 0f 16
`Sheet 9 0f 16
`
`US 6,751,529 B1
`US 6,751,529 B1
`
`
`
`FIG. 9
`FIG. 9
`
`

`

`U.S. Patent
`US. Patent
`
`Jun. 15,2004
`Jun. 15, 2004
`
`Sheet 10 0f 16
`Sheet 10 0f 16
`
`US 6,751,529 B1
`US 6,751,529 B1
`
`FIG.10
`
`FIG. 10
`
`

`

`U.S. Patent
`
`Jun. 15,2004
`
`Sheet 11 0f 16
`
`US 6,751,529 B1
`
`-
`
`- Tminirg reg'mto be cave-?tted
`2nd scaledfamml mtwxk
`
`5
`
`.3
`
`Time(mi1s)
`
`FIG. 11
`
`

`

`U.S. Patent
`
`Jun. 15,2004
`
`Sheet 12 0f 16
`
`US 6,751,529 B1
`
`140
`
`120
`
`
`
`Attiwde Angle a a a
`
`roll “wwshadedmgmw
`
`FIG. 12
`
`

`

`U.S. Patent
`
`Jun. 15,2004
`
`Sheet 13 0f 16
`
`US 6,751,529 B1
`
`i
`20
`
`1
`40
`
`6O
`
`i
`80
`Tm: (see)
`
`100
`
`i
`120
`
`140
`
`160
`
`FIG. 13
`
`

`

`U.S. Patent
`
`Jun. 15,2004
`
`Sheet 14 0f 16
`
`US 6,751,529 B1
`
`Current Servo Position
`
`Commanded
`
`Servo Rate
`
`Servo Motor
`
`i
`
`Rotor
`Actuator
`
`Helicopter
`Dynamics
`
`V
`Attitude
`Sensor
`
`Attitude Rate
`j Attitude Error
`
`Performance
`Shaping Constants
`
`FIG. 14
`
`

`

`US. Patent
`
`Jun. 15, 2004
`
`Sheet 15 0f 16
`
`US 6,751,529 B1
`
` -:51.£13,!{25:11:1I:.I§|§....;I.zl:¢..i.iiu\.liil...s.i3T213113;...;6...z...li...t.:.!ni...i..ii...lr.lc|al|2m_
` 32.8530“fl0::mini—wWW9.:93%.,,M.II.
`WT_-ml4.u88P8958;Eco_A809No
`
`
`;Miammo88.mwmwilmifilimmmo_.amaze,Emmi
`
`
`
`
`
`
`
`
`,twang—.58;‘an.9.6m0:33.258:850th5%.:83.5w:2.8cflE0tmn826.3.5:9:;
`
`.InlIll‘Li111;ill]
`
`
`
`
`
`
`
`
`HI»E|xrIIII}I»I>}
`
`,
`
`
`
`
`
`
`
`mw.0.”—
`
`
`
`
`
`
`
`
`
`
`
`

`

`U.S. Patent
`
`Jun. 15,2004
`
`Sheet 16 0f 16
`
`US 6,751,529 B1
`
`iterations lower bound upper bound
`
`bias
`
`neural network
`output
`
`1
`2
`3
`4
`5
`5
`7
`8
`9
`10
`11
`“ 12
`13
`14
`15
`15
`17
`18
`
`40
`-40
`-20
`40
`-5
`-2.5
`-2.5
`4.875
`4.5525
`4.40525
`4.32812
`4.28905
`4.25953
`4.25977
`4.25488
`4.25244
`4.25244
`4.25244
`
`40
`0
`0
`0
`0
`0
`4.25
`4.25
`4.25
`4.25
`4.25
`4.25
`4.25
`4 .25
`4.25
`4.25
`4.25122
`4.25183
`
`1
`
`0
`-20
`40
`5
`-2.5
`4.25
`-1.875
`4.5525
`4.40525
`4.32812
`4.28905
`“11.25953
`4.25977
`4.25488
`4 .25244
`4.25122
`4.25183
`4.25214
`
`0.1745215
`3.2702389
`1.4985907
`0.5905902
`0.1855542
`00003075
`00912329
`0.045101
`0.0223054
`0.0109755
`0.0053279
`0.0025085
`0.0010999
`0.0003953" "
`0.0000435
`00001315
`0.0000435
`0.0000002
`
`FIG. 16
`
`

`

`US 6,751,529 B1
`
`1
`SYSTEM AND METHOD FOR
`CONTROLLING MODEL AIRCRAFT
`
`2
`Even for RC ?Xed-Wing aircraft, the user needs to knoW hoW
`to glide the aircraft to the ground.
`
`RELATED APPLICATION
`
`SUMMARY
`
`The application claims the bene?t of priority under 35
`U.S.C. § 119(c) of US. Provisional Application No. 60/385,
`315 ?led on Jun. 3, 2002, the entirety of Which is incorpo
`rated herein by reference.
`
`BACKGROUND
`
`1. Field
`The present invention generally relates to aircraft control
`techniques and, in particular, to a system and method for
`controlling an aircraft via the use of a neural netWork
`controller.
`2. Description of the Related Art
`Aircraft generally have three ranges or aXes of motion
`(roll, pitch, and yaW), and it is necessary to actively control
`the aircraft’s motion about each of the three aXes of motion
`via one or more aerodynamic actuators. In general, for
`?xed-Wing aircraft (e.g., airplanes), roll, pitch, and yaW are
`primarily controlled via the aircraft’s ailerons, horiZontal
`stabiliZer, and vertical stabiliZer, respectively. For rotary
`Wing aircraft (e.g., helicopters), roll and pitch are generally
`controlled via the aircraft’s main or horiZontal rotor, and
`yaW is generally controlled via the aircraft’s tail or vertical
`rotor. HoWever, it is common for a particular actuator to
`contribute to more than one aXis of motion, and it is possible
`for other types of actuators to be employed in addition to
`and/or in lieu of the aforementioned actuators.
`Properly controlling an aircraft’s motion can be a dif?cult
`task, particularly in environmental conditions (e.g.,
`turbulence) that cause the aircraft to behave in an unpre
`dictable manner. Indeed, most pilots spend an enormous
`amount of time and effort in learning hoW to properly control
`their aircraft.
`Control of model aircraft (i.e., miniature, unmanned
`aircraft) adds an additional layer of dif?culty since there is
`no on-board pilot that can apply the appropriate inputs for
`properly controlling the aircraft. A “pilot on the ground”
`cannot sense nuances in the aircraft movement and, thus, can
`become disoriented very quickly. For eXample, if a helicop
`ter is facing aWay from a pilot (i.e., helicopter nose points in
`same direction as pilot’s nose), then the pilot’s left is the
`helicopter’s left. But, if the helicopter yaWs 180 degrees and
`faces the pilot, then the pilot has to change his/her orienta
`tion and method of thinking because “left is right” and “right
`is left.” A pilot on board Will never face this problem.
`Rotary-Wing model aircraft are inherently unstable in that
`they lack positive dynamic stability. With ?xed-Wing
`aircraft, their actuators can sometimes be positioned or
`con?gured such that the ?xed-Wing aircraft generally main
`tains stable ?ight Without additional input from the actuators
`(also called trimmed ?ight). HoWever, most rotary-Wing
`aircraft ?y in an unstable manner unless control inputs for
`the actuators are continuously provided. One draWback is
`the resulting dif?culty of controlling a remote-controlled
`(RC) aircraft in ?ight.
`For eXample, in order for a user to successfully ?y and
`control a RC helicopter either for fun or business, the user
`has to be an eXpert pilot. In addition to having to knoW hoW
`to ?y, the user also needs to knoW hoW to autorotate the RC
`helicopter in the event that the RC helicopter engine quits or
`stalls in mid air. The skills required to autorotate a helicopter
`is very different from the skills required to ?y the helicopter.
`
`15
`
`25
`
`35
`
`45
`
`55
`
`65
`
`In one embodiment, a method for controlling an aircraft
`comprises providing an attitude error as a ?rst input into a
`neural controller, the attitude error calculated from a com
`manded attitude and a current measured attitude, providing
`an attitude rate as a second input into a neural controller, the
`attitude rate derived from the current measured attitude,
`processing the ?rst input and the second input to generate a
`commanded servo actuator rate as an output of the neural
`controller, generating a commanded actuator position from
`the commanded servo actuator rate and a current servo
`position, and inputting the commanded actuator position to
`a servo motor con?gured to drive an attitude actuator to the
`commanded actuator position, Wherein, the neural controller
`is developed from a neural netWork, the neural netWork
`designed Without using conventional control laWs, the neural
`netWork trained to eliminate the attitude error.
`In another embodiment, an apparatus for controlling an
`aircraft comprises an attitude sensor operable to provide a
`current attitude, a differentiator operable to receive as input
`the current attitude and derive an attitude rate, a neural
`controller operable to receive a plurality of inputs compris
`ing an attitude error and the attitude rate, the attitude error
`calculated from a commanded attitude and the current
`attitude, the neural controller also operable to generate a
`commanded servo rate from the plurality of inputs, the
`commanded servo rate applied to a current actuator position
`to generate a commanded actuator position, and a servo
`motor operable receive the commanded actuator position,
`the servo motor further operable to drive an attitude actuator
`to the commanded actuator position, Wherein the neural
`controller is developed from a neural netWork designed
`Without using conventional control laWs.
`These and other embodiments of the present invention
`Will also become readily apparent to those skilled in the art
`from the folloWing detailed description of the embodiments
`having reference to the attached ?gures, the invention not
`being limited to any particular embodiment(s) disclosed.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`The folloWing draWings incorporated in and forming a
`part of the speci?cation illustrate, and together With the
`detailed description serve to eXplain various aspects of the
`implementation(s) and/or embodiment(s) of the invention
`and not of the invention itself.
`FIGS. 1A and 1B illustrate an exemplary RC model
`helicopter mounted to a 3-aXis test stand suitable for control
`by a neural controller, according to one embodiment.
`FIG. 2 illustrates a block diagram of one embodiment of
`a neural netWork roll attitude control, according to the
`present invention.
`FIG. 3 illustrates a block diagram of one embodiment of
`a neural netWork pitch attitude control, according to the
`present invention.
`FIG. 4 illustrates a block diagram of one embodiment of
`a neural netWork yaW attitude control, according to the
`present invention.
`FIG. 5 illustrates an eXemplary neural netWork for learn
`ing 3-dimensional relationships.
`FIG. 6 illustrates a block diagram of one embodiment of
`an exemplary closed-loop process for a neural netWork
`helicopter attitude control, according to the present inven
`tion.
`
`

`

`US 6,751,529 B1
`
`3
`FIG. 7 illustrates a How chart of one embodiment of a
`method by Which a neural controller is developed, according
`to the present invention.
`FIG. 8 illustrates an example of an operator-induced
`decaying sinusoidal Wave stimulus.
`FIG. 9 illustrates a RC model helicopter mounted on a test
`stand and canted a positive 0t degrees from a roll neutral
`position.
`FIG. 10 illustrates an exemplary depiction of the effect of
`an exponentially decaying sinusoidal Waveform on a RC
`model helicopter mounted to a test stand.
`FIG. 11 illustrates an exemplary graphical depiction of a
`training region, according to the present invention.
`FIG. 12 illustrates an exemplary graphical depiction of a
`training region comprising tWo regions of overshoot,
`according to the present invention.
`FIG. 13 illustrates an exemplary graphical depiction of an
`upper performance-shaping line and a loWer performance
`shaping line about a transient response curve, according to
`the present invention.
`FIG. 14 illustrates a block diagram of one embodiment of
`an exemplary closed-loop process for a neural netWork
`having a neural controller tuning concept, according to the
`present invention.
`FIG. 15 is a table illustrating an exemplary mapping
`betWeen a plurality of input training sets for a RC model
`helicopter roll attitude and its corresponding commanded
`servo rate, according to the present invention.
`FIG. 16 is a table illustrating exemplary chronological
`results of an iterative roll attitude error input bias calculation
`for a RC model helicopter, according to the present inven
`tion.
`
`15
`
`25
`
`DETAILED DESCRIPTION
`
`35
`
`The various embodiments of the present invention and
`their advantages are best understood by referring to FIGS. 1
`through 16 of the draWings. The elements of the draWings
`are not necessarily to scale, emphasis instead being placed
`upon clearly illustrating the principles of the invention.
`Throughout the draWings, like numerals are used for like and
`corresponding parts of the various draWings.
`Turning ?rst to the nomenclature of the speci?cation, at
`least one embodiment described in the detailed description
`that folloWs is presented largely in terms of processes and
`symbolic representations of operations performed by
`computers, including computer components. A computer
`may be any microprocessor or processor (hereinafter
`referred to as processor) controlled device capable of
`enabling or performing the processes and functionality set
`forth herein. The computer may possess input devices such
`as, by Way of example, a keyboard, a keypad, a mouse, a
`microphone, or a touch screen, and output devices such as a
`computer screen, printer, or a speaker. Additionally, the
`computer includes memory such as, Without limitation, a
`memory storage device or an addressable storage medium.
`The computer, and the computer memory, may advanta
`geously contain program logic or other substrate con?gu
`ration representing data and instructions, Which cause the
`computer to operate in a speci?c and prede?ned manner as,
`described herein. The program logic may advantageously be
`implemented as one or more modules. The modules may
`advantageously be con?gured to reside on the computer
`memory and execute on the one or more processors (i.e.,
`computers). The modules include, but are not limited to,
`softWare or hardWare components that perform certain tasks.
`
`45
`
`55
`
`65
`
`4
`Thus, a module may include, by Way of example,
`components, such as, softWare components, processes,
`functions, subroutines, procedures, attributes, class
`components, task components, object-oriented softWare
`components, segments of program code, drivers, ?rmWare,
`microcode, circuitry, data, and the like.
`The program logic can be maintained or stored on a
`computer-readable storage medium. The term “computer
`readable storage medium” refers to any medium that par
`ticipates in providing the symbolic representations of opera
`tions to a processor for execution. Such media may take
`many forms, including, Without limitation, volatile memory,
`nonvolatile memory, ?ash memory, electronic transmission
`media, and the like. Volatile memory includes, for example,
`dynamic memory and cache memory normally present in
`computers. Nonvolatile memory includes, for example, opti
`cal or magnetic disks.
`It should also be understood that the programs, modules,
`processes, methods, and the like, described herein are but
`exemplary implementations and are not related, or limited,
`to any particular computer, apparatus, or computer language.
`Rather, various types of general-purpose computing
`machines or devices may be used With programs constructed
`in accordance With the teachings described herein. Similarly,
`it may prove advantageous to construct a specialiZed appa
`ratus to perform some or all of the method steps described
`herein by Way of dedicated computer systems With hard
`Wired logic or programs stored in non-volatile memory, such
`as, by Way of example, read-only memory (ROM).
`The present disclosure is generally directed to a system
`and corresponding methods that facilitate the control of
`aircraft in ?ight. In accordance With one embodiment of the
`present invention, a servo motor for moving one of the
`aircraft’s actuators is given an open-loop stimulus (e.g., a
`sinusoidal control signal With exponentially decreasing
`amplitude) that causes the servo motor to move the actuator
`such that the aircraft oscillates at least once about one of the
`aircraft’s axis of movement. During the oscillation, data
`indicative of the aircraft’s response to the open-loop stimu
`lus is captured. This data is then utiliZed to train a neural
`netWork used for controlling the aircraft’s actuator.
`More speci?cally, the data is utiliZed to train the neural
`netWork to control the actuator such that the actuator tends
`to return the aircraft to an equilibrium position When dis
`placed from the equilibrium position. In other Words, the
`neural netWork is trained to “Zero-out” an attitude error (i.e.,
`a displacement from the equilibrium position). Once the
`neural netWork is trained, it is implemented as a neural
`controller that is used to control the actuator during actual or
`test ?ight conditions. Based on the aircraft’s ?ight
`performance, the neural controller is tuned by adjusting
`inputs to the neural controller such that the neural controller
`properly maintains the stability of the aircraft.
`Even though the principles of the various embodiments of
`the invention described herein are suitable for controlling
`aircraft in general, for ease and clarity of explanation, the
`invention Will be further disclosed in the context of control
`ling remote controlled (RC) aircraft. More particularly, a
`neural netWork and resulting neural controller suitable for
`controlling a RC model rotary-Wing aircraft such as, by Way
`of example, a helicopter, Will be disclosed. It is appreciated
`that the principles of the invention disclosed herein in
`conjunction With the control of RC model helicopters may
`be utiliZed to control RC model ?xed-Wing aircraft as Well
`as actual rotary and ?xed-Wing aircraft (i.e., non-model
`aircraft).
`
`

`

`US 6,751,529 B1
`
`5
`FIGS. 1A and 1B illustrate an exemplary RC model
`helicopter 10 mounted to a 3-axis test stand 20 suitable for
`control by a neural controller, according to one embodiment.
`As depicted, FIG. 1A illustrates a front view of RC model
`helicopter 10 mounted to test stand 20 (i.e., a holding
`mechanism) and FIG. 1B illustrates a side view of RC model
`helicopter 10 mounted to test stand 20. RC model helicopter
`10 comprises a fuselage 102, a rotor 104 coupled to fuselage
`102, a tail boom 106 coupled to fuselage 102, and a tail rotor
`108 coupled to tail boom 106 substantially at a distal end
`opposite fuselage 102. As used herein,
`the terms
`“connected,” “coupled,” or any variant thereof, means any
`connection or coupling, either direct or indirect, between
`two or more elements; the coupling or connection between
`the elements can be physical,
`logical, or a combination
`thereof.
`
`As depicted, rotor 104 generally functions to control roll
`(i.e., motion about the z-axis)-and pitch (i.e., motion about
`the x-axis), and tail rotor 108 generally functions to control
`yaw (i.e., motion about the y-axis). Rotor 104 is coupled to
`a rotor actuator (not shown) and tail rotor 108 is coupled to
`a tail rotor actuator (not shown). Each rotor is mechanically,
`electrically, or hydraulically coupled or linked to its respec-
`tive actuator. A change in actuator position directly causes a
`change in the lateral position of its coupled rotor, which, in
`turn, affects the roll, pitch, and/or yaw attitude (i.e.,
`the
`helicopter dynamics) of RC model helicopter 10. The X, y,
`and z-axes are indicated in FIGS. 1A and 1B by “dashed”
`lines and are not part of RC model helicopter 10.
`Test stand 20 generally functions to hold RC model
`helicopter 10 and, more particularly, functions to enable RC
`model helicopter 10 to move about a single axis while
`prohibiting movement about
`the other two axes. Stated
`differently, RC model helicopter 10 can be mounted to test
`stand 20 and configured such that RC model helicopter 10 is
`free to move about a single axis of motion (e.g., about the
`x-axis) and unable to move about the other two axes of
`motion (e.g., about the y-axis and z-axis).
`As depicted, test stand 20 comprises an arm 110 coupled
`to a base 112. Arm 110 generally extends from base 112 and
`functions to couple to RC model helicopter 10 at a distal end
`opposite the distal end coupled to base 112.
`In one
`embodiment, arm 110 is coupled to RC model helicopter 10
`at the helicopter’s center of gravity such that no movement
`is created by virtue of RC model helicopter 10 being coupled
`to test stand 20.
`
`For example, to design a neural controller to control the
`z-axis (roll axis) of RC model helicopter 10, a user mounts
`RC model helicopter 10 to test stand 20 and enables move-
`ment only in the z-axis while locking-down or preventing
`movement about the x-axis (pitch axis) and the y-axis (yaw
`axis). The axis of interest (i.e., roll axis) is the only “free”
`axis, and the other two axes (i.e., the pitch and yaw axes) are
`locked-down.
`
`FIG. 2 illustrates a block diagram of one embodiment of
`a neural network roll attitude control, according to the
`present invention. The neural network roll attitude control
`generally functions to control the roll axis of RC model
`helicopter 10. As depicted, the neural network roll attitude
`control block diagram comprises a roll attitude neural con-
`troller 202, a servo motor 204, a helicopter cyclic roll
`actuator 206, a helicopter dynamics 208, an attitude sensor
`210, and a differentiator 212.
`Roll attitude neural controller 202 generally functions to
`control or maintain RC model helicopter 10 in a commanded
`roll attitude. In one embodiment, roll attitude neural con-
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`troller 202 is a software implementation of a plurality of
`equations that define a neural network that
`is taught to
`reduce the roll attitude error to zero. Stated another way, the
`neural network is trained to control the roll actuator of RC
`
`model helicopter 10 such that the angular displacements of
`RC model helicopter 10 about the roll axis are “zeroed out.”
`Designing and teaching a neural network suitable for use in
`designing roll attitude neural controller 202 is further dis-
`cussed below.
`
`Roll attitude neural controller 202 receives as input a roll
`attitude error 214 and a roll attitude rate 216. Roll attitude
`error 214 is the difference between a commanded roll
`
`attitude 218 and a measured (actual) roll attitude 220, and
`roll attitude rate 216 is the derivative of measured roll
`
`attitude 220. Roll attitude neural controller 202 processes
`the inputs and generates a servo actuator rate command 222,
`which is an incremental delta position (negative or positive)
`that is applied to a current actuator position 224 to generate
`a commanded actuator position 226 to servo motor 204.
`In one embodiment, servo actuator rate command 222 is
`multiplied by a delta-time value (rate*delta-time), and the
`resulting value is added to current actuator position 224 (old
`position) to generate commanded actuator position 226 (a
`new position). Stated another way, a new position=old
`position+(rate*delta-time). The new position command is
`then sent to servo motor 204.
`
`Servo motor 204 is coupled to helicopter cyclic roll
`actuator 206 and generally functions to drive helicopter
`cyclic roll actuator 206. Servo motor 204 receives as input
`commanded actuator position 226 and, based on this input,
`drives or controls helicopter cyclic roll actuator 206 to
`accordingly change position in response to commanded
`actuator position 226. In this instance, helicopter cyclic roll
`actuator 206 is coupled to rotor 104, and a change in
`helicopter cyclic roll actuator 206 position directly causes an
`attitude change about the longitudinal axis of rotor 104. In
`particular, servo motor 204 drives helicopter cyclic roll
`actuator 206, which in turn drives the control surface (i.e.,
`rotor 104).
`from the control
`The aerodynamic forces that result
`surface movement cause RC model helicopter 10 to change
`attitude. In particular, the attitude change about the longi-
`tudinal axis of rotor 104 affects helicopter dynamics 208
`and, in particular, the roll attitude of RC model helicopter
`10. Attitude sensor 210 generally functions to measure an
`attitude change and output a new or measured attitude. In
`this instance, attitude sensor 210 measures the roll attitude
`change and outputs measured roll attitude 220, which is used
`to generate roll attitude error 214 and roll attitude rate 216.
`Differentiator 212 generally functions to generate an
`attitude rate from an input attitude measurement. For
`example and in this instance, differentiator 212 receives as
`input measured roll attitude 220 from attitude sensor 210
`and generates roll attitude rate 216 by calculating the
`derivative of measured roll attitude 220. Roll attitude rate
`
`216 is then provided as one input to roll attitude neural
`controller 202.
`
`In one embodiment, servo motor 204, helicopter cyclic
`roll actuator 206, and attitude sensor 210 are housed within
`or as part of RC model helicopter 10 and roll attitude neural
`controller 202 is located external to RC model helicopter 10.
`For example, roll attitude neural controller 202 may be
`housed and execute within a computer. In this embodiment,
`roll attitude neural controller 202 can communicate with the
`
`components housed within RC model helicopter 10 either
`through wireless communication (e.g.,
`radio
`
`

`

`US 6,751,529 B1
`
`7
`
`In
`communication, etc.) or via a physical connection.
`another embodiment, roll attitude neural controller 202 is
`housed within or as part of RC model helicopter 10.
`It
`is appreciated that
`the aforementioned components
`depicted in the neural network roll attitude control are only
`illustrative and the neural network roll attitude control may
`comprise other components and modules not depicted. The
`depicted components and modules may communicate with
`each other and other components comprising the neural
`network roll attitude control through mechanisms such as,
`by way of example, direct memory access,
`interprocess
`communication, procedure and function calls, application
`program interfaces, other various program interfaces, and
`various network and communication protocols.
`Furthermore, the functionality provided for in the compo-
`nents and modules may be combined into fewer components
`or modules or further separated into additional components
`or modules.
`
`FIG. 3 illustrates a block diagram of one embodiment of
`a neural network pitch attitude control, according to the
`present invention. As depicted,
`the neural network pitch
`attitude control comprises a pitch attitude neural controller
`302, a servo motor 304, a helicopter cyclic pitch actuator
`306, helicopter dynamics 208, attitude sensor 210, and a
`differentiator 312.
`
`The neural network pitch attitude control generally func-
`tions to control the pitch axis of RC model helicopter 10 in
`a manner similar to that of the neural network roll attitude
`
`control disclosed above. In particular, pitch attitude neural
`controller 302 generally functions to control or maintain RC
`model helicopter 10 in a commanded pitch attitude. In one
`embodiment, pitch attitude neural controller 302 is a soft-
`ware implementation of a plurality of equations that define
`a neural network that is taught to reduce the pitch attitude
`error to zero.
`
`Pitch attitude neural controller 302 receives as input a
`pitch attitude error 314 and a pitch attitude rate 316. Pitch
`attitude error 314 is the difference between a commanded
`
`pitch attitude 318 and a measured (actual) pitch attitude 320,
`and pitch attitude rate 316 is the derivative of measured pitch
`attitude 320. Pitch attitude neural controller 302 processes
`the inputs and generates a servo actuator rate command 322,
`which is an incremental delta position (negative or positive)
`that is applied to a current actuator position 324 to generate
`a commanded actuator position 326 to servo motor 304.
`Servo motor 304 is coupled to helicopter cyclic pitch
`actuator 306 and generally functions to drive helicopter
`cyclic pitch actuator 306. Servo motor 304 receives as input
`commanded actuator position 326 and, based on this input,
`dr

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket