This model contains a SWI-Prolog (www.swi-prolog.org) interface block for Simulink environment. Communication between SWI-Prolog and Simulink uses JPL (Java Interface to Prolog). JPL is a library using JNI (Java Native Interface) providing a bidirectional interface between Java and SWI-Prolog.
The SWI-Prolog Interface block allows you to create simulation with expert systems using PROLOG code. With this block can be read PROLOG source file and loads the clauses in SWI-Prolog environment. The clauses are called through a PROLOG query that is an input parameter of the SWI-Prolog Interface block.
The PROLOG query uses ''u'' as the input variable name and ''y'' as the output variable name. In the case of queries with multiple solutions, this block will only return the first solution found.
The SWI-Prolog and JPL (Java Interface to Prolog) configurations are showed on the pdf file.
The attached file contains a simple on-off tank level control with prolog-based expert system example using The SWI-Prolog Interface block.
Marcelo Augusto Costa Fernandes
DCA - CT - UFRN