Designing a Wireless Network of Intelligent Fuzzy Logic Controllers With NI LabVIEW
"LabVIEW gave us an integrated software and hardware platform that simplifies the development of any measurement and control system. The easy-to-use graphical development environment makes it the ideal choice for developing complex algorithms by providing various tools for debugging and direct viewing of results. Due to its graphical nature, we could develop an attractive, intuitive user interface in almost no time at all."
- Bakhtiar Saeed, School of Computing and Engineering, University of Huddersfield
Designing and simulating an intelligent, microcontroller-based, self-learning algorithm with extensive communication capabilities.
Using NI LabVIEW software to design, simulate, and tune fuzzy logic controllers (FLCs) and using NI network-published shared variables to construct a communication link between the controllers to facilitate learning and share acquired knowledge.
Bakhtiar Saeed - School of Computing and Engineering, University of Huddersfield
Bruce Mehrdadi - School of Computing and Engineering, University of Huddersfield
The Systems Engineering Research Group at the University of Huddersfield has expertise in a diverse range of research fields, including flow measurement, communication systems, and clean energy. Members of the group apply their expertise in electronic and electrical systems to make breakthroughs that attract high levels of funding, partnerships with major industrial companies and collaborations with other universities.
Embedded systems, especially in the communications industry, are becoming increasingly more compact and powerful every day. Recently, we have seen a significant increase in the use of embedded microcontrollers in a wide range of applications—from commercial products to industrial process monitoring systems and control. Furthermore, improvements in microcontroller speed, size and power consumption with added wireless capabilities offer a new generation of applications including versatile and low-cost solutions in wireless sensor network applications such as wireless monitoring systems and control.
In process control, there are situations where several identical devices form a wired or wireless network and work together to achieve a common goal. A master controller controls each device or node. To maximize network performance, we can design the nodes to intelligently control their local systems to adapt to setpoint changes. We can make the knowledge gained by individual controllers available to other controllers on the network.
Potential applications of the system could control multiple motors with identical characteristics or several pneumatic valves on an oil pipeline. These devices are known for their nonlinear characteristics, which are not easy to control without damping or slowing their responses to new setpoints.
To improve controller performance, we spend a significant amount of time tuning the parameters. Additionally, controllers have a wide range of setpoints. Changing from one setpoint to another requires retuning the controller parameters to maintain performance at a satisfactory level. This is very time-consuming. So far, there has been no research into the design of a FLC that shares knowledge gained in the tuning process between controllers. With this design, the controllers on a network could learn from each other and, as a result, save a significant amount of time and enhance overall system response. We designed and developed a network of intelligent FLCs with the capability of sharing learned information.
To design and simulate the system, we chose PC-based controllers to simplify the coding and debugging stages because they are more straightforward than microcontroller-based controllers. At a later stage, we can easily code and deploy the design on microcontrollers.
We created a network of four wireless-enabled PCs connected through a dedicated WiFi wireless router (see Figure 1). Based on requirements, the communication medium could be ZigBee or any other type of wireless technology.
The PCs simulate independent fuzzy proportional integral derivative (F-PID) controllers controlling identical systems. The controllers use an FLC strategy to control their systems. To improve performance, they can autotune the controller parameters and, in each iteration cycle of the tuning process, share the parameters on the network. When a new setpoint is assigned to a controller, it starts to perform the tuning process. Each controller can establish new control parameters by independently performing autotuning or by using the knowledge gained by other controllers to shorten tuning time. Thus, the controllers can learn from each other, consequently saving a significant amount of time.
Designing such a complex system encompasses many stages, including developing an intelligent control algorithm, establishing and maintaining the communication between the controllers, and monitoring the stability of the system. Therefore, choosing the right development platform is essential.
After careful consideration, we chose LabVIEW to achieve our goals because of its essential, useful features. LabVIEW gave us an integrated software and hardware platform that simplifies the development of any measurement and control system. The easy-to-use graphical development environment makes it the ideal choice for developing complex algorithms by providing various tools for debugging and direct viewing of results. Due to its graphical nature, we could develop an attractive, intuitive user interface in almost no time at all.
We used the LabVIEW Control Design and Simulation Module to design and simulate the FLCs and develop the learning algorithms with a flexible tuning process. With the LabVIEW Fuzzy System Designer, we created the FLC input/output variables and the fuzzy control rules. It can simulate any standard second-order system by entering its transfer function in the simulation interface. The open-loop and closed-loop responses simultaneously display along with their response characteristics, including rise time, overshoot percentage and settling time. We can introduce external disturbances at the input and output of the process to determine the stability and robustness of the controlled system.
Intelligent Algorithm Capabilities
The algorithm can autotune the controller parameters, retaining the tuned parameters and sharing the gained knowledge. The control algorithm progressively performs these tasks and transitions from one state to another. We effectively implemented this architecture using a LabVIEW state machine design pattern for easy move from one software state to another and simplified implementation of complex decision-making algorithms.
We used the LabVIEW network-published shared variable feature to establish communication between the controllers, which greatly minimised the complexities of communication programming.
When we were initially undertaking the project in LabVIEW, the advice given by the National Instruments Application Engineering team was both helpful and prompt. This allowed for the project quickly progress from a concept into a working application.
Using LabVIEW, we designed, simulated, and tested an intelligent fuzzy control algorithm with extensive communication capabilities. With the algorithm, the controllers could autotune their parameters and share the tuned parameters with each other. This opens new opportunities and possibilities for designing industrial and commercial applications in the wireless monitoring and control field. These systems are cost-effective if deployed on embedded wireless microcontrollers with ZigBee communication capabilities.
University of Huddersfield
University of Huddersfield
Note: Permission has been obtained from Double-J Design website http://www.doublejdesign.co.uk to use the images appeared in figure 1.
Bookmark and Share
Explore the NI Developer Community
Discover and collaborate on the latest example code and tutorials with a worldwide community of engineers and scientists.
Who is National Instruments?
National Instruments provides a graphical system design platform for test, control, and embedded design applications that is transforming the way engineers and scientists design, prototype, and deploy systems.