Fuzzy Logic Controller Block in Simulink Doesn't Show Two Inputs

9 views (last 30 days)
Hello everyone,
I created a fuzzy logic controller using MATLAB's Fuzzy Logic Designer App. My controller has two input variables and one output. After designing and testing it, I exported it to the workspace as a variable (named fis).
However, when I switch to Simulink and drag in the Fuzzy Logic Controller block from the Fuzzy Logic Toolbox, I try to load my controller by typing the name fis into the block's parameters.
The problem is:
The block only shows one input, even though my fuzzy system was designed with two inputs.
I expected the block to automatically configure for two inputs and one output, based on the .fis structure.
I would appreciate any guidance on:
  • Why the block isn't recognizing both inputs
  • How to properly load a multi-input .fis file into Simulink
  • Whether I need to use a specific block (not the Function Block version)
Thanks in advance for your help!

Accepted Answer

Sam Chak
Sam Chak on 4 May 2025
Hi @ali
If there is more than one input, you need to use the Mux block to combine the input signals into a virtual signal vector, allowing you to feed it into the input port of the Fuzzy Controller block.
Please let me know if this approach works for you.
  5 Comments
Sam Chak
Sam Chak on 4 May 2025
Please provide an update if you have resolved the original issue.
You can, but ensure that the ranges of the input variables are within those defined in the fuzzy system. This is very important.

Sign in to comment.

More Answers (0)

Categories

Find more on Fuzzy Logic in Simulink in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!