Novel Fuzzy Logic Controller based on Time Delay
Inputs for a Conventional Electric Wheelchair
M. Rojas P. Ponce A. Molina Instituto Tecnológico y de Estudios Superiores de Monterrey, Campus Ciudad de México. |
Keywords: fuzzy logic, dynamic, controller, wheelchair, ultrasonic sensors. |
Correspondencia: |
Palabras clave: lógica difusa, controlador, dinámico, silla de ruedas, sensores ultrasónicos. |
Table 1. Main works developed using fuzzy logic for an Electric Wheelchair (EW)
| |
Ref. | Description |
[13] | Two fuzzy controllers are used: one for joining a target specified by specifying an (x, y)
coordinate and the other for avoiding obstacles.
|
[14] | The fuzzy controller considers distance, presence and direction from the objects to decide if
it necessary to change the trajectory.
|
[18] | It uses two fuzzy controllers, one to determine actions from the flex sensors and the other
for obstacle avoidance based in ultrasonic sensors. Preference is given to the fingertip control
if obstacles are far and to the obstacle avoidance system if objects are close.
|
[15] | It includes an obstacle avoidance control which uses IR sensors, as well as a contour following
control. Both are fuzzy logic controllers.
|
[20] | Utilizes FPGA technology in a wheelchair combined with a fuzzy logic control designed to
manipulate the rotation speed of the driving motors. It is not a navigation control.
|
[16] | The fuzzy controller is based in the information given by eight sonar sensors and the joystick.
Inference system is based in that information to control direction and speed of the wheelchair.
|
[19] | The fuzzy control is focused on matching the position of a wheelchair in a sidewalk network
map of an urban area, by using a GPS.
|
[17] | The fuzzy logic controller is designed to alternate between manual and automatic navigation
depending of near obstacles. This assures the switching to be gradual. The automatic
controller is also based in fuzzy logic to avoid obstacles.
|
[23] | The controller is used to determine the operator orders by using a seat pressure sensor and
body movements as the interface. The inputs for the inference system are the x and y velocity
and acceleration of human gravity center. The prototype includes omnidirectional wheels for
moving in every direction.
|
Table 2. The software implementation rule set (Strategy-C)
| |
1 | s : N ∩ s1 : C ∩ s2 : C ∩ s3 : C ⇒ M : N ∩ D : N |
2 | s : Z ∩ s1 : C ∩ s2 : C ∩ s3 : C ⇒ M : N ∩ D : N |
3 | s : P ∩ s1 : C ∩ s2 : C ∩ s3 : C ⇒ M : N ∩ D : N |
4 | s : N ∩ s1 : F ∩ s2 : C ⇒ M : MF ∩ D : L |
5 | s : P ∩ s1 : C ∩ s2 : F ⇒ M : MF ∩ D : R |
6 | s : N ∩ s1 : C ∩ s2 : C ∩ Y : TR ⇒ M : B ∩ D : R |
7 | s : Z ∩ s1 : C ∩ s2 : C ∩ Y : TN ⇒ M : B ∩ D : N |
8 | s : P ∩ s1 : C ∩ s2 : C ∩ Y : TL ⇒ M : B ∩ D : L |
9 | s : N ∩ s1 : F ∩ s2 : F ⇒ M : F ∩ D : ML |
10 | s : Z ∩ s1 : F ∩ s2 : F ⇒ M : F ∩ D : N |
11 | s : P ∩ s1 : F ∩ s2 : F ⇒ M : F ∩ D : MR |
12 | ds1 : GF ∪ ds2 : GF ⇒ M : MF ∩ D : N |
Where ∩ = Tm = min(x,y). |
Figure 6. Fuzzy Input definitions and memberships functions a) distance, b) distance differential, c) past steering action and d) sensor difference.
|
Figure 7. Fuzzy outputs definition a) Movement, b) Direction outputs
Figure 11. Components of the wheelchair system implemented in the FPGA.
Figure 12. Digital I/O and analog output modules configuration.
Figure 17. Fuzzy logic code programmed with LabVIEW FPGA toolkit.
Table 5. Comparison table between hardware and software implementations
| ||
Characteristic | Software | Hardware |
implementation | implementation | |
Trajectories | Rough, abrupt | Smooth, clean |
Operations cycle rate | 500 ms | 100 ms |
Operative system | Windows 7 | None |
Sensors | 3 ultrasonic Parallax PING))) | 3 ultrasonic Parallax PING))) |
Sensors sample time | 100 ms | 100 ms |
Input acquisition device | Microcontroller BS2-IC @ 20MHz | 9401 digital inputs module |
Output acquisition device | NI USB 6211 | 9263 analog outputs module |
Maze time consumed | 1.19 sec | 20 sec |
Number of rules | 12 | 10 |
Processor | Intel Core @ 2.4 GHz | Spartan-3 Xilinx @ 40 MHz |
Data Communication | Serial | TCP/IP |
to the computer | (just for data sharing) | |
Those differences between both implementations are remarkable. It is explained because the hardware version uses a dedicated processor to acquire and process data that do not depend on any operating system. The target processor is networked to a host PC only for the graphical interface and data logging. In Table 5 is presented a comparison.
SensorsAs reviewed in the datasheet, the Tburst is 200 μs and the maximum echo return pulse is 18.5 ms for the maximum distance, tholdoff is 740 μs and tout is 2 μs. Consequently, the fastest time in the process of measuring data is calculated as:
This sample time is very slow even for the software version, and it limits the controller speed response. The acquisition cycle for the software and the hardware versions is fixed to 100ms. However, in the software version distance data is passed from the microcontroller by a serial communication to the computer and, after calculating the outputs, the numerical result goes to the 6211 module. This recurrent process (indicated in Figure 14.) consumes 500 ms. Meanwhile in the FPGA version, the analogous process indicated in Figure 16 consumes 101 ms. Since sampling time for acquiring distance is 100 ms, then only 1.7 ms are used by the fuzzy controller. Comparing consumed time in the hardware and software versions, it is remarkable that FPGA is superior. Besides, the FPGA implementation could process data faster but it is limited by the ultrasonic sensors response speed. In order to work properly, the blocking obstacles must be in front of the sensors sight line to be detected because they are strictly directional. However, the use of the dynamic inputs increase their performance for avoiding static obstacles.
ConclusionsNovel dynamic fuzzy logic navigation strategies were proposed and evaluated using an electric wheelchair. Although the ultrasonic sensors provide limited information regarding the navigation environment, the fuzzy logic controllers work properly because the dynamic information (time delay inputs) about the navigation system was included in the linguistic rules. The dynamic controllers do not change the conventional structure of a fuzzy logic controller but they modified the quality of the information about the navigation environment by adding input with delays. The main goal of this controller is to extend the input information using time delay signals, hence the controller is able to find the correct solution using limited input information. Initially, a study of the navigation performance on software of each controller was presented in order to implement in real time the best navigation controller. The implementation based on hardware reaches excellent results and the electric wheelchair movements are flatter than movements implemented on software. Since the FPGA implementation of the dynamic controller shows reduction in time response, good avoiding obstacles performance and less sever movements, this is the best option to implement a dynamic controller for an electric wheelchair. One of the main limitations of the controller are the blind points, caused by the number of sonar sensors used (only two of them provide information about the forward navigation). Adding sensors could expand the information from the environment of the actual prototype. Besides, it is a good idea to extract dynamic inputs from the new sensors. Although the dynamic controller increases the navigation performance, the number of fuzzy rules and membership functions will be more and the tuning process will be more complex. It is recommended to use an optimization method, i.e. genetic algorithms. On the other hand, the electric wheelchair controller is not robust to noisy signals, so it is recommended to use an adaptive filter and sensor signal estimator. In order to have more information about the quantitative performance of the prototype, other issues could be evaluated. For example: the consumed time to solve alternatively mazes, the necessary distances for detection between the mobile objects and the wheelchair, the response to materials and composition of different objects and the behavior of the dynamic navigation strategy in small space scenarios.
References
|