How useful is the free, open source Scilab/Xcos vs Matlab/Simulink?

One of my clients has requested a dynamic fuel cell power system model, so I investigated both Matlab/Simulink and Scilab/Xcos modelling environments.  These packages are able to model complex electrical power and control systems using a graphical block diagram modelling tool.  Here is an example of Xcos’ DC DC Boost Converter:

Xcos DC DC Boost Converter

Xcos DC DC Boost Converter

To model the fuel cell power system in Matlab/Simulink requires the addon toolboxes SimPowerSystems and SimScape.  This raises the license price to about $12,000 USD plus further yearly license fees (~20%).  An advantage of Scilab/Xcos is that the software is free.  Simulink/SimPowerSystems has a more extensive library of predefined component or subsystem models than Xcos, yet Xcos has the most important components defined.  Simulink/SimPowerSystems has much better documentation, which is typical of commercial software vs open source software.  There are some Xcos documentation and tutorials available, covering the most important topics.

I had difficulties getting both packages up and running on my Windows 7 computer as in both cases there were problems in getting external C compilers connected.  With Matlab, I was able to go back and forth with their helpful customer support to resolve the issue.  With Scilab, I had to do internet searches for forum posts by other users with the similar problems.  In both cases I was able to get the packages running with some delay.  Matlab has better user support as it is easier to call someone for help, but Scilab has a fair number of users posting problems and solutions, and with a bit of sleuthing, resolving my problem was not too difficult.

Working inside the environments is pretty similar. Simulink/SimPowerSystems has the most capability, yet Xcos is impressively capable, with more and more tools being published by their user community.  Perhaps Xcos is roughly 80-90% of the capability of Simulink/SimPowerSystems for my application, and good enough for what I need at this time.

One further advantage of Xcos is that it is much easier to share models, as it is easy to get access to the modelling environment.  With Matlab/Simulink, you really need your other collaborators and clients to have Matlab/Simulink available, and that is an expensive proposition, especially being tied to yearly maintenance fees.

Xcos is steadily improving in capability, documentation, tutorials, and links to other programs.  It has come a long way in the last three years.  By being free, it is more accessible to a larger community, which will help accelerate its development and usefulness through the network effect.  For many practitioners, it is a great choice.

Matlab/Simulink will have some threat from Scilab/Xcos in the lower end of the market, yet I expect it to lead the high-end market as it continues to add capability, modules, applications, and linkages to other programs.  For larger institutions, it is a good choice.

Product Comparison

Product Comparison for my application

Overall I am pleasantly surprised and impressed with Scilab/Xcos, and while it takes a little more time and effort to be productive with it than Matlab/Simulink, for my application, it is worth it.