Yakindu vs Matlab's Stateflow

282 views
Skip to first unread message

Tina Jasmine

unread,
Feb 9, 2015, 8:20:19 PM2/9/15
to yakind...@googlegroups.com
Hello all,
I'm new to Yakindu! We were in need of using a State Machine modeling tool for our PhD studies, and for the last couple of months we were using Matlab's Stateflow tool. It was easy to use and user friendly, but we did not have much flexibility hacking around the model, connecting it to our external apps, transferring data, etc. I'm pretty happy we found Yakindu, which seems like our dreams came true! :)

Now we are thinking to move to Yakindu. Is there anything Stateflow supports but not Yakindu? (basic functionalities). Generally, how are they compared? In specific, we are in need of generating quality Java/ C codes, and be able to connect to another Java application, transfer data over TCP and/or call its functions.

Thanks!

andreas

unread,
Feb 10, 2015, 7:39:45 AM2/10/15
to yakind...@googlegroups.com
Hi and welcome to our user group!

As far as I know there is no detailed comparison between both tools yet.
If you evaluate Yakindu for your studies and compare it with Stateflow, it would be great if you could share your result with the community!

Yakindu supports all of the basic concepts you already know from Stateflow like Composite States, History States, Parallel Regions, Subdiagrams etc.
We also support the simulation of the statechart model and code generators for C, C++ and Java.
Regarding the communication over TCP - we have a component that is called YaCoP (Yakindu Communication Protocol) that allows the communication with the running
Statechart model via (Web)Socket. We use this component in our commercial projects and it is not open source - but I think it should be no problem if you want to use it for academic purposes.

Since I am curious - what is the topic of your studies and for what do you want to use Yakindu SCT?

Best regards,

Andreas

Tina Jasmine

unread,
Feb 10, 2015, 11:52:42 AM2/10/15
to yakind...@googlegroups.com
Thanks for the kind words:)
As far as the basics are concerned, it was OK so far. It is a plus that Yakindu also supports Java and C++ code generation as well.
The other plus is supporting String data type. Now the *Java function call*, or at least data transfer between a Java app and state chart makes my decision of choosing Yakindu. I'm not sure about YaCoP, but the simple feature I need is being able to send a String, and receive the response back (and maybe do a transition based on that). Can I do this?
- BTW, is there any ways to print output, or show it somehow? Like Simulin's Scope module.

Oh, my studies are not to study the state machines itself- we need only a good tool to model state machines somewhere inside the thesis (to model mobile energy states).

Andreas Mülder

unread,
Feb 12, 2015, 5:26:03 AM2/12/15
to yakind...@googlegroups.com
OK,
I think I missunderstood your usecase, I thought you want to communicate with the statechart running in the simulator within eclipse, this is what YacoP is used for.
If you just want to use with the generated code it is straight forward, I recommend to read the Java API documentation: http://statecharts.org/documentation.html#SpecJava
In Yakindu, events can carry values. You could for example define an event of type 'string' and call the generated raise method with your string. In the statemachine you can do a transition when the event occures and access the string value with the build in valueof(event) method.
Currently, there is no way to print output, could you file a feature request in our bug tracker for that? https://code.google.com/a/eclipselabs.org/p/yakindu/issues/list
Best regards, Andreas

Tina Jasmine

unread,
Feb 12, 2015, 9:18:19 AM2/12/15
to yakind...@googlegroups.com
Hi,
Your impression was correct. I want the statechart running in the simulator within eclipse to communicate with a java app. Is there a documentation for YacoP, and how to use it?
Reply all
Reply to author
Forward
0 new messages