This action might not be possible to undo. Are you sure you want to continue?
In this paper we described DANIELA (Digital Analog Neuro-fuzzy Interface for Enhanced Learning Applications), a real time neuro-fuzzy controller that implements intelligent control algorithms mixing neuro-fuzzy paradigms with Finite State Automata (FSA). The FSA tracks the state of the plant and selects the parameter (e.g. weights) of the controller accordingly. This mixing allows the system to change the control strategy according to the actual state of the plant which leads to the use of a number of very simple controllers, instead of a more complex single one which covers all possible plant conditions. For instance, our system applied to a six legged walking robot uses specialized controllers for every different plant state (for instance, forward and backward steps, curves,etc.).Adaptive learning through neral networks have been highly enhanced. The tight link with a DSP allows he NN hardware to be very simple since several operations related with the NNs (learning, weights ,refresh etc..,) can be performed by the DSP .Moreover the system can implement intelligent control paradigms mixing Neuro Fuzzy algorithms with finite static automata and/or digital control algorithms.
iii) we had available a neuro-fuzzy computing engine (DANIELA) with good real time performance which was more suited to implement neuro-fuzzy than other algorithms. the human friendly description language. and therefore it allows to use these methods in real-time applications. The machine can also be used as experimental test bed for different control strategies to investigate the possibility of small walking vehicles on different types of terrain. etc. modularity to use the machine as a . Furthermore the availability of dedicated neuro-fuzzy processors permits a very fast implementation of neuro-fuzzy algorithms. which can be used as a remotely controlled observation device and can evolve as a true mobile Robert. The main reasons for the use of those methods instead of more traditional controllers are four-folds: i) ii) we wanted to test the validity of neuro-fuzzy control techniques. the adaptation capability. Advantages of neuro-fuzzy techniques are their non-linear characteristics. Neural networks and neuro-fuzzy systems are raising more and more interest in the field of real-time control. EXAPODE WALKING MACHINE Aim of this paper is to design. we had a lot of \human knowledge" on theproblem and fuzzy logic seemed to be the most straightforward way to include it into the design of the controller. built and test a small hexapode walking machine controlled by purposely developed neural chips. iii) we used this application as a testbed for the tight integrationof neuro-fuzzy controllers with finite state automata. The main characteristic of the machine are simple and light weight mechanical architecture to contain overall cost. where a quite high sampling rate (namely.INTRODUCTION Real-time control of non-linear plants is often a hard and computationally intensive task. >1kHz) is required. the capability of learning from examples.
memory expansions an so on. flexibility leading to the possibility of adapting the gain to a variety of terrains. The systems can support upto 256 channels for A/D and D/A conversion. The machine is already assembled and the first test are going on. The mass of the mechanical components including the electric motors is 21. Special module provides a communication . Each leg is made of a shinbone and a thighbone both 50cm long it has three degree of freedom and is equipped with three current controlled motors. NeuroFuzzy core units. For the reasons. In this way each module is mapped into the DSP memory space. The design chosen allows to assume an insect stance even to switch to quadruped ‘mammalian’ configuration. while for the other two drivers the output current is only 3A(namely 72W).research tool. the idea is to build a hierarchy of NeuroFuzzy controllers have been chosen because of their good behavior in the presence of nonlinear systems and for their intrinsic generalization capability. digital I/O. These DSP is available. PROTOTYPE BOARD A general purpose system based on a TMS320CXX. possibility of working as an autonomous system without the need of an umbilical cord for either energy supply or control. Since the control task is complex. The core of the system is a custom TMS320C31 board with up to 8Mbyte of RAM and 128Kbyte of Non Volatile RAM. One of the actuator must carry a significant fraction of the hexapode weight(depending on the number of legs that support the body) and so its driver has maximum output current of 20A (namely 480MW).This board is interfaced to the additional modules of the system by using a proprietary I/O bus. we chose to use low cost permanent magnets electric motors in connection with rechargeable batteries and to adopt a gait in which the vehicle is always in conditions of static equilibrium. To obtain high efficiency. All the actuators are directly controlled by power drivers.3 kg . A reptilian stance is adopted as its energetic disadvantages are of small importance. switching amplifiers are employed which are perfectly matched with the CPWM encoding used in the Neuro-Fuzzy core. PWM encoders.
the modules can be configured by the DSP by setting some parameter as bits numbers for digital converters and full scale ranges for the analog ones. its operation can be viewed either s a slave operation of the DSP or as an independent one. This system is suitable both for industrial high performance control applications and educational tools depending on the amount and kind of modules plugged into it. So far. Each module can be added with an extremely easy procedure and can be controlled by the software environment. For its operatin Neuro-Fuzzy core takes as inputs either external signals(through dedicate A/D converters) or signals from the DSP subsystem via the field bus and also Neuro-Fuzzy core outputs can be sent either to external outputs or to the DSP. The Neuro-Fuzzy computing core presented in this section is based on a custom Neuro-Fuzzy processor called AMINAH and implements different paradigms as Multilayer Preceptron(MLP). drivers and actuator interfaces.a reconfigurable Neuro-Fuzzy computing core. while converters module are classical Analog to Digital and Digital to Analog converters and also special converter module that convert analog and digital signals into Pulse Width Modulation signals and vice versa. special sensors modules and others. the last host computer interface modules an 8 channel 12 bit A/D and D/A converters. As shown in fig Neuro-Fuzzy processor core has also a local non .Radial Basis Function (RBF) and also Weighted Radial Basic Function(WBRF) that are used to implement Fuzzy inference systems. bus the complete system can accept many others as special purpose processors. Linear Networks(LN).with a host computer (eg a PC via a parallel port ) these modules connect a PC serial or parallel port with the DSP board via the I/O bus. the main DSP board . The Neuro-Fuzzy module is described in section 2. we have manufactured several module . NEURO-FUZZY COMPUTING CORE The proposed Neuro-Fuzzy core implements on hardware several Neuro-Fuzzy paradigms.
Neuro-Fuzzy core is considered as a slave device the DSP can perform several tasks on it such as: DSP can write/read a bank of synaptic weights into/from the Neuro-Fuzzy core non volatile memory. biases and reference signals. The Neuro-Fuzzy subsystem will then automatically write active bank content into AMINAH . DSP can select a single bank to be the active one. only one of this bank is stored into the internal volatile AMINAH memory and every time that the active bank is changed the new weight and configuration information is automatically loaded into it. Every synaptic weights bank define a particular Neuro-Fuzzy system that includes synaptic weights and configuration information. it also has special analog circuits that provide timing.volatile memory used to stores several banks of synaptic weights and some logic interface to connect AMINAH and the non volatile memory to the main system bus.
The synapse contribution depends also on the chosen neural paradigm this can be either Multi Layer Perception (MLP). The hidden layer has N-7 inputs and M-16 outputs while the output layer has N-15 inputs and M-8 outputs.- DSP can read inputs and outputs of Neuro-Fuzzy subsystem to execute learning algorithms or other supervision tasks. Each neuron j is connected to a row of N synapse plus a threshold (Sj. Architecture of AMINAH The AMNAH chip has two cascaded neural network layers called hidden and output layer called hidden and output layer respectively. A copy of active weights is stored internally into AMINAH using two capacitive memories per synapse. So.I ) is connected to the same input X. AMINAH output signal are coded using Coherent Pulse Width Modulation (CPWM). Synaptic contributions are charge quantities. this product is quit linear and allow a small power dissipation while for RBF/WRBF operation each synapse generate charge quantities proportional to the distance between stored weight and width of the input CPWM signal. Sj. Each AMINAH synapse uses two synapse weights (called respectively excitatory and inhibitory weights) to compute the synaptic contribution.Radial Basis Function(RBF). while for the RBF/WRBF paradigms. they are converted using on chip analog to CPWM converters. a particular Pulse Stream technique AMINAH input signal (Xj) can either be analog or CPWM in the former case. or Weighted Radial Basis Function (WBRF) of order 1. I-MLP). and therefore the system can also implement Fuzzy System.I …. For MLP operation each synapse generate charge quantities proportional to the product of the stored weight and width of the input CPWM signal.I .o) while each column (S1.y .Sy.1 … Sj. they are . the synaptic contributions are presented as a differential current (I+MLP. Architecture of one layer of AMINAH shown in figure is based on N x M synaptic array and a vector of M neurons. For the MLP paradigm.
Each row j of synapse sums up all the currents on the two common summation lines I+MLP and I-MLP (excitatory and inhibitory respectively). Allows to change the number of active synapse connected to a neuron by selecting one of seven current mirrors each mirrors has a fixed gain . 15 hidden neurons and 8 output neurons. Each neuron can be programmed to select one of these signals. Science AMINAH internal weights are stored in analog form. Typically these signals are sigmoids and exponential functions. Accepts two different external signals that are used to define non linear functions for neuron computations. This voltage is then converted to a CPWM output signal using a non-linear conversion by using a non linear converter.presented as a single ended current (I+MLP) while I-MLP is not used. each column I of synapse is connected to a Common Reference System(CRS) used for the synaptic weights long term storage to compensate leakage currents and therefore weights decay. Implements neural network with at most 7 inputs. Allows to work with MLP /(W)RBF algorithms and can be programmed to emulate Fuzzy systems. a multichip structure can be used (ever chip implements two layers) or one chip multiplexing in time different weights matrices to implement more than two layers ( slow operation ). The most important characteristics of AMINAH are : The chip is designed to accept any configuration of one or two layer Neural Network If multilayer Neural Network (with more than two layers) is needed . The neuron (one for each row ) generate a current that is the algebraic sum of them using programmable gain current mirrors multiplying it by a chosen factor R1<I the neuron integrates the resultant current on capacitor CR1 to obtain a voltage proportional to the neuron activity.
Plant control is realized with a neuro-fuzzy algorithm computed by the neurofuzzy processor.1.….1/2.(2.1/32) and can be turned on/off writing a configuration register in each neuron. In order to define different control strategies optionally. NEURO-FUZZY CONTROLLER DANIELA has also special Power Drivers used to drive the actuators in the plant. one per each state of the FSA) there are different matrices of synaptic weights and neural parameters stored in the weight memory. Algorithm characteristics both for neural and fuzzy are defined by a matrix of synaptic weights and other neural parameters that are stored into the neuro-fuzzy processor. where every matrix is stored in a .
but this is not a problem in most learning controllers. on-line training: by sampling neuro-fuzzy inputs and outputs (also hidden) and modifying matrices of synaptic weights stored into weight memory. The computational requirements to compute the FSA are less stringent. which can either write data into the memory or read several debugging information from the microcontrollers (such as neural states. board self test: performing tests and diagnostic at power up.Only one bank can be active per time and its data are transferred to the neuro-fuzzy processor internal memory by the Configuration and Refresh Block every time the FSA changes states. interface with a host computer. 3. learning is a relatively slow process. The microcontroller performs the following tasks: 1.). . 4.etc. FSA controller: by tracking the discrete states of the plant and selecting a suitable memory bank in order to change the control strategy. 2. As the microcontroller is less powerful than the neural chip. This memory organization allows to obtain different neural controllers by changing the active memory bank. actual FSM state.differentmemory bank. as in most plants state transitions are much less frequent than neural computation.learning performance. Weight memory is also used to store tables of FSA states and outputs. these parameters are used by the microcontroller to implement the FSA controller.
Investigating the ability of the neural controller to autonomously learn to move on uneven grounds and to deal with obstacles . Design and implementation of a neuro-fuzzy controller for individual legs. Control Hierarchy Motion coordination control. Its acts like a central which gives the legs the right “high level” control signals (such as Robert speed. Required Hexapod Phases 1. 3. Robert height from ground . Modeling individual legs and the composite hexapod system. Obstacle avoidance is achieved by giving proper trajectory information to each leg control. Identification of kinematics and the dynamics of the Robert(individual legs and complete Robert ). . 2. Design of the motion co-ordination system(gait control and obstacles avoidance). 4.The purpose of the Conguration and Refresh Block is to transfer a matrix of synaptic weights and the other neural parameters from the active memory bank to the neural processor every time the FSA changes state. 5.radians of trajectory ) to let the hexapode execute properly gait.
Life phase ends when the leg is high enough to swing forward. They receive the angular positions and translate them into control signals for positioning motors. Leg Control Locomotion control is distributed evenly among the six legs. moving backward to the posterior extreme positions. Leg controls. as small ones ( namely roughness of the ground. During this phase it start again to support the body weight.Only large obstacles are avoided. They also recover and modify leg trajectories when small local obstacles are encountered. Power phase: the leg on the ground where it supports and propels the body. . They are like “local” controls that defines the trajectory and the sequence of movements of each leg. Contact phase: leg lowers down to the ground. Return phase: leg swings forward to the anterior extreme position. Lift phase: the leg rises from the posterior and loses its support function. As soon as it reaches this point it is ready for next phase. each leg cycles over six main different states. Independently from the different gait.Joint position controls. holes etc ) are handled by each leg control. small stones.
Backstep phase: the leg recover the right position after an obstacle avoidance or if it is in time out. Motion Coordination Control The local leg controllers run simultaneously. To let the robot move and deal with obstacles. The use of Neuro-Fuzzy approach (Fuzzy-State Automata) allows to “smooth” the leg movements during walking (changes of speed and of directions without slipping of the feet in ground). when the obstacle it too large to step over. however they are not independent of one other. an inter-leg coordination is needed. when a leg is trying to step over an obstacle. to raise the body.Upstep phase: the leg rises when it hits an obstacle (obstacle avoidance).the leg returns in the “Return” state. When the height is enough. For instance. or to move the robot backwards. To achieve this inter- . it can ask the supporting legs to momentarily stop.
but by fuzzy variables (all labels on state transitions in figure are fuzzy events). It immediately results that. Each state is associate with one of a set of different controllers(Cj).it has to process more than one controller at any time. An FFSA looks like a finite state automaton which tracks the discrete states of the system (for instance. As a consequence. an FFSA has approximately the same computing complexity of an FSA controlling Neuro-fuzzy . and in particular one for each leg plus one for the Motion Coordination Control. the PID should keep body height and speed constant. This increase of computing time often counterbalances the higher speed that can be achieved through the use of simpler controllers. each Leg Control communicates with the Motion Coordination Control. at any time. which is much simpler to design and tune than a controller with trajectory smoothing. but it may well be in more states. each one with its own state membership value. Fuzzy State Automata The Motion Coordination and the Leg Controls have been developed using a number of custom Fuzzy State Automatas (FFSA). and state transitions are fuzzy as well. Smoothing of transitions between partial local trajectories is then taken care by the FFSA. all the individual controllers may become as simple as a traditional PID.leg coordination. as the system is often in more than one state. even if the controllers described in each state are not designed to smooth them. Globally. as smoothing is intrinsic in the FFSA working principles. return. each one tailored to the specific system state. that is. lift. while in the backward step it should move as quick as possible towards a target point). when the leg is carrying the body weight. power. The main difference of an FFSA with respect to the above described method is that transitions are not triggered by crisp events. each one with a different target for instance. State transitions are therefore smoother and slower.Unfortunately FFSA have a drawback. and contact phases). the whole system is not necessarily in one well-defined state.
or climbing staircases).controllers. Training has been done with several linear trajectories (60 cm movement amplitude) at different heights (10. RMS error is = 4 mm for 80 cm movement range). The test has been performed on a completely different parabolic trajectory with a slightly wider range to test the generalization ability of the net. other special cases a leg might have to face . The actual FFSA is more complex. but it is easier to design (especially for complex systems) and produces smoother trajectories. gallopping. So far only simulations have been done. It is a case of inverse control . modication of leg trajectory when walking sideways.as shown in table . control of alterna-tive paces for dynamic gaits (e. as it includes provisions for: i) ii) iii) iv) modication of hexapod attitude in presence of complex obstacles (e. FUZZY.g.g. RBF. Leg Identication and Neuro-Fuzzy Controller Kinematic and dynamic identication of the leg model has been performed with dierent neural paradigms such as MLP. Each leg motor was driven by an independent net. Dynamic identification of the leg [1. As can be seen. For each coordinate a neural net has been trained to evaluate the acceleration of the leg caused by the application of the u(t) stimulus that represents the input current to the motor drivers. to walk inside low tunnels). where the neural model of the leg (i) is . The leg position is represented by s(t). 20 and 30 cm) of the robot body from the ground. A similar accuracy can be obtained with a polynomial (POLY) or with a RBF networks. 2] has been performed using the scheme shown in figure. an MLP network with only 3 hidden neurons is sufficient to generate a trajectory with good precision (max. The scheme used to train the neural controller for a single leg is shown in figure. Results for all the different paradigms are comparable. as the real hexapod is available only since few days.
This rate can be achieved only with high computational power DSP or with a dedicated hardware implementation such as DANIELA. which have been developed starting from a mixture of Finite State Automata and Neuro-Fuzzy controllers. Fuzzy Systems. among others. The paper propose that approach is very promising and this can be adopted to a wide variety of different applications such as. such as Neural Network. for the MLP (6). The application can be improved to nonlinear controllers capable to handle complex sequences and coordination functions.required to back propagate the training errors to the controller (c). robotics. to 72000 CPS (connections per second) for a single leg controller. servo-controls and machine with moving parts with backlash and low stiffness. . linear controllers. DSPs and finite and fuzzy state Automata. CONCLUSION This paper has described an autonomously walking hexapod controlled by means of Fuzzy State Automata.Several paradigms have been integrated. The system works at 1 kHz sample frequency and this is equivalent.
This action might not be possible to undo. Are you sure you want to continue?
We've moved you to where you read on your other device.
Get the full title to continue reading from where you left off, or restart the preview.